Quoting Diego Biurrun (2017-03-16 17:42:42)
> On Thu, Mar 16, 2017 at 05:34:12PM +0100, Anton Khirnov wrote:
> > The function currently accepts a PutBitContext and a GetBitContext,
> > which hardcodes their sizes into the lavc ABI. Since the function is
> > quite small and only called in a few places, the simplest solution is
> > making it inline, thus avoiding a runtime dependency completely.
> > ---
> > To be applied on major bump, since it removes a public symbol from the ABI.
> > ---
> > libavcodec/mpeg4audio.c | 40 ----------------------------------------
> > libavcodec/mpeg4audio.h | 40 +++++++++++++++++++++++++++++++++++++++-
> > 2 files changed, 39 insertions(+), 41 deletions(-)
>
> That pesky get_bits ABI issue :)
>
> > --- a/libavcodec/mpeg4audio.h
> > +++ b/libavcodec/mpeg4audio.h
> > @@ -104,7 +104,45 @@ enum AudioObjectType {
> >
> > #define MAX_PCE_SIZE 304 ///<Maximum size of a PCE including the 3-bit
> > ID_PCE
> > ///<marker and the comment
> > + //
> > +static av_always_inline unsigned int avpriv_pce_copy_bits(PutBitContext
> > *pb,
>
> The // comment looks stray.
Right, dropped locally.
>
> > +static av_always_inline unsigned int avpriv_pce_copy_bits(PutBitContext
> > *pb,
> > +static av_always_inline int avpriv_copy_pce_data(PutBitContext *pb,
> > GetBitContext *gb)
>
> Shouldn't you drop the avpriv_ prefix? Once inlined, these are no longer
> semiprivate symbols available across library boundaries.
>
Well, I think it still needs to be namespaced somehow. ff_?
--
Anton Khirnov
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel