View Full Version : AviSynth 2.06 Released
sh0dan
27th September 2002, 21:43
Many new changes. The most visible change is the new installer.
Most known bug have been crushed in this release, including some very old ones, so this is the chance for everybody to upgrade! There has been most emphasis on stability and useability for this release. Hope you feel so too!
Changelog:
New:
- Added LanczosResize which uses the Lanczos3 algorithm - it provides better quality than BicubicResize in many cases.
- New ResetMask() filter: sets the mask to "all-opaque" (RGB32 only).
- Added optional pixel_type parameter to AVISource and siblings to force a decompression format (YUY2, RGB32 or RGB24).
- Added optional left and right parameters to Letterbox - parameters are placed after the existing to preserve compatibility.
- Added EnsureVBRMP3Sync(clip), to avoid desync of VBR-compressed mp3-soundtrack. This will slow seeking down considerably, but is very useful when using trim() for instance. Always use before trim().
Changes:
- Added installer/uninstaller. No more need to fiddle with .reg files and regedit.
- Default alignment is now 16 bytes, which should be faster on P4.
- Added example scripts.
- Made forward seeking fallback code in DirectShowSource files - it will not freeze anymore, just be very slow, since it has to decode all inbetween frames!
- Optimizations to YUY2 BicubicResize/BilinearResize.
- Better rounding precision in BicubicResize/BilinearResize.
- ChangeFPS() now changes the framecount (thanks to Xesdeeni).
- AVI files, that contains an invalid first frame are now rejected - there is no way of handling this situation gracefully. Segmented AVI's automatically skip these segments, and will NOT return an error.
- Better parameter checks on Crop() and LetterBox().
- AviSource always returns last valid frame on decompression errors.
- Added check for invalid frame 0 (mostly seen in SegmentedAviSource()).
Fixes:
- Fixed potential crashbug in Resize - real fix instead of previous hack.
- Fixed bug in RGB32 greyscale, when with not divideable with 2.
- Fixed Trim, so negative values works as documented.
- Fixes to plugin autoloading: - freezed when invalid dll encountered, was locking files unnecessarily, now also loads avisynth plugins with VDF extension.
- Fixed wrap at right side of picture in RGB BicubicResize()/BilinearResize().
- Fixed another Chroma wrap issue in BicubicResize()
- BugFix: Fixed crashbug in Resize functions on some machines.
As usual the release binaries can be grabbed from http://sourceforge.net/projects/avisynth2/
Thanks to all here who tested, and took time to give feedback!
FuPP
27th September 2002, 22:14
Shodan, could you please have a look on "Warpsharp filter 0911a" thread; I wrote a post concerning warpsharp.dll. I'm pretty sure that the problem comes from that dll; but we never know, maybe an additional control could be done from avisynth (if possible) on plugins in order to avoid that kind of crash ?
Regards,
FuPP
Si
27th September 2002, 23:35
Small point but the colour of the Version() command isn't green - its some funny shade of yellow/orange - is this a bug or a feature ;)
regards
Simon
From Dr Strangelove - You know how Dimitri likes his little surprises ;) :)
cult
27th September 2002, 23:51
mine is grey.
Si
28th September 2002, 00:43
Well here's mine (in case your grey is my yellow.orange:) )
Simon
hakko504
28th September 2002, 01:50
Finally!
:rolleyes:
Well done!
:cool: :cool: :cool: :cool: :cool:
cult
28th September 2002, 02:41
I see yours also as grey...My eyes,my monitor.whats wrong??
Koepi
28th September 2002, 10:27
Dunno what's wrong, it shows up as a pastel yellow here ;)
Regards,
Koepi
stax76
28th September 2002, 11:22
there is still the bug I mentioned the other topic, when left + right using Crop is not a multible of 4, there is a green line on the right side
HarryM
28th September 2002, 12:15
Excellent result! Congrats!
v2.06 is about 4% faster (overall 'mpeg2 to xvid' encoding process, BicubicResize using) and final size of xvid is about 1% smaller!!! :)
Next, next and next optimizations, please... ;)
cult
28th September 2002, 17:08
do you mean the letters are yellow?
MaTTeR
28th September 2002, 17:45
Originally posted by cult
do you mean the letters are yellow?
Yes, the letters are pastel yellow on my system also when viewing the version info.
Edit- Has anyone else had problems with TMPEG opening AVS files up since installing AVS 2.06? I'm constantly getting the error "dont know what LoadPlugin is". And ideas? This is a 3 day old Win2k install, so it fairly fresh.
falcon_b
28th September 2002, 23:02
Could somebody tell me what to do?
CCE can't open the new AVS scripts. It just terminates if I want to open it. Virtualdub also has some problem because if I try to close the file it gives me an error with a debug window.
Any idea?
baz00ie
29th September 2002, 00:35
Yeah, i had the same problem falcon_b... I don't know why it happens, but, to deal with it i did the following:
Moved the "avisynth.dll" from the ..\windows\systyem folder then uninstalled the program.
Next, put the "avisyth.dll" back to the ..\windows\system folder and then run the original "install.reg" file.... worked like a charm.
I know these guys will work out the kinks in the days to come,... they do good stuff.
take care
baz
SILICON
29th September 2002, 02:47
It`s my script:
-----------------------------------------
LoadPlugin("C:\DVD2CVCD\MPEG2DEC\MPEG2DEC.dll")
Mpeg2Source("C:\DVD2CVCD\FILM.d2v")
SetMemoryMax(40)
-----------------------------------------
Avisynth v2.06, MPEGdec (tbarry, original or FDMark)
It crass with any warning.
If I delete "SetMemoryMax(40)" it works ok.
The TMPGENC donīt hang the PC. I say "Script reaturn ane invalid value"
a few minutes before, it works ok.
Soory, but i canīt give us more info :-(
JohnMK
29th September 2002, 03:06
I'm assuming that it takes the same mod 2 as bilinear/bicubic, and that this will produce quality output?
jarthel
29th September 2002, 04:53
why not provide a zip file sh0dan? Some like me would prefer to do it manually. :)
jayel
meleth
29th September 2002, 14:43
hrm is it just me or has anyone else had problems with 2.06 and it opening the scripts at a really high resolution when you try to watch a script? The version example alone starts in a resolution way above 1280*1024.
sh0dan
30th September 2002, 08:21
Regarding version() - yes I changed the color. I thought the original was... well not much much of an eyepleaser, so it's now lightyellow/Grey.
@jarthel:
The CVS releases will be dll-only - wait for the first new release, and grab it there then :)
@SILICON:
Try using setmemorymax() as the first parameter - does that help?
Try other scripts.
@JohnMK:
Yes, lanczosresize is mod 2.
@meleth:
Could you post a screenshot of Virtual Dub "File Information" on a clean Version() example. Are you using vobsub?
@FuPP:
See the thread you mentioned.
stax76
30th September 2002, 15:35
am I the only one with a green line? The second thing I don't know if this is a Windows or a AviSynth Problem, but quite a lot people seem to have this problem, I got about ten reports until now and my program is not very popular so far, here is the topic
http://dvx.myikonboard.com/viewthread.php?threadid=3&nocache=1
sh0dan
30th September 2002, 15:51
@dolemite:
Haven't heard anything about a green line. Could you post screenshots along with script, and a description of the programs used?
I can't see anything specific in the thread - I need the programs used and the exact error message. If it works in vdub, it's most likely a program error.
Seems like a very nice program - I think I'll give it a try :)
Edit: Can't you make a distribution, that doesn't have all these requirements - I'm not really insterested in that big framework.
bb
30th September 2002, 17:31
Originally posted by Dolemite
am I the only one with a green line?
It's not the old version SimpleResize bug, is it? (Because that one has been fixed a long time ago...)
bb
stax76
30th September 2002, 17:45
Haven't heard anything about a green line. Could you post screenshots along with script, and a description of the programs used?
MPEG2Source("%source-file")
Crop(0,0,-10,-10)
try this, I bet you will know what I mean, not always a green line, but always a problem
I'm not really insterested in that big framework.
you should really take a look into .NET because it will be the future of almost all software development, this 20 MB include the .NET class library with thousands classes (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/cpref_start.asp)
sh0dan
30th September 2002, 18:15
I think i remember something on this machine, with directvobsub installed that caused problems in Zoomplayer. Try removing it. Vdub is unaffected, since it doesn't use directshow.
EDIT: Otherwise, post a picture of Filters used by ZP.
stax76
30th September 2002, 20:04
this seem to be a general DS Problem, the only filter loaded is video renderer
SILICON
30th September 2002, 21:23
I found a bug in version 2.06
I have one avi (FILM.AVI) with resolution 640x480.
This script:
-------------------------
AVISource("FILM.AVI")
Crop(0,0,640,482)
-------------------------
says: "you cannot use crop for enlage or 'shift' a clip"
Itīs right, but this one:
-------------------------
AVISource("FILM.AVI")
BilinearResize(352,280,0,0,640,482)
-------------------------
Work right without error code (see that 482 is a buggy size)
And this one:
-------------------------
AVISource("FILM.AVI")
BilinearResize(352,280,0,0,640,484)
-------------------------
says: "Unreconized exception!"
The best way are "you cannot use crop for enlage or 'shift' a clip"
I suggest check the code that evaluate the correct crop in BilinearResize(). In Crop() works ok.
Regars.
sh0dan
30th September 2002, 21:29
@SILICON: Yes, you're right - the crop in resize should also be properly bounds-checked. I'll make a note, so it can get fixed!
Until next version you'll have to check the parameters yourself :sly:
stax76
1st October 2002, 16:12
I can't see anything specific in the thread - I need the programs used and the exact error message. If it works in vdub, it's most likely a program error.
the problem is simple, WMP don't show the length of a loaded script. This problem seem to occur only on very few systems without anything suspect installed. About ten people reported this so far, DVX can't work without knowing the length
HarryM
1st October 2002, 17:33
The green line is present (my experiences), when you use a height not multiple 2 and USE any deinterlace filter (e.g. trbarry's GreedyHMA).
JohnMK
1st October 2002, 19:52
post-crop, pre-resize size, just to clarify.
Richard Berg
2nd October 2002, 03:22
Originally posted by sh0dan
@SILICON: Yes, you're right - the crop in resize should also be properly bounds-checked. I'll make a note, so it can get fixed!
Until next version you'll have to check the parameters yourself :sly:
I think we should either remove the crop-semantics from the resize filters, or have them call Crop() directly. The fact that not even relatively old changes (e.g. support for negative arguments = relative boundaries) were propagated here should suggest that keeping multiple crop tools around is a bad idea.
Si
2nd October 2002, 06:58
@Richard
I'd go with removing the functionality from other built-in core filters and letting people explicitly call Crop if needed.
If anyone wants a combined filter (to gain another 0.1fps :) ) then they could build it into a plugin and deal with any bugs/issues without affecting core Avisynth filter stability.
My 2 cents anyway.
regards
Simon
sh0dan
2nd October 2002, 08:12
Crop would also be better IMO. We can't remove it, since different GUI's might rely on it, but using Crop would make the code cleaner and more consistent.
WarpEnterprises
2nd October 2002, 15:31
But please with absolute AND relative (= neg.) values like xxxResize
sh0dan
2nd October 2002, 16:02
:confused:
What I meant was - If you specify crop parameters on resize, they should mean exactly the same is when crop is used alone.
Is that what you meant too?
SILICON
2nd October 2002, 16:02
Originally posted by sh0dan
Crop would also be better IMO. We can't remove it, since different GUI's might rely on it, but using Crop would make the code cleaner and more consistent.
In the guide of videotools.net said:
Crop(1,1,300,400)
BilenearResize(100,200)
And:
BilenearResize(100,200,1,1,300,400)
make the same, but the second is more fast.
It is false?
Regards
frank
2nd October 2002, 17:04
My experience is that separated Crop() and Bi..Resize() is much faster than the combination!
sh0dan
2nd October 2002, 18:35
How much? Could you do a benchmark?
MaTTeR
2nd October 2002, 21:11
Originally posted by SILICON
And:
BilenearResize(100,200,1,1,300,400)
I noticed that FitCD also generates AVS scripts with the crop and resize function all in one line. I've personally never noticed a speed increase/decrease but now my curiousity is kicking in...
WarpEnterprises
2nd October 2002, 21:57
My tests show that the combined version is SLOWER than crop + resize
(not much, ~10%, but noticably)
:eek:
sh0dan
3rd October 2002, 11:19
ok - we leave it as it is for the hardcore user! I'll correct it ASAP, so it accepts the same parameters as crop.
SILICON
4th October 2002, 13:30
Originally posted by WarpEnterprises
My tests show that the combined version is SLOWER than crop + resize
(not much, ~10%, but noticably)
:eek:
I need one aplication in order to test the speed in this cases.
The program must open and read a AVS and must drop the readed (for minimize CPU use). In the end it showed the time that has taken in reading all the AVS.
exists that program?
sh0dan
4th October 2002, 13:33
You can use the XVID codec, and use null-filter (no compression) - this will skip all compression and not write anything to the file.
soulfx
5th October 2002, 10:57
I've done some testing of the external crop() verses internal crop of the resizers. I used VDubs preview mode (F5) and the time it returns for total time. I've only tested the LanczosResize algo.
I used a 20min Seinfeld Episode w/ a 5% SelectEveryRange for each test pass. I ran through each setting four times to get a good average time for each setting then compared the two average times.
Crop().LanczosResize() avg. --> 2:34
LanczosResize(*interalcrop*) --> 2:36
I didn't really need to take an average really, as each test pass didn't deviate any from the results seen here. The external crop would always go quicker then the internalcrop. Between these two times is about a 5% difference.
--------------------
Great work on 2.06. It gets better all the time. Thanks everyone.
Peace,
SoulFX
frank
6th October 2002, 10:15
2:34 / 2:36 = 154s /156s = 0.987 = 98.7% -> -1.3% not 5%!!
I did some tests with v2.06 and BicubicResize/Crop. P4 2GHz, 256MB, XP.
Now I must correct my posting above.
In the result - no significant differences. :)
Avisynth needs memory. You'll get speed enhancements about 1-2% if you closed other windows.
sh0dan
6th October 2002, 14:27
Probably more an issue of these other apps using 1-2% CPU. Nice to see some reallife tests - using the internal crop or the one in resize should give 99% the same result, so I'm glad you can confirm this.
SILICON
8th October 2002, 21:15
One sugestion for speed AVISYNTH.
Often, we use the avisynth for two pass encodings. The encoder test the bitrate need in the fist pass and encode the film in the second (and next) pass.
If we use filters for clear the film, we have best image but we spend time.
We can deactivate the use of the filters in first pass and the distribution of bitrate will be the same one. The speed in the first pass will be bigger.
In the second pass we can activate the filters and gain image quality.
For this need:
DeactivateFirstPass(filter1(), filter2(),...)
is it a good idea?
WarpEnterprises
8th October 2002, 22:05
Most filters will change the compressibility, so after doing the 1st pass the encoder will make a completely wrong guess with the 2nd!
JimiK
8th October 2002, 22:06
SILICON,
as far as I know this would not work. The bitrate need with filters will be different from the needs without them. So the codec would have to compensate for the different distribution what would lead to a decrease in quality. That's why you should use the same script for 1st and 2nd pass. Somebody tell me if I'm wrong.
If you still would want to try it, why don't you write two scripts. One without filters, one with filters enabled. If you want to use the VDub job control, you can still use to different scripts to frameserve (2passes with different settings without manually starting the 2nd after the 1st pass).
best regards,
JimiK
SILICON
9th October 2002, 10:14
Originally posted by JimiK
SILICON,
as far as I know this would not work. The bitrate need with filters will be different from the needs without them. So the codec would have to compensate for the different distribution what would lead to a decrease in quality. That's why you should use the same script for 1st and 2nd pass. Somebody tell me if I'm wrong.
Itīs true. The filters low the bitrate need, but donīt change the bitrate need distribution. The codecs checks the bitrate distribution in the fist pass, donīt check the bitrate need. isnīt it?
If you still would want to try it, why don't you write two scripts. One without filters, one with filters enabled. If you want to use the VDub job control, you can still use to different scripts to frameserve (2passes with different settings without manually starting the 2nd after the 1st pass).
I try it with CCE. I made the *.VAF without filters and made the *.MPV with filters. Work ok.
I compress DVD source, and the change (all time filters) is not noticiable.
can you verify the sucess?
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.