Výukový program FFMPEG Obrázky do videa

Ffmpeg Images Video Tutorial



Máte tedy zájem vytvořit video na základě obrázků? S tímto úkolem vám může pomoci také software Linux, a zejména jeden: ffmpeg.

Pokud to ještě nevíte, ffmpeg je software, který provádí konverzi a úpravy videa a zvuku pomocí filtrů. Je to ten, který podporuje největší počet různých kodeků. Pokud jste již používali VLC, pak víte trochu ffmpeg: VLC používá ffmpeg k dekódování co největšího počtu videí.







Ale než budu točit videa, musím vám sdělit několik konceptů, abyste nezabloudili.



Integrovat obrázky do videa není opravdu těžké. A má to svůj důvod: videa jsou založena na sérii obrázků. Nech mě to vysvětlit.



Video (dokonce i video z YouTube) je sada statických obrázků, které se rychle mění. V kinech a kinech je mezi každým obrazem černý obraz, protože mechanismus musí přepínat rám a byl příliš pomalý. Lidským okem to ale není patrné, protože mechanismus je dostatečně rychlý a kvůli optickému klamu.





Počítače ale tento problém nemají. LCD obrazovky stále zobrazují poslední obrázek. Každopádně z každého obrázku videa můžete ve skutečnosti extrahovat nezávislý obrázek. Když obrázek pochází z videa, nazývá se rám . Přesně to vidíte, když pozastavíte video - a když to uděláte, tváře obecně nevypadají dobře!

Videa z USA a obecně obsahují 30 snímků za sekundu - trochu si uvědomit Je to 1 800 snímků za minutu, 54 000 snímků za půl hodiny videa, popř 108 000 snímků za hodinu . To je hodně a proto si někdy říkáte, jak může jeden obrázek vážit 1 MiB, ale jedna minuta videa 1080p může vážit pouze 15 MiB.



Počet obrázků za sekundu se nazývá snímková frekvence . S rychlostí 30 snímků za sekundu měníte obraz každý 33 milisekund . Konkrétně, pokud byste chtěli dělat jednu minutu videa pouze na základě vašich obrázků, museli byste mít 1 800 souborů JPG nebo PNG za minutu.

To je užitečné, pokud chcete provádět pokročilé úpravy videa bez použití video nástrojů: stačí vytvořit efekty pro každý snímek pomocí efektů a pak je můžete spojit do videa. Někdy ale chcete, aby statický obrázek vydržel, protože ve videu chcete nepohyblivý obrázek.

Dobře, nyní je čas nainstalovat ffmpeg.

Nainstalujte ffmpeg na Linux

V závislosti na vaší distribuci může být instalace ffmpeg snadná nebo malá ošidné . Je to bezplatný software se zdrojovým kódem veřejně dostupným, ale protože dokáže dekódovat nebo kódovat patentované formáty jako MP4, některé distribuce jej vylučují ze svých úložišť. Například v Red Hat Enterprise Linux, CentOS a Fedora potřebujete RPMFusion kvůli patentům. Všechny verze Debianu a Ubuntu před 16.04 navíc distribuují falešnou verzi ffmpeg na základě nelegitimní vidlice.

Ale než si pospícháte s instalací, možná už je nainstalována správná verze? Pojďme vyzkoušet:

$ffmpeg -verze
ffmpegverze X.XXXXXXXX Copyright(C) 2000-2018vývojáři FFmpeg

Pokud po autorských právech uvidíte vývojáře FFmpeg, máte původní verzi FFMpeg, nemusíte nic dělat. Pokud však vidíte:

$ffmpeg -verze
ffmpegverze X.XXXXXXXX Copyright(C) 2000-2018vývojáři Libav

Pak to znamená, že používáte a Vidlička ffmpeg s názvem Libav. Debian a starší verze Ubuntu tiše nahradit FFMpeg Libavem. Pokud vám to řekne, že je to zastaralé, ignorujte to, je to zavádějící. Pokud máte vidlici nainstalovanou, je načase odstranit vaši verzi ffmpeg a poté podle níže uvedeného průvodce nainstalujte správnou verzi. Asi takto:

$sudo apt-get odstranit ffmpeg

Nyní ji tedy možná ještě nemáte nainstalovanou nebo máte špatnou verzi, je čas ji nainstalovat!

Ve Fedoře, Red Hat Enterprise Linux (RHEL) a CentOS přejděte na https://rpmfusion.org/Configuration a ve svém počítači povolte bezplatné úložiště RPMFusion. Pokud jste ve Fedoře, proveďte následující:

$sudodnfNainstalujte ffmpeg

A pro CentOS a Red Hat Enterprise Linux proveďte:

$sudo mňam instalace ffmpeg

To je pro systémy založené na Fedoře a Red Hat vše, je nainstalováno.

Ve všech verzích Debianu (a všech derivátů) a Ubuntu před 16.04 potřebujete získat statickou verzi FFMpeg z oficiálního webu. Jít do https://ffmpeg.org/download.html#build-linux a níže Statické buildy Linuxu , klikněte na 32bitové a 64bitové pro jádro 2.6.32 a vyšší . Potom níže vydání: X.X.X , stáhněte příslušný archiv, rozbalte jej a pomocí CLI můžete spustit spustitelné soubory umístěné v extrahované složce.

Pro ty, kteří používají Ubuntu 16.04 a vyšší, je to jednodušší, stačí udělat:

$sudo apt-get install ffmpeg

Fuj! Konečně bychom měli být v pohodě! Než budete pokračovat, naposledy proveďte test s:

$ffmpeg -verze

ffmpeg verze X.XXXXXXXX Copyright (c) 2000-2018 vývojáři FFmpeg

Vytvářejte videa z mnoha obrázků

Pro náš první příklad tedy vytvoříme video z Obrázky, kde každý obrázek představuje rámec, který se zobrazí po dobu 33 milisekund. Dovolte mi, abych vám nejprve ukázal příkaz.

** MP4 a H.264 jsou patentované kodeky, zkontrolujte, zda máte právo s nimi kódovat. **

$ffmpeg-r: v30 -i 'Penguins - %05d.png'-codec: v libx264-přednastavenívelmi pomalý
-pix_fmt yuv420p-crf 28 - 'Penguins.mp4'

Dobře, tak jak to funguje? Aby tento příkaz fungoval, musíte mít mnoho snímků, kde každý snímek je soubor jako Penguins - 00043.png. Tento příkaz pak zkombinuje všechny snímky v pořadí rychlostí 30 FPS. Penguins - 00043.png tedy předchází Penguins - 00044.png ve videu a ffmpeg to bude respektovat. Pokud tedy máte 120 snímků, vaše video bude trvat 4 sekundy.

Existuje několik požadavků na formát, šířku a výšku, aby snímky fungovaly. Pokud tato pravidla nedodržíte, ffmpeg může ignorovat některé obrázky nebo zrušit proces vytváření videa. Tak:

  • Všechny snímky ve stejném videu musí sdílet:
    • Šířka výška
    • Barevná hloubka
  • Snímky by měly mít standardní velikost videa, například:
    • 640 ✕ 360 (360 p)
    • 853 ✕ 480 (480 p)
    • 1280 ✕ 720 (720p)
    • 1920 ✕ 1080 (1080p)
    • 4096 ✕ 2306 (4K)
  • Upřednostňujte snímky ve formátu PNG než JPG
  • Vyhněte se průhlednosti nebo alfa ve formátu PNG

Příkaz pak bude nějakou dobu trvat, než převede video, optimalizuje jeho výkon a vytvoří z vás soubor MP4 s názvem Penguins.mp4.

Nyní možná budete chtít mít statický obrázek zbývající déle než 33 milisekund. V tomto případě je vaše video spíše prezentací a není to stejná záležitost. Chcete -li tak učinit, můžete nejprve pro vstup dát pomalejší snímkovou frekvenci a poté příkazu ffmpeg duplikovat snímky ve výstupu. Ne, YouTube a Vimeo opravdu neocení video o rychlosti 0,5 FPS, i když změníte obrázek každé 2 sekundy.

Udělejme to raději:

$ffmpeg-r: v1/5 -i 'Penguins - %05d.png'-r: v30-codec: v libx264-přednastavenívelmi pomalý
-pix_fmt yuv420p-crf 28 - 'Penguins.mp4'

Tam jedeme! ffmpeg způsobí, že se každý z vašich obrázků objeví na 5 sekund, ale ve videu 30 FPS. Nedělejte si starosti s upozorněním na duplicitní snímky: je to to, co chcete.

Závěr

Nyní jste - nový Spielberg - možnost vytvářet vlastní videa. Můžete provádět jednoduchou prezentaci nebo připravit video snímek po snímku pomocí editoru obrázků, jako je GIMP, ale můžete také těžit z velké sady efektů a kodeků, které najdete ve ffmpeg.

Udělejte si čas na experimentování - jste koneckonců umělec - a vytvořte video, které bude mít na YouTube miliony zhlédnutí!