PDA

View Full Version : basic Avisynth use and upgrade timing queries


halsboss
3rd January 2007, 03:09
Couple of basic queries (searched and looked at installed help but still unclear)... avisynth.org q/a site down... answers or links or search criteria welcomed. Avisynth v2.5.6 installed for me at the moment.

1. what is the default setting of Avisynth memory, eg SetMemoryMax omitted (I have 1Gb ram) ?
2. I do heavy-filtering analogue home movie encodes to HC - should I use SetMemoryMax, and if so place it at the start of a script ?
3. spotted something I didn't understand re possible next avisynth version dependencies - SetPlanarLegacyAlignment (I think) and maybe is needed in next version (eg I still need PixieDust) ? I guess the generic question is what has to change in scripts to run a new versions (q4) and remain compatible ?
4. is there a newer released next version and when do you think I should upgrade from 2.5.6 to it ? edit: whoops, just found http://forum.doom9.org/showthread.php?t=119786 re AviSynth 2.5.7 RC-3 [Dec 31st].

Thanks.

IanB
3rd January 2007, 06:42
1. MEMORYSTATUS memstatus;
GlobalMemoryStatus(&memstatus);
// Minimum 16MB, otherwise available physical memory/4, no maximum
if (memstatus.dwAvailPhys > 64*1024*1024)
memory_max = (__int64)memstatus.dwAvailPhys >> 2;
else
memory_max = 16777216i64;2. If your scripts place a very heavy demand on the cache, Maybe! If you are short of memory for other apps, Yes, set it low. It is a compile time directive so can go anywhere in the script, but up the top is a good standard placement. The minimum allowed to set is 4Mb, the maximum is (available physical memory - 5Mb)

3. SetPlanarLegacyAlignment(True) is for filters that illegally assume a relationship between width and pitch. Old versions of Mpeg2Source and a few others have this defect. DG/Tritical fixed this many moon ago. Place this statement at the end of your script if you need to use an old filter with this problem. It only applies to YV12 colour space. Symptoms are stairstepping of either or both luma and chroma and/or incorrect 8 side edge pixels.

Version 2.5.6 has the advanced planar alignment code present but disabled by default. Add a SetPlanarLegacyAlignment(False) at the end of your script to see if your scripts are going to work unmodified in 2.5.7 i.e. turn on 2.5.7 mode in the existing installed 2.5.6 to test.

4. Unless someone finds a problem, AviSynth 2.5.7 RC-3 will become official AviSynth 2.5.7 next week. (RC=Release Candidate) The more people who test it the less likely there will be problems.

halsboss
3rd January 2007, 08:52
Thanks IanB ! A happy and safe new year to you, and inhabitants of this forum. Mainly C3d, Pixie, occasionally MVDegrain2. Will test 2.5.7-RC3. If I understood the code, default Avisynth max memory used for me is automatically Physmem/4 = 256Mb ... will test with SetMemoryMax(512) given I have 1Gb & XP, to see if any faster and I don't know any better or how it in turn affects HC :) ...

I mainly use combinations of the latest versions of these plugins, and so should be OK for the new version then :- DGDecode TDeint fft3dfilter degrainmedian Convolution3d despot WarpSharp MaskTools mt_masktools RemoveGrain DustV5 DePan Cnr2 dctfilter ReverseFieldDominance.

IanB
3rd January 2007, 10:06
The SetMemoryMax(512) probably won't do a thing. Enough cache is enough, more is just wastefull.

dwAvailPhys is the unused physical memory not the total. So on a 1G XPsp2 without to much crap running, maybe 700/4 = 187.5

The selection of plugins looks pretty clean. Report any you have a problem with.