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.

> +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.

Diego
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to