FFmpeg - több hang és felirat sávos film konvertálása Samsung TV számára.

írta: CPT.Pirk, 4 éve

Ez a bejegyzés leginkább magamnak szól, hogy meglegyen később is a tudás... :D De másnak is hasznos lehet.

Na a Samsung TV-k nem igazán játszanak le olyan hangsávot, mint pl. a DTS, sőt, teszik ezt úgy, hogy ha van másik hangsáv a fájlban akkor csak azt játsszák le, nem is mutatva, hogy van ott még valami. Ugye ez egy gyakori helyzet, hogy a magyar hang pl. AC3-ban van amit le tud játszani, de az angol hangsáv az valamilyen DTS lenne...

A problémára Linux alatt az FFmpeg használata a megoldás, ami mindent tud, csak a megfelelő kapcsolókat kell használni hozzá. Ez a bejegyzés azért született, mert a google-ben talált példák általában gagyin mutatják be a használatát, egyszerű fájlokon...

Ugye az MKV konténerben eléggé sok minden lehet, több kép, hang és felirat sáv is. Erre megoldás a -map funkció, mert alapból csak az első sávot látja mindenből az FFmpeg.

ffmpeg -i forrásfájl -threads cpu_szálak_száma -map 0:v -map 0:a -map 0:s -c:v copy -c:a:0 copy -c:a:1 eac3 -c:s copy célfájl

A -map kapcsolók azt mondják meg, hogy minden kép, hang és felirat sávra szükségem van. Ez után a 4 kapcsoló azt okozza, hogy mindent átmásolunk az eredeti fájlból, de a 2. hangsávot átkódoljuk eac3-al (dolby digital plus), amit már kezel a TV.
Mivel csak hangsávot kódolunk át, így a folyamat nem tart túl sokáig.