aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/YoutubeDL.py
diff options
context:
space:
mode:
authorSergey M. <dstftw@gmail.com>2015-04-30 19:57:02 +0500
committerSergey M. <dstftw@gmail.com>2015-04-30 19:57:02 +0500
commit4d72df403115458fee2fe29217000580fac029d7 (patch)
tree077fcf444807b3d7d866694596e982edd8970b7e /youtube_dl/YoutubeDL.py
parentf7f1df1d82d556c0726898b9de2f7f3824c1be5a (diff)
parent8dd5418803a25de89d08cdb9d32f80f71c5d6c47 (diff)
Merge pull request #5556 from jaimeMF/best-format-nodash
Make 'best' format only match non-DASH formats (closes #5554)
Diffstat (limited to 'youtube_dl/YoutubeDL.py')
-rwxr-xr-xyoutube_dl/YoutubeDL.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py
index 827c88e0d..eee9c0154 100755
--- a/youtube_dl/YoutubeDL.py
+++ b/youtube_dl/YoutubeDL.py
@@ -915,7 +915,14 @@ class YoutubeDL(object):
return None
if format_spec == 'best' or format_spec is None:
- return available_formats[-1]
+ audiovideo_formats = [
+ f for f in available_formats
+ if f.get('vcodec') != 'none' and f.get('acodec') != 'none']
+ if audiovideo_formats:
+ return audiovideo_formats[-1]
+ # for audio only urls, 'best' selects the best audio format
+ elif all(f.get('acodec') != 'none' for f in available_formats):
+ return available_formats[-1]
elif format_spec == 'worst':
audiovideo_formats = [
f for f in available_formats