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

wm4 nfxjfg at googlemail.com
Wed Mar 8 17:08:32 EET 2017

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

Well, when you _added_ this side data merging, which is a whole lot
worse on the scale of API breaks, you didn't even need a minor version

Why is it different now?

> 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
> [...]

More information about the ffmpeg-devel mailing list