[FFmpeg-devel] [PATCH] Rename ff_random_get_seed to av_*, export the header

Martin Storsjö martin
Fri May 14 10:04:48 CEST 2010


On Fri, 14 May 2010, Martin Storsj? wrote:

> On Fri, 14 May 2010, Benoit Fouet wrote:
> 
> > On Fri, 14 May 2010 09:57:58 +0300 (EEST) Martin Storsj? wrote:
> > > diff --git a/libavutil/random_seed.h b/libavutil/random_seed.h
> > > index a954381..db4fe5d 100644
> > > --- a/libavutil/random_seed.h
> > > +++ b/libavutil/random_seed.h
> > [...]
> > > +#if LIBAVUTIL_VERSION_MAJOR < 51
> > > +attribute_deprecated uint32_t ff_random_get_seed(void);
> > > +#endif
> > >  
> > 
> > I don't think this one should be added.
> > The ffmpeg tree should be fixed instead.
> 
> Yes, it is fixed in the second patch. But it is still needed after that.
> 
> Current versions of libavformat link directly to this symbol, and if the 
> libavutil shared library is updated to a version without the symbol, the 
> older libavformat will fail to load. So for distributions shipping libav* 
> in separate packages, this is a must, unless we want them to always 
> enforce all libav* from the exactly same build...

So, by linking to non-public ff_* functions from one library to another, 
those non-public functions effectively become a part of the ABI even if 
they were intended to be private. That's what I'm trying to clean up here, 
or at least make a first baby step in the right direction.

// Martin



More information about the ffmpeg-devel mailing list