ugrás a tartalomhoz

Online lejátszó SRT/ASS olvasással

KMartinR4 · 2016. Szep. 26. (H), 21.08
Főként online filmek nézése közben jutott eszembe, hogy nem igen találkoztam még olyan megoldással, ahol a felirat - amennyiben idegen nyelvű hangsávról beszélünk - nem a videóra volt ráégetve, hanem külön bekapcsolható lett volna.

A kérdés egyelőre elméleti, azonban később szeretnék majd vele kezdeni valamit. Lehetséges lenne-e, hogy egy HTML5 lejátszó, a videó aktuális időpontjához tartozó feliratot, akár egy formázást is tartalmazó ASS fájlból olvassa ki?

És igény szerint megjeleníthesse/elrejthesse/más fájl beolvasásával lecserélje a feliratot.

ASS fájlnál nyilván bonyolultabb a helyzet, mivel a formázást a felirat blokkra ilyenkor valahogy rá is kell írni, de mondjuk egy egyszerűbb SRT kiterjesztésű feliratnál, megoldható lenne-e?
Miként lehetne érzékelni azt, hogy a videó éppen hol tart, és hogy az adott időtartamhoz tartozó sorokat - amennyiben be van kapcsolva - megjelenítse? Akár több fájl közötti választási lehetőséggel.

Valamilyen módon megoldhatónak kell lennie, hiszen a youtube is képes feliratok megjelenítésére, azonban azokat adatbázisból olvassa ki a lejátszó, engem azonban a fájl olvasás része érdekelne jobban, főként az ASS fájlok formázási lehetősége miatt. (Ha feltételezzük, hogy a script képes a szöveget CSS nyelvre "lefordítani".)

A válaszokat előre is köszönöm.
 
1

Ha HTML5 akkor a feliratokat

Endyl · 2016. Szep. 26. (H), 22.24
Ha HTML5 akkor a feliratokat elvileg megjelenítheted track tagek segítségével, amikben .vtt formátumú feliratokat lehet használni.

Így már csak az a dolgod, hogy keress vagy írj egy srt/ass-ból vtt-be konvertáló programot. Meg utánanézni, hogy a váltogatást mennyire biztosítják/kezelik a böngészők.
2

Egy kicsit OFF, de szerintem,

smokey · 2016. Szep. 27. (K), 16.16
Egy kicsit OFF, de szerintem, hogy honnan jön az adat az részlet kérdése, és egyébként is költségesnek tűnik minden lejátszás esetében parse-olni egy fájlt. Hatékonyabb, ha olyan formára hozod a feliratokat, amit a kliens már egyből tud hasznosítani, Értsd: feltöltéskor érdemes parse-olni, létrehozni egy azonnal hasznosítható állományt, amit később is újra lehet használni. Mindig a lekérdezés legyen gyors, ne a létrehozás, módosítás.
3

Értem a gondolatmenetet

KMartinR4 · 2016. Szep. 30. (P), 20.15
Értem a gondolatmenetet, csak a vtt-s megoldás alapvető megjelenésével, ahogy utánanéztem az a probléma, hogy teljesen máshogy kell formázni
- Ha a lejátszón belül van (ebben az esetben, egyes stílusok testre szabhatóbbak, egyesek kevésbé, a pozicionálás teljesen különbözik - ami mondjuk érthető -, de a feliratnak is mindenképp van háttere, nem lehet körvonalazni)
- Vagy ha a lejátszón "kívülre" akarom helyezni, mondjuk fölé egy réteggel akarom megjeleníteni, akár azért, hogy vizsgálóban meg tudjam nézni, milyen formázások érvényesek rá, akár hogy az említett háttértől szabaduljak (ebben az esetben viszont a formázások elvesznek alapból, tehát ismételten kelleni fog egy böngészőfüggetlen újraolvasás, amivel rá tudom adni ismét ezeket a formázásokat)

Egyébként támogatnám, hogy elég legyen egyszer, pusztán feltöltésnél átkonvertálni a fájlt, viszont a feliratcsere nem oldható meg ilyen egyszerűen, sajnos. Legalábbis nem minden böngészőnél van visszamenőleges támogatása.
Legalábbis utánanéztem amennyire tudtam, és nagyon úgy tűnik, hogy ha akár csak a feliratot kétsávossá akarom tenni, akkor már lejátszásnál is végig kell parse-olni az adott feliratfájlt, legkésőbb a váltás pillanatában.
Értelem szerűen később ezt lehet gyorsítani és optimalizálni, de először szeretnék az alapjaival tisztában lenni.

De majd még utánanézek úgyis, egyelőre még nem aktuális ennek a megvalósítása.