From 0739f58f9024a086c7d492a47368225f1c2e51fa Mon Sep 17 00:00:00 2001 From: dirkf Date: Sun, 28 Sep 2025 06:09:21 +0100 Subject: [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 --- youtube_dl/options.py | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'youtube_dl/options.py') 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 @@ -412,6 +412,17 @@ def parseOpts(overrideArguments=None): '--youtube-skip-dash-manifest', 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, -- cgit v1.2.3