summaryrefslogtreecommitdiffstats
path: root/audio/decode/ad_lavc.c
diff options
context:
space:
mode:
Diffstat (limited to 'audio/decode/ad_lavc.c')
-rw-r--r--audio/decode/ad_lavc.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/audio/decode/ad_lavc.c b/audio/decode/ad_lavc.c
index 143990414b..8663d5fc32 100644
--- a/audio/decode/ad_lavc.c
+++ b/audio/decode/ad_lavc.c
@@ -161,9 +161,9 @@ static int setup_format(struct dec_audio *da)
lavc_chmap = sh_audio->channels;
}
- sh_audio->channels = lavc_chmap;
- sh_audio->samplerate = samplerate;
- sh_audio->sample_format = sample_format;
+ mp_audio_set_channels(&da->decoded, &lavc_chmap);
+ mp_audio_set_format(&da->decoded, sample_format);
+ da->decoded.rate = samplerate;
return 0;
}
@@ -366,9 +366,7 @@ static int decode_new_packet(struct dec_audio *da)
return -1;
priv->frame.samples = priv->avframe->nb_samples;
- mp_audio_set_format(&priv->frame, da->header->audio->sample_format);
- mp_audio_set_channels(&priv->frame, &da->header->audio->channels);
- priv->frame.rate = da->header->audio->samplerate;
+ mp_audio_copy_config(&priv->frame, &da->decoded);
for (int n = 0; n < priv->frame.num_planes; n++)
priv->frame.planes[n] = priv->avframe->data[n];