[FFmpeg-devel] [PATCH] decode.c: Handle 0-size packets in compat_decode
michael at niedermayer.cc
Wed Jul 5 17:01:12 EEST 2017
On Wed, Jul 05, 2017 at 09:52:55AM +0200, wm4 wrote:
> On Tue, 4 Jul 2017 20:20:38 +0200
> Reimar Döffinger <Reimar.Doeffinger at gmx.de> wrote:
> > On 04.07.2017, at 10:42, wm4 <nfxjfg at googlemail.com> wrote:
> > > Not really comfortable with the current patch. Why does it even touch
> > > the compat_decode_partial_size handling path?
> > Because that is the code that gets utterly confused by 0-size packets and breaks everything.
> > For ac3 what happens is that after the first 0-sized packets all following packets fail to decode.
> 0-sized packets do not exist in AC3 in particular and have no meaning.
> > Probably that means the whole partial_size thing is broken and not robust, but I haven't been able to really understand it.
> This is for the mechanism where you passed a packet to the decode API,
> and it only decoded a few bytes of it, and you had to feed the rest of
> the packet to the decoder again next time to get all audio. (Plus
> confusing special cases about some decoders consuming 0 bytes in the
> first call, or
> consuming more bytes than what was provided as input...)
That would be a bug and such bugs where fixed when they where reported.
> The new API doesn't have that, and will just require multiple receive
> calls in those cases.
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Does the universe only have a finite lifespan? No, its going to go on
forever, its just that you wont like living in it. -- Hiranya Peiri
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 181 bytes
Desc: Digital signature
More information about the ffmpeg-devel