FFmpeg je bezplatný a open-source softwarový projekt sestávající z velké sady knihoven a programů pro práci s videem, zvukem a dalšími multimediálními soubory a streamy. Jedná se o multiplatformní sadu nástrojů, které fungují na Mac (OSX), Linuxu a Windows. Tento článek popisuje instalaci FFmpeg a příklady nejběžněji používaných příkazů pro získávání informací o videu, stříhání a rozdělování video souborů, konverzi videí do různých formátů včetně obrázků, správu zvuku, titulků a mnoho dalšího.
Instalace multimediálního rámce FFmpeg
Instalace FFmpeg je snadný a jednoduchý proces pro většinu běžných operačních systémů.
Ubuntu
Chcete-li nainstalovat FFmpeg na nejnovější Ubuntu Linux, použijte následující příkazy:
sudo apt-get update
sudo apt install ffmpeg -y

OSX
Pokud chcete nainstalovat FFmpeg na váš Mac, použijte správce balíčků Homebrew:
brew update && brew upgrade ffmpeg

Windows
Chcete-li nainstalovat FFmpeg na Windows, použijte Chocolatey:
choco install ffmpeg

Nejužitečnější příkazy FFmpeg
Nyní, jakmile nainstalujete FFmpeg, můžeme přejít na jeho nejčastěji používané příklady příkazů.
Pro účely tohoto článku použijeme bezplatné ukázkové video soubory.
Získat informace o videosouboru
Chcete-li získat podrobné informace o souboru videa, spusťte následující příkaz:
ffmpeg -i sample-mp4-file.mp4 -hide_banner

-hide_banner
argument skrývá informace o autorských právech.
Střih videa na malé klipy
FFmpeg má schopnost, která vám umožňuje zkrátit video na krátké kousky.
Použijeme následující argumenty:
-ss
parametr určuje s čas začátku s tamp vHH:MM:SS.ms
formát-t
argument určuje dobu trvání posledního klipu (t ime) v sekundách-codec copy
– parametr by zkopíroval všechny streamy bez překódování
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-ss 00:01:00.0 \
-codec copy \
-t 20 \
OutputVideo.mp4

Rozdělit soubor videa na více částí
Pomocí níže uvedeného příkazu rozdělte video na dvě nebo více částí.
V našem příkladu rozdělujeme soubor na dvě části:
- První část je dlouhá 30 sekund od začátku souboru (
-t
argument) - Druhá část bude obsahovat data videa od 50. sekundy do konce souboru (
-ss
argument)
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-t 00:00:30 \
-c copy OutputVideo-1.mp4 \
-ss 00:00:50 \
-codec copy \
OutputVideo-2.mp4

Vypnout zvuk
Pomocí následujícího příkazu zakážete zvuk výstupního souboru videa:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-an OutputVideo.mp4

Extrahovat zvuk z videa
Zvuk můžete z videa extrahovat provedením příkazu:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-vn \
-ac 2 \
-ab 187 \
-f mp3 \
Audio.mp3
Zde používáme následující možnosti:
-vn
zakáže nahrávání videa do výstupního souboru-ac
nastavuje počet a zvuk c hannels-ab
nastaví a zvuk b itrate na 187 kb/s- -f nastaví výstupní formát na mp3

Sloučit zvuk a video
Pro přidání zvukové stopy do video souboru použijte následující příkaz:
ffmpeg -i Audio.mp3 -i sample-mp4-file.mp4 \
-hide_banner \
OutputVideo.mp4

Převést video na obrázky
Pro převod videa na obrázky použijte níže uvedený příkaz:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
image%d.jpg

Převést obrázky na video
Všechny obrázky lze převést na video:
ffmpeg -f image2 -i image%d.jpg \
-hide_banner \
OutputVideo.mp4

Zkuste sami přidat zvuk do finálního klipu.
Převod MP4 na FLV
Chcete-li převést video soubor ve formátu MP4 na formát FLV, spusťte níže ukázaný příkaz:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-vn \
-ac 2 \
-ab 187 \
-f flv \
OutputVideo.flv

Převést FLV na MPG
Chcete-li převést soubor videa ve formátu FLV na formát MPG, spusťte níže uvedený příkaz:
ffmpeg -i OutputVideo.flv -hide_banner \
OutputVideo.mpg

Převést MPG na FLV
Zkopírujte níže ukázaný příkaz pro převod video souboru ve formátu MPG na FLV:
ffmpeg -i OutputVideo.mpg -hide_banner \
-ab 26k \
-f flv \
OutputVideo.flv

Převést video na animovaný GIF
Chcete-li převést soubor videa na animovaný soubor gif, použijte příkaz:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
Output.gif

Převést na formát CD/DVD
Použijte -target
zadejte pro vytvoření výstupního souboru ve formátu video CD nebo DVD.
Typ cíle podporuje vcd
, svcd
, dvd
, dv
a dv50
formáty, které mohou mít předponu pal-
, ntsc-
nebo film-
použít odpovídající standard:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-target film-vcd \
vcd_video.mpg

Vložit titulky
Pojďme vytvořit soubor s ukázkovými titulky (další informace o titulcích):
cat << EOF > subtitles.srt
1
00:00:00,000 --> 00:00:20,000
This is demo subtitle 1
2
00:00:20,000 --> 00:00:40,000
This is demo subtitle 2
EOF
Soubor s titulky můžete přidat k souboru videa přidáním samostatného souboru s titulky k příkazu:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-i subtitles.srt \
-c copy \
-c:s mov_text \
OutputVideo.mp4
Pokud chcete ve videu zobrazit titulky:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-vf subtitles=subtitles.srt \
OutputVideo.mp4

Extrahovat titulky
Chcete-li extrahovat titulky ze souboru videa, zkontrolujte, který stream byste měli použít jako první:
ffmpeg -i OutputVideo.mp4

Výstup indikuje, že titulky jsou dostupné v souboru ve streamu #0:2
.
Nyní je můžeme extrahovat pomocí následujícího příkazu:
ffmpeg -i OutputVideo.mp4 -hide_banner \
-map 0:2 subtitles.srt

Kde -map 0:2
určuje požadovaný proud.
Otočit video
A nakonec je zde příkaz k otočení videoklipu o 90 stupňů ve směru hodinových ručiček (použijte transpose=2
pro otočení proti směru hodinových ručiček):
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-filter:v 'transpose=1' \
OutputVideo.mp4

Shrnutí
FFmpeg je všestranný multimediální rámec, který nám umožňuje provádět různé různé operace s video soubory.
Pomocí FFmpeg můžete převádět video a audio soubory do jiných formátů, extrahovat obrázky a zvuk, otáčet videa, přidávat titulky, rozdělovat videoklipy na více částí a mnoho dalšího. V této příručce jsme ilustrovali, jak použít nejběžněji používané příkazy, abyste získali výsledky, které můžete potřebovat.