[FFmpeg-devel] [PATCH 1/2] lavf: add AVOption support for muxers

Martin Storsjö martin
Sat Jan 1 21:56:09 CET 2011

On Sat, 1 Jan 2011, Anssi Hannula wrote:

> On 01.01.2011 22:18, Martin Storsj? wrote:
> > On Sat, 1 Jan 2011, Anssi Hannula wrote:
> > 
> >> On 01.01.2011 21:01, Michael Niedermayer wrote:
> >>> On Sat, Jan 01, 2011 at 06:15:08PM +0200, Martin Storsj? wrote:
> >>>> On Sat, 1 Jan 2011, Michael Niedermayer wrote:
> >>>>
> >>>>> applications using private fields are writtenm in the knowledge that they will
> >>>>> stop working the next commit to ffmpeg
> >>>>
> >>>> What about applications registering muxers/demuxers of their own? In that 
> >>>
> >>> They should submit them to us and not do that :)
> >>> That said iam not against keeping the next parameter at a constant location
> >>> i just dont care too much about it
> >>
> >> Wouldn't applications registering their own muxers break anyway?
> >> If added after the "next" field, the new "priv_class" field would be
> >> outside the application-provided AVOutputFormat when checked by
> >> av_set_parameters().
> > 
> > No, it can be solved relatively cleanly, check how we did it for 
> > av_reigster_protocol2.
> What I meant is that simply keeping "next" field at a constant location
> doesn't solve the issue alone.

Ah, yeah. True.

> Adding a new function that takes a size parameter would obviously allow
> self-registered muxers to continue to work.

Are you interested in trying to keep the ABI unbroken, and willing to try 
to incorporate this into your patchset? If not, I can try to wrap 
something together, within a few days.

Or is there any need at all for this? Those users that do deep integration 
of lavf (mplayer, VLC, XBMC etc), do any of them register 
muxers(/demuxers) of their own? If not, there's not much need for it in 
practice. The same was added to AVCodec some time ago, without any similar 
ABI fallback, and nobody seems to have complained yet at least.

On the other hand, I'd think such complaints would come only later when 
binary distribution maintainers start using newer lavf versions. But a 
ABI-compatible register function can be fixed later if really needed, too.

// Martin

More information about the ffmpeg-devel mailing list