summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-01-20 14:33:08 +0100
committerwm4 <wm4@nowhere>2015-01-20 14:33:08 +0100
commitbe02ebfcbae4f6f8f9f06f07363e1f651397894d (patch)
tree36b26a2588c0d67da9c6363b114cde954a4fa361
parent1e6b4d31aa1b57bc03e1d0d2c022fb6d1028f9fa (diff)
downloadmpv-be02ebfcbae4f6f8f9f06f07363e1f651397894d.tar.bz2
mpv-be02ebfcbae4f6f8f9f06f07363e1f651397894d.tar.xz
audio: don't force any parameters if spdif is used
The existing code only ignored --audio-channels, but not --audio-rate or --audio-format if spdif passthrough is used. Setting these makes no sense.
-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: