[FFmpeg-devel] [PATCH] Move the video size and rate abbreviations system from libavformat to libavcodec

Aurelien Jacobs aurel
Wed Jun 6 16:58:28 CEST 2007


On Wed, 06 Jun 2007 16:31:20 +0200
Baptiste Coudurier <baptiste.coudurier at smartjog.com> wrote:

> Aurelien Jacobs wrote:
> > On Wed, 06 Jun 2007 15:51:09 +0200
> > Baptiste Coudurier <baptiste.coudurier at smartjog.com> wrote:
> > 
> >> Hi
> >>
> >> Aurelien Jacobs wrote:
> >>> On Wed, 6 Jun 2007 13:27:23 +0200
> >>> Stefano Sabatini <stefano.sabatini-lala at poste.it> wrote:
> >>>
> >>>> On date Tuesday 2007-06-05 21:15:11 +0200, Michael Niedermayer encoded:
> >>>>> Hi
> >>>>>
> >>>> [... ]
> >>>>> On Sun, Jun 03, 2007 at 11:15:06AM +0200, Stefano Sabatini wrote:
> >>>>>> The attached patch does as follows:
> >>>>>>
> >>>>>> * moves the size and rate abbreviations system code (AbvEntry struct
> >>>>>>   definition, frame_abvs array, parse_image_size and parse_frame_rate
> >>>>>>   functions) from libavformat/utils.c to libavcodec/utils.c, where
> >>>>>>   they seem to fit more properly.  
> >>>>>>
> >>>>>>   parse_image_size and parse_frame_rate are now exported in
> >>>>>>   libavcodec/avcodec.h.
> >>>>>>
> >>>>>> Suggested changelog message:
> >>>>>> "Moves the video size and rate abbreviations system code from
> >>>>>> libavformat to libavcodec." 
> >>>>> the patch is probably ok (assuming it doesnt change the code and assuming
> >>>>> i didnt miss any possible ABI compatibility issues)
> >>>>> also maybe the minor version of lavc should be increased with the change
> >>>> Hi Michael.
> >>>>
> >>>> The patch doesn't change the code of the moved functions. For what
> >>>> regards the version, which version should be changed,
> >>>> LIBAVCODEC_VERSION (51.40.4 -> 51.40.5) or LIBAVFORMAT_VERSION
> >>>> (51.12.1 -> 51.12.2)?
> >>> Michael's words: minor version of lavc
> >>> version naming convention: major.minor.micro
> >>> conclusion: increase LIBAVCODEC_VERSION (51.40.4 -> 51.41.0)
> >>>
> >>> Note that I agree with the fact that the patch shouldn't cause ABI
> >>> compatibility issue, and also with the fact that lavc minor version
> >>> should be increased.
> >>>
> >> Shouldn't av_ be added in front of function names ?
> > 
> > It should, but *this* would break ABI.
> > So it should only be done along with a major version increment.
> > 
> >> Also it breaks avformat ABI, no ?
> > 
> > libavformat must be linked to libavcodec, so anyone linking lavf
> > will also grab lavc, so IMHO no, it won't break avformat ABI.
> > 
> 
> Right. What about keeping parse* in avformat, making them calling 
> av_parse* (which will be added to avcodec), deprecate them, and remove 
> them with next major bump ? So you have clean avcodec API right now.

That's a nice plan. I'm for it.

Aurel




More information about the ffmpeg-devel mailing list