tldr/pages/common/ffmpeg.md

1.5 KiB

ffmpeg

Video conversion tool. More information: https://ffmpeg.org.

  • Extract the sound from a video and save it as MP3:

ffmpeg -i {{path/to/video.mp4}} -vn {{path/to/sound}}.mp3

  • Save a video as GIF, scaling the height to 1000px and setting framerate to 15:

ffmpeg -i {{path/to/video.mp4}} -vf 'scale=-1:{{1000}}' -r {{15}} {{path/to/output.gif}}

  • Combine numbered images (frame_1.jpg, frame_2.jpg, etc) into a video or GIF:

ffmpeg -i {{path/to/frame_%d.jpg}} -f image2 {{video.mpg|video.gif}}

  • Quickly extract a single frame from a video at time mm:ss and save it as a 128x128 resolution image:

ffmpeg -ss {{mm:ss}} -i {{path/to/video.mp4}} -frames 1 -s {{128x128}} -f image2 {{path/to/image.png}}

  • Trim a video from a given start time mm:ss to an end time mm2:ss2 (omit the -to flag to trim till the end):

ffmpeg -ss {{mm:ss}} -to {{mm2:ss2}} -i {{path/to/video.mp4}} -codec copy {{path/to/output.mp4}}

  • Convert AVI video to MP4. AAC Audio @ 128kbit, h264 Video @ CRF 23:

ffmpeg -i {{path/to/input_video}}.avi -codec:a aac -b:a 128k -codec:v libx264 -crf 23 {{path/to/output_video}}.mp4

  • Remux MKV video to MP4 without re-encoding audio or video streams:

ffmpeg -i {{path/to/input_video}}.mkv -codec copy {{path/to/output_video}}.mp4

  • Convert MP4 video to VP9 codec. For the best quality, use a CRF value (recommended range 15-35) and -b:v MUST be 0:

ffmpeg -i {{path/to/input_video}}.mp4 -codec:v libvpx-vp9 -crf {{30}} -b:v 0 -codec:a libopus -vbr on -threads {{number_of_threads}} {{path/to/output_video}}.webm