[FFmpeg-devel] [PATCH] swresample fixes

Michael Niedermayer michael at niedermayer.cc
Thu Jan 5 22:34:33 EET 2023


On Wed, Jan 04, 2023 at 05:59:14PM +0100, Paul B Mahol wrote:
> Patches attached.

>  af_aresample.c |    6 ++++++
>  1 file changed, 6 insertions(+)
> 94dacb46103e2bb9fbb6e1ca40675243d15069cd  0003-avfilter-af_aresample-if-frame-parameters-change-upd.patch
> From 3959bcb707f52339bac41acc9aec856cad3aced1 Mon Sep 17 00:00:00 2001
> From: Paul B Mahol <onemda at gmail.com>
> Date: Wed, 4 Jan 2023 17:55:10 +0100
> Subject: [PATCH 3/3] avfilter/af_aresample: if frame parameters change update
>  swr context
> 
> Signed-off-by: Paul B Mahol <onemda at gmail.com>
> ---
>  libavfilter/af_aresample.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/libavfilter/af_aresample.c b/libavfilter/af_aresample.c
> index 7923377c8c..2744388f75 100644
> --- a/libavfilter/af_aresample.c
> +++ b/libavfilter/af_aresample.c
> @@ -209,8 +209,14 @@ FF_ENABLE_DEPRECATION_WARNINGS
>      } else {
>          outsamplesref->pts  = AV_NOPTS_VALUE;
>      }
> +again:
>      ret = swr_convert_frame(aresample->swr, outsamplesref,
>                              (void *)insamplesref);
> +    if (ret & (AVERROR_INPUT_CHANGED | AVERROR_OUTPUT_CHANGED)) {
> +        swr_close(aresample->swr);
> +        goto again;
> +    }
> +
>      if (ret < 0) {
>          av_frame_free(&outsamplesref);
>          av_frame_free(&insamplesref);

Are you sure this is not missing some flushing of internal samples ?

thx

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

No snowflake in an avalanche ever feels responsible. -- Voltaire
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20230105/5f8ccc86/attachment.sig>


More information about the ffmpeg-devel mailing list