[FFmpeg-devel] H.263 packetizing into RTP

Martin Storsjö martin
Fri Apr 3 20:08:56 CEST 2009


On Fri, 3 Apr 2009, Yohann Martineau wrote:

> On 4/3/09, Michael Niedermayer <michaelni at gmx.at> wrote:
> >
> > also i suspect that packets should be split at slices/gobs
> 
> RFC 2190 states that pictures should be split either at gob level
> (mode A), at MB boundaries (mode B) or at MB boundaires of P-frames
> with PB-frame mode.

As far as I know (I found the original patch in a mailing list post from 
Luca Abeni), this is an implementation of RFC 4629 (and 2429); this is a 
different RTP packetization scheme than the one in RFC 2190. As of RFC 
4629, this is the recommended scheme for all variants of H.263.

In this packetization scheme, the frame can be split into packets 
regardless of GOB/MB boundaries or anything else. From RFC 4629, section 
6.2:

   A Follow-on Packet contains a number of bytes of coded H.263+ data
   that do not start at a synchronization point.  That is, a Follow-on
   Packet does not start with a Picture, GOB, Slice, EOS, or EOSBS
   header, and it may or may not start at a macroblock boundary.

Splitting packets according to such boundaries would perhaps give better 
handling of dropped packets, but isn't mandated.

// Martin



More information about the ffmpeg-devel mailing list