Scale (resize) the input video's frames to a width and height in pixels, or with an FFmpeg expression.
Arguments
- object
An FFmpeg pipeline (
ffm) object created byffm_files().- width
The width of the output video, in pixels. Give a positive double or a string, such as an FFmpeg expression.
- height
The height of the output video, in pixels. Give a positive double or a string, such as an FFmpeg expression.
Details
Each size argument takes one double (an R number such as 160) or one
string. An integer such as 160L is refused, and so is NA. Any
other string is not checked, and it goes into the FFmpeg command as written,
so it can hold an FFmpeg expression.
See also
ffm_crop() to crop instead of resize. standardize_video() is the
task function built on ffm_scale().
Other pipeline functions:
ffm_batch(),
ffm_codec(),
ffm_compile(),
ffm_concat(),
ffm_copy(),
ffm_crop(),
ffm_drawbox(),
ffm_drop(),
ffm_files(),
ffm_fps(),
ffm_hstack(),
ffm_jobs(),
ffm_loudnorm(),
ffm_map(),
ffm_output_options(),
ffm_overlay(),
ffm_pixel_format(),
ffm_run(),
ffm_seek(),
ffm_trim(),
ffm_vstack(),
print.tidymedia_ffm()
Examples
video <- system.file("extdata", "sample.mp4", package = "tidymedia")
ffm_files(video, "output.mp4") |>
ffm_scale(width = 160, height = 120) |>
ffm_compile()
#> [1] "-y -i \"/home/runner/work/_temp/Library/tidymedia/extdata/sample.mp4\" -vf \"scale=w=160:h=120\" \"output.mp4\""