summaryrefslogtreecommitdiffstats
path: root/player/audio.c
diff options
context:
space:
mode:
Diffstat (limited to 'player/audio.c')
-rw-r--r--player/audio.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/player/audio.c b/player/audio.c
index b75902c73d..c49f2ea523 100644
--- a/player/audio.c
+++ b/player/audio.c
@@ -227,15 +227,13 @@ void reinit_audio_chain(struct MPContext *mpctx)
struct af_stream *afs = mpctx->d_audio->afilter;
+ afs->output = (struct mp_audio){0};
if (mpctx->ao) {
ao_get_format(mpctx->ao, &afs->output);
- } else {
- afs->output = (struct mp_audio){0};
+ } else if (!AF_FORMAT_IS_SPECIAL(in_format.format)) {
afs->output.rate = opts->force_srate;
mp_audio_set_format(&afs->output, opts->audio_output_format);
- // automatic downmix
- if (!AF_FORMAT_IS_SPECIAL(in_format.format))
- mp_audio_set_channels(&afs->output, &opts->audio_output_channels);
+ mp_audio_set_channels(&afs->output, &opts->audio_output_channels);
}
// filter input format: same as codec's output format: