Select: Difference between revisions
Raffriff42 (talk | contribs) m added category |
add link to avs+ documentation |
||
| (3 intermediate revisions by one other user not shown) | |||
| Line 1: | Line 1: | ||
__FORCETOC__ | __FORCETOC__ | ||
''"Select" redirects here. For the switch-like control function, see [[Internal_functions/Select#Select|Internal Functions: Select]]'' | |||
=== SelectEven/SelectOdd === | === SelectEven/SelectOdd === | ||
<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> | |||
SelectEven | {{Func2Def | ||
|SelectEven(clip ''clip'') | |||
|SelectOdd(clip ''clip'') | |||
}} | |||
Since frames are numbered starting from zero, SelectEven actually selects the first, third, fifth, | '''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. | |||
</div> | |||
=== SelectEvery === | === SelectEvery === | ||
<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> | |||
SelectEvery | {{FuncDef | ||
|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: | |||
<div {{BoxWidthIndent|62|0}} > | |||
SelectEvery(clip, 2, 0) # identical to SelectEven(clip) | SelectEvery(clip, 2, 0) # identical to SelectEven(clip) | ||
SelectEvery(clip, 2, 1) # identical to SelectOdd(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, 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, ... | SelectEvery(clip, 9, 0) # select frames 0, 9, 18, 27, ... | ||
</div> | |||
And how about this: | And how about this: | ||
<div {{BoxWidthIndent|62|0}} > | |||
# Take a 24fps progressive input clip and apply 3:2 pulldown, | # Take a 24fps progressive input clip and apply 3:2 pulldown, | ||
# yielding a 30fps interlaced output clip | # yielding a 30fps interlaced output clip | ||
AssumeFrameBased | [[AssumeFrameBased]] | ||
SeparateFields | [[SeparateFields]] | ||
SelectEvery(8, 0,1, 2,3,2, 5,4, 7,6,7) | SelectEvery(8, 0,1, 2,3,2, 5,4, 7,6,7) | ||
Weave | [[Weave]] | ||
</div> | |||
</div> | |||
=== SelectRangeEvery === | === SelectRangeEvery === | ||
<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''])}} | ||
Selects {{FuncArg|length}} number of frames {{FuncArg|every}} {{Serif|''n''}} frames, starting from frame {{FuncArg|offset}}. | |||
{{Par2|every|int|1500}} | |||
{{Par2|length|int|50}} | |||
{{Par2|offset|int|0}} | |||
{{Par2|audio|bool|true}} | |||
By default, select 50 frames every 1500 frames, starting with frame 0. | |||
'''SelectRangeEvery''' will normally process audio. To keep the original audio, use {{FuncArg|audio}}=false. | |||
'''Examples:''' | '''Examples:''' | ||
<div {{BoxWidthIndent|62|0}} > | |||
# Selects the frames 0 to 13, 280 to 293, 560 to 573, etc. | # Selects the frames 0 to 13, 280 to 293, 560 to 573, etc. | ||
SelectRangeEvery(clip, 280, 14) | SelectRangeEvery(clip, 280, 14) | ||
</div> | |||
<div {{BoxWidthIndent|62|0}} > | |||
# Selects the frames 2 to 15, 282 to 295, 562 to 575, etc. | # Selects the frames 2 to 15, 282 to 295, 562 to 575, etc. | ||
SelectRangeEvery(clip, 280, 14, 2) | SelectRangeEvery(clip, 280, 14, 2) | ||
< | </div> | ||
</div> | |||
=== External Links === | === External Links === | ||
* [http://forum.doom9.org/showthread.php?t=135690 | * [http://forum.doom9.org/showthread.php?t=135690 ''Deinterlacing BFF/TFF - which SelectEvery setting?''] (Doom9 Forum) | ||
[[Category:Internal filters]] | [[Category:Internal filters]] | ||
[[Category:Timeline_editing_filters]] | [[Category:Timeline_editing_filters]] | ||
Latest revision as of 07:16, 18 September 2022
"Select" redirects here. For the switch-like control function, see Internal Functions: Select
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.
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
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)
External Links
- Deinterlacing BFF/TFF - which SelectEvery setting? (Doom9 Forum)