diff options
author | dirkf <fieldhouse@gmx.net> | 2025-09-28 06:09:21 +0100 |
---|---|---|
committer | dirkf <fieldhouse@gmx.net> | 2025-09-29 02:15:05 +0100 |
commit | 0739f58f9024a086c7d492a47368225f1c2e51fa (patch) | |
tree | dbcb35849c82771dc0ba7cf03961719c873bd652 /youtube_dl/options.py | |
parent | aac0148b899d534c64b8bb2952a0f3c8abdc519c (diff) |
[YouTube] Implement player JS override for player `0004de42`
* based on yt-dlp/yt-dlp#14398, thx seproDev
* adds --youtube-player-js-variant option
* adds --youtube-player-js-version option
* sets defaults to main variant of player `0004de42`
* fixes #33187, for now
Diffstat (limited to 'youtube_dl/options.py')
-rw-r--r-- | youtube_dl/options.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/youtube_dl/options.py b/youtube_dl/options.py index 61705d1f0..e3360da89 100644 --- a/youtube_dl/options.py +++ b/youtube_dl/options.py @@ -413,6 +413,17 @@ def parseOpts(overrideArguments=None): action='store_false', dest='youtube_include_dash_manifest', help='Do not download the DASH manifests and related data on YouTube videos') video_format.add_option( + '--youtube-player-js-variant', + action='store', dest='youtube_player_js_variant', + help='For YouTube, the player javascript variant to use for n/sig deciphering; `actual` to follow the site; default `%default`.', + choices=('actual', 'main', 'tcc', 'tce', 'es5', 'es6', 'tv', 'tv_es6', 'phone', 'tablet'), + default='main', metavar='VARIANT') + video_format.add_option( + '--youtube-player-js-version', + action='store', dest='youtube_player_js_version', + help='For YouTube, the player javascript version to use for n/sig deciphering, specified as `signature_timestamp@hash`, or `actual` to follow the site; default `%default`', + default='20348@0004de42', metavar='STS@HASH') + video_format.add_option( '--merge-output-format', action='store', dest='merge_output_format', metavar='FORMAT', default=None, help=( |