[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4758: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3893)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4760: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3893)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4761: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3893)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4762: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3893)
linuxtv.fi • View topic - Tvheadend, Yleisradion tekstitykset ja tallentaminen

Tvheadend, Yleisradion tekstitykset ja tallentaminen

Vaihtoehtoja VDR:lle? Keskustele vapaasti muista vastaavista järjestelmistä

Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby antoine » 14.09.2011 23:20

Useimmat niistä, jotka em. ohjelmiston parissa ovat hääränneet, ovat varmaankin havainneet tämän kolmikon jokseenkin ongelmalliseksi. DVB-tekstit näkyvät moitteettomasti toistettaessa suoraa lähetystä (ainakin xbmc:llä). Toisaalta tekstitykset otetaan nykyisin mukaan myös matroska-tallenteisiin uudenlaisina S_DVBSUB-tyyppisinä tekstitysraitoina. Tästä ongelmat kuitenkin oikeastaan vasta alkavat, sillä moinen formaatti on useimmille mediatoisto-ohjelmistoille ilmeisesti jokseenkin tuntematon käsite.

Nähdäkseni helpoin ja suurimman yhteensopivuuden varmistava ratkaisu on muuntaa tekstitysraidat varsin yleisesti tunnettuun (ja tuettuun) VobSub-muotoon. Koska VobSub (samoin kuin DVBsub) on rasterimuotoinen formaatti, vältytään toisaalta hankalalta tekstintunnistusoperaatiolta ja voidaan toisaalta säilyttää tekstit (lähes) alkuperäisessä asussaan halki koko tallennus-varastointi-toisto-ketjun.

Edellä kuvattu muunnos voidaan toisaalta toteuttaa ainakin kahdella tavalla: ensinnäkin voidaan muuntaa TV-lähetyksen mukana saapuva bittivirta sitä mukaa kuin sitä vastaanotetaan ja kirjoittaa matroskaan suoraan S_VOBSUB-raitoja; tällöin on muokattava Tvheadendin omaa koodia. Toiseksi voidaan antaa tekstitysten tallentua kuten nytkin ja muuntaa ne vasta jälkikäteen; tähän tarvitaan oma ohjelmistonsa.

Mukana olevat puukotustiedostot ovat oma, alustava ratkaisuni tähän ongelmaan. Huomatkaa, että kirjoittamani dvbsub-dekooderi (ks. kumpaankin pakettiin sisältyvät tiedostot dvbsub.c ja .h) on rakennettu vain Suomen ja YLE:n olosuhteisiin: se ei toteuta mitenkään täydellisesti virallista DVB-tekstitysspesifikaatiota. Jo Yle HD -kanavakin poikkeaa sen verran normaalitarkkuuksisista sisaristaan, ettei dekooderi tulkitse siellä lähetettyjä tekstejä täysin oikein. Jos kuka viitsii, laajentakoon toteutusta erityisesti tältä osin. Vaikka koodini kommentointi onkin ulkomaankielistä, ei sitä nykyisellään juuri kannata siis ulkomaille tarjota.

Lisäys: kolmaskin ratkaisu alkuperäiseen ongelmaan tulee kysymykseen, nimittäin videon uudelleenkoodaaminen ja DVB-tekstitysten polttaminen siinä yhteydessä sellaisenaan kiinni kuvaan. Tämä edellyttää omia muokkauksiaan videon muunto-ohjelmistoon. Itse muunnan kaikki tallennukset automaattisesti (h.264+aac-) mp4-muotoon HandBraken avulla; alla on kyseinen puukotus toteutettu siihen - tällä erää DVB-tekstit ovat kuitenkin käytettävissä vain komentorivikäyttöliittymästä (HandBrakeCLI) käsin. Huomatkaa, että molemmat muut patchit jäävät tarpeettomiksi, jos tämä on käytössä.

Tvheadend - tallenna s_dvbsubin sijasta s_vobsub-raitoja -- git-versio 19.7.2017:
tvheadend-20170719-vobsub.diff.tgz
(8.8 KiB) Downloaded 20 times


Mkvextract (mkvtoolnix) - s_dvbsub-raitojen muuntaminen ja kirjoittaminen .idx- ja .sub-tiedostoiksi (komennolla 'mkvextract tracks') -- git-versio 19.7.2017:
mkvtoolnix-20170719-dvb2vobsub.diff.tgz
(11.19 KiB) Downloaded 16 times


HandBrake - tuki s_dvbsub-raitojen lukemiseen (ffmpeg:n kautta) ja kiinni polttamiseen (komentoriviltä) -- git-versio 1.8.2017:
handbrake-20170801-dvbsub.diff.tgz
(10.57 KiB) Downloaded 17 times


XBMC - ks.

9/2011: tvheadend- ja mkvtoolnix-patchien päivitys: koodin rakennetta, muistinkäsittelyä ja standardinmukaisuutta parannettu; HandBrake-patch lisätty
4/2012: XBMC-linkki lisätty
7/2012: paikkaukset päivitetty
7/2014: paikkaukset päivitetty
7/2015: paikkaukset päivitetty, ruudulle jämähtävät tekstit korjattu
7/2016: paikkaukset päivitetty
7-8/2017: paikkaukset päivitetty
Last edited by antoine on 01.08.2017 13:05, edited 10 times in total.
tvheadend @arch linux @rpi → itunes @imac → apple tv
antoine
Asiantuntija
 
Posts: 132
Joined: 20.04.2009 18:29
Location: Hämeenkyrö

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby Köntzä » 29.11.2011 23:50

Moi,

Mihin mkvtoolnix-versioon olet tuon puukotuksen tehnyt?
EDIT: DUH, siinähän se patch-filussa näkyy...

ps. Hienoa, että olet tehnyt tämän työn! Kohta vuosi sitten 'erehdyin' käyttämään jonkun aikaa tvheadendiä, mutta huomasin juurikin tuon tekstitys-ongelman itselleni ylitsepääsemättömäksi ja palasin VDR:ään. Muuten kyllä tykkäsin tvheadendistä, web-ui oli jonkinverran mukavampi käyttää kuin VDR:n vastaavat. Ehkä joskus kokeilen taas tvheadendiä kun DVBSUB on laajemmin tuettu muissa softissa.
--
jussi
Köntzä
Vastasyntynyt
 
Posts: 9
Joined: 08.01.2007 16:55
Location: Joensuu

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby antoine » 02.12.2011 14:29

Terve,

itselläni on tätä nykyä tuo handbrake-patch ihan tuotantokäytössä asenna-ja-unohda-periaatteella - tekstit näkyvät täsmälleen samoin niin yleltä kuin mainoskanaviltakin nauhoitetuissa ohjelmissa ja missä toisto-ohjelmistossa tahansa.

Eivät kai tekstitykset VDR:n tekemissä ts-tallenteissa ole muille ohjelmille mitenkään sen helpompia näyttää - samassa dvbsub-formaatissahan nekin ovat.

Pistänpä muuten tännekin puolelle linkin vdr-tallenteiden tekstien käsittelyyn:
tvheadend @arch linux @rpi → itunes @imac → apple tv
antoine
Asiantuntija
 
Posts: 132
Joined: 20.04.2009 18:29
Location: Hämeenkyrö

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby Köntzä » 02.12.2011 21:34

--
jussi
Köntzä
Vastasyntynyt
 
Posts: 9
Joined: 08.01.2007 16:55
Location: Joensuu

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby antoine » 03.12.2011 16:04

Hyvä on sitten jos osaa. Vlc ei sitten ilmeisesti tarvitsisi kummoistakaan puukottamista jotta sen saisi tulkitsemaan oikein myös mkv-raidoista tulevaa dvbsub-dataa.

Koitapas lisätä mkvextract-komennon alkuun ympäristömuuttuja 'SUB_VERBOSE=3'. Tällöin ohjelman pitäisi tulostaa tietoa löytämistään teksteistä. Jos nappaat ffmpegillä sopivankokoisen pätkän videota sellaiselta kohdalta, missä tekstejä pitäisi olla, ja pistät jonnekin saataville, voisin tutkia asiaa.
tvheadend @arch linux @rpi → itunes @imac → apple tv
antoine
Asiantuntija
 
Posts: 132
Joined: 20.04.2009 18:29
Location: Hämeenkyrö

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby Köntzä » 05.12.2011 0:55

FYI: löytyihän se syy 0-tavuisiin sub-filuihin. Yritin mkvextractilla ottaa mkv-filusta ulos tekstistremia, joka mun koetiedostossa on italiankielinen tekstitys. Kun vaihdoin sen tilalle stream 3:n, niin johan tuli sub-filuunkin tavaraa. Eikun koodaamaan, notta saan muutkin tekstistreamit ulos videosta...

EDIT: ei pitäisi tällä ikää enää liian myöhään tehdä mitään liian vaikeaa :) Ei kait siihen sub-filuun mitään tule jos ko. streamissä ei ole mitään mitä sinne kirjoittaa...
--
jussi
Köntzä
Vastasyntynyt
 
Posts: 9
Joined: 08.01.2007 16:55
Location: Joensuu

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby vesajok » 17.01.2012 19:48

Lyhyt kysymys. Miten nuo tvheadendin patchit asennetaan?
vesajok
Vastasyntynyt
 
Posts: 1
Joined: 17.01.2012 19:42

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby antoine » 19.01.2012 8:25

tvheadend @arch linux @rpi → itunes @imac → apple tv
antoine
Asiantuntija
 
Posts: 132
Joined: 20.04.2009 18:29
Location: Hämeenkyrö

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby ae99 » 20.01.2012 0:47

ae99
Vastasyntynyt
 
Posts: 2
Joined: 20.01.2012 0:32

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby savis21 » 30.03.2012 15:02

savis21
Säätäjä
 
Posts: 210
Joined: 29.03.2009 14:09

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby ae99 » 10.04.2012 17:18

ae99
Vastasyntynyt
 
Posts: 2
Joined: 20.01.2012 0:32

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby milahti » 14.04.2012 15:29

milahti
Vastasyntynyt
 
Posts: 1
Joined: 14.04.2012 15:23

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby nm » 14.04.2012 15:55

nm
Johtava konsultti
 
Posts: 3160
Joined: 22.07.2005 3:00

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby antoine » 16.04.2012 13:08

Totesin, että Handbraken koodiin on hiljattain (tarkemmin sanoen svn-revisiossa 4546) tehty niin massiivisia rakenteellisia muutoksia, että esittämäni paikkaus ei ole ollenkaan triviaalisti sovellettavissa siihen - varhaisemmat versiot toimivat. Yllä esitetty xbmc- (tosiasiassa ffmpeg-) muokkaus muuten sisältyy myös tähän paikkaukseen.

Lisään linkin mainittuun xbmc-muokkaukseen ketjun ylimpään viestiin. Voitaisiinko ajatella, että tarkempi keskustelu xbmc:n kääntämisestä yms. siihen liittyvästä (kuten muistakin toisto-ohjelmistoista) käytäisiin sitten omassa ketjussaan.
tvheadend @arch linux @rpi → itunes @imac → apple tv
antoine
Asiantuntija
 
Posts: 132
Joined: 20.04.2009 18:29
Location: Hämeenkyrö

Re: Tvheadend, Yleisradion tekstitykset ja tallentaminen

Postby johu » 09.06.2012 17:10

johu
Vastasyntynyt
 
Posts: 2
Joined: 09.06.2012 16:36

Next

Return to Vaihtoehtoiset ohjelmistot

Who is online

Users browsing this forum: No registered users and 2 guests

cron