[FFmpeg-devel] add MJPEG support into RTP output

Martin Storsjö martin
Thu Apr 8 10:18:34 CEST 2010

On Thu, 8 Apr 2010, Luca Abeni wrote:

> Martin Storsj? wrote:
> [...]
> > All current packetizers buffer the data they're going to send within
> > RTPMuxContext->buf, but splitting ff_rtp_send_data this way does allow us to
> > avoid one layer of buffering, if each individual packetizer wants to. You
> > need to hear from Luca A if he's ok with this approach.
> Well, I am not sure about this. I am currently undecided, but it other
> people like the idea of splitting ff_rtp_send_data(), I am ok with it.
> Let's just be sure that there are enough people in favour of this solution.

I'm a bit undecided, too. I like the current one for simplicity, but it 
does indeed require one extra copy of data.

> In any case, what I do not want to see is a non-uniformity between the
> various packetisers. If we decide to split ff_rtp_send_data(), then all
> the packetisers must be converted. Having some packetisers implemented in
> the old way and some in the new one is (IMHO) not acceptable.

Yes, uniformity is important.

Even if this approach works quite well for video formats (where one frame 
is split into multiple packets), but it doesn't necessarily work as well 
for audio formats. There we usually buffer up a few frames into a packet, 
and we might not be able to write out all data into the output 
ByteIOContext until we've got all the frames for the packet, so there we 
need some kind of intermediate buffer anyway.

// Martin

More information about the ffmpeg-devel mailing list