diff options
author | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-06-20 10:14:12 +0530 |
---|---|---|
committer | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-06-20 11:44:57 +0530 |
commit | 6d1b34896e69c4e53d8f960bf4b3867bca1c129c (patch) | |
tree | 22e23a19e0139a297736e64481790477b956dd70 /yt_dlp/__init__.py | |
parent | 7b2c3f47c6b586a208655fcfc716bba3f8619d1e (diff) | |
download | hypervideo-pre-6d1b34896e69c4e53d8f960bf4b3867bca1c129c.tar.lz hypervideo-pre-6d1b34896e69c4e53d8f960bf4b3867bca1c129c.tar.xz hypervideo-pre-6d1b34896e69c4e53d8f960bf4b3867bca1c129c.zip |
Update to ytdl-commit-8a158a9
[NHK] Use new API URL
https://github.com/ytdl-org/youtube-dl/commit/6508688e88c83bb811653083db9351702cd39a6a
Closes #2337, Closes #4063
Diffstat (limited to 'yt_dlp/__init__.py')
-rw-r--r-- | yt_dlp/__init__.py | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/yt_dlp/__init__.py b/yt_dlp/__init__.py index 032856eb8..1cd14a44d 100644 --- a/yt_dlp/__init__.py +++ b/yt_dlp/__init__.py @@ -401,10 +401,15 @@ def validate_options(opts): if opts.no_sponsorblock: opts.sponsorblock_mark = opts.sponsorblock_remove = set() + default_downloader = None for proto, path in opts.external_downloader.items(): - if get_external_downloader(path) is None: + ed = get_external_downloader(path) + if ed is None: raise ValueError( f'No such {format_field(proto, None, "%s ", ignore="default")}external downloader "{path}"') + elif ed and proto == 'default': + default_downloader = ed.get_basename() + warnings, deprecation_warnings = [], [] # Common mistake: -f best @@ -415,13 +420,18 @@ def validate_options(opts): 'If you know what you are doing and want only the best pre-merged format, use "-f b" instead to suppress this warning'))) # --(postprocessor/downloader)-args without name - def report_args_compat(name, value, key1, key2=None): + def report_args_compat(name, value, key1, key2=None, where=None): if key1 in value and key2 not in value: - warnings.append(f'{name} arguments given without specifying name. The arguments will be given to all {name}s') + warnings.append(f'{name.title()} arguments given without specifying name. ' + f'The arguments will be given to {where or f"all {name}s"}') return True return False - report_args_compat('external downloader', opts.external_downloader_args, 'default') + if report_args_compat('external downloader', opts.external_downloader_args, + 'default', where=default_downloader) and default_downloader: + # Compat with youtube-dl's behavior. See https://github.com/ytdl-org/youtube-dl/commit/49c5293014bc11ec8c009856cd63cffa6296c1e1 + opts.external_downloader_args.setdefault(default_downloader, opts.external_downloader_args.pop('default')) + if report_args_compat('post-processor', opts.postprocessor_args, 'default-compat', 'default'): opts.postprocessor_args['default'] = opts.postprocessor_args.pop('default-compat') opts.postprocessor_args.setdefault('sponskrub', []) |