[FFmpeg-devel] [PATCH 3/3] avformat: don't "merge" side data into packet data by default

wm4 nfxjfg at googlemail.com
Thu Mar 9 14:09:47 EET 2017


On Thu, 9 Mar 2017 12:51:30 +0100
Michael Niedermayer <michael at niedermayer.cc> wrote:

> On Thu, Mar 09, 2017 at 10:22:39AM +0100, wm4 wrote:
> > On Wed, 8 Mar 2017 15:44:36 +0100
> > Michael Niedermayer <michael at niedermayer.cc> wrote:
> >   
> > > On Wed, Mar 08, 2017 at 01:40:12PM +0100, wm4 wrote:  
> > > > Side data are separate AVPacket fields for a reason. Merging side data
> > > > requires reallocating all packets, is complex, potentially clashes with
> > > > "actual" packet data (you could probably come up with PCM data that
> > > > looks like merged side data, or such), and could for example cause
> > > > trouble to people trying to feed packets with merged side data to
> > > > non-libavcodec decoders.
> > > > 
> > > > Disable it by default.
> > > > 
> > > > I do not consider this a real API change, because the AVPacket side data
> > > > fields have been part of the API for at least a decade.
> > > > 
> > > > The changed tests either reflect added packet side data, or the changed
> > > > packet size due to merged side data removal reducing the packet size.
> > > > 
> > > > ---    
> > >   
> > > > Missing: minor libavformat API bump, maybe a warning in APIchanges    
> > > 
> > > this is a ABI change and cannot be done before the next
> > > major version bump
> > > 
> > > Applications did not need to preserve side data between layers and
> > > this patch would add this requirement
> > >   
> 
> > > The change of the default could be done conditional on the major
> > > version or related API/ABI define  
> > 
> > So what's the status on this? I consider it a bug fix, not an API
> > change.  
> 
> Then we disagree here i think

Don't you think it's weird that AVPacket.side_data by default appears
to be unused to the API user?

Functionally, it's pretty much like a bug.


More information about the ffmpeg-devel mailing list