On Tue, Aug 24, 2021 at 09:43:43AM -0400, Olivier Crête wrote:
> From: Stéphane Cerveau <scerv...@collabora.com>
> 
> Consider data as invalid if ff_wma_run_level_decode
> gets out with an error.
> 
> It avoids an unpleasant sound distorsion.
> 
> See http://trac.ffmpeg.org/ticket/9358
> ---
>  libavcodec/wmadec.c | 11 +++++++----
>  1 file changed, 7 insertions(+), 4 deletions(-)
> 
> diff --git a/libavcodec/wmadec.c b/libavcodec/wmadec.c
> index d627bbe50e..d43fe239ce 100644
> --- a/libavcodec/wmadec.c
> +++ b/libavcodec/wmadec.c
> @@ -601,15 +601,18 @@ static int wma_decode_block(WMACodecContext *s)
>          if (s->channel_coded[ch]) {
>              int tindex;
>              WMACoef *ptr = &s->coefs1[ch][0];
> +            int ret;
>  
>              /* special VLC tables are used for ms stereo because
>               * there is potentially less energy there */
>              tindex = (ch == 1 && s->ms_stereo);
>              memset(ptr, 0, s->block_len * sizeof(WMACoef));
> -            ff_wma_run_level_decode(s->avctx, &s->gb, &s->coef_vlc[tindex],
> -                                    s->level_table[tindex], 
> s->run_table[tindex],
> -                                    0, ptr, 0, nb_coefs[ch],
> -                                    s->block_len, s->frame_len_bits, 
> coef_nb_bits);
> +            ret = ff_wma_run_level_decode(s->avctx, &s->gb, 
> &s->coef_vlc[tindex],
> +                                          s->level_table[tindex], 
> s->run_table[tindex],
> +                                          0, ptr, 0, nb_coefs[ch],
> +                                          s->block_len, s->frame_len_bits, 
> coef_nb_bits);
> +         if (ret < 0)
> +                return ret;
>          }
>          if (s->version == 1 && s->avctx->channels >= 2)
>              align_get_bits(&s->gb);

Does this just discard the packet or replace by silence ?
if it discards it, it can cause problems with av-sync




[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Observe your enemies, for they first find out your faults. -- Antisthenes

Attachment: signature.asc
Description: PGP signature

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to