Newsgroup: it.media.video.produzione
Titolo: Dump dvb con interruzioni di segnale

Salute a tutti
Sto registrando delle trasmissioni dvb-t con linux, utilizzando il
comando tzap -r per sintonizzare e copiando poi lo strem direttamente
da /dev/dvb/adapter0/dvr0
Dopo un passaggio attraverso mencoder per utilizzare l'opzione -
forceidx i file vengono perfettamente sincroni.
Il problema è che spesso risultano più corti (in temini di tempo) di
quanto dovrebbero, probabilmente a causa di piccole interruzioni di
segnale durante la ricezione.
Perciò da una registrazione di mezz'ora può risultare un file lungo
1730 secondi (invece di 1800).
C'è un modo per ottenre registrazioni che riportino dei fotogrammi
vuoti quando manca il segnale, in modo che la lunghezza risulti quella
del tempo di registrazione?

 del tempo di registrazione?
Tecnicamente e' possibile guardando il timestamp del file TS, pero'
e' difficile trovare un software che lo faccia, anche perche' sinceramente
non ne capisco il motivo. Perche' ti serve tenerlo sincronizzato con
il tempo reale anche se la parte di filmato non c'e'?
Ciao,
 Luca

 il tempo reale anche se la parte di filmato non c'e'?
Perchè ho bisogno sapere a che ora è andato in onda  un determinato
spezzone.

 Pensi che sia la strada giusta?
Decisamente no.
Siccome in tutti gli stream MPEG (sia TS che PS) c'e' indicato il PTS
(Presentation Time Stamp) solitamente per tutti i pacchetti audio e per i
i pacchetti dove inizia una sequenza di immagini (un GOP). Con mplayer,
premendo il tasto "o", ti viene visualizzato il PTS. Se non ricodifichi il
filmato, non c'e' alcun problema perche' basta fare la differenza tra il
PTS corrente e quello iniziale.
Se, invece, ti occorre ricodificare, bisognerebbe estrarre i PTS (con
bbinfo, ad esempio) contando anche i fotogrammi presenti
(picture_start-code) e creare un file di sottotitoli da abbinare al file
ricodificato. Tendenzialmente, poi, sarebbe meglio lasciare solo quelli
che ti interessano, altrimenti avrai un sottotiolo ogni secondo....
Credo sia questa la strada da percorrere...
Ciao!
  Luca

 Credo sia questa la strada da percorrere...
Quindi, se ho ben capito, tu ipotizzi la creazione di un file che
mantiene il difetto di quelli attuali (è più corto della durata della
registrazione) ma che contenga una traccia di sottotitoli con
l'indicazione dell'orario di messa in onda.
mumble mumble
Mi sa che mi hai messo sulla strada giusta. Se non ricordo male i file
dei sottotitoli sono testuali, quindi non dovrebbe essere difficile
crearli e muxarli dentro all'mpeg definitivo.
Ti terrò aggiornato. Per ora grazie.

 PTS corrente e quello iniziale.
Effettivamente non ho alcun bisognoi di ricodificare
Ho fatto qualche esperimento. Effettivamente se non ricodifico
utilizzando mplayer e premendo il tasto 'o' posso vedere scorrere il
tempo originale e questo è un grossissimo passo avanti.
A questo punto però ho bisogno di tagliare i filmati sulla base di
quel tempo, ma se uso ffmpeg -ss o mencoder -ss, dando come tempo la
differenza tra il primo pts e quello che mi interessa, ottengo invece
un taglio operato sulla effettiva durata del filmato. Perciò torno al
problema iniziale.
Esiste un software che operi i tagli in base al pts invece che alla
effettiva durata del filmato?

Ehm... hop usato un altro account ma sono sempre io.
Fammi sapere.

 effettiva durata del filmato?
Se sei informatico, puoi farlo te modificando leggermente bbinfo: gli
aggiungi 2 parametri (PTS iniziale, PTS finale o durata) e gli fai
scrivere lo stream su un file mentre fa la scansione dei PTS.
Se non sei informatico, fai sapere che te lo modifico...
Ciao!
  Luca


Non conosco bbinfo. Ho provato a cercare ma non lo trovo.
Gira su linux o su windows?
Comunque ho scoperto che anche ffmpeg è in grado di tagliare sulla
base del pts.
E' sufficente non ricodificare i files e specificare i secondi di
partenza e di durata prima del file di input.
in pratica:
ffmpeg -ss 00:05:36 -t 60 -i miodump.ts
è diverso da:
ffmpeg -i miodump.ts -ss 00:05:36 -t 60
Nel primo caso il riferimento temporale viene pre4so usl file
originale (quindi sui PTS della trasmissione). Nel secondo caso sul
file già ricodificato. Per questa cavolata ho perso un sacco di tempo
e mi apprestavo a risolvere con la dinamite quando bastava girare la
maniglia.
Ti ringrazio comunque per l'offerta di aiuto. Se avrò problemi con
ffmpeg ne riparleremo.