From 241fb0c4ffadca68013dced3a4538d4228674567 Mon Sep 17 00:00:00 2001 From: Luca Barbato Date: Tue, 17 Jul 2007 14:15:39 +0000 Subject: [PATCH] RTP clarifications Originally committed as revision 9722 to svn://svn.ffmpeg.org/ffmpeg/trunk --- doc/faq.texi | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/doc/faq.texi b/doc/faq.texi index c7c3bae943..ef89924ed5 100644 --- a/doc/faq.texi +++ b/doc/faq.texi @@ -406,10 +406,8 @@ The standard MSys bash (2.04) is broken. You need to install 2.05 or later. @section I tried to pass RTP packets into a decoder, but it doesn't work. -Of course not, you MUST strip ALL RTP headers and assemble valid packets -first, an MP3 decoder decodes MP3 packets not bastardized MP3 packets -encapsulated in RTP. The same applies to all decoders, this is not specific -to ffmpeg or libavcodec. +RTP is a container format like any other, you must first depacketize the +codec frames/samples stored in RTP and then feed to the decoder. @section Where can I find libav* headers for Pascal/Delphi? @@ -419,12 +417,10 @@ see @url{http://www.iversenit.dk/dev/ffmpeg-headers/} see @url{http://svn.mplayerhq.hu/michael/trunk/docs/} -@section how do I feed H.263-RTP (and likely other RTP bastardizations of codecs) to libavcodec? +@section how do I feed H.263-RTP (and other codecs in rtp) to libavcodec? -Remove _ALL_ RTP trash and either feed the fragments through an AVParser and -then into the decoder or merge the fragments yourself into proper frames and -feed them into the decoder. Note: The payload of H.263-RTP is not valid -H.263 you at least have to merge the first and last bytes discarding RTP trash -from them, possibly more. Also look at rfc 4629. +Even if peculiar since it is network oriented, RTP is a container like any +other. You have to DEMUX RTP before feeding the payload to libavcodec. +In this specific case please look at rfc 4629 to see how it should be done. @bye