View Full Version : We need better versions of deleteframe and duplicateframe
Katie Boundary
11th February 2019, 01:25
Let's assume that you need to duplicate the 294th frame out of every 1001 frames, in a video that is long enough that simply chaining a whole bunch of individual duplicateframe() commands together is impractical.
Or, let's say that you need to delete the 8th, 576th, and 902nd frames out of every 1001 frames, in a video that is long enough that simply chaining a whole bunch of individual deleteframe() commands together is impractical.
Selectevery() is not suitable for either task.
StainlessS
11th February 2019, 02:44
Maybe have a look at StickBoy stuff:- http://www.avisynth.nl/users/stickboy/
I think he has a DeleteEvery() type thing, maybe of some use, dont know.
EDIT: He has a selection of plugs to investigate.
poisondeathray
11th February 2019, 02:45
Let's assume that you need to duplicate the 294th frame out of every 1001 frames, in a video that is long enough that simply chaining a whole bunch of individual duplicateframe() commands together is impractical.
Or, let's say that you need to delete the 8th, 576th, and 902nd frames out of every 1001 frames, in a video that is long enough that simply chaining a whole bunch of individual deleteframe() commands together is impractical.
Selectevery() is not suitable for either task.
You can use stickboy's ApplyEvery
For the first one, SelectEvery with InterleaveEvery . For the 2nd one DeleteEvery
wonkey_monkey
11th February 2019, 10:54
We need
I think you meant to say "I would like". A "please" wouldn't have gone amiss either.
Katie Boundary
15th February 2019, 03:37
Thanks for the suggestion, though I find the lack of documentation disturbing.
poisondeathray
15th February 2019, 04:20
Thanks for the suggestion, though I find the lack of documentation disturbing.
Did you look at the html file in the zip ?
The documentation has description, syntax, usage examples.
ajp_anton
18th February 2019, 14:59
Will SelectRangeEvery() not do what you want?
Richard1485
18th February 2019, 21:49
Let's assume that you need to duplicate the 294th frame out of every 1001 frames, in a video that is long enough that simply chaining a whole bunch of individual duplicateframe() commands together is impractical.
Try:
WhateverSource()
ApplyEvery(1001,"DuplicateFrame(293)")
As you know, AviSynth calls the first frame 0. Change 293 to 294 if that's what you want. As PDR mentioned, documentation is provided in the zip.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.