Select

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
m (formatting, links, phrasing)
(add link to avs+ documentation)
 
Line 4: Line 4:
 
=== SelectEven/SelectOdd ===
 
=== SelectEven/SelectOdd ===
 
<div style="max-width:62em" >
 
<div style="max-width:62em" >
 +
<div {{BlueBox2|40|0|3px solid purple}} >
 +
{{AvsPlusFullname}}<br>
 +
Up-to-date documentation: [https://avisynthplus.readthedocs.io/en/latest/avisynthdoc/corefilters/select.html https://avisynthplus.readthedocs.io]
 +
</div>
 +
 +
 
{{Func2Def
 
{{Func2Def
 
|SelectEven(clip ''clip'')
 
|SelectEven(clip ''clip'')
Line 17: Line 23:
 
=== SelectEvery ===
 
=== SelectEvery ===
 
<div style="max-width:62em" >
 
<div style="max-width:62em" >
 +
<div {{BlueBox2|40|0|3px solid purple}} >
 +
{{AvsPlusFullname}}<br>
 +
Up-to-date documentation: [https://avisynthplus.readthedocs.io/en/latest/avisynthdoc/corefilters/selectevery.html https://avisynthplus.readthedocs.io]
 +
</div>
 +
 +
 
{{FuncDef
 
{{FuncDef
 
|SelectEvery(clip ''clip'', int ''step-size'', int ''offset1'' [, int ''offset2'', ...])
 
|SelectEvery(clip ''clip'', int ''step-size'', int ''offset1'' [, int ''offset2'', ...])
Line 42: Line 54:
 
=== SelectRangeEvery ===
 
=== SelectRangeEvery ===
 
<div style="max-width:62em" >
 
<div style="max-width:62em" >
 +
<div {{BlueBox2|40|0|3px solid purple}} >
 +
{{AvsPlusFullname}}<br>
 +
Up-to-date documentation: [https://avisynthplus.readthedocs.io/en/latest/avisynthdoc/corefilters/selectrangeevery.html https://avisynthplus.readthedocs.io]
 +
</div>
 +
 +
 
{{FuncDef|SelectRangeEvery(clip ''clip'' [, int ''every''] [, int ''length''] [, int ''offset''] [, bool ''audio''])}}
 
{{FuncDef|SelectRangeEvery(clip ''clip'' [, int ''every''] [, int ''length''] [, int ''offset''] [, bool ''audio''])}}
  

Latest revision as of 07:16, 18 September 2022

"Select" redirects here. For the switch-like control function, see Internal Functions: Select

Contents

[edit] SelectEven/SelectOdd

AviSynth+
Up-to-date documentation: https://avisynthplus.readthedocs.io


SelectEven(clip clip)
SelectOdd(clip clip)

SelectEven makes an output video stream using only the even-numbered frames from the input. SelectOdd is its odd counterpart.

Since frames are numbered starting from zero, by human counting conventions SelectEven actually selects the first, third, fifth, etc, frames.


[edit] SelectEvery

AviSynth+
Up-to-date documentation: https://avisynthplus.readthedocs.io


SelectEvery(clip clip, int step-size, int offset1 [, int offset2, ...])

A generalization of filters like SelectEven and Pulldown. The easiest way to describe it is by example:

SelectEvery(clip, 2, 0)         # identical to SelectEven(clip)
SelectEvery(clip, 2, 1)         # identical to SelectOdd(clip)
SelectEvery(clip, 10, 3, 6, 7)  # select frames 3, 6, 7, 13, 16, 17, 23, 26, 27, ...
SelectEvery(clip, 9, 0)         # select frames 0, 9, 18, 27, ...

And how about this:

# Take a 24fps progressive input clip and apply 3:2 pulldown,
# yielding a 30fps interlaced output clip
AssumeFrameBased
SeparateFields
SelectEvery(8, 0,1, 2,3,2, 5,4, 7,6,7)
Weave

[edit] SelectRangeEvery

AviSynth+
Up-to-date documentation: https://avisynthplus.readthedocs.io


SelectRangeEvery(clip clip [, int every] [, int length] [, int offset] [, bool audio])

Selects length number of frames every n frames, starting from frame offset.

int  every = 1500
int  length = 50
int  offset = 0
bool  audio = true

By default, select 50 frames every 1500 frames, starting with frame 0.

SelectRangeEvery will normally process audio. To keep the original audio, use audio=false.

Examples:

# Selects the frames 0 to 13, 280 to 293, 560 to 573, etc.
SelectRangeEvery(clip, 280, 14)
# Selects the frames 2 to 15, 282 to 295, 562 to 575, etc.
SelectRangeEvery(clip, 280, 14, 2)

[edit] External Links

Personal tools