Log in

View Full Version : need smth like SelectEvery(time)


nonsens112
30th January 2008, 13:07
Hi there.

I have a 29.97 fps source, in some parts of which odd seconds repeat preceding even ones.
Thus I need to drop odd ones.

If framerate was exactly 30 fps, it could be made simply by:

SelectEvery(60,0,1,2,3,...,29)

But since framerate is FP, it is not possible - some frames are being selected incorrectly.

Using approximation 29.97=30000/1001 I composed corresponding call:

SelectEvery(60000,\
0,1,2,...\
...
59910,59941,59942,....\
)

but AviSynth returns error "argument list too long", and I have no idea how to force it chewing these 176 KB of numbers.

Does anyone know what to do?

Irakli
30th January 2008, 16:30
Hi!

I would suggest using Assumefps(30) in AviSynth and then SelectEvery(60,0,1,2,3,...,29) as before with 30fps source.

Best wishes,
Irakli

squid_80
30th January 2008, 16:38
SelectRangeEvery(60, 30) would be simpler than SelectEvery(60,0,1,..29). But I don't think AssumeFPS(30) is going to fix the initial problem of frames not aligning with 1 second boundaries in the source. ChangeFPS might do the trick or failing that ConvertFPS.

nonsens112
31st January 2008, 16:00
Thanks, guys.

I found a solution outside AviSynth, based on analysis of d2v file.