Cheat sheet for often used ffmpeg commands
← Home- Convert WebM to MP4 without audio (pseudo-GIF)
- Make video with cover and audio track for YouTube
- Convert any audio file to Vorbis
- Convert any video to WebM (two-pass way)
- Bash script to crop black lines from any video
- Proper way to listen to internet radio
Convert WebM to MP4 without audio (pseudo-GIF)
ffmpeg \
-i INPUT.webm \
-c:v libx264 -vf "pad=ceil(iw/2)*2:ceil(ih/2)*2" \
-an \
-preset slow \
-y OUTPUT.mp4
WebM files may have resolution not multiple of two, so it is necessary to use -vf "pad=ceil(iw/2)*2:ceil(ih/2)*2"
Make video with cover and audio track for YouTube
ffmpeg \
-loop 1 -framerate 1 -i cover.png \
-i INPUT.flac \
-c:v libx264 -preset slow -tune stillimage -crf 18 \
-c:a libfdk_aac -b:a 128k \
-shortest -pix_fmt yuv420p \
-y OUTPUT.mkv
Read more here
Convert any audio file to Vorbis
ffmpeg \
-i INPUT.flac \
-vn \
-c:a libvorbis -q:a 5 \
-y OUTPUT.ogg
Convert any video to WebM (two-pass way)
ffmpeg \
-i INPUT.mov \
-b:v 0 -row-mt 1 -crf 30 -f webm \
-an \
-pass 1 -passlogfile INPUT.mov.log \
-y /dev/null &&
ffmpeg \
-i INPUT.mov \
-b:v 0 -row-mt 1 -crf 30 \
-c:a libopus \
-pass 2 -passlogfile INPUT.mov.log \
-y OUTPUT.webm
Bash script to crop black lines from any video
#!/bin/bash
set -e
EXT=$(echo "$1" | sed 's/^\.\///g' | rg -o '\..+?$')
TMP=$(mktemp)
OUTFILE="$TMP$EXT"
CROP=$(ffmpeg \
-i "$1" \
-vf 'cropdetect=24:4:0' \
-y "$OUTFILE" 2>&1 |
pcre2grep -o 'crop=\d+:\d+:\d+:\d+$' |
tail -n1
)
ffmpeg -i "$1" -vf "$CROP" -crf 31 -y "$OUTFILE"
# optional
#mv "$OUTFILE" "$1"
Proper way to listen to internet radio
ffplay -nodisp https://station.waveradio.org/provodach
Last update: