Skip to content

Releases: yt-dlp/yt-dlp

yt-dlp 2022.09.01

01 Sep 11:30
Compare
Choose a tag to compare

A description of the various files are in the README


Changelog

  • Add option --use-extractors
  • Merge youtube-dl: Upto commit/ed5c44e
  • Add yt-dlp version to infojson
  • Fix --break-per-url --max-downloads
  • Fix bug in --alias
  • [cookies] Support firefox container in --cookies-from-browser by bashonly, coletdjnz, pukkandan
  • [downloader/external] Smarter detection of executable
  • [extractor/generic] Don't return JW player without formats
  • [FormatSort] Fix aext for --prefer-free-formats
  • [jsinterp] Various improvements by pukkandan, dirkf, elyse0
  • [cache] Mechanism to invalidate old cache
  • [utils] Add deprecation_warning
  • [utils] Add orderedSet_from_options
  • [utils] Popen: Restore LD_LIBRARY_PATH when using PyInstaller by Lesmiscore
  • [build] make tar should not follow DESTDIR by satan1st
  • [build] Update pyinstaller by shirt-dev
  • [test] Fix test_youtube_signature
  • [cleanup] Misc fixes and cleanup by DavidH-2022, MrRawes, pukkandan
  • [extractor/epoch] Add extractor by tejasa97
  • [extractor/eurosport] Add extractor by HobbyistDev
  • [extractor/IslamChannel] Add extractors by Lesmiscore
  • [extractor/newspicks] Add extractor by Lesmiscore
  • [extractor/triller] Add extractor by bashonly
  • [extractor/VQQ] Add extractors by elyse0
  • [extractor/youtube] Improvements to nsig extraction
  • [extractor/youtube] Fix bug in format sorting
  • [extractor/youtube] Update iOS Innertube clients by SamantazFox
  • [extractor/youtube] Use device-specific user agent by coletdjnz
  • [extractor/youtube] Add --compat-option no-youtube-prefer-utc-upload-date by coletdjnz
  • [extractor/arte] Bug fix by cgrigis
  • [extractor/bilibili] Extract flac with premium account by jackyyf
  • [extractor/BiliBiliSearch] Don't sort by date
  • [extractor/BiliBiliSearch] Fix infinite loop
  • [extractor/bitchute] Mark errors as expected
  • [extractor/crunchyroll:beta] Use anonymous access by tejing1
  • [extractor/huya] Fix stream extraction by ohaiibuzzle
  • [extractor/medaltv] Fix extraction by xenova
  • [extractor/mediaset] Fix embed extraction
  • [extractor/mixcloud] All formats are audio-only
  • [extractor/rtbf] Fix jwt extraction by elyse0
  • [extractor/screencastomatic] Support --video-password by shreyasminocha
  • [extractor/stripchat] Don't modify input URL by dfaker
  • [extractor/uktv] Improve _VALID_URL by dirkf
  • [extractor/vimeo:user] Fix _VALID_URL

yt-dlp 2022.08.19

19 Aug 00:17
Compare
Choose a tag to compare

A description of the various files are in the README


Changelog

  • Fix bug in --download-archive
  • [jsinterp] Fix for new youtube players and related improvements by dirkf, pukkandan
    • You may need to --rm-cache after update for this to work
  • [phantomjs] Add function to execute JS without a DOM by MinePlayersPE, pukkandan
  • [build] Exclude devscripts from installs by Lesmiscore
  • [cleanup] Misc fixes and cleanup
  • [extractor/youtube] Add fallback to phantomjs for nsig
  • [extractor/youtube] Fix error reporting of "Incomplete data"
  • [extractor/youtube] Improve format sorting for IOS formats
  • [extractor/youtube] Improve signature caching
  • [extractor/instagram] Fix extraction by bashonly, pritam20ps05
  • [extractor/rai] Minor fix by nixxo
  • [extractor/rtbf] Fix stream extractor by elyse0
  • [extractor/SovietsCloset] Fix extractor by ChillingPepper
  • [extractor/zattoo] Fix Zattoo resellers by goggle

yt-dlp 2022.08.18.36

19 Aug 05:08
778763d
Compare
Choose a tag to compare
yt-dlp 2022.08.18.36 Pre-release
Pre-release

yt-dlp 2022.08.14

14 Aug 22:22
Compare
Choose a tag to compare

A description of the various files are in the README


Changelog

  • Merge youtube-dl: Upto commit/d231b56
  • [jsinterp] Handle new youtube signature functions
  • [jsinterp] Truncate error messages
  • [extractor] Fix format sorting of channels
  • [ffmpeg] Disable avconv unless --prefer-avconv
  • [ffmpeg] Smarter detection of ffprobe filename
  • [patreon] Ignore erroneous media attachments by coletdjnz
  • [postprocessor/embedthumbnail] Detect libatomicparsley.so
  • [ThumbnailsConvertor] Fix conversion after fixup_webp
  • [utils] Fix get_compatible_ext
  • [build] Fix changelog
  • [update] Set executable bit-mask by pukkandan, Lesmiscore
  • [devscripts] Fix import
  • [docs] Consistent use of e.g. by Lesmiscore
  • [cleanup] Misc fixes and cleanup
  • [extractor/moview] Add extractor by HobbyistDev
  • [extractor/parler] Add extractor by palewire
  • [extractor/truth] Add extractor by palewire
  • [extractor/aenetworks] Add formats parameter by jacobtruman
  • [extractor/crunchyroll] Improve _VALID_URLs
  • [extractor/doodstream] Add wf domain by aldoridhoni
  • [extractor/facebook] Add reel support by bashonly
  • [extractor/MLB] New extractor by ischmidt20
  • [extractor/rai] Misc fixes by nixxo
  • [extractor/toggo] Improve _VALID_URL by masta79
  • [extractor/tubitv] Extract additional formats by shirt-dev
  • [extractor/zattoo] Potential fix for resellers

yt-dlp 2022.08.08

08 Aug 22:22
Compare
Choose a tag to compare

A description of the various files are in the README


Changelog

  • Remove Python 3.6 support
  • Determine merge container better by pukkandan, selfisekai
  • Framework for embed detection by coletdjnz, pukkandan
  • Merge youtube-dl: Upto commit/adb5294
  • --compat-option no-live-chat should disable danmaku
  • Fix misleading DRM message
  • Import ctypes only when necessary
  • Minor bugfixes by pukkandan
  • Reject entire playlists faster with --match-filter by pukkandan
  • Remove filtered entries from -J
  • Standardize retry mechanism by pukkandan
  • Validate --merge-output-format
  • [downloader] Add average speed to final progress line
  • [extractor] Add field audio_channels
  • [extractor] Support multiple archive ids for one video
  • [ffmpeg] Set ffmpeg_location in a contextvar
  • [FFmpegThumbnailsConvertor] Fix conversion from GIF
  • [MetadataParser] Don't set None when the field didn't match
  • [outtmpl] Smarter replacing of unsupported characters by pukkandan
  • [outtmpl] Treat empty values as None in filenames
  • [utils] sanitize_open: Allow any IO stream as stdout
  • [build, devscripts] Add devscript to set a build variant
  • [build] Improve build process by shirt-dev
  • [build] Update pyinstaller
  • [devscripts] Create utils and refactor
  • [docs] Clarify best*
  • [docs] Fix bug report issue template
  • [docs] Fix capitalization in references by christoph-heinrich
  • [cleanup, mhtml] Use imghdr
  • [cleanup, utils] Consolidate known media extensions
  • [cleanup] Misc fixes and cleanup
  • [extractor/angel] Add extractor by AxiosDeminence
  • [extractor/dplay] Add MotorTrend extractor by Sipherdrakon
  • [extractor/harpodeon] Add extractor by eren-kemer
  • [extractor/holodex] Add extractor by pukkandan, sqrtNOT
  • [extractor/kompas] Add extractor by HobbyistDev
  • [extractor/rai] Add raisudtirol extractor by nixxo
  • [extractor/tempo] Add extractor by HobbyistDev
  • [extractor/youtube] Fixes for third party client detection by coletdjnz
  • [extractor/youtube] Add live_status=post_live by lazypete365
  • [extractor/youtube] Extract more format info
  • [extractor/youtube] Parse translated subtitles only when requested
  • [extractor/youtube, extractor/twitch] Allow waiting for channels to become live
  • [extractor/youtube, webvtt] Extract auto-subs from livestream VODs by fstirlitz, pukkandan
  • [extractor/AbemaTVTitle] Implement paging by Lesmiscore
  • [extractor/archiveorg] Improve handling of formats by coletdjnz, pukkandan
  • [extractor/arte] Fix title extraction
  • [extractor/arte] Move to v2 API by fstirlitz, pukkandan
  • [extractor/bbc] Fix news articles by ajj8
  • [extractor/camtasia] Separate into own extractor by coletdjnz
  • [extractor/cloudflarestream] Fix video_id padding by haobinliang
  • [extractor/crunchyroll] Fix conversion of thumbnail from GIF by pukkandan
  • [extractor/crunchyroll] Handle missing metadata correctly by Burve, pukkandan
  • [extractor/crunchyroll:beta] Extract timestamp and fix tests by tejing1
  • [extractor/crunchyroll:beta] Use streams API by tejing1
  • [extractor/doodstream] Support more domains by Galiley
  • [extractor/ESPN] Extract duration by ischmidt20
  • [extractor/FIFA] Change API endpoint by Bricio, yashkc2025
  • [extractor/globo:article] Remove false positives by Bricio
  • [extractor/Go] Extract timestamp by ischmidt20
  • [extractor/hidive] Fix cookie login when netrc is also given by winterbird-code
  • [extractor/html5] Separate into own extractor by coletdjnz, pukkandan
  • [extractor/ina] Improve extractor by elyse0
  • [extractor/NaverNow] Change endpoint by ping
  • [extractor/ninegag] Extract uploader by DjesonPV
  • [extractor/NovaPlay] Fix extractor by Bojidarist
  • [extractor/orf:radio] Rewrite extractors
  • [extractor/patreon] Fix and improve extractors by coletdjnz, pukkandan
  • [extractor/rai] Fix RaiNews extraction by nixxo
  • [extractor/redbee] Unify and update extractors by elyse0
  • [extractor/stripchat] Fix _VALID_URL by freezboltz
  • [extractor/tubi] Exclude playlists from playlist entries by sqrtNOT
  • [extractor/tviplayer] Improve _VALID_URL by HobbyistDev
  • [extractor/twitch] Extract chapters for single chapter VODs by mpeter50
  • [extractor/vgtv] Support tv.vg.no by sqrtNOT
  • [extractor/vidio] Support embed link by HobbyistDev
  • [extractor/vk] Fix extractor by Mehavoid
  • [extractor/WASDTV:record] Fix _VALID_URL
  • [extractor/xfileshare] Add Referer by Galiley
  • [extractor/YahooJapanNews] Fix extractor by Lesmiscore
  • [extractor/yandexmusic] Extract higher quality format
  • [extractor/zee5] Update Device ID by m4tu4g

yt-dlp 2022.07.18

18 Jul 00:07
Compare
Choose a tag to compare

A description of the various files are in the README

Deprecation Warning

Support for Python version 3.6 has been deprecated. See #3764 for more details. You will no longer receive updates on this version! Please update to Python 3.7 or above


Changelog

  • Allow users to specify encoding in each config files by Lesmiscore
  • Discard infodict from memory if no longer needed
  • Do not allow extractors to return None
  • Do not load system certificates when certifi is used
  • Fix rounding of integers in format table
  • Improve chapter sanitization
  • Skip some fixup if remux/recode is needed by Lesmiscore
  • Support --no-progress for --wait-for-video
  • Fix bug in 612f2be
  • [outtmpl] Add alternate form h for HTML escaping
  • [aes] Add multiple padding modes in CBC by elyse0
  • [extractor/common] Passthrough errnote=False to parsers
  • [extractor/generic] Remove HEAD request
  • [http] Ensure the file handle is always closed
  • [ModifyChapters] Modify duration in infodict
  • [options] Fix aliases to --config-location
  • [utils] Fix get_domain
  • [build] Consistent order for lazy extractors by lamby
  • [build] Fix architecture suffix of executables by odo2063
  • [build] Improve setup.py
  • [update] Do not check _update_spec when up to date
  • [update] Prepare to remove Python 3.6 support
  • [compat] Let PyInstaller detect _legacy module
  • [devscripts/update-formulae] Do not change dependency section
  • [test] Split download tests so they can be more easily run in CI
  • [docs] Improve docstring of download_ranges by FirefoxMetzger
  • [docs] Improve issue templates
  • [build] Fix bug in 6d916fe
  • [cleanup, utils] Refactor parse_codecs
  • [cleanup] Misc fixes and cleanup
  • [extractor/acfun] Add extractors by lockmatrix
  • [extractor/Audiodraft] Add extractors by Ashish0804, fstirlitz
  • [extractor/cellebrite] Add extractor by HobbyistDev
  • [extractor/detik] Add extractor by HobbyistDev
  • [extractor/hytale] Add extractor by llamasblade, pukkandan
  • [extractor/liputan6] Add extractor by HobbyistDev
  • [extractor/mocha] Add extractor by HobbyistDev
  • [extractor/rtl.lu] Add extractor by HobbyistDev
  • [extractor/rtvsl] Add extractor by iw0nderhow, pukkandan
  • [extractor/StarTrek] Add extractor by scy
  • [extractor/syvdk] Add extractor by misaelaguayo
  • [extractor/theholetv] Add extractor by dosy4ev
  • [extractor/TubeTuGraz] Add extractor by Ferdi265, pukkandan
  • [extractor/tviplayer] Add extractor by HobbyistDev
  • [extractor/wetv] Add extractors by elyse0
  • [extractor/wikimedia] Add extractor by EhtishamSabir, pukkandan
  • [extractor/youtube] Fix duration check for post-live manifestless mode
  • [extractor/youtube] More metadata for storyboards by ftk
  • [extractor/bigo] Fix extractor by Lesmiscore
  • [extractor/BiliIntl] Fix subtitle extraction by MinePlayersPE
  • [extractor/crunchyroll] Improve _VALID_URL
  • [extractor/fifa] Fix extractor by ischmidt20
  • [extractor/instagram] Fix post/story extractors by pritam20ps05, pukkandan
  • [extractor/iq] Set language correctly for Korean subtitles
  • [extractor/MangoTV] Fix subtitle languages
  • [extractor/Netverse] Improve playlist extractor by HobbyistDev
  • [extractor/philharmoniedeparis] Fix extractor by sqrtNOT
  • [extractor/Trovo] Fix extractor by u-spec-png
  • [extractor/twitch] Support storyboards for VODs by ftk
  • [extractor/WatchESPN] Improve _VALID_URL by IONECarter, dirkf
  • [extractor/WSJArticle] Fix video id extraction by sqrtNOT
  • [extractor/Ximalaya] Fix extractors by lockmatrix
  • [cleanup, extractor/youtube] Fix tests by sheerluck

yt-dlp 2022.06.29

29 Jun 01:45
Compare
Choose a tag to compare

A description of the various files are in the README

Deprecation Warning

Support for Python version 3.6 has been deprecated. See #3764 for more details. You will receive only one more update on Py3.6! Please update to Python 3.7 or above


Changelog

  • Fix --downloader native
  • Fix section_end of clips
  • Fix playlist error handling
  • Sanitize chapters
  • [extractor] Fix _create_request when headers is None
  • [extractor] Fix empty BaseURL in MPD
  • [ffmpeg] Write full output to debug on error
  • [hls] Warn user when trying to download live HLS
  • [options] Fix parse_known_args for --
  • [utils] Fix inconsistent default handling between HTTP and HTTPS requests by coletdjnz
  • [build] Draft release until complete
  • [build] Fix release tag commit
  • [build] Standalone x64 builds for MacOS 10.9 by StefanLobbenmeier
  • [update] Ability to set a maximum version for specific variants
  • [compat] Fix compat.WINDOWS_VT_MODE
  • [compat] Remove deprecated functions from core code
  • [compat] Remove more functions
  • [cleanup, extractor] Reduce direct use of _downloader
  • [cleanup] Consistent style for file heads
  • [cleanup] Fix some typos by crazymoose77756
  • [cleanup] Misc fixes and cleanup
  • [extractor/Scrolller] Add extractor by LunarFang416
  • [extractor/ViMP] Add playlist extractor by FestplattenSchnitzel
  • [extractor/fuyin] Add extractor by HobbyistDev
  • [extractor/livestreamfails] Add extractor by nomevi
  • [extractor/premiershiprugby] Add extractor by HobbyistDev
  • [extractor/steam] Add broadcast extractor by HobbyistDev
  • [extractor/youtube] Mark videos as fully watched by Brett824
  • [extractor/CWTV] Extract thumbnail by ischmidt20
  • [extractor/ViMP] Add thumbnail and support more sites by FestplattenSchnitzel
  • [extractor/dropout] Support cookies and login only as needed by pingiun, pukkandan
  • [extractor/ertflix] Improve _VALID_URL
  • [extractor/lbry] Use HEAD request for redirect URL by flashdagger
  • [extractor/mediaset] Improve _VALID_URL
  • [extractor/npr] Implement e50c350 differently
  • [extractor/tennistv] Rewrite extractor by pukkandan, zenerdi0de

yt-dlp 2022.06.22.1

22 Jun 02:19
Compare
Choose a tag to compare

A description of the various files are in the README


Changelog

  • Deprecate support for Python 3.6
  • Add option --download-sections to download video partially
    • Chapter regex and time ranges are accepted (Eg: --download-sections *1:10-2:20)
  • Add option --alias
  • Add option --lazy-playlist to process entries as they are received
  • Add option --retry-sleep
  • Add slicing notation to --playlist-items
    • Adds support for negative indices and step
    • Add -I as alias for --playlist-index
    • Makes --playlist-start, --playlist-end, --playlist-reverse, --no-playlist-reverse redundant
  • --config-location - to provide options interactively
  • [build] Add Linux standalone builds
  • [update] Self-restart after update
  • Merge youtube-dl: Upto commit/8a158a9
  • Add --no-update
  • Allow extractors to specify section_start/end for clips
  • Do not print progress to stderr with -q
  • Ensure pre-processor errors do not block video download
  • Fix --simulate --max-downloads
  • Improve error handling of bad config files
  • Return an error code if update fails
  • Fix bug in 3a408f9
  • [ExtractAudio] Allow conditional conversion
  • [ModifyChapters] Fix repeated removal of small segments
  • [ThumbnailsConvertor] Allow conditional conversion
  • [cookies] Detect profiles for cygwin/BSD by moench-tegeder
  • [dash] Show fragment count with --live-from-start by flashdagger
  • [extractor] Add _search_json by coletdjnz, pukkandan
  • [extractor] Add default parameter to _search_json by coletdjnz, pukkandan
  • [extractor] Add dev option --load-pages
  • [extractor] Handle json_ld with multiple @types
  • [extractor] Import _ALL_CLASSES lazily
  • [extractor] Recognize src attribute from HTML5 media elements by Lesmiscore
  • [extractor/generic] Revert e6ae51c
  • [f4m] Bugfix
  • [ffmpeg] Check version lazily
  • [jsinterp] Some optimizations and refactoring by dirkf, pukkandan
  • [utils] Improve performance using functools.cache
  • [utils] Send HTTP/1.1 ALPN extension by coletdjnz
  • [utils] ExtractorError: Fix exc_info
  • [utils] ISO3166Utils: Add EU and AP
  • [utils] Popen: Refactor to use contextmanager
  • [utils] locked_file: Fix for PyPy on Windows
  • [update] Expose more functionality to API
  • [update] Use .git folder to distinguish source/unknown
  • [build] Fix updating homebrew formula
  • [compat] Add functools.cached_property
  • [test] Fix FakeYDL signatures by coletdjnz
  • [docs] Improvements
  • [cleanup, ExtractAudio] Refactor
  • [cleanup, downloader] Refactor report_progress
  • [cleanup, extractor] Refactor _download_... methods
  • [cleanup, extractor] Rename extractors.py to _extractors.py
  • [cleanup, utils] Don't use kwargs for format_field
  • [cleanup, build] Refactor
  • [cleanup, docs] Re-indent "Usage and Options" section
  • [cleanup] Deprecate YoutubeDL.parse_outtmpl
  • [cleanup] Misc fixes and cleanup by Lesmiscore, MrRawes, christoph-heinrich, flashdagger, gamer191, kwconder, pukkandan
  • [extractor/DailyWire] Add extractors by HobbyistDev, pukkandan
  • [extractor/fourzerostudio] Add extractors by Lesmiscore
  • [extractor/GoogleDrive] Add folder extractor by evansp, pukkandan
  • [extractor/MirrorCoUK] Add extractor by LunarFang416, pukkandan
  • [extractor/atscaleconfevent] Add extractor by Ashish0804
  • [extractor/freetv] Add extractor by elyse0
  • [extractor/ixigua] Add Extractor by HobbyistDev
  • [extractor/kicker.de] Add extractor by HobbyistDev
  • [extractor/netverse] Add extractors by HobbyistDev, pukkandan
  • [extractor/playsuisse] Add extractor by pukkandan, sbor23
  • [extractor/substack] Add extractor by elyse0
  • [extractor/youtube] Support downloading clips
  • [extractor/youtube] Add innertube_host and innertube_key extractor args by coletdjnz
  • [extractor/youtube] Add warning for PostLiveDvr
  • [extractor/youtube] Bring back _extract_chapters_from_description
  • [extractor/youtube] Extract comment_count from webpage
  • [extractor/youtube] Fix :ytnotifications extractor by coletdjnz
  • [extractor/youtube] Fix initial player response extraction by coletdjnz, pukkandan
  • [extractor/youtube] Fix live chat for videos with content warning by coletdjnz
  • [extractor/youtube] Make signature extraction non-fatal
  • [extractor/youtube:tab] Detect videoRenderer in _post_thread_continuation_entries
  • [extractor/BiliIntl] Fix metadata extraction
  • [extractor/BiliIntl] Fix subtitle extraction by HobbyistDev
  • [extractor/FranceCulture] Fix extractor by aurelg, pukkandan
  • [extractor/PokemonSoundLibrary] Remove extractor by Lesmiscore
  • [extractor/StreamCZ] Fix extractor by adamanldo, dirkf
  • [extractor/WatchESPN] Support free videos and BAM_DTC by ischmidt20
  • [extractor/animelab] Remove extractor by gamer191
  • [extractor/bloomberg] Change playback endpoint by m4tu4g
  • [extractor/ccc] Extract view_count by vkorablin
  • [extractor/crunchyroll:beta] Fix extractor after API change by Burve, tejing1
  • [extractor/curiositystream] Get auth_token from cookie by mnn
  • [extractor/digitalconcerthall] Fix extractor by ZhymabekRoman
  • [extractor/dropbox] Extract the correct mountComponent
  • [extractor/dropout] Login is not mandatory
  • [extractor/duboku] Fix for hostname change by mozbugbox
  • [extractor/espn] Add WatchESPN extractor by ischmidt20, pukkandan
  • [extractor/expressen] Fix extractor by aejdl
  • [extractor/foxnews] Update embed extraction by elyse0
  • [extractor/ina] Fix extractor by elyse0
  • [extractor/iwara:user] Make paging better by Lesmiscore
  • [extractor/jwplatform] Look for data-video-jw-id
  • [extractor/lbry] Update livestream API by flashdagger
  • [extractor/mediaset] Improve _VALID_URL
  • [extractor/naver] Add navernow extractor by ping
  • [extractor/niconico:series] Fix extractor by sqrtNOT
  • [extractor/npr] Use stream url from json-ld by r5d
  • [extractor/pornhub] Extract uploader_id field by Lesmiscore
  • [extractor/radiofrance] Add more radios by bubbleguuum
  • [extractor/rumble] Detect JS embed
  • [extractor/rumble] Extract subtitles by fstirlitz
  • [extractor/southpark] Add southpark.lat extractor by darkxex
  • [extractor/spotify:show] Fix extractor
  • [extractor/tiktok] Detect embeds
  • [extractor/tiktok] Extract SIGI_STATE by dirkf, pukkandan, sulyi
  • [extractor/tver] Fix extractor by Lesmiscore
  • [extractor/vevo] Fix extractor by Lesmiscore
  • [extractor/yahoo:gyao] Fix extractor
  • [extractor/zattoo] Fix live streams by miseran
  • [extractor/zdf] Improve format sorting by elyse0

yt-dlp 2022.06.22

22 Jun 00:58
0af80bc
Compare
Choose a tag to compare
yt-dlp 2022.06.22 Pre-release
Pre-release

A description of the various files are in the README


Changelog

  • Deprecate support for Python 3.6
  • Add option --download-sections to download video partially
    • Chapter regex and time ranges are accepted (Eg: --download-sections *1:10-2:20)
  • Add option --alias
  • Add option --lazy-playlist to process entries as they are received
  • Add option --retry-sleep
  • Add slicing notation to --playlist-items
    • Adds support for negative indices and step
    • Add -I as alias for --playlist-index
    • Makes --playlist-start, --playlist-end, --playlist-reverse, --no-playlist-reverse redundant
  • --config-location - to provide options interactively
  • [build] Add Linux standalone builds
  • [update] Self-restart after update
  • Merge youtube-dl: Upto commit/8a158a9
  • Add --no-update
  • Allow extractors to specify section_start/end for clips
  • Do not print progress to stderr with -q
  • Ensure pre-processor errors do not block video download
  • Fix --simulate --max-downloads
  • Improve error handling of bad config files
  • Return an error code if update fails
  • Fix bug in 3a408f9
  • [ExtractAudio] Allow conditional conversion
  • [ModifyChapters] Fix repeated removal of small segments
  • [ThumbnailsConvertor] Allow conditional conversion
  • [cookies] Detect profiles for cygwin/BSD by moench-tegeder
  • [dash] Show fragment count with --live-from-start by flashdagger
  • [extractor] Add _search_json by coletdjnz, pukkandan
  • [extractor] Add default parameter to _search_json by coletdjnz, pukkandan
  • [extractor] Add dev option --load-pages
  • [extractor] Handle json_ld with multiple @types
  • [extractor] Import _ALL_CLASSES lazily
  • [extractor] Recognize src attribute from HTML5 media elements by Lesmiscore
  • [extractor/generic] Revert e6ae51c
  • [f4m] Bugfix
  • [ffmpeg] Check version lazily
  • [jsinterp] Some optimizations and refactoring by dirkf, pukkandan
  • [utils] Improve performance using functools.cache
  • [utils] Send HTTP/1.1 ALPN extension by coletdjnz
  • [utils] ExtractorError: Fix exc_info
  • [utils] ISO3166Utils: Add EU and AP
  • [utils] Popen: Refactor to use contextmanager
  • [utils] locked_file: Fix for PyPy on Windows
  • [update] Expose more functionality to API
  • [update] Use .git folder to distinguish source/unknown
  • [compat] Add functools.cached_property
  • [test] Fix FakeYDL signatures by coletdjnz
  • [docs] Improvements
  • [cleanup, ExtractAudio] Refactor
  • [cleanup, downloader] Refactor report_progress
  • [cleanup, extractor] Refactor _download_... methods
  • [cleanup, extractor] Rename extractors.py to _extractors.py
  • [cleanup, utils] Don't use kwargs for format_field
  • [cleanup, build] Refactor
  • [cleanup, docs] Re-indent "Usage and Options" section
  • [cleanup] Deprecate YoutubeDL.parse_outtmpl
  • [cleanup] Misc fixes and cleanup by Lesmiscore, MrRawes, christoph-heinrich, flashdagger, gamer191, kwconder, pukkandan
  • [extractor/DailyWire] Add extractors by HobbyistDev, pukkandan
  • [extractor/fourzerostudio] Add extractors by Lesmiscore
  • [extractor/GoogleDrive] Add folder extractor by evansp, pukkandan
  • [extractor/MirrorCoUK] Add extractor by LunarFang416, pukkandan
  • [extractor/atscaleconfevent] Add extractor by Ashish0804
  • [extractor/freetv] Add extractor by elyse0
  • [extractor/ixigua] Add Extractor by HobbyistDev
  • [extractor/kicker.de] Add extractor by HobbyistDev
  • [extractor/netverse] Add extractors by HobbyistDev, pukkandan
  • [extractor/playsuisse] Add extractor by pukkandan, sbor23
  • [extractor/substack] Add extractor by elyse0
  • [extractor/youtube] Support downloading clips
  • [extractor/youtube] Add innertube_host and innertube_key extractor args by coletdjnz
  • [extractor/youtube] Add warning for PostLiveDvr
  • [extractor/youtube] Bring back _extract_chapters_from_description
  • [extractor/youtube] Extract comment_count from webpage
  • [extractor/youtube] Fix :ytnotifications extractor by coletdjnz
  • [extractor/youtube] Fix initial player response extraction by coletdjnz, pukkandan
  • [extractor/youtube] Fix live chat for videos with content warning by coletdjnz
  • [extractor/youtube] Make signature extraction non-fatal
  • [extractor/youtube:tab] Detect videoRenderer in _post_thread_continuation_entries
  • [extractor/BiliIntl] Fix metadata extraction
  • [extractor/BiliIntl] Fix subtitle extraction by HobbyistDev
  • [extractor/FranceCulture] Fix extractor by aurelg, pukkandan
  • [extractor/PokemonSoundLibrary] Remove extractor by Lesmiscore
  • [extractor/StreamCZ] Fix extractor by adamanldo, dirkf
  • [extractor/WatchESPN] Support free videos and BAM_DTC by ischmidt20
  • [extractor/animelab] Remove extractor by gamer191
  • [extractor/bloomberg] Change playback endpoint by m4tu4g
  • [extractor/ccc] Extract view_count by vkorablin
  • [extractor/crunchyroll:beta] Fix extractor after API change by Burve, tejing1
  • [extractor/curiositystream] Get auth_token from cookie by mnn
  • [extractor/digitalconcerthall] Fix extractor by ZhymabekRoman
  • [extractor/dropbox] Extract the correct mountComponent
  • [extractor/dropout] Login is not mandatory
  • [extractor/duboku] Fix for hostname change by mozbugbox
  • [extractor/espn] Add WatchESPN extractor by ischmidt20, pukkandan
  • [extractor/expressen] Fix extractor by aejdl
  • [extractor/foxnews] Update embed extraction by elyse0
  • [extractor/ina] Fix extractor by elyse0
  • [extractor/iwara:user] Make paging better by Lesmiscore
  • [extractor/jwplatform] Look for data-video-jw-id
  • [extractor/lbry] Update livestream API by flashdagger
  • [extractor/mediaset] Improve _VALID_URL
  • [extractor/naver] Add navernow extractor by ping
  • [extractor/niconico:series] Fix extractor by sqrtNOT
  • [extractor/npr] Use stream url from json-ld by r5d
  • [extractor/pornhub] Extract uploader_id field by Lesmiscore
  • [extractor/radiofrance] Add more radios by bubbleguuum
  • [extractor/rumble] Detect JS embed
  • [extractor/rumble] Extract subtitles by fstirlitz
  • [extractor/southpark] Add southpark.lat extractor by darkxex
  • [extractor/spotify:show] Fix extractor
  • [extractor/tiktok] Detect embeds
  • [extractor/tiktok] Extract SIGI_STATE by dirkf, pukkandan, sulyi
  • [extractor/tver] Fix extractor by Lesmiscore
  • [extractor/vevo] Fix extractor by Lesmiscore
  • [extractor/yahoo:gyao] Fix extractor
  • [extractor/zattoo] Fix live streams by miseran
  • [extractor/zdf] Improve format sorting by elyse0

yt-dlp 2022.05.18

18 May 03:37
Compare
Choose a tag to compare

A description of the various files are in the README


Changelog:

  • Add support for SSL client certificate authentication by coletdjnz, dirkf
    • Adds --client-certificate, --client-certificate-key, --client-certificate-password
  • Add --match-filter - to interactively ask for each video
  • --max-downloads should obey --break-per-input
  • Allow use of weaker ciphers with --legacy-server-connect
  • Don't imply -s for later stages of -O
  • Fix --date today
  • Fix --skip-unavailable-fragments
  • Fix color in -q -F
  • Fix redirect HTTP method handling by coletdjnz
  • Improve --clean-infojson
  • Remove warning for videos with an empty title
  • Run FFmpegFixupM3u8PP for live-streams if needed
  • Show name of downloader in verbose log
  • [cookies] Allow cookiefile to be a text stream
  • [cookies] Report progress when importing cookies
  • [downloader/ffmpeg] Specify headers for each URL by elyse0
  • [fragment] Do not change chunk-size when --test
  • [fragment] Make single thread download work for --live-from-start by Lesmiscore
  • [hls] Fix byte_range for EXT-X-MAP fragment by fstirlitz
  • [http] Fix retrying on read timeout by coletdjnz
  • [ffmpeg] Fix features detection
  • [EmbedSubtitle] Enable for more video extensions
  • [EmbedThumbnail] Disable thumbnail conversion for mkv by evansp
  • [EmbedThumbnail] Do not obey -k
  • [EmbedThumbnail] Do not remove id3v1 tags
  • [FFmpegMetadata] Remove \0 from metadata
  • [FFmpegMetadata] Remove filename from attached info-json
  • [FixupM3u8] Obey --hls-prefer-mpegts
  • [Sponsorblock] Don't crash when duration is unknown
  • [XAttrMetadata] Refactor and document dependencies
  • [extractor] Document netrc machines
  • [extractor] Update manifest_urls after redirect by elyse0
  • [extractor] Update dash manifest_url after redirects by elyse0
  • [extractor] Use classmethod/property where possible
  • [generic] Refactor _extract_rss
  • [utils] is_html: Handle double BOM
  • [utils] locked_file: Ignore illegal seek on truncate by jakeogh
  • [utils] sanitize_path: Fix when path is empty string
  • [utils] write_string: Workaround newline issue in conhost
  • [utils] certifi: Make sure the pem file exists
  • [utils] Fix WebSocketsWrapper
  • [utils] locked_file: Do not give executable bits for newly created files by Lesmiscore
  • [utils] YoutubeDLCookieJar: Detect and reject JSON file by Lesmiscore
  • [test] Convert warnings into errors and fix some existing warnings by fstirlitz
  • [dependencies] Create module with all dependency imports
  • [compat] Split into sub-modules by fstirlitz, pukkandan
  • [compat] Implement compat.imghdr
  • [build] Add make uninstall by MrRawes
  • [build] Avoid use of install -D
  • [build] Fix Makefile by putnam
  • [build] Fix --onedir on macOS
  • [build] Add more test-runners
  • [cleanup] Deprecate some compat vars by fstirlitz, pukkandan
  • [cleanup] Remove unused code paths, extractors, scripts and tests by fstirlitz
  • [cleanup] Upgrade syntax (pyupgrade) and sort imports (isort)
  • [cleanup, docs, build] Misc fixes
  • [BilibiliLive] Add extractor by HE7086, pukkandan
  • [Fifa] Add Extractor by Bricio
  • [goodgame] Add extractor by nevack
  • [gronkh] Add playlist extractors by hatienl0i261299
  • [icareus] Add extractor by tpikonen, pukkandan
  • [iwara] Add playlist extractors by i6t
  • [Likee] Add extractor by hatienl0i261299
  • [masters] Add extractor by m4tu4g
  • [nebula] Add support for subscriptions by hheimbuerger
  • [Podchaser] Add extractors by connercsbn
  • [rokfin:search] Add extractor by P-reducible, pukkandan
  • [youtube] Add :ytnotifications extractor by krichbanana
  • [youtube] Add YoutubeStoriesIE (ytstories:<channel UCID>) by coletdjnz
  • [ZingMp3] Add chart and user extractors by hatienl0i261299
  • [adn] Update AES key by elyse0
  • [adobepass] Allow cookies for authenticating MSO
  • [bandcamp] Exclude merch links by Yipten
  • [chingari] Fix archiving and tests
  • [DRTV] Improve _VALID_URL by vertan
  • [facebook] Improve thumbnail extraction by Wikidepia
  • [fc2] Stop heatbeating once FFmpeg finishes by Lesmiscore
  • [Gofile] Fix extraction and support password-protected links by mehq
  • [hotstar, cleanup] Refactor extractors
  • [InfoQ] Don't fail on missing audio format by evansp
  • [Jamendo] Extract more metadata by evansp
  • [kaltura] Update API calls by flashdagger
  • [KhanAcademy] Fix extractor by rand-net
  • [LCI] Fix extractor by MarwenDallel
  • [lrt] Support livestreams by GiedriusS
  • [niconico] Set expected_protocol to a public field
  • [Niconico] Support 2FA by ekangmonyet
  • [Olympics] Fix format extension
  • [openrec:movie] Enable fallback for /movie/ URLs
  • [PearVideo] Add fallback for formats by hatienl0i261299
  • [radiko] Fix extractor by Lesmiscore
  • [rai] Add release_year
  • [reddit] Prevent infinite loop
  • [rokfin] Implement login by P-reducible, pukkandan
  • [ruutu] Support hs.fi embeds by tpikonen, pukkandan
  • [spotify] Detect iframe embeds by fstirlitz
  • [telegram] Fix metadata extraction
  • [tmz, cleanup] Update tests by diegorodriguezv
  • [toggo] Fix _VALID_URL by ca-za
  • [trovo] Update to new API by nyuszika7h
  • [TVer] Improve extraction by Lesmiscore
  • [twitcasting] Pass headers for each formats by Lesmiscore
  • [VideocampusSachsen] Improve extractor by FestplattenSchnitzel
  • [vimeo] Fix extractors
  • [wat] Fix extraction of multi-language videos and subtitles by elyse0
  • [wistia] Fix _VALID_URL by dirkf
  • [youtube, cleanup] Minor refactoring by coletdjnz, pukkandan
  • [youtube] Added piped instance urls by JordanWeatherby
  • [youtube] Deprioritize auto-generated thumbnails
  • [youtube] Deprioritize format 22 (often damaged)
  • [youtube] Fix episode metadata extraction
  • [zee5] Fix extractor by Ashish0804
  • [zingmp3, cleanup] Refactor extractors