wiki/media/Ffmpeg.md
2024-09-25 20:08:22 +03:00

1.8 KiB

Ffmpeg. NOTE: Add info about av1/opus when I become sane again.

Encoders:

  • h264: SW - libx264, HW - h264_vaapi.
  • h265: SW - libx265, HW - hevc_vaapi.

VHS to h264.

ffmpeg -i 'concat:VTS_01_1.VOB|VTS_01_2.VOB|VTS_01_3.VOB|VTS_01_4.VOB|VTS_01_5.VOB' -c:v libx264 -c:a aac -standard NTSC -preset veryslow -vf yadif ./out.mkv

Add audio.

ffmpeg -i video.mkv -i audio.mp3 -map 0 -map 1:a -c:v copy -shortest output.mkv

Replace audio.

ffmpeg -i Episode\ S01E03.mkv -i RUS\ Sound/Episode\ S01E03.mka -c copy -map 0:v:0 -map 1:a:0 -shortest with_audio/Episode\ S01E03.mkv

Add thumbnail to mkv.

ffmpeg -i video.mkv -attach cover.jpg -metadata:s:t:0 mimetype=image/jpeg -c copy out.mkv

Hardware vaapi.

Encode only:

ffmpeg -vaapi_device /dev/dri/renderD128 -i video.mkv -vf 'format=nv12,hwupload' -c:v hevc_vaapi out.mkv

Decode + encode:

ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i video.mkv -c:v hevc_vaapi out.mkv

Add image to music (Album cover).

ffmpeg -i audio.flac -i image.png -map 0:a -map 1 -codec copy -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (front)" -disposition:v attached_pic output.flac

Scale down video.

ffmpeg -i input4kvid.mp4 -vf scale=1920:1080 output1080vid.mp4

This one may require using -2 or -4 in some cases.

ffmpeg -i input.avi -vf scale=720:-1 -c:a copy output.mkv // -1 for auto height.

For vaapi use scale_vaapi=-1:720.

Limit to specific CPUs.

taskset -c 0 ffmpeg...
taskset -c 0,2 ffmpeg...

Edit metadata.

ffmpeg -i input.mkv -codec copy -metadata "key=value" output.mkv

Cut video.

Drop -c:* to re-encode.

ffmpeg -i Input.mkv -ss 00:00:00 -t 00:15:00 -c:v copy -c:a copy Output.mkv