story of * ali videofuuuu

Danes sem pol delavnika izgubil za na videz enostavno nalogo vgrajevanja podnapisov v slikovno sled treh videov. Tako da je vse v eni datoteki in se uporabnikom ni treba truditi z zapletenim nalaganjem podnapisov.

 

In to že drugič. 😐 Prvič sem si zadal vse narediti neposredno s ffmpeg in po parih urah obupal. Pretvornik v VLC ni bil nič boljši in na koncu mi je nekako uspelo z avidemux.

Tokrat sem spet imel opravka s filmčki iz serije Story of Stuff, zato sem približno vedel, kako postopati. Pohvalno so na voljo pod Creative Commons, ampak zvočna sled je v nepodprtem formatu — nimamo še encoder-ja, niti ne dela kopiranje sledi. Že z izbiro video encoder-ja je treba biti pazljiv, saj se avidemux sesuva kot za stavo, sploh noče začeti pretvorbe ali pa popači zvok (zvito parkrat samo drugo polovico!). Da je bila merica polna, se mi je pri parih pretvorbah še računalnik kritično pregrel in ugasnil.

 

Po mnogih poskusih in permutacijah je bil končni postopek tak:

  1. V avidemux sem dodal filter Subtitler in zapekel podnapise v soe-brez.avi (brez zvoka)
  2. mplayer -vo null -ao pcm:file=soe.wav soe.avi # izluščil zvočno sled
  3. ffmpeg -i soe.wav -i soe-brez.avi -vcodec libx264 -threads 3 -y soe.mkv # združil oboje skupaj in spet stisnil

(v enem primeru je že avidemux zmogel pravilno dodati izvoženo zvočno sled)

 

Zadnji video je ponujal drugačen izziv. Imel je že zapečene podnapise, a ne naših, tako da samo prekrivanje ne bi bilo dovolj, ker napisi ne bi bili berljivi. V ponedeljek sem ugotovil, da avidemux podpira dodatno ozadje za podnapise (kot v filmih), kar bi rešilo vse skupaj. Še preden sem preveril, se je izkazalo, da že par različic te možnosti ni več! 😦 Razvijalci na IRC-u niso znali povedati ničesar koristnega niti ni noben hotel popraviti dokumentacije, zato sem bil pesimističen. Dovolj star avidemux bi težko našel (sploh statično povezanega), pa še potem mogoče ne bi delal.

A danes se mi je nasmehnila sreča. Med ročnim urejanjem projektnih datotek (zaradi omenjenega sesuvanja) sem opazil, da ima filter za podnapise med drugim shranjene tudi parametre:

“_useBackgroundColor=0″,”_bg_Y_percent=0″,”_bg_U_percent=0″,”_bg_V_percent=0”

Sumljivo primerno! 🙂 Prvega sem nastavil na 1, ostale pa vse na 50, kar je podnapisom dalo zeleno ozadje namesto pričakovanega sivega. Po imenih spremenljivk bi mi lahko bilo že takoj jasno, da vrednosti niso za barvni zapis v RGB, ampak YUV. Za željeno sivo sem potem dal samo Y na 60 in zadeva je bila rešena (Y predstavlja cel sivinski spekter).

 

A celo to ni optimalno, saj lepo dela v mplayer-ju, v VLC pa mi nagaja zvok. Pestrost formatov je tu samo ovira. Mogoče bi moral vse pretvoriti v prosti Ogg/Theora+Vorbis?

Advertisements