Co je FFmpeg?
FFmpeg je bezplatný projekt, který poskytuje kolekci programů pro zpracování dat, jako je zvuk, video a obrázky. Jedná se o nástroj, který se používá ke konverzi, nahrávání, streamování a přehrávání souborů.
FFmpeg podporuje širokou škálu formátů a kodeků a slouží k úlohám, jako je překódování, změna velikosti filtrů, přidávání vodoznaků nebo titulků , získávání zvuku z videa a slučování více videí nebo zvukových souborů. V systému Windows je také možné vytvářet soubory GIF pomocí aplikace FFmpeg a kombinovat soubory MP4 pomocí aplikace FFMPEG.
Program FFmpeg je široce používán v mediálním průmyslu a je k dispozici ve většině operačních systémů, včetně Windows, MacOS, Linuxu a Unixu.
Jak používat FFmpeg?
Zde je několik běžných příkladů použití FFmpeg:
- Převod souboru videa z jednoho formátu do jiného:
Kód: ffmpeg -i input_video .mp4 output_video.avi
Tento příkaz převede adresu
input_video.mp4
na adresu
output_video.avi
. FFmpeg automaticky vybere vhodné kodeky pro výstupní formát.
- Změna velikosti videa:
Kód: ffmpeg -i input_video .mp4 -vf scale=640:480 output_video .mp4
Tento příkaz změní velikost stránky
input_video.mp4
na rozlišení 640×480 pixelů a výsledek uloží na stránku
output_video.mp4
.
- Extrakce zvuku z videa:
Kód: ffmpeg -i input_video .mp4 -vn output_audio .mp3
Tento příkaz extrahuje zvukovou stopu z adresy
input_video.mp4
a uloží ji na adresu
output_audio.mp3
.
- Spojte dvě videa:
Kód: ffmpeg -i input_video1 .mp4 -i input_video2 .mp4 -filter_complex concat output_video .mp4
Tento příkaz spojí adresy
input_video1.mp4
a
input_video2.mp4
a výsledek uloží na adresu
output_video.mp4
.
- Přidání vodoznaku do videa:
Kód: ffmpeg -i input_video .mp4 -i watermark.png -filter_complex „overlay=10:10“ output_video .mp4
Tento příkaz přidá obrázek
watermark.png
do levého horního rohu stránky
input_video.mp4
s posunem o 10 pixelů a výsledek uloží na stránku
output_video.mp4
.
To je jen několik příkladů, co lze s FFmpegem dělat. FFmpeg je možné používat také v systému Android. Další informace získáte z online výukových programů, videostreamů nebo chatbotů s umělou inteligencí, jako je ChatGPT.
Jaké jsou užitečné příkazy FFmpeg pro úpravu videa?
- Stříhání videa:
Kód: ffmpeg -i input_video .mp4 -ss 00:00:05 -t 00:00:10 -c copy output_video .mp4
Tento příkaz ořízne adresu
input_video.mp4
tak, aby začínala na značce 5 sekund a končila po 10 sekundách, a výsledek uloží na adresu
output_video.mp4
.
- Přidání obrázku nebo překryvného videa do mého videa:
Kód: ffmpeg -i input_video .mp4 -i overlay_image.png -filter_complex „overlay=10:10“ output_video .mp4
Tento příkaz přidá soubor
overlay_image.png
jako překryvnou vrstvu na adresu
input_video.mp4
na souřadnicích (10, 10) a výsledek uloží na adresu
output_video.mp4
.
- Změna rozlišení videa:
Kód: ffmpeg -i input_video .mp4 -vf scale=1280:720 -c:a copy output_video .mp4
Tento příkaz změní rozlišení stránky
input_video.mp4
na 1280×720 pixelů a výsledek uloží na stránku
output_video.mp4
.
-
Přidání možností
textfile
areload
pro drawtext:
Kód: ffmpeg -i input.mp4 -vf „drawtext=fontfile=/path/to/font.ttf:textfile=text.txt:reload=1:fontcolor=white:fontsize=24:box=1:boxcolor=black@0.5:boxborderw=5:x=(w-text_w)/2:y=(h-text_h)/2“ -codec:a copy output.mp4
Jak přidat text do videa pomocí aplikace FFmpeg?
Chcete-li přidat text do videa pomocí aplikace FFmpeg, použijte filtr
drawtext
. Filtr
drawtext
umožňuje mimo jiné určit písmo, velikost, barvu a polohu textu.
Zde je základní příkaz pro přidání textu do videa pomocí filtru
drawtext
:
Kód: ffmpeg -i input_video .mp4 -vf „drawtext=text=’Hello World‘:fontfile=/path/to/font.ttf:fontsize=50:fontcolor=white:x=100:y=100“ -codec:a copy output_video .mp4
V tomto příkazu:
-
-i input_video.mp4
určuje vstupní videosoubor. -
-vf "drawtext=..."
určuje filtr videa, který se má použít, což je v tomto případě filtrdrawtext
. -
text='Hello World'
určuje text, který se má přidat do videa. -
fontfile=/path/to/font.ttf
určuje soubor písma, který se má použít. -
fontsize=50
určuje velikost písma v bodech. -
fontcolor=white
určuje barvu písma. -
x=100:y=100
určuje polohu textu ve videu, přičemž levý horní roh je v bodě (100, 100) pixelů. -
-codec:a copy
určuje kopírování zvukového proudu ze vstupního videa do výstupního videa bez opětovného kódování. -
output_video.mp4
určuje výstupní soubor videa.
Co je to soubor písma?
Možnost
fontfile
v aplikaci FFmpeg slouží k zadání cesty k souboru písma, který bude použit k vykreslení textu ve videu nebo obrázku.
Když ve FFmpeg používáte filtr
drawtext
k přidání textu do videa, zadejte možnost
fontfile
a vyberte konkrétní písmo, které se má pro text použít.
Jak zahrnout písmo do příkazu FFmpeg bez použití možnosti Fontfile?
Chcete-li použít písmo v příkazu FFMPEG bez zadání možnosti fontfile, použijte systémové písmo.
Zde je příklad příkazu, který používá písmo nainstalované v systému:
Kód: ffmpeg -i input_video .mp4 -vf „drawtext=text=’Hello World‘:fontcolor=white:x=100:y=100:font=Arial“ -codec:a copy output_video .mp4
Co je GitHub?
GitHub je webová platforma, která umožňuje vývojářům hostovat a spravovat své softwarové projekty, spolupracovat s ostatními a sledovat a spravovat změny svého kódu. Poskytuje nástroje pro správu verzí, sledování problémů, revizi kódu a týmovou spolupráci.
Jak přidat text „StackOverflow“ pomocí FFmpeg?
Kód: ffmpeg -i input_video .mp4 -vf „drawtext=text=’StackOverflow‘:fontfile=/path/to/font.ttf:fontsize=30:fontcolor=white:x=100:y=100“ -codec:a copy output_video .mp4
Zde jsou uvedeny jednotlivé možnosti tohoto příkazu:
-
-i input_video.mp4
určuje vstupní videosoubor. -
-vf "drawtext=text='StackOverflow':fontfile=/path/to/font.ttf:fontsize=30:fontcolor=white:x=100:y=100"
nastaví graf filtru videa pro kreslení textu. Tento příkaz vykreslí na video na souřadnicích (100, 100) text „StackOverflow“ pomocí souboru písma umístěného na adrese/path/to/font.ttf
, s velikostí písma 30 a bílou barvou písma. -
-codec:a copy
zkopíruje zvukový tok ze vstupního videa do výstupního videa bez opětovného kódování. -
output_video.mp4
určuje název výstupního souboru videa.
Jak zobrazit časové kódy nebo časové značky pomocí filtru Drawtext ve FFmpeg?
Kód: ffmpeg -i input_video .mp4 -filter_complex „drawtext=fontfile=/path/to/font.ttf:text=’%{pts/:hms}‘:fontsize=24:fontcolor=white:x=10:y=10“ -codec:a copy output_video .mp4
Zde jsou uvedeny jednotlivé možnosti tohoto příkazu:
-
-i input_video.mp4
určuje vstupní videosoubor. -
-filter_complex
umožňuje použít více filtrů v jednom příkazu. -
drawtext
je název filtru. -
fontfile=/path/to/font.ttf
určuje cestu k souboru písma, který chceme použít. -
text='%{pts/:hms}'
nastaví text, který se má zobrazit.%{pts/:hms}
je zástupný symbol, který bude nahrazen aktuálním časovým kódem ve formátu hodiny:minuty:sekundy. -
fontsize=24
nastaví velikost písma na 24. -
fontcolor=white
nastaví barvu písma na bílou. -
x=10
ay=10
nastavit pozici textu na videu. -
-codec:a copy
zkopíruje zvukový tok ze vstupního videa do výstupního videa bez opětovného kódování. -
output_video.mp4
určuje název výstupního souboru.