[FFmpeg-devel] How to fix rtp over mpeg4-audio with multiple AU Section

Luca Abeni lucabe72
Wed Jan 30 11:01:46 CET 2008


Hi,

qwen dux wrote:
> hi all,
>    There is a unfixed multiple AU Section libavformat/rtpdec.c ,we only
> handle the case where rtp_parse_mp4_au define one au_header now,But the
> interface of live555 can deal with mul-au section.I couldn't find the diff
> of interface,anybody can give me some  advice.

I am not sure if I understand the question, but if you are asking why
rtpdec.c::rtp_parse_packet() only uses infos->au_headers[0], that's because
rtpdec.c::rtp_parse_mp4_au() puts together all the audio frames contained
in an RTP packet, generating only a single entry for all the frames.
I do not know why this is done (the comment seems to point at a FAAD bug,
but I suspect there was some other kind of confusion).

This is of course incorrect, but does not generate problems for ffmpeg,
probably because we have a parser that can split the received stream in
frames.

If you want to make rtp_parse_packet() return a single AAC frame and
not all the AAC frames contained in the packet, you have to fix
rtp_parse_mp4_au(), and to change rtp_parse_packet() to return 1
instead of 0 when needed (that is, when the current AAC frame is not
the last frame in the packet).



			Luca




More information about the ffmpeg-devel mailing list