ffmpeg

  • kompletní, multiplatformní řešením pro záznam, konverzi a stream zvuku a videa
  • jedná se o nástroj příkazového řádku
  • podporuje záznam a kódování z TV karty v reálném čase
  • grafické nadstavby (WinFF, Super, Avanti, AutoFF, Xpegt, GVC atd.)

Místo ffmpeg by se měl nyní raději používat avconv.

Instalace

sudo apt-get install ffmpeg

Převod (konverze) video formátů

Některé formáty (mpeg-1, mpeg-2, dv) umožňují spojit video soubory

ffmpeg -i zdroj1.avi -sameq zdroj1.mpg
ffmpeg -i zdroj2.avi -sameq zdroj2.mpg
cat zdroj1.mpg zdroj2.mpg > vysledek.mpg
ffmpeg -i vysledek.mpg -sameq vysledek.avi

Ořez libovolného multimediálního souboru (ss – pozice, t – délka):

ffmpeg -i zdroj.mpeg -ss 00:00:10 -t 00:20:00 vysledek.mpeg

Rozdělení AVI souboru na 700MB části (avisplit je součástí balíčku transcoce-utils):

avisplit -i zdroj.avi -s 700

Odstranění prokladu (deinterlace):

ffmpeg -i zdroj.mpeg -deinterlace -sameq vysledek.mpeg

DVD (MPEG-2 + AC3)

Převod .dv formátu na .mpeg s odstraněním prokladu (deinterlace):

ffmpeg -i zdroj.dv -deinterlace -target pal-dvd -aspect 16:9\
 vysledek.mpeg

Stejným příkazem je možné převést např. i formát NTSC na PAL.

SVCD

ffmpeg -i zdroj.dv -deinterlace -target pal-svcd -aspect 16:9\
 vysledek.mpeg

Divx5 (MPEG-4 + mp3)

Převod .vob formátu na .avi s odstraněním prokladu (deinterlace):

ffmpeg -i zdroj.vob -deinterlace -f avi -vcodec mpeg4 -b 800 -g 300\
 -bf 2 -ab 128 -acodec libmp3lame vysledek.avi

Místo kodeku libmp3lame je možné použít i kodek mp3.

Flash (flv, swf)

Převod .mpeg formátu na .flv

ffmpeg -i zdroj.vob -y -f flv -ar 44100 -ab 64 -ac 1 -acodec libmp3lame vysledek.flv
ffmpeg -i zdroj.vob -deinterlace -vcodec flv -aspect 16:9 -s 320x180\
 -b 800k -r 12 -minrate 0 -trellis 1 -ar 22050 -ab 32 -ac 1 -acodec\
 libmp3lame vysledek.flv

Místo kodeku libmp3lame je možné použít i kodek mp3 (při rychlém videu upravte např. -b 400k -r 25). Parametr -trellis 1 nastavuje optimalizaci pohybu (1 – až při výsledném kódování).

Převod (konverze) audio formátů

Získání audia např. z DVD

Získání zvukové stopy z .vob formátu:

ffmpeg -i VTS_01_1.VOB -ar 44100 /home/user/audio.wav
ffmpeg -i VTS_01_1.VOB -ar 22050 /home/user/audio.mp3

Poznámka:
Převod multimédií umožňuje i aplikace kdenlive.


FLV

Při problémech s převodem audio formátů můžete místo ffmpeg použít např. mencoder:

mencoder test.mpeg -of lavf -oac mp3lame -lameopts\
 abr:br=56 -ovc lavc -lavcopts\
 vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3\
 -srate 22050 -o test.flv

Aktualizace události onMetaTag ve video formátu FLV

Po "surovém" převodu videa do formát FLV lze video přehrávat, avšak nelze v něm přeskakovat. K tomu je nutné zaktualizovat událost onMetaTag v souboru FLV pomocí programu flvtool2:

flvtool2 -U test.flv

Níže uvedený skript vyžaduje dva parametry (vstupní a výstupní soubor). Mencoder překóduje zvuk na mp3 se 128 kbit/s CBR a video na 4000 kbit/s MPEG4. Video bude mít vždy velikost 640×480 a podle potřeby se obraz zmenší a do prázdných míst se vloží černé pruhy (výsledek bude mít přesně definovanou velikost i když má video nestandardní rozlišení):

#!/bin/sh
IN=$1
OUT=$2
mencoder $IN \
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=3000:vhq:keyint=250:threads=2:vpass=1 \
-oac mp3lame -lameopts cbr:br=128 \
-ffourcc XVID \
-vf scale=640:-2,crop=640:480,expand=640:480 \
-af resample=44100:0:0 \
-o $OUT