No jaa. Tutkitaanpa:Kielitunnukseton on ns. oletustekstitys, joka voidaan valita listasta ruksittamalla. Ensimmäisestä löydetystä ruksitetusta tulee oletustekstitys, ja noiden järjestystä voidaan muuttaa ikkunan nuolinappuloilla, joten oletukseksi saa minkä tahansa tekstityksen. Kielitunnuksettoman voi myös jättää lataamatta kokonaan ottamalla ruksin pois oletuksesta, ja lataamalla pelkästään kaikki saatavilla olevat (kielitunnuksellisena). Oletukseenkin voidaan kyllä lisätä kielitunnus omalla ruksillaan.
Meillä on x.mkv ja samassa kansiossa x.srt. Avataan x.mkv vlc:llä. Tekstiraita käytössä, kieli tuntematon.
Nimetään x.srt -> x.fin.srt. Kokeillaan taas. Tekstiraita käytössä, suomenkielinen.
Ympätään tekstiraita pakettiin:
ffmpeg -i x.mkv -i x.fin.srt -c copy y.mkv
Avataan y.mkv. Tekstiraita ei käytössä, kieli tuntematon. Siis vaikka ympättiin x.fin.srt, eli tiedostonimen kielikoodilla ei ole nyt merkitystä.
Uusi yritys:
ffmpeg -y -i x.mkv -i x.fin.srt -c copy -metadata:s:s:0 language=fin y.mkv
Taas avataan y.mkv, ja kas: Tekstiraita käytössä ja kieli on suomi.
Eli siis jos ympätään/muxataan, pitää käyttää metadata-optiota.
Paitsi jos: Jos tekstiraita muxataan imuroinnin yhteydessä, kuten laturi-ohjelma on aina tehnyt, niin tekstiraita enabloituu eli saa 'default track"-attribuutin (sanoo mkvtoolnix). Kieli pitää nytkin ilmoittaa ffmpegin metadata-optiolla.
Yhteenveto: Ei ole mitään syytä olla käyttämättä kielikoodia, ja metadata-optio on muxatessa aina tarpeen.
Mutta varmaan pitää paikkansa, että useimmat viewerit valitsevat oletusarvoisesti ensimmäisen tekstiraidan tai jossain järjestyksessä ensimmäisen ulkoisen tekstitiedoston, ainakin jos ei default track -attribuutilla ole muuta määrätty.
Huom: Sitten kun ympättäviä tekstiraitoja on useita, niin asia hieman mutkistuu. Katso viestiä #1668.
Lisäys: Jos meillä on x.mkv:n kanssa samassa hakemistossa sekä kielitunnukseton x.srt että tunnuksellinen x.fin.sfrt, niin tunnukseton pääsee vlc:n valintalistassa ensimmäiseksi ja tulee siten valituksi. Paitsi jos käyttäjä on vlc:n tekstiasetuksissa määritellyt, että ensisijainen tekstityksen kieli on fin. Tällöin valituksi tulee se tunnuksellinen. Eli siis tekstityskielen valinta on viewerin asia, kunhan valittavissa olevat kielet on oikein identifioitu.
Viimeksi muokattu: