From 18593159bef6174dc65520df1c4b871e13baf1f7 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Fri, 26 Apr 2013 19:29:53 +0100 Subject: Fix player logic. --- src/lib/player.cc | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/lib') diff --git a/src/lib/player.cc b/src/lib/player.cc index 357c69e82..4caddb7e6 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -75,7 +75,7 @@ Player::pass () bool done = true; - if (_video_decoder < _video_decoders.size ()) { + if (_video && _video_decoder < _video_decoders.size ()) { /* Run video decoder; this may also produce audio */ @@ -87,7 +87,9 @@ Player::pass () done = false; } - } else if (!_video && _playlist->audio_from() == Playlist::AUDIO_FFMPEG && _sequential_audio_decoder < _audio_decoders.size ()) { + } + + if (!_video && _playlist->audio_from() == Playlist::AUDIO_FFMPEG && _sequential_audio_decoder < _audio_decoders.size ()) { /* We're not producing video, so we may need to run FFmpeg content to get the audio */ @@ -99,8 +101,10 @@ Player::pass () done = false; } - } else if (_playlist->audio_from() == Playlist::AUDIO_SNDFILE) { + } + if (_playlist->audio_from() == Playlist::AUDIO_SNDFILE) { + /* We're getting audio from SndfileContent */ for (vector >::iterator i = _audio_decoders.begin(); i != _audio_decoders.end(); ++i) { -- cgit v1.2.3