← Back to team overview

olrait team mailing list archive

Re: Rai 1, 2, 3, ..., n : morti infine anche gli url tradizionali (ci resta solo smooth-streaming)?

 

Effettivamente riceviamo solo i frammenti... è quello che si capisce
pure dal codice...
Pensi che il sotto-header di ogni frammento (MOOF) ci possa servire a qualcosa?

Il 17 giugno 2010 19.22, wilderkde <wilderkde@xxxxxxxxx> ha scritto:
>> Correggimi se sbaglio:
>>
>> sul sito dove si trova mp4split, si può scaricare anche il sorgente
>> del modulo apache che prepara i frammenti a partire dai file .isvm e
>> ce li rimanda rispondendo alle richieste
>> "http://url/*.isml/QualityLevels(x)/Fragments(video=x)"
>>
>> Per noi si tratta di implementare l'opposto di quello che fa questo
>> modulo... o no?
>
> In principio si, in pratica ci serve meno; come spiegato nel blog di alex zambelli
> un ISMV è formato da un header + frammenti + endmarker.
> Noi abbiamo i frammenti e basta.
> È *possibile* (anche se non evidente e in particolare non funziona con gli
> ISMV di esempio) che a noi basti ricostruire parte dell'header a partire dal Manifest
> e poi smanacciare provando a concatenare i frammenti. Quelli nel formato della RAI
> *sembrano* più completi aprendoli con un editor hex.
> Per altro leggendo le specifiche dello streaming live sembra che il server debba mandare
> suddetto header prima di ogni altro frammento. Il server R4! non lo fa, altrimenti eravamo quasi a posto
>
>> Come dicevi, non mi sembra un lavoro da poco (ho dato uno sguardo ai
>> sorgenti e mi è venuto già mal di testa) :-)
>
> il C deve morire, lunga vita al C++
> in realtà il pezzo che bisogner/ebbe/ reversare è output_ismc.c; in cui il manifest viene prodotto
> a partire dalle informazioni che stanno nell'header (moov) del file completo ismv
> Se lo fissi abbastanza a lungo si comincia a capire qualcosa. :)
>
>> Comunque, mi confermi che e' questa la pista a cui pensavi?
> Si, pensavo a qualcosa del genere, ma come cercavo di dire prima, al posto di
> invertire il pezzo che crea frammenti spero sia sufficiente produrre un header decente,
> sbatterlo in una pipe dove continuiamo a scrivere i frammenti e dare poi
> la pipe da mangiare a ffmpeg (che digerisce pure i bulloni).
> A costo di patchare ffmpeg credo che questa idea abbia una piccola probabilità di funzionare :P
>
> Tra parentesi, ho ripreso a frequentare i canali irc di freenode #olrait e #reallyannoying,
> mi trovate anche li
>>
>>
>> Il 17 giugno 2010 15.04, wilderkde <wilderkde@xxxxxxxxx> ha scritto:
>> >> Ciao wilderkde,
>> >>
>> >> Per frammenti da mettere insieme, intendi quelli che si ottengono dal
>> >> server con richieste RESTful del tipo
>> >>
>> >> http://live.worldcup.rai.it/live/218226_218227/rai1.isml/QualityLevels(400000)/Fragments(video=610275114)
>> >>
>> >> ?
>> >
>> > si
>> >
>> >>
>> >> Sai dove posso trovare un file ISMV di prova con qualche esempio di
>> >> frammento estratto (e rinviato) dal server?
>> >> Se ho un po' di temp
>> >> o provo a lavorarci...
>> >
>> > dove scarichi mp4split trovi pure un file di prova con alcuni ismv,
>> > anche se codificati con un codec differente (non so se cambi qualcosa)
>> >
>> >>
>> >>
>> >>
>> >> Il 17 giugno 2010 13.27, wilderkde <wilderkde@xxxxxxxxx> ha scritto:
>> >> >> Il nuovo valore ...
>> >> >> è quello che però usa smooth-streaming.
>> >> >> Anche il server è cambiato. Se vedi cosa esce fuori visitandolo è:
>> >> >>
>> >> >> http://live.worldcup.rai.it/live/218226_218227/rai1.isml/Manifest?aeauth=1276710885_5bce09b5e4bb29323da9c7728c814faa
>> >> >>
>> >> >> Con aeauth diversa ogni volta.
>> >> >>
>> >> >>
>> >> >> Rimanda a un link a volte mms a volte http.
>> >> >> Il quale contiene le informazioni di smoothstream.
>> >> >>
>> >> >> http://dpaste.com/208069/
>> >> >>
>> >> >>
>> >> >> Apparentemente con lo smoothstreaming ci sono 4 livelli di qualità video
>> >> >> che può essere aggiustata dinamicamente, immagino solo da parte del server.
>> >> >>
>> >> >>
>> >> >>
>> >> >> Se si riesce a decodificare uno di questi stream e si mette insieme con
>> >> >> l'audio, si può fare un server locale che ricodifica on the fly
>> >> >> (possibilmente lasciando intatto il flusso ma mettendolo in un
>> >> >> contenitore con streaming) e collegarsi con vlc a tale server locale.
>> >> >
>> >> > A tal proposito faccio notare che non c'è al momento verso di "decodificare" gli stream, anche se
>> >> > per me un hack si potrebbe cucinare avendo un po' di tempo (che al momento mi manca)
>> >> >
>> >> > Situazione:
>> >> > FFMPEG (ho provato con una patch opportuna, ma forse funziona anche senza) riesce a
>> >> > riprodurre correttamente i file ISMV.
>> >> > Questo tipo di file è il "sorgente" da cui Mamma R4! estrae i frammenti che poi ci propina.
>> >> > il problema è che non basta concatenare tutti questi frammenti per ottenere l'ISMV,
>> >> > il client silverlight utilizza parte delle informazioni contenute per ricostruire l'header e per incollare
>> >> > tra di loro i frammenti (ho provato a estrarre frammenti dal file ISMV di prova e non coincidono davvero
>> >> > con i pezzi del file, anche se sono in verità piuttosto simili)
>> >> >
>> >> > Al momento sono bloccato qui, lavorarci sopra richiederebbe ben più di fare il reversing di una stupida classe in C#
>> >> > il che implica che ci vuole tempo e voglia. La seconda c'è; il primo scarseggia come sempre.
>> >> >
>> >> >
>> >> >>
>> >> >> Potremmo così vedere di nuovo i video e pure (forse) con la massima
>> >> >> qualità costantemente.
>> >> >>
>> >> >>
>> >> >> Più che smooth .. sti spezzoni di video sono molto rough .. :/
>> >> >>
>> >> >> PS: www.forzazzurri.mine.nu/olrait tornerà presto.
>> >> >>
>> >> >>
>> >> >>  --
>> >> >>  Caselle da 1GB, trasmetti allegati fino a 3GB e in piu' IMAP, POP3 e SMTP autenticato? GRATIS solo con Email.it http://www.email.it/f
>> >> >>
>> >> >>  Sponsor:
>> >> >>  Jeans uomo e donna a Euro 14,99 li trovi solo su piazzaitalia.it, guarda tutta la collezione
>> >> >> *
>> >> >>  Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=10490&d=16-6
>> >> >>
>> >> >> _______________________________________________
>> >> >> Mailing list: https://launchpad.net/~olrait
>> >> >> Post to     : olrait@xxxxxxxxxxxxxxxxxxx
>> >> >> Unsubscribe : https://launchpad.net/~olrait
>> >> >> More help   : https://help.launchpad.net/ListHelp
>> >> >>
>> >> >
>> >> > _______________________________________________
>> >> > Mailing list: https://launchpad.net/~olrait
>> >> > Post to     : olrait@xxxxxxxxxxxxxxxxxxx
>> >> > Unsubscribe : https://launchpad.net/~olrait
>> >> > More help   : https://help.launchpad.net/ListHelp
>> >> >
>> >>
>> >
>> > _______________________________________________
>> > Mailing list: https://launchpad.net/~olrait
>> > Post to     : olrait@xxxxxxxxxxxxxxxxxxx
>> > Unsubscribe : https://launchpad.net/~olrait
>> > More help   : https://help.launchpad.net/ListHelp
>> >
>>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~olrait
> Post to     : olrait@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~olrait
> More help   : https://help.launchpad.net/ListHelp
>



Follow ups

References