avcodec/dsddec: Fix decoding LSBF samples

ff_dsd2pcm_translate() works internally by converting LSBF input
to MSBF upon reading; its buffer is therefore always MSBF
and should therefore be initialized with MSBF silence;
but this is not true since e3d8963c3c
which this patch effectively reverts.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
release/7.1
Andreas Rheinhardt 9 months ago
parent e81fa9f482
commit 6d38c260e5
  1. 2
      libavcodec/dsddec.c

@ -56,7 +56,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
if (!s)
return AVERROR(ENOMEM);
silence = avctx->codec_id == AV_CODEC_ID_DSD_LSBF || avctx->codec_id == AV_CODEC_ID_DSD_LSBF_PLANAR ? DSD_SILENCE_REVERSED : DSD_SILENCE;
silence = DSD_SILENCE;
for (i = 0; i < avctx->ch_layout.nb_channels; i++) {
s[i].pos = 0;
memset(s[i].buf, silence, sizeof(s[i].buf));

Loading…
Cancel
Save