Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

select

select(
  input: Clip,
  #{
    every?: Int,
    offset?: Int,
    drop_every?: Int,
    drop_offset?: Int,
    frames?: String,
  }
)

Builds a new clip by remapping output frames to selected source frames from one input clip.

The input must be one fixed-format planar Gray, YUV, or planar RGB clip with a finite frame count and a positive constant frame rate. Choose exactly one of every, drop_every, or frames. Frame expressions preserve the written order, accept single frames such as 5 and inclusive ranges such as 8-10, 8..10, or 8..=10, and reject duplicates and empty entries.

Examples

output = source("input.mkv").std.select(#{ every: 2 })
output = source("input.mkv").std.select(#{ frames: "0, 10, 20, 30" })

Input

One fixed-format planar Gray, YUV, or planar RGB clip with a finite frame count.

Output

A clip with the same format and resolution, containing the selected frames in the mapped order and using the frame count and frame rate implied by the selection form.

Options

  • every (Int) – Keep every nth frame.
  • offset (Int, default: 0) – Start the every selection at this source frame offset.
  • drop_every (Int) – Drop one frame from every n input frames.
  • drop_offset (Int, default: last frame in each group) – Choose which frame in each drop_every group to drop.
  • frames (String) – Provide an explicit frame expression.