wiki/help/media/ffmpeg.md

34 lines
984 B
Markdown

# Encoders:
* h264: SW - `libx264`, HW - `h264_vaapi`.
* h265: SW - `libx265`, HW - `hevc_vaapi`.
# VHS to h264.
```bash
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.
```bash
ffmpeg -i video.mkv -i audio.mp3 -map 0 -map 1:a -c:v copy -shortest output.mkv
```
# Replace audio.
```bash
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.
```bash
ffmpeg -i video.mkv -attach cover.jpg -metadata:s:t:0 mimetype=image/jpeg -c copy out.mkv
```
# Hardware vaapi.
Encode only:
```bash
ffmpeg -vaapi_device /dev/dri/renderD128 -i video.mkv -vf 'format=nv12,hwupload' -c:v hevc_vaapi out.mkv
```
Decode + encode:
```bash
ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i video.mkv -c:v hevc_vaapi out.mkv
```