mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-26 02:55:17 +00:00
[youtube] Make DASH manifest download conditional for now
DASH download fails on many videos (all with encrypted signatures? not sure yet), for example 07FYdnEawAQ, with a 403.
This commit is contained in:
parent
dd26ced164
commit
4919603f66
2 changed files with 14 additions and 6 deletions
|
@ -244,6 +244,10 @@ def _hide_login_info(opts):
|
|||
'--include-ads', dest='include_ads',
|
||||
action='store_true',
|
||||
help='Download advertisements as well (experimental)')
|
||||
verbosity.add_option(
|
||||
'--youtube-include-dash-manifest', action='store_true',
|
||||
dest='youtube_include_dash_manifest', default=False,
|
||||
help='Try to download the DASH manifest on YouTube videos (experimental)')
|
||||
|
||||
authentication.add_option('-u', '--username',
|
||||
dest='username', metavar='USERNAME', help='account username')
|
||||
|
@ -348,7 +352,8 @@ def _hide_login_info(opts):
|
|||
help=optparse.SUPPRESS_HELP)
|
||||
verbosity.add_option('--print-traffic',
|
||||
dest='debug_printtraffic', action='store_true', default=False,
|
||||
help=optparse.SUPPRESS_HELP)
|
||||
help='Display sent and read HTTP traffic')
|
||||
|
||||
|
||||
filesystem.add_option('-t', '--title',
|
||||
action='store_true', dest='usetitle', help='use title in file name (default)', default=False)
|
||||
|
@ -729,6 +734,7 @@ def _real_main(argv=None):
|
|||
'prefer_ffmpeg': opts.prefer_ffmpeg,
|
||||
'include_ads': opts.include_ads,
|
||||
'default_search': opts.default_search,
|
||||
'youtube_include_dash_manifest': opts.youtube_include_dash_manifest,
|
||||
}
|
||||
|
||||
with YoutubeDL(ydl_opts) as ydl:
|
||||
|
|
|
@ -276,16 +276,17 @@ class YoutubeIE(YoutubeBaseInfoExtractor, SubtitlesInfoExtractor):
|
|||
u"url": u"http://www.youtube.com/watch?v=a9LDPn-MO4I",
|
||||
u"file": u"a9LDPn-MO4I.m4a",
|
||||
u"note": u"256k DASH audio (format 141) via DASH manifest",
|
||||
u"params": {
|
||||
u"format": "141"
|
||||
},
|
||||
u"info_dict": {
|
||||
u"upload_date": "20121002",
|
||||
u"uploader_id": "8KVIDEO",
|
||||
u"description": "No description available.",
|
||||
u"uploader": "8KVIDEO",
|
||||
u"title": "UHDTV TEST 8K VIDEO.mp4"
|
||||
}
|
||||
},
|
||||
u"params": {
|
||||
u"youtube_include_dash_manifest": True,
|
||||
u"format": "141",
|
||||
},
|
||||
},
|
||||
]
|
||||
|
||||
|
@ -1355,7 +1356,8 @@ def _map_to_format_list(urlmap):
|
|||
|
||||
# Look for the DASH manifest
|
||||
dash_manifest_url_lst = video_info.get('dashmpd')
|
||||
if dash_manifest_url_lst and dash_manifest_url_lst[0]:
|
||||
if (dash_manifest_url_lst and dash_manifest_url_lst[0] and
|
||||
self._downloader.params.get('youtube_include_dash_manifest', False)):
|
||||
try:
|
||||
dash_doc = self._download_xml(
|
||||
dash_manifest_url_lst[0], video_id,
|
||||
|
|
Loading…
Reference in a new issue