2013-08-01 22 views
5

Ho provato setDataSource() nella classe MediaExtractor ma non funziona con il percorso RTSP. Posso utilizzare lo stesso percorso con la classe MediaPlayer e funziona, ma è molto importante per me utilizzare la classe MediaCodec. Penso che Android non abbia alcuna API RTSP che potrei usare, né posso trovare alcuna libreria RTSP per Android.Come utilizzare MediaCodec per decodificare i dati dal server RTSP?

Esiste un modo relativamente semplice di alimentare lo streaming video dal server RTSP nella classe MediaCodec?

risposta

4

Nessun modo semplice. Ho finito per usare questo progetto:

https://code.google.com/p/android-rtsp-client/

per il protocollo RTSP (ha lavorato, dopo alcune correzioni e modifiche).

Avevo bisogno di implementare protocolli RTP e RTCP (alcune versioni semplificate erano sufficienti nel mio caso).

Avevo anche bisogno di creare un codice per estrarre unità NAL dai pacchetti RTP. Ho dovuto leggere questo primo:

http://www.ietf.org/rfc/rfc3984.txt

per capire come fare.

+0

Puoi dare qualche idea su come hai preso esattamente lo stream RTSP dal progetto Android sopra e lo hai inserito in un decodificatore 'MediaCodec'? Sono un po 'al di fuori del mio elemento qui, e questo è parte dell'applicazione che devo sviluppare per il mio datore di lavoro. Qualsiasi aiuto sarebbe fantastico! – rayryeng

+0

Fwiw, RFC 3984 è stato sostituito da RFC 6184 - http://tools.ietf.org/html/rfc6184. –

Problemi correlati