Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Development

Closed Thread
 
Thread Tools Search this Thread Display Modes
Old 30th December 2019, 01:18   #5021  |  Link
wonkey_monkey
Formerly davidh*****
 
wonkey_monkey's Avatar
 
Join Date: Jan 2004
Posts: 2,493
Quote:
Originally Posted by qyot27 View Post
Shouldn't you set environment to NULL before you delete it?
If you set a pointer to NULL before you delete it, you've lost the reference to it so you can't delete it. Smart pointers may be a different matter...
__________________
My AviSynth filters / I'm the Doctor
wonkey_monkey is offline  
Old 30th December 2019, 06:18   #5022  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,419
Yeah, I was mistaking that for a situation where the entire library struct was being freed and then the code tried to set it to NULL when it was already gone. And this was in C.
qyot27 is offline  
Old 2nd January 2020, 16:44   #5023  |  Link
Cyorter
Registered User
 
Join Date: Nov 2019
Location: Venezuela
Posts: 2
Hello! I don't know if this hasn't really reported before but in case of not... (I google-searched it but found nothing else than a little post without reply).

For some reason in the latest release of AviSynthPlus (printerf version), when using Trim and Stack (Vertical/Horizontal), it does not Trim! All clips continue until longest clip is finished.
Also for some reason, when using StackVertical(StackHorizontal(a,b),StackHorizontal(c,d)) to make 2x2 stacked videos, is the audio returned and not a!
Cyorter is offline  
Old 2nd January 2020, 18:02   #5024  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Quote:
For some reason in the latest release of AviSynthPlus (printerf version)
You do not say which version you have, "latest release" dont cut it.
Latest version is v3.4.0 (r2923), here:- https://github.com/AviSynth/AviSynthPlus/releases
v3.4.0 is the latest stable until Pinterf publishes new one, some fixes are applied since then, but only in source, not in complied release.
Here, Changes in v3.4.0:- https://forum.doom9.org/showthread.p...37#post1892037
Also, from post before "Changes" post,
Quote:
You have to check the master branch.
Either at my repo or the central avs+ repo (which is now a bit behind my repo, since I have some open work on my side)
No idea what that means, I 'dont do' github, but seems to mean that new releases will be appended to the original Ultim releases
[loads of users were downloading a 4 year old version of avs+ because it was linked in first post by Ultim].

That bug seems to have been fixed, I'm assuming that you are using Pinterf r2772-MT here[DONT USE, STILL HAS THE BUG]:- https://github.com/pinterf/AviSynthPlus/releases
There were also a few test versions after r2772.
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 2nd January 2020 at 18:04.
StainlessS is offline  
Old 2nd January 2020, 19:21   #5025  |  Link
Cyorter
Registered User
 
Join Date: Nov 2019
Location: Venezuela
Posts: 2
Quote:
Originally Posted by StainlessS View Post
You do not say which version you have, "latest release" dont cut it.
Latest version is v3.4.0 (r2923), here:- https://github.com/AviSynth/AviSynthPlus/releases
v3.4.0 is the latest stable until Pinterf publishes new one, some fixes are applied since then, but only in source, not in complied release.
Here, Changes in v3.4.0:- https://forum.doom9.org/showthread.p...37#post1892037
Also, from post before "Changes" post,

No idea what that means, I 'dont do' github, but seems to mean that new releases will be appended to the original Ultim releases
[loads of users were downloading a 4 year old version of avs+ because it was linked in first post by Ultim].

That bug seems to have been fixed, I'm assuming that you are using Pinterf r2772-MT here[DONT USE, STILL HAS THE BUG]:- https://github.com/pinterf/AviSynthPlus/releases
There were also a few test versions after r2772.
I was using Pinterf r2772-MT version yes, I thought https://github.com/AviSynth/AviSynthPlus/releases was dead, thanks!
Cyorter is offline  
Old 2nd January 2020, 19:27   #5026  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,419
While videohelp and avisynth.nl both point to the correct download areas and 3.4, the software infobox on the Wikipedia entry for AviSynth still points to r2772 and pinterf's repo, which is probably one source of continuing confusion and people grabbing r2772 instead of 3.4. I'm also not sure if the '(unofficial)' they've appended onto r2772 in the infobox is supposed to indicate that pinterf's builds weren't official x.x releases of Plus, or if it's more of an awkward way of saying Plus itself is 'unofficial' as related to Classic (given the 'preview release' is 2.6.1 Alpha). Granted, the entire lower half of that article is kind of a mess as well, but still.
qyot27 is offline  
Old 3rd January 2020, 10:10   #5027  |  Link
Richard1485
Guest
 
Posts: n/a
Quote:
Originally Posted by qyot27 View Post
At present in one of the development branches, nearly all of the AviSynth+ core and filters can compile natively on Linux. The missing bits are critical for it actually working on there, but basically, that leap to being fully cross-platform is tantalizingly close now - and a significant reason is because GCC compliance was added 3 years ago.
It would be amazing if AviSynth were to run natively on Linux at some point. Is the GCC version more likely to run smoothly under Wine, or does it not work like that?
 
Old 3rd January 2020, 13:16   #5028  |  Link
Sharc
Registered User
 
Join Date: May 2006
Posts: 3,997
temporalsoften no longer supported in AVS+?

The filter temporalsoften produces an access violation in avisynth+ 3.4.0 x86 r2827.
It still works as expected in avisynth 2.6.0.
Sharc is offline  
Old 3rd January 2020, 16:21   #5029  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Code:
Colorbars.convertToYV12
TemporalSoften(4,4,8,15,2)
v3.4.0, Works ok, maybe ALWAYS post bombing script.

EDITED due to Wonkey_Monkey chiding.
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 3rd January 2020 at 16:59.
StainlessS is offline  
Old 3rd January 2020, 16:22   #5030  |  Link
wonkey_monkey
Formerly davidh*****
 
wonkey_monkey's Avatar
 
Join Date: Jan 2004
Posts: 2,493
Quote:
Originally Posted by StainlessS View Post
maybe post bombing script.
Always post bombing script.
__________________
My AviSynth filters / I'm the Doctor
wonkey_monkey is offline  
Old 3rd January 2020, 19:23   #5031  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,419
Quote:
Originally Posted by Richard1485 View Post
It would be amazing if AviSynth were to run natively on Linux at some point. Is the GCC version more likely to run smoothly under Wine, or does it not work like that?
No, MinGW-w64/GCC builds are really just more for experimenting for the hell of it. Nothing to do with working better under Wine (which doesn't make much difference now, the VC 2015-2019 redist actually installs and gets used in Wine pretty easily).
qyot27 is offline  
Old 3rd January 2020, 19:43   #5032  |  Link
Sharc
Registered User
 
Join Date: May 2006
Posts: 3,997
Quote:
Originally Posted by StainlessS View Post
Code:
Colorbars.convertToYV12
TemporalSoften(4,4,8,15,2)
v3.4.0, Works ok, maybe ALWAYS post bombing script.

EDITED due to Wonkey_Monkey chiding.
Here the script:
Code:
AviSource("h:\Tape 1\capture_1.avi")
converttoyv12(interlaced=true)
assumeTFF()
separatefields()
temporalsoften(4,4,8,10,mode=2)
fluxsmoothST(3,3)
weave()
assumefps(25)
It works when I put temporalsoften AFTER fluxsmooth.

Edit:
It also works when I put crop(2,0,-0,-0) before temporalsoften. (The frame then becomes 718x576).

Edit2:
It looks like temporalsoften must not be the first filter after separatefields()

Last edited by Sharc; 3rd January 2020 at 20:18.
Sharc is offline  
Old 4th January 2020, 01:23   #5033  |  Link
hello_hello
Registered User
 
Join Date: Mar 2011
Posts: 4,823
Should the following return false, given YUY2 is a 4:2:2 format? I can't see anything on the wiki to indicate YUY2 would be an exception.

Avisynth+ 3.4

Video = AnyEightBitSource
Video = Video.ConvertToYUY2()
return Is422(Video)

Cheers.
hello_hello is offline  
Old 4th January 2020, 04:14   #5034  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,419
Is422 is for Planar formats. YUY2 isn't planar, and has its own special IsYUY2 function.

And http://avisynth.nl/index.php/Avisynthplus_color_formats shows the entire breakdown.
qyot27 is offline  
Old 4th January 2020, 04:59   #5035  |  Link
hello_hello
Registered User
 
Join Date: Mar 2011
Posts: 4,823
I assumed it must be an interleaved/planar related thing, but still, it would hurt if someone with Wiki access could add the "planar" qualification to the Is422() description to make it clear. http://avisynth.nl/index.php/Clip_properties

Thanks.

PS. What about Is444()? Does it cover RGB formats too? It wouldn't be unreasonable to assume so. I'll test that one myself later.

Last edited by hello_hello; 4th January 2020 at 05:06.
hello_hello is offline  
Old 4th January 2020, 12:04   #5036  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Quote:
What about Is444()? Does it cover RGB formats too?
Code:
# uncomment 1

#colorbars.ConverttoYV24         subtitle(String(Is444))        # true
#colorbars.ConvertToPlanarRGB    subtitle(String(Is444))        # false
Is422, Is420, Is444, Planar and YUV ONLY.
IsY, single plane luma (incl Y8).

EDIT:
Code:
    Function IsAvsPlus()             { FindStr(VersionString,"AviSynth+")!= 0||FindStr(VersionString," Neo")!=0 }
    Function AvsPlusVersionNumber()  { IsAvsNeo?Eval(MidStr(VersionString,20,4)):IsAvsPlus?Eval(MidStr(VersionString,17,4)):0}
    Function IsAvs26()               { VersionNumber>=2.6 }
    #
    Function X_PixelType(clip c)     { c IsAvs26   ? PixelType : IsYV12?"YV12":IsYUY2?"YUY2":IsRGB32?"RGB32":"RGB24" } # Eg "RGB32" or "YUV420P10"
    Function X_IsYV411(clip c)       { c IsAvs26   ? IsYV411          : False }
    Function X_IsY(clip c)           { c IsAvsPlus ? IsY : IsAvs26 ? IsY8 : False } # True=Single Plane : (!IsRGB)=True = Any type with Y, YUY2/YUVA/Y8 etc.
    Function X_Is420(clip c)         { c IsAvsPlus ? Is420            : IsYV12 }
    Function X_Is422(clip c)         { c IsAvsPlus ? Is422            : False }     # YUY2_Clip.Is422=False [ie not Planar]
    Function X_Is444(clip c)         { c IsAvsPlus ? Is444            : IsAvs26 ? IsYV24  : False }
    Function X_IsRGB48(clip c)       { c IsAvsPlus ? IsRGB48          : False }
    Function X_IsRGB64(clip c)       { c IsAvsPlus ? IsRGB64          : False }
    Function X_HasAlpha(clip c)      { c IsAvsPlus ? HasAlpha         : IsRGB32 }
    Function X_NumComponents(clip c) { c IsAvsPlus ? NumComponents    : IsAvs26&&IsY8 ? 1 : IsRGB32 ?4 : 3 }            # Num of channels
    Function X_Bpc(clip c)           { c IsAvsPlus ? BitsPerComponent : 8 }                                             # Bits per channel, 32 = Float
    Function X_YMod(clip c)          { c IsAvsPlus ? (NumComponents==1||IsRGB?1:Height/ExtractU.Height):(IsYV12 ?2:1) } # Y Min crop multiple for Progressive
    Function X_XMod(clip c)          { c IsAvsPlus ? (NumComponents==1||IsRGB?1:Width/ExtractU.Width):IsAvs26?(IsYV411?4:IsY8||IsRGB?1:2):(IsRGB?1:2)} # X Min crop multiple
EDIT: I'll probably at some point add above + a few more to AvsInit.avsi. [AvsiInit.avsi]:- https://forum.doom9.org/showthread.php?t=176749
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 4th January 2020 at 12:26.
StainlessS is offline  
Old 4th January 2020, 16:44   #5037  |  Link
Richard1485
Guest
 
Posts: n/a
Quote:
Originally Posted by qyot27 View Post
No, MinGW-w64/GCC builds are really just more for experimenting for the hell of it. Nothing to do with working better under Wine (which doesn't make much difference now, the VC 2015-2019 redist actually installs and gets used in Wine pretty easily).
Thanks for the clarification! I don't want Wine on my main machine, but I might try it on an old rig at some point. Even if AviSynth+ were to run natively on Linux at some point, it occurs to me that some means of previewing scripts would be needed as well.
 
Old 5th January 2020, 01:41   #5038  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,419
Quote:
Originally Posted by Richard1485 View Post
Thanks for the clarification! I don't want Wine on my main machine, but I might try it on an old rig at some point. Even if AviSynth+ were to run natively on Linux at some point, it occurs to me that some means of previewing scripts would be needed as well.
Previewing scripts is extremely trivial, libavformat just needs to be directed to look for AviSynth+ instead of AvxSynth (I have a patch locally to do that, even). But like I said, disabling/working around some of the Windows-specific bits means that the compiled libavisynth.so won't load.
qyot27 is offline  
Old 5th January 2020, 11:55   #5039  |  Link
Richard1485
Guest
 
Posts: n/a
Quote:
Originally Posted by qyot27 View Post
Previewing scripts is extremely trivial, libavformat just needs to be directed to look for AviSynth+ instead of AvxSynth (I have a patch locally to do that, even).
It's great to hear that it would be trivial, but I've always used VDub or (occasionally) AvsPMod to preview AviSynth scripts, so its not obvious to me how redirecting libavformat would help. To be clear, the means of previewing the script wouldn't matter to me as long as I could step back and forth frame by frame and see the effect of changes. (Yes, I realize that at present this is all hypothetical and that there are Windows-specific parts that won't work.)
 
Old 5th January 2020, 20:37   #5040  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,419
It's not really hypothetical; it's already possible to do that right now* using AvxSynth. Because FFmpeg forms the backbone of practically every video tool of note on Linux, as long as the FFmpeg libraries the tool links against were built with --enable-avisynth, said tool should be able to open and play the scripts just fine so long as it doesn't restrict file extensions (ffplay and mpv have no problem playing scripts; VLC needs to let *.avs be an accepted extension for it to do so). Stepping frame-by-frame is possible in several of the more NLE-esque offerings (I tried with kdenlive; worked fine).

So swapping AvxSynth out for AviSynth+ basically just means the capabilities of the core library massively expand because of the significant differences between AviSynth 2.5.8 (what AvxSynth essentially is) and Plus. The main thing being that AviSynth+ is actually up-to-date, so there's a greater likelihood of newer tools being developed around it that don't have to be as hefty as a full NLE suite. Not to mention that very very few plugins were ever ported to AvxSynth, so AviSynth+ would just naturally attract more plugins getting ported.

*read: since 2013, actually.

Last edited by qyot27; 5th January 2020 at 20:40.
qyot27 is offline  
Closed Thread

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 18:34.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.