diff options
author | wm4 <wm4@nowhere> | 2015-01-20 14:33:08 +0100 |
---|---|---|
committer | Diogo Franco (Kovensky) <diogomfranco@gmail.com> | 2015-01-25 17:00:20 +0900 |
commit | 3711327430b23e42812346a030c19baf86ddcb90 (patch) | |
tree | 44fe255a35c96da2c8a27ed8e54b3e1caf4a8c1e | |
parent | 7d523cd47a0efecb0ff01d24bad398f5d2a26ab0 (diff) | |
download | mpv-3711327430b23e42812346a030c19baf86ddcb90.tar.bz2 mpv-3711327430b23e42812346a030c19baf86ddcb90.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.c | 8 |
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: |