[Asterisk-video] Re: [asterisk-dev] Video packetization proposal
Sergio Garcia Murillo
sergio.garcia at fontventa.com
Sun Jun 3 10:08:33 MST 2007
----- Original Message -----
From: "Mihai Balea" <mihai at hates.ms>
To: "Asterisk Developers Mailing List" <asterisk-dev at lists.digium.com>
Cc: "Development discussion of video media support in Asterisk"
<asterisk-video at lists.digium.com>
Sent: Sunday, June 03, 2007 3:21 PM
Subject: Re: [Asterisk-video] Re: [asterisk-dev] Video packetization
> On Jun 2, 2007, at 10:35 PM, Jeffrey C. Ollie wrote:
> > On Fri, 2007-06-01 at 18:32 -0400, Mihai Balea wrote:
> >> Theora does not support packetization
> > Not true:
> > http://svn.xiph.org/trunk/theora/doc/draft-ietf-avt-rtp-theora-00.txt
> Well, actually it is true. The codec itself does not have any built
> in support for arbitrary size chunks. When you use Theora, all you
> can get is complete encoded frames that usually are too big to be
> sent in one network frame. The xiph draft arbitrarily slices up the
> full frames into usable, network sized chunks. The downside is that
> if one or more such chunks are missing or are miss-ordered, nasty
> things happen leading to the entire frame being useless. We use a
> similar technique in iaxclient and we decided that it is better, from
> a user experience point of view, to drop an entire frame rather than
> display an incomplete one.
h263-1998/2000 behaves exactly the same way and it has make my
life much more easier than h263-1996.
Also, if you miss one packet (I've never seen an missordered one) or
you add data redundancy to the stream or your next frames will
be displayed incorrectly.
> Compare to H.264 which does have built in packetization and is
> resistant to lost or miss-ordered packets.
Video packetizating is thigthly coupled with the encoding and the decoding
process. If your going to offer good error correction capabilities you'll
to implement it directly into de encoder/decoder (have you ever tried to
packetize h263-1996?) and don't mix it with the transport.
More information about the asterisk-dev