diff options
| author | Carl Hetherington <cth@carlh.net> | 2013-04-14 14:24:07 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2013-04-14 14:24:07 +0100 |
| commit | 50dd871c5a924660499b3fd599f1c68af5e3dbc1 (patch) | |
| tree | fb2bb26bd00fab6473e7da9952372290932392ce /src | |
| parent | e234776046e3c735c85063e1c5a7691093a4a722 (diff) | |
Fix Playlist::has_audio().
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/playlist.cc | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/lib/playlist.cc b/src/lib/playlist.cc index 7fe4fb2a5..f04bbe0cb 100644 --- a/src/lib/playlist.cc +++ b/src/lib/playlist.cc @@ -182,8 +182,18 @@ Playlist::video_length () const bool Playlist::has_audio () const { - /* XXX */ - return true; + if (!_sndfile.empty ()) { + return true; + } + + for (list<shared_ptr<const VideoContent> >::const_iterator i = _video.begin(); i != _video.end(); ++i) { + shared_ptr<const FFmpegContent> fc = dynamic_pointer_cast<const FFmpegContent> (*i); + if (fc && fc->audio_stream ()) { + return true; + } + } + + return false; } void |
