v0.6.1 - YouTubeSource Lean Refactor
Changed
- Simplified YouTubeSource: Reduced from 632 to 242 lines (62% smaller) by removing 16 hardcoded yt-dlp constructor parameters
- Unified yt-dlp options: Now uses
ydl_optsdict for all yt-dlp options instead of individual parameters - Delegated to yt-dlp: PO tokens, cookies, JS runtime, and other advanced options are now handled by yt-dlp internally rather than being re-implemented
Breaking
YouTubeSourceconstructor now only acceptsydl_optsanddownload_archiveparameters- Users who were passing individual yt-dlp options (po_token, visitor_data, impersonate_client, etc.) need to pass them via
ydl_optsdict
How to migrate
# Before
YouTubeSource(po_token="xxx", visitor_data="yyy", player_clients=["tv"])
# After
YouTubeSource(ydl_opts={
"extractor_args": {
"youtube": {
"po_token": ["web.gvs+xxx"],
"visitor_data": "yyy",
"player_client": ["tv"]
}
}
})For most users, YouTubeSource now works out of the box without any configuration.