Releases: yt-dlp/yt-dlp
yt-dlp 2026.03.17
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Changelog
Extractor changes
- youtube
Misc. changes
- build: Use PyInstaller v6.19.0 for Windows (#16265) by bashonly
- ci: Bump actions pins (#16252) by bashonly
- docs: Fix
player_clientextractor-arg documentation (#16235) by bashonly - test: networking: Mark all CurlCFFIRH tests as flaky for any OS (#16266) by bashonly
yt-dlp 2026.03.13
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Changelog
Extractor changes
- tiktok: Fix challenge solving (#16223) by bashonly
- youtube
- Fix
android_vrplayer client (#16168) by gamer191 - Fix
use_ad_playback_contextextractor-arg (#16196) by bashonly - Fix
web_embeddedplayer client (#16177) by bashonly, SparseOrnament15 - Request
web_safari&web_creatorclient configs (#16198) by bashonly - Update ejs to 0.7.0 (#16231) by bashonly, Grub4K
- tab
- Fix
yt-dlp 2026.03.03
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Changelog
Extractor changes
- aenetworks: Fix extraction (#16036) by bashonly
- patreon: Fix extractors (#16112) by bashonly
- thechosen: Rework extractor (#16021) by 0xvd
- youtube
- zapiks: Improve extraction (#16030) by doe1080
yt-dlp 2026.02.21
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Important changes
- Security: [CVE-2026-26331] Arbitrary command injection with the
--netrc-cmdoption- The argument passed to the command in
--netrc-cmdis now limited to a safe subset of characters
- The argument passed to the command in
Changelog
Core changes
- cookies: Ignore cookies with control characters (#15862) by bashonly, syphyr
- jsinterp
Extractor changes
- Add browser impersonation support to more extractors (#16029) by bashonly
- Limit
netrc_machineparameter to shell-safe characters by Grub4K - 1tv: Extract chapters (#15848) by hunter-gatherer8
- aenetworks: Fix extractor (#14959) by Sipherdrakon
- applepodcasts: Fix extractor (#15901) by coreywright
- dailymotion: Fix extraction (#15995) by bashonly
- facebook: ads: Fix extractor (#16002) by bashonly
- gem.cbc.ca: Support standalone, series & Olympics URLs (#15878) by 0xvd, bashonly, makew0rld
- learningonscreen: Fix extractor (#16028) by 0xvd, bashonly
- locipo: Add extractors (#15486) by doe1080, gravesducking
- matchitv: Add extractor (#15204) by gseddon
- odnoklassniki: Fix inefficient regular expression (#15974) by bashonly
- opencast: Support
oc-p.uni-jena.deURLs (#16026) by LordMZTE - pornhub: Fix extractor (#15858) by beacdeac
- saucepluschannel: Add extractor (#15830) by regulad
- soundcloud
- spankbang
- steam: Fix extractor (#15028) by doe1080
- tele5: Fix extractor (#16005) by bashonly
- tver: olympic: Add extractor (#15885) by doe1080
- tvo: Add extractor (#15903) by doe1080
- twitter: Fix error handling (#15993) by bashonly (With fixes in 7722109)
- visir: Add extractor (#15811) by doe1080
- vk: Solve JS challenges using native JS interpreter (#15992) by 0xvd, bashonly
- xhamster: Fix extractor (#15831) by 0xvd
- youtube
- Add more known player JS variants (#15975) by bashonly
- Extract live adaptive
incompleteformats (#15937) by bashonly, CanOfSocks - Update ejs to 0.5.0 (#16031) by bashonly
- date, search: [Remove broken `...
yt-dlp 2026.02.04
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Changelog
Extractor changes
- unsupported: Update unsupported URLs (#15812) by doe1080
- youtube: Default to
tvplayer JS variant (#15818) by bashonly
yt-dlp 2026.01.31
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Changelog
Extractor changes
- soop: Support subscription-only VODs (#15523) by thematuu
- unsupported: Update unsupported URLs (#15410) by bashonly
- whyp: Extract more metadata (#15757) by azdlonky
- youtube
Misc. changes
yt-dlp 2026.01.29
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Changelog
Core changes
- Accept float values for
--sleep-subtitles(#15282) by 0xvd - Add
--compat-options 2025(#15499) by bashonly - Add
--format-sort-resetoption (#13809) by nihil-admirari - Bypass interactive format selection if no formats are found (#15278) by bashonly
- Fix
--parse-metadatawhenTOis a single field name (#14577) by bashonly, clayote - Fix concurrent formats downloading to stdout (#15617) by grqz
- Fix interactive format/video selection when downloading to stdout (#15626) by grqz
- Support Deno installed via Python package (#15614) by bashonly, zahlman
- utils
decode_packed_codes: Fix missing key handling (#15440) by cesbardevalue: Fix calling reviver on cached value (#15568) by Grub4Kjs_to_json: Prevent false positives for octals (#15474) by doe1080mimetype2ext: Recognize more srt types (#15411) by seproDevrandom_user_agent: Bump versions (#15396) by seproDevunified_timestamp: Addtz_offsetparameter (#15357) by doe1080
Extractor changes
- Fix prioritization of Youtube URL matching (#15596) by Grub4K
- archive.org: Fix metadata extraction (#15286) by bashonly
- bandcamp: weekly: Fix extractor (#15208) by 0xvd, bashonly
- bigo: Support
--wait-for-video(#15463) by olipfei - boosty: Improve metadata extraction (#15543) by Sytm
- cbc: Fix extractors (#15631) by subrat-lima
- cda: Support mobile URLs (#15398) by seproDev
- croatian.film: Add extractor (#15468) by 0xvd
- dailymotion: Fix extractor (#15682) by bashonly (With fixes in a893774)
- dropbox: Support videos in folders (#15313) by 0xvd
- errarhiiv: Add extractor (#15667) by rdamas
- facebook
- Remove broken login support (#15434) by bashonly
- ads: Fix extractor (#15582) by legraphista
- filmarchiv: Add extractor (#13490) by 4elta
- franceinfo
- generic: Improve detection of blockage due to TLS fingerprint (#15426) by bashonly
- gofile: Fix extractor (#15296) by quietvoid
- hotstar: Extract from new API (#15480) by 0xvd
- iqiyi: Remove broken login support (#15441) by seproDev
- lbry: Support filtering of flat playlist results (#15695) by christoph-heinrich, dirkf
- manoto: Remove extractor ([#15414](#154...
yt-dlp 2025.12.08
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Changelog
Core changes
- Respect
PATHEXTwhen locating JS runtime on Windows (#15117) by Grub4K - cookies: Fix
--cookies-from-browserfor new installs of Firefox 147+ (#15215) by bashonly, mbway
Extractor changes
- agalega: Add extractor (#15105) by putridambassador121
- alibaba: Add extractor (#15253) by seproDev
- bitmovin: Add extractor (#15064) by seproDev
- digiteka: Rework extractor (#14903) by beliote
- fc2: live: Raise appropriate error when stream is offline (#15180) by Zer0spectrum
- floatplane: Add subtitle support (#15069) by seproDev
- jtbc: Fix extractor (#15047) by seproDev
- loom: Fix extractor (#15236) by bashonly
- mave: channel: Add extractor (#14915) by anlar
- medaltv: Rework extractor (#15103) by seproDev
- netapp: Add extractors (#15122) by darkstar
- nhk: Fix extractors (#14528) by garret1317
- nowcanal: Add extractor (#14584) by pferreir
- patreon: campaign: Fix extractor (#15108) by thomasmllt
- rinsefm: Fix extractors (#15020) by 1bnBattuta, seproDev
- s4c: Fix geo-restricted content (#15196) by seproDev
- soundcloudplaylist: Support new API URLs (#15071) by seproDev
- sporteurope: Support new domain (#15251) by bashonly
- sproutvideo: Fix extractor (#15113) by bashonly
- thechosen: Add extractors (#14183) by mrFlamel
- thisoldhouse: Fix login support (#15097) by bashonly
- tubitv: series: Fix extractor (#15018) by Zer0spectrum
- urplay: Fix extractor (#15120) by seproDev
- web.archive: youtube: Fix extractor (#15234) by seproDev
- wistiachannel: Fix extractor (#14218) by Sojiroh
- xhamster: Fix extractor (#15252) by 0xvd
- yfanefa: Add extractor (#15032) by Haytam001
- youtube
- Add
use_ad_playback_contextextractor-arg (#15220) by WhatAmISupposedToPutHere - Allow
ejspatch version to differ (#15263) by Grub4K - Detect "super resolution" AI-upscaled formats (#15050) by bashonly
- Determine wait time from player response (#14646) by bashonly, WhatAmISupposedToPutHere
- Extract all automatic caption languages (#15156) by bashonly
- Improve message when no JS runtime is found (#15266) by bashonly
- Update ejs to 0.3.2 (#15267) by bashonly
- Add
Downloader changes
- [Fix playback wait time for ffmpeg downloads](23f1ab346927ab73ad5...
yt-dlp 2025.11.12
A description of the various files is in the README
The zipimport Unix executable contains code licensed under ISC and MIT. The PyInstaller-bundled executables are subject to these and other licenses, all of which are compiled in THIRD_PARTY_LICENSES.txt
Important changes
- An external JavaScript runtime is now required for full YouTube support
yt-dlp now requires users to have an external JavaScript runtime (e.g. Deno) installed in order to solve the JavaScript challenges presented by YouTube. Read more
Changelog
Core changes
- cookies
- sponsorblock: Add
hookcategory (#14845) by seproDev - update: Fix PyInstaller onedir variant detection (#14800) by bashonly
Extractor changes
- 1tv: live: Add extractor (#14299) by swayll
- ardaudiothek: Add extractors (#14309) by evilpie, marieell
- bunnycdn
- discoverynetworksde: Fix extraction (#14818) by dirkf, w4grfw (With fixes in f3c255b by bashonly)
- floatplane: Fix extractor (#14984) by i3p9
- googledrive
- kika: Do not extract non-existent subtitles (#14813) by InvalidUsernameException
- mux: Add extractor (#14914) by PierceLBrooks, seproDev
- nascarclassics: Add extractor (#14866) by JrM2628
- nbc: Detect and discard DRM formats (#14844) by bashonly
- ntv.ru: Rework extractor (#14934) by anlar, seproDev (With fixes in a86eeaa by seproDev)
- play.tv: Update extractor for new domain (#14905) by thomasmllt
- tubetugraz: Support alternate URL format (#14718) by krystophny
- twitch
- Fix playlist extraction (#15008) by bashonly, ctengel
- stream: Fix extractor (#14988) by seproDev
- vod: Fix extractor (#14999) by Zer0spectrum
- urplay: Fix extractor (#14785) by seproDev
- web.archive: youtube: Fix extractor (#14753) by seproDev
- xhamster: Fix extractor (#14948) by CaramelConnoisseur, dhwz
- youtube
- Add
tv_downgradedclient (#14887) by seproDev (With fixes in fa35eb2) - Fix
web_embeddedclient extraction (#14843) by bashonly, seproDev - Fix auto-generated metadata extraction (#13896) by TheQWERTYCodr
- Fix original language detection (#14919) by bashonly
- Implement external n/sig solver (#14157) by bashonly, coletdjnz, Grub4K, seproDev (With fixes in 4b4223b, ee98be4, c0c9f30, cacd163, [8636a9b](https://github.com/yt-dlp/yt-dlp...
- Add
yt-dlp 2025.10.22
A description of the various files is in the README
The PyInstaller-bundled executables are subject to the licenses described in THIRD_PARTY_LICENSES.txt
Important changes
- A stopgap release with a TEMPORARY partial fix for YouTube support
Some formats may still be unavailable, especially if cookies are passed to yt-dlp. The NEXT release, expected very soon, will require an external JS runtime (e.g. Deno) in order for YouTube downloads to work properly. Read more - The minimum required Python version has been raised to 3.10
Python 3.9 has reached its end-of-life as of October 2025, and yt-dlp has now removed support for it. Read more
Changelog
Core changes
Extractor changes
- appleconnect: Rework extractor (#13229) by doe1080
- idagio: Support URLs with country codes (#14655) by robin-mu
- tvnoe: Rework Extractor (#13369) by doe1080
- youtube: Use temporary player client workaround (#14693) by gamer191