Diego Biurrun <[email protected]> writes:

> libavcodec/utils.c:251: note: expected ‘const uint8_t *’ but argument is of 
> type ‘const short int *’
> ---
>  libavcodec/utils.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> I'm sending this strictly as an RFC since I'm not sure this is fit for
> pushing.  It silences a warning at the cost of a cast.  I believe the
> patch to be correct and am in favor overall, but since it's a tradeoff
> of sorts others may be opposed...
>
> diff --git a/libavcodec/utils.c b/libavcodec/utils.c
> index 709b3b5..605247a 100644
> --- a/libavcodec/utils.c
> +++ b/libavcodec/utils.c
> @@ -1047,7 +1047,8 @@ int attribute_align_arg 
> avcodec_encode_audio(AVCodecContext *avctx,
>                                                    avctx->sample_fmt, 1);
>          if ((ret = avcodec_fill_audio_frame(frame, avctx->channels,
>                                              avctx->sample_fmt,
> -                                            samples, samples_size, 1)))
> +                                            (const uint8_t *) samples,
> +                                            samples_size, 1)))
>              return ret;
>
>          /* fabricate frame pts from sample count.
> -- 

Why is there a type mismatch at all?  If avcodec_fill_audio_frame()
works with multiple data types, it should be taking a void *.

-- 
Måns Rullgård
[email protected]
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to