feat(downloads): Deno JS runtime + web/android clients to complete the POT setup
The web player clients need two things beyond the PO token: (1) a JavaScript runtime for YouTube's 'n' signature challenge — install Deno (v2.9.1) + yt-dlp[default] (bundles yt-dlp-ejs solver scripts); auto-detected on PATH. (2) an audio source — the web clients only expose video-only DASH, so add the 'android' client (also PO-token-backed) for audio/muxed formats. Player clients: web_safari,web,android (dropped tv — it falsely reports normal videos as DRM). End-to-end verified in the worker: extraction (POT + Deno n-challenge) + download completes, no bot/DRM/format errors. Full YouTube stack now: force-ipv4 + bgutil POT sidecar + Deno.
This commit is contained in:
parent
03a1865aa8
commit
21c5508889
3 changed files with 15 additions and 8 deletions
|
|
@ -145,7 +145,7 @@ class Settings(BaseSettings):
|
|||
# yt-dlp player clients to use (comma-separated). POT-capable clients (web_safari/web) must
|
||||
# be used for the PO token to actually apply; the default clients (android_vr) don't request
|
||||
# one. Empty = yt-dlp's own default. Admin-tunable when YouTube shifts what works.
|
||||
download_player_clients: str = "web_safari,web,tv"
|
||||
download_player_clients: str = "web_safari,web,android"
|
||||
|
||||
@property
|
||||
def player_client_list(self) -> list[str]:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue