Commit Graph

970 Commits (aeaf3b2b92bc4ab8b6f5d90c053aa43d93ab64e1)

Author SHA1 Message Date
u-spec-png 02c7ae8104
[Newgrounds] Add `NewgroundsUserIE` and improve extractor ()
Authored by: u-spec-png
Ashish Gupta 16f7e6be3a
[bilibili]Add BiliIntlIE and BiliIntlSeriesIE ()
Closes  
Authored by: Ashish0804
Ashish Gupta ffecd3034b
[MuseScore] Add Extractor ()
Closes  
Authored by: Ashish0804
Felix S 1c5ce74c04
[zype] Extract subtitles from the m3u8 manifest ()
Closes 
Authored by: fstirlitz
pukkandan 81a136b80f
[WebVTT] Adjust parser to accommodate PBS subtitles ()
Closes 
coletdjnz eab3f867e2
[nzherald] Add NZHeraldIE ()
Authored-by: coletdjnz

Related: https://github.com/ytdl-org/youtube-dl/issues/28267
coletdjnz a7e999beec
[pbs] Fix subtitle extraction ()
Original PR: https://github.com/ytdl-org/youtube-dl/pull/24430, https://github.com/ytdl-org/youtube-dl/pull/17434
Closes: , https://github.com/ytdl-org/youtube-dl/issues/18796, https://github.com/ytdl-org/youtube-dl/issues/17273
Authored-by: coletdjnz, gesa, raphaeldore
Ashish 71407b3eca
[Olympics] Add replay extractor ()
Closes  
Authored by: Ashish0804
Ashish dc9de9cbd2
[Yandex] Add ZenYandexIE and ZenYandexChannelIE ()
Authored by: Ashish0804
Poschi 92ddaa415e
[gotostage] Add extractor ()
Authored by: poschi3
coletdjnz b6de707d13
[youtube] Improvements to JS player extraction (See desc) ()
* fallback player url extraction when it fails to be extracted from the webpage
* don't download js player unnecessarily for clients that don't require it
* try to extract js player url from any additional client configs
* ability to skip the js player usage/download using `player_skip=js`
* ability to skip the initial webpage download using `player_skip=webpage`

known issue:
* authentication for multi-channel accounts and multi-account cookies may not work correctly if the webpage or client configs are skipped
*  formats from the web client requiring signature decryption will be skipped if player js extraction is skipped

Authored by: coletdjnz
coletdjnz bccdbd22d5
[Mediaklikk] Add Extractor ()
Original PR: https://github.com/ytdl-org/youtube-dl/pull/17453, https://github.com/ytdl-org/youtube-dl/pull/25098
Fixes: https://github.com/ytdl-org/youtube-dl/issues/21431
Authored-by: tmarki, mrx23dot, coletdjnz
MinePlayersPE bd9ff55bcd [tiktok] Use API to fetch higher quality video ()
Authored by: MinePlayersPE, llacb47
pukkandan 526d74ec5a
[cleanup] Misc
pukkandan e04a1ff92e
[soundcloud] Retry playlist pages on `502` error
Closes 
pukkandan aa6c25309a [soundcloud] Make playlist extraction lazy
pukkandan d98b006b85 [dw] Fix extractor
Closes 
pukkandan 265a7a8ee5
[redtube] Fix exts
Closes 
pukkandan 826446bd82
[plutotv] Fix extractor for URLs with `/en`
Closes 
The Hatsune Daishi bc79491368
[17live] Add 17.live extractor ()
Authored by: nao20010128nao
ChillingPepper 421ddcb8b4
[SovietsCloset] Add extractor ()
Authored by: ChillingPepper
coletdjnz c0ac49bcca
[youtube] Retry on 'Unknown Error' ()
and do not repeat unimportant alerts

Closes 
Authored by: coletdjnz
coletdjnz 02def2714c
[southpark] Fix SouthParkDE ()
This was broken by ee1e05581e
Authored by: coletdjnz
pukkandan f9be9cb9fd
[cookies] Print warning for cookie decoding error only once
Closes 
pukkandan 4614bc22c1 Allow `--force-write-archive` to work with `--flat-playlist`
Related: 
pukkandan 8e5fecc88c
Handle more playlist errors with `-i`
pukkandan 165efb823b
[ModifyChapters] fixes (See desc)
* [docs] Fix typo
* Do not enable `sponskrub` by default
* Fix `--force-keyframes-at-cuts`
* Don't embed subtitles if the video has been cut. Previously, running `--remove-chapters` with `--embed-subs` multiple times caused repeated cuts and out-of-sync subtitles
* Store `_real_duration` to prevent running ffprobe multiple times
pukkandan dd594deb2a
Fix `--no-get-comments`
Closes 
pukkandan 409e18286e
Fix `extra_info` being reused across runs
58adec4677 was supposed to solve this, but ended up being an incomplete fix
Closes 
pukkandan 8113999995
Fix `--compat-option playlist-index`
pukkandan 8026e50152
[version] update
:ci skip all
pukkandan 9ee4f0bb5b
Release 2021.09.02
pukkandan 347182a0cd
Show a more useful error in older python versions
pukkandan a7429aa9fa
[youtube] Fix subtitle names
Nil Admirari 7a340e0df3
Native SponsorBlock implementation and related improvements ()
SponsorBlock options:
* The fetched sponsor sections are written to infojson
* `--sponsorblock-remove` removes specified chapters from file
* `--sponsorblock-mark` marks the specified sponsor sections as chapters
* `--sponsorblock-chapter-title` to specify sponsor chapter template
* `--sponsorblock-api` to use a different API

Related improvements:
* Split `--embed-chapters` from `--embed-metadata`
* Add `--remove-chapters` to remove arbitrary chapters
* Add `--force-keyframes-at-cuts` for more accurate cuts when removing and splitting chapters

Deprecates all `--sponskrub` options

Authored by: nihil-admirari, pukkandan
ouwou f0e5366335
[reddit] Fix for quarantined subreddits ()
Authored by: ouwou
nyuszika7h 49ca8db06b
[mediaset] Fix extraction for more videos ()
Closes 
Authored by: nyuszika7h
nyuszika7h ee57a19d84
[mediaset] Fix extraction for some videos ()
This was broken by 
Closes  
Authored by: nyuszika7h
octotherp 908b56eaf7
[XHamster] Extract `uploader_id` ()
Authored by: octotherp
u-spec-png 1461d7bef2
[Tokentube] Add extractor ()
Closes  
Authored by: u-spec-png
pukkandan 8a2d992389
[facebook] Fix format sorting
Closes 
pukkandan 8e25d624df
[EmbedSubtitle] Continue even if some files are missing
coletdjnz e88dabb35e
[Viafree] Fix extractor and extract subtitles ()
Authored by: coletdjnz
Fixes 
BunnyHelp 8eb7ba82ca
[iwara.tv] Extract more metadata ()
Authored-by: BunnyHelp
Luc Ritchie b2eeee0ce0
[afreecatv] Tolerate failure to parse date string ()
Authored by: wlritchi
Luc Ritchie 875cfb8cbc
[afreecatv] Fix adult VODs ()
Original PR: https://github.com/ytdl-org/youtube-dl/pull/28405
Fixes https://github.com/ytdl-org/youtube-dl/issues/26622, https://github.com/ytdl-org/youtube-dl/issues/26926

Authored by: wlritchi
u-spec-png 05664a2f7b
[CDA] Add more formats ()
Fixes: , https://github.com/ytdl-org/youtube-dl/issues/29844
Authored by: u-spec-png
coletdjnz 62cdaaf0e2
[StarTV] Add extractor for startv.com.tr ()
Authored-by: mrfade, coletdjnz
Related: https://github.com/ytdl-org/youtube-dl/issues/22715
coletdjnz 419508eabb
[Motherless] Fix extractor ()
Authored-by: coletdjnz
Fixes , https://github.com/ytdl-org/youtube-dl/issues/29626
Sipherdrakon 54153fb71b
[VH1,TVLand] Fix extractors ()
Fixes  but not 
Authored by: Sipherdrakon
zenerdi0de 1dd6d9ca9d
[Patreon] Add PatreonUserIE ()
Authored by: zenerdi0de
IONECarter 356ac009d3
[peloton] Add extractor ()
Authored by: IONECarter, capntrips, pukkandan
coletdjnz 9a292a620c
[ATV.at] Fix extractor for ATV.at ()
Authored-by: NeroBurner, coletdjnz
Fixes https://github.com/ytdl-org/youtube-dl/issues/29079
coletdjnz 7e55872286
[camtube] remove extractor ()
Co-authored-by: alerikaisattera
std-move 2fc14b9925
[Nova] fix extractor ()
Fixes: https://github.com/ytdl-org/youtube-dl/issues/27840
Authored by: std-move
Ashish 58f68fe703
[TV2Hu] Fix `TV2HuIE` and add `TV2HuSeriesIE` ()
Closes  
Authored by: Ashish0804
animelover1984 abafce59a1
[Niconico] Add Search extractors ()
Authored by: animelover1984, pukkandan
pukkandan 2e7781a93c
[docs] Fix some typos
Closes , 
Ashish bc36bc36a1
[ShemarooMe] Fix extractor ()
Closes  
Authored by: Ashish0804
Paul Wrubel d75201a873
Use `os.replace` where applicable ()
When using 
```py
os.remove(encodeFilename(filename))
os.rename(encodeFilename(temp_filename), encodeFilename(filename))
```
the `os.remove` need not be atomic and so can be executed arbitrarily compared to the immediately following rename call. It is better to use `os.replace` instead

Authored by: paulwrubel
pukkandan 691d5823d6
[aria2c] Obey `--rate-limit`
pukkandan c311988d19
[youtube] Improve 26e8e04454
The streams of the same itag may have slightly different size/bitrate
pukkandan 26e8e04454
[youtube] Prefer audio stream that YouTube considers default
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29864
Related: https://github.com/clsid2/mpc-hc/issues/1268
pukkandan 198e3a04c9
[FormatSort] Remove priority of `lang`
Robin 61bfacb233
[facebook] Update onion URL ()
Authored by: Derkades
Ashish 85a0021fb3
[ProjectVeritas] Add extractor ()
https://github.com/ytdl-org/youtube-dl/issues/26749
Authored by: Ashish0804
Ashish 7a45a1590b
[Epicon] Add extractors ()
Authored by: Ashish0804
CeruleanSky 1c36c1f320
Fix `--no-prefer-free-formats` ()
Authored by: CeruleanSky
pukkandan e0493e90fc
fix bug in 88acdbc269
The Hatsune Daishi 1931a55ee8
[radiko] Add extractors ()
https://github.com/ytdl-org/youtube-dl/issues/29840
Authored by: nao20010128nao
i6t 63b1ad0f05
[iwara] Add thumbnail ()
Authored by: i6t
coletdjnz 0bb1bc1b10
[youtube] Remove annotations and deprecate `--write-annotations` ()
Closes  
Authored by: coletdjnz
pukkandan 45842107b9
fix bug in 6251555f1c
:ci skip
pukkandan 6251555f1c
[downloader/ffmpeg] Support for DASH manifests (experimental)
Closes 
pukkandan 330690a214
[downloader/ffmpeg] Allow passing custom arguments before -i
Closes 
tandy1000 91d4b32bb6
[ManotoTV] Add new extractors ()
Authored by: tandy1000
pukkandan a181cd0c60
[facebook] Fix metadata extraction
Original PR: https://github.com/ytdl-org/youtube-dl/pull/29796
Closes , https://github.com/ytdl-org/youtube-dl/issues/29421, https://github.com/ytdl-org/youtube-dl/issues/23627, https://github.com/ytdl-org/youtube-dl/issues/23180, https://github.com/ytdl-org/youtube-dl/issues/14156

Authored by: kikuyan
Ashish ea81966e64
[TV2] Fix extractor ()
Closes  
Authored by: Ashish0804
Ashish 2acf2ce5cb
[GabTV] Add extractor ()
Closes 
Authored by: Ashish0804
Ashish f7f18f905c
[tiktok] Add TikTokUserIE ()
Authored-by: Ashish0804, pukkandan
pukkandan 4f8b70b593
[TikTok] Fix metadata extraction
MinePlayersPE e43e9f3c2c
[aljazeera] Fix extractor ()
Closes , https://github.com/ytdl-org/youtube-dl/issues/29517
Authored by: MinePlayersPE
pukkandan 71dd5d4a00
[peertube] handle new video URL format
Closes , https://github.com/ytdl-org/youtube-dl/issues/29782
Original PR: https://github.com/ytdl-org/youtube-dl/pull/29475
Authored by: Chocobozzz
nyuszika7h 52a2f994c9
[adobepass] Fix Verizon SAML login ()
Original PR: https://github.com/ytdl-org/youtube-dl/pull/19136 from 64bddfe15c

Authored-by: nyuszika7h, ParadoxGBB <paradoxgbb@yahoo.com>
pukkandan 8b7491c8d1
Fix `add_info_extractor` when used via API
Bug from: 251ae04e6a
pukkandan 251ae04e6a
[lazy_extractor] Create instance only after pre-checking archive
pukkandan 1151c4079a
[extractor] Show video id in error messages if possible
pukkandan 88acdbc269
[extractor] Better error message for DRM ()
Closes 
Tom-Oliver Heidel 9b5fa9ee7c
[youtube] Add av01 itags to known formats list ()
Authored by: blackjack4494
mahanstreamer aca5774e68
[bitchute] Fix test ()
Authored by: mahanstreamer
pukkandan 3fb4e21b38
[lazy_extractors] Fix `suitable` and add flake8 test
pukkandan 4dfbf8696b
[utils] Add `parse_qs`
pukkandan 8fc54b1230
[youtube] Add `shorts` to `_VALID_URL`
Normally the generic extractor will redirect the URL,
but the cookies consent screen may sometimes appear instead

Closes 
pukkandan da33e35b05
Don't try to merge with final extension
The formats may not be directly mergable into the final extension
pukkandan 5ad28e7ffd
[extractor] Common function `_match_valid_url`
Jérôme Duval f79ec47d71
[tv5mondeplus] Fix extractor ()
Authored by: korli
Ashish 45b0596290
[HearThisAtIE] Fix extractor ()
Closes:  
Authored by: Ashish0804
Ashish 96c23f3be8
[Zee5] Fix extractor and add subtitles ()
Closes 
Authored by Ashish0804
CHJ85 6e7dfe4959
[BannedVideo] Add Extractor ()
Closes: 
Original PR: https://github.com/ytdl-org/youtube-dl/pull/24572
Authored by: smege1001, blackjack4494, pukkandan
animelover1984 c34f505b04
[bilibili] Add category extractor ()
Authored by: animelover1984
Ashish 14183d1f80
[Hungama] Fix `HungamaSongIE` and add `HungamaAlbumPlaylistIE` ()
Authored by: Ashish0804
pukkandan 58adec4677
Fix `extra_info` being reused across runs
Closes 
pukkandan 9e598870dd
Fix `playlist_index` not obeying `playlist_start`
and add tests
Closes 
pukkandan 8f18aca871
Let `--match-filter` reject entries early
Makes redundant: `--match-title`, `--reject-title`, `--min-views`, `--max-views`
pukkandan 3ad56b4236
Fix `-J` when there are failed videos
Glenn Slayden 5d62709bc7
[cleanup] Replace improper use of tab in trovo ()
:ci skip

Authored by: glenn-slayden
shirt 5fa206fb54
[ParamountPlus] Fix geo verification ()
Closes  
Authored by: shirt
mzbaulhaque df2a5633da
[pornhub] Separate and fix playlist extractor ()
Closes 
Authored by: mzbaulhaque
Felix S 7a6742b5f9
[webvtt] Fix timestamp overflow adjustment ()
In some streams, empty segments may appear with a bogus, non-monotone MPEG timestamp.
This should not be considered as an overflow

Authored by: fstirlitz
The Hatsune Daishi e040bb0a41
[voicy] Add extractor ()
Authored by: nao20010128nao
pukkandan f8fabc9930
[kakao] Fix extractor
Closes 
jhwgh1968 d967c68e4c
[eroprofile] Fix page skipping in albums ()
Bug from  
Authored by: jhwgh1968
SsSsS 3dd39c5f9a
[instagram] Add referrer to prevent throttling ()
Code from: https://github.com/ytdl-org/youtube-dl/pull/29751
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29736

Authored by: u-spec-png, kikuyan
mzbaulhaque be44eefd5e
[filmmodu] Add extractor ()
Closes 
Authored by: mzbaulhaque
pukkandan f775c83110
Fix `--force-overwrites` when using `-k`
For formats that need merge, the `.fxxx` files are not removed before
downloading the corresponding `.part` files. This causes the rename to fail
pukkandan b714b41f81
[soundcloud] Refetch `client_id` on 403
Closes 
pukkandan 31654882e9
[options] Add `_set_from_options_callback`
pukkandan 86c66b2d3e
Fix `-F` for extractors that directly return url
Related: 
pukkandan 37242e56f2
Fix bug during subtitle conversion
pukkandan 6c7274ecd2
Fix resuming of single formats when using --no-part
Closes 
coletdjnz 641ad5d813
[youtube] Extract error messages from HTTPError response ()
Authored by: coletdjnz
Felix S 0715f7e19b
Revert erroneous use of the `Content-Length` header ()
This reverts commit 6c907eb33f

The use of the Content-Length value here is erroneous and may lead
to truncated downloads if a compression scheme is specified in the
Content-Encoding header, as the Content-Length header refers to the
size of encoded data, not of the raw bytestream. This has been noticed
in the wild with WebVTT subtitle segments.

Authored by: fstirlitz
pukkandan a8731fcc1d minor bugfixes
bugs due to be2fc5b212, e9f4ccd19e
pukkandan ade6dc5e9e
[version] update
:ci skip all
jhwgh1968 c196640ff1
[eroprofile] Add album downloader ()
Authored by: jhwgh1968
SsSsS 60c8fc73c6
[instagram] Fix comments extraction ()
Authored-by: u-spec-png <miloradkalabasdt@gmail.com>
Ashish bc8745480e
[BandCamp] Add BandcampMusicIE ()
Authored by Ashish0804
The Hatsune Daishi ff5e16f2f6
[mirrativ] Add extractors ()
Authored by: nao20010128nao
pukkandan be2fc5b212
[extractor] Detect `sttp` as subtitles in MPD
Closes 
Solution by: fstirlitz
pukkandan 7be9ccff0b [utils] Fix `InAdvancePagedList.__getitem__`
Since it didn't have any cache, the page was re-fetched for each video.
* Also generalized the cache code
funniray 245d43cacf
[crunchyroll] Fix thumbnail ()
Authored by: funniray
mzbaulhaque 246fb276e0
[blackboardcollaborate] Add new extractor ()
Authored by: Ashish0804
shirt 6e6e0d95b3
[paramountplus] Separate extractor and fix some titles ()
Co-authored-by: shirt, pukkandan
Felix S 25a3f4f5d6
[webvtt] Merge daisy-chained duplicate cues ()
Fixes: https://github.com/yt-dlp/yt-dlp/issues/631#issuecomment-893338552

Previous deduplication algorithm only removed duplicate cues with
identical text, styles and timestamps.  This change also merges
cues that come in ‘daisy chains’, where sequences of cues with
identical text and styles appear in which the ending timestamp of
one equals the starting timestamp of the next.

This deduplication algorithm has the somewhat unfortunate side effect
that NOTE blocks between cues, if found, will be emitted in a different
order relative to their original cues.  This may be unwanted if perfect
fidelity is desired, but then so is daisy-chain deduplication itself.
NOTE blocks ought to be ignored by WebVTT players in any case.

Authored by: fstirlitz
pukkandan ad3dc496bb Misc fixes - See desc
* Remove unnecessary uses of _list_from_options_callback
* Fix download tests - Bug from 6e84b21559
* Rename ExecAfterDownloadPP to ExecPP and refactor its tests
* Ensure _write_ytdl_file closes file handle on error - Potential fix for 
pukkandan 2831b4686c Show libraries present in verbose head
pukkandan 8c0ae192a4 [ffmpeg] Fix `--ffmpeg-location` when directory is given
Bug introduced in 89efdc15dd
Closes 
pukkandan e9f4ccd19e
Add option `--replace-in-metadata`
pukkandan a38bd1defa
[viki] Print error message from API request
Closes 
Ashish b6a35ad83b
[HotStar] Use API for metadata and extract subtitles ()
The API is not rate-limited unlike the webpage

Authored by: Ashish0804
SsSsS bfd56b74b9
[peertube] Fix videos without description ()
Authored by: u-spec-png
PSlava 858a65ecc1
[youtube] Improve signature function detection ()
Authored by: PSlava (Slava <slash@i-slash.com>)
Wes 3b34e38813
[aenetworks] Update `_THEPLATFORM_KEY` and `_THEPLATFORM_SECRET` ()
Original PR: https://github.com/ytdl-org/youtube-dl/pull/29749
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29300

Authored by: wesnm
pukkandan 3448870205
[docs] Fix some mistakes and improve doc
pukkandan b868936cd6 [cleanup] Misc
pukkandan c681cb5d93 Allow multiple `--exec` and `--exec-before-download`
pukkandan 379e44ed3c [youtube] Raise appropriate error when API pages can't be downloaded
pukkandan 28f436bad0 [extractor] Reset non-repeating warnings per video
pukkandan 2b8a2973bd Allow entire infodict to be printed using `%()s`
Makes `--dump-json` redundant
pukkandan b7b04c782e Add option `--no-simulate` to not simulate even when `--print` or `--list...` are used
* Deprecates `--print-json`
* Some listings like `--list-extractors` are handled by `yt_dlp` and so are not affected by this. These have been documented as such

Addresses: https://github.com/ytdl-org/youtube-dl/issues/29675, https://github.com/ytdl-org/youtube-dl/issues/29580#issuecomment-882046305
pukkandan 6e84b21559
Fix bugs related to `sanitize_info`
Related: 8012d892bd (r54555230)
pukkandan 575e17a1b9
[utils] Fix `traverse_obj` depth when is_user_input
pukkandan 57015a4a3f
[youtube] extractor-arg to show live dash formats
If replay is enabled, these formats can be used to download the last 4 hours
pukkandan 9cc1a3130a
Fix resuming when using `--no-part`
Closes 
pukkandan b51d2ae3ca
Add compat-option `no-keep-subs`
Closes 
Jesse fee5f0c909
[adobepass] Add MSO Cablevision ()
Authored by: Jessecar96
funniray 7bb6434767
[vrv] Fix thumbnail extraction ()
Authored by: funniray
pukkandan 124bc071ee
Fix wrong extension for intermediate files
Closes 
pukkandan a047eeb6d2
Add regex to `--match-filter`
This does not fully deprecate `--match-title`/`--reject-title`
since `--match-filter` is only checked after the extraction is complete,
while `--match-title` can often be checked from the flat playlist.

Fixes: https://github.com/ytdl-org/youtube-dl/issues/9092, https://github.com/ytdl-org/youtube-dl/issues/23035
Max Teegen 77b87f0519 Add all format filtering operators also to `--match-filter`
PR: https://github.com/ytdl-org/youtube-dl/pull/27361

Authored by: max-te
pukkandan 678da2f21b [twitch:clips] Extract `display_id`
PR: https://github.com/ytdl-org/youtube-dl/pull/29684
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29666

Authored by: dirkf
pukkandan cc3fa8d39d Handle `BrokenPipeError`
PR: https://github.com/ytdl-org/youtube-dl/pull/29505
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29082

Authored by: kikuyan
pukkandan 89efdc15dd [ffpmeg] Allow `--ffmpeg-location` to be a file with different name
pukkandan 8012d892bd
Ensure sanitization of infodict before printing to stdout
* `filter_requested_info` is renamed to a more appropriate name `sanitize_info`
Stavros Ntentos 9d65e7bd6d
Fix `--compat-options filename` ()
The correct default filename is `%(title)s-%(id)s.%(ext)s`

Authored by: stdedos
SsSsS 36576d7c4c
[Newgrounds] Improve extractor and fix playlist ()
Authored by: u-spec-png
nikhil bb36a55c41
[nbcolympics:stream] Fix extractor
PR: https://github.com/ytdl-org/youtube-dl/pull/29688
Closes: , https://github.com/ytdl-org/youtube-dl/issues/29665

* Livestreams are untested
* If using ffmpeg as downloader, v4.3+ is needed since `-http_seekable` option is necessary
* Instead of making a seperate key for each arg that needs to be passed to ffmpeg, I made `_ffmpeg_args`
* This deprecates `_seekable`, but the option is kept for compatibility

Authored by: nchilada, pukkandan
MinePlayersPE 3dbb2a9dcb
[RCTIPlus] Support events and TV ()
Authored by: MinePlayersPE
The Hatsune Daishi 9997eee4af
[openrec] Add extractors ()
Authored by: nao20010128nao
Wes 3e376d183e
[nbcolympics] Update extractor for 2020 olympics ()
Fixes: https://github.com/yt-dlp/yt-dlp/issues/617#issuecomment-891834323

Authored by: wesnm
Sam 888299e6ca
[VrtNU] Fix XSRF token ()
PR: https://github.com/ytdl-org/youtube-dl/pull/29614
Authored-by: pgaig
pukkandan e5611e8eda
[ffmpeg] Fix streaming `mp4` to `stdout`
SsSsS 8e6cc12c80
[Vine] Remove invalid formats ()
Authored by: u-spec-png
pukkandan e9d9efc0f2
[version] update
:ci skip all
pukkandan cf87314d4e
[youtube] Extract SAPISID only once
pukkandan 1bd3639f69
[tenplay] Add MA15+ age limit ()
Authored by: pento
LE 68f5867cf0
[CBS] Add fallback ()
Related: https://github.com/ytdl-org/youtube-dl/issues/29564
Authored-by: llacb47, pukkandan
Ashish 605cad0be7
[Vimeo] Better extraction of original file ()
Authored by: Ashish0804
Ashish e8384376c0
[CBS] Add ParamountPlusSeriesIE ()
Authored by: Ashish0804
David e7e94f2a5c
[youtube] Add age-gate bypass for unverified accounts ()
Adds `_creator` variants for each client

Authored by: zerodytrash, colethedj, pukkandan
pukkandan a46a815b05
[cleanup] Fix linter in 96fccc101f
pukkandan 96fccc101f [downloader] Allow streaming unmerged formats to stdout using ffmpeg
For this to work:
1. The downloader must be ffmpeg
2. The selected formats must have the same protocol
3. The formats must be downloadable by ffmpeg to stdout

Partial solution for: https://github.com/ytdl-org/youtube-dl/issues/28146, https://github.com/ytdl-org/youtube-dl/issues/27265
pukkandan dbf5416a20 [cleanup] Refactor some code
pukkandan d74a58a186
Set `home:` as the default key for `-P`
pukkandan f5510afef0
[FormatSort] Fix bug for audio with unknown codec
pukkandan e4f0275711
Add compat-option `no-clean-infojson`
pukkandan e0f2b4b47d
[utils] Fix slicing of reversed `LazyList`
Closes 
coletdjnz eca330cb88
[youtube] Fix default global API key
bug introduced in 000c15a4ca
Wes d24734daea
[adobepass] Add MSO Sling TV ()
Original PR: ytdl-org/youtube-dl#29686
Closes: , 

Authored by: wesnm
MinePlayersPE d9e6e9481e
[RCTIPlus] Remove PhantomJS dependency ()
Authored by: MinePlayersPE
pukkandan 3619f78d2c
[youtube] Misc cleanup ()
Authored by: pukkandan, colethedj
pukkandan 65c2fde23f
[youtube] Add `thirdParty` to agegate clients ()
* This allows more videos like `tf2U5Vyj0oU` to become embeddable
    See https://github.com/yt-dlp/yt-dlp/pull/575#issuecomment-888837000
* Also added tests for all types of age-gate

Closes 
pukkandan 000c15a4ca
[youtube] simplify and de-duplicate client definitions ()
colethedj 9275f62cf8
[youtube] Improve age-gate detection ()
Authored by: colethedj
coletdjnz 6552469433
[youtube] Force `hl=en` for comments ()
Closes 
MinePlayersPE 11cc45718c
[vidio] Fix login error detection ()
Authored by: MinePlayersPE
Ashish fe07e2c69f
[Hotstar] Support cookies ()
Closes  
Authored by: Ashish0804
Ashish 89ce723edd
[Mxplayer] Add h265 formats ()
Authored by: Ashish0804
Sipherdrakon 45d1f15725
[dplay] Add `ScienceChannelIE` ()
Authored by: Sipherdrakon
rigstot a318f59d14
[generic] Support KVS player ()
* Replaces the extractor for thisvid

Fixes: https://github.com/ytdl-org/youtube-dl/issues/2077
Authored-by: rigstot
pukkandan 7d1eb38af1
Add format types `j`, `l`, `q` for outtmpl
Closes 
pukkandan 901130bbcf Expand and escape environment variables correctly in outtmpl
Fixes: https://www.reddit.com/r/youtubedl/comments/otfmq3/ytdlp_same_parameters_different_results
MinePlayersPE c0bc527bca
[YouTube] Age-gate bypass implementation ()
* Calling the API with `clientScreen=EMBED` allows access to most age-gated videos - discovered by @ccdffddfddfdsfedeee (https://github.com/yt-dlp/yt-dlp/issues/574#issuecomment-887171136)
* Adds clients: (web/android/ios)_(embedded/agegate), mweb_embedded
* Renamed mobile_web to mweb

Closes 

Authored by pukkandan, MinePlayersPE
pukkandan 2a9c6dcd22
[youtube] Fix format sorting when using alternate clients
coletdjnz 5a1fc62b41
[youtube] Add `mobile_web` client ()
Authored by: colethedj
pukkandan b4c055bac2
[youtube] Add `player_client=all`
pukkandan ea05b3020d
Remove `asr` appearing twice in `-F`
pukkandan 9536bc072d
[bilibili] Improve `_VALID_URL`
Ashish 8242bf220d
[HotStarSeriesIE] Fix regex ()
Authored by: Ashish0804
Ashish 4bfa401d40
[UtreonIE] Add extractor ()
Authored by: Ashish0804
nixxo 0222620725
[mediaset] Fix extraction ()
Closes 
Authored by: nixxo
pukkandan 1fe3c4c27e
[version] update
:ci skip all
pukkandan f703a88055
Release 2021.07.24
pukkandan a353beba83
[youtube:tab] Extract video duration early
Based on: https://github.com/ytdl-org/youtube-dl/pull/29487 by glenn-slayden
pukkandan 052e135029
[youtube] Simplify `_get_text` early
xtkoba cb89cfc14b
[test] Add Python 3.10 ()
Authored-by: pukkandan, xtkoba
pukkandan 063c409dfb
[cookies] Handle errors when importing `keyring`
Workaround for 
Matt Broadway 767b02a99b
[cookies] Handle `sqlite` `ImportError` gracefully ()
Closes 
Authored by: mbway
pukkandan f45e6c1126
[downloader] Pass same status object to all `progress_hooks`
pukkandan 3944e7af92
[youtube] Fix subtitles only being extracted from the first client
Closes 
pukkandan ad34b2951e
Try all clients even if age-gated
Reverts: 892e31ce7c

If some API calls have any issue, saving the state will cause unnecessary errors
pukkandan c8fa48fd94
[youtube] Disable `get_video_info` age-gate workaround
This now seems to be completely dead
Closes: 
coletdjnz 2fd226f6a7
[youtube] Fix age-gated videos for API clients when cookies are supplied ()
Fixes 
Authored by: colethedj
pukkandan 3ba7740dd8
[downloader] Pass `info_dict` to `progress_hook`s
pukkandan 29b208f6f9
[cookies] bugfix
Fixes: https://github.com/yt-dlp/yt-dlp/pull/488#discussion_r674352059
pukkandan e4d666d27b
[version] update
:ci skip all
pukkandan 245524e6a3
Release 2021.07.21
and fix some typos
Closes 
pukkandan 9c0d7f4951
[youtube] Make `--extractor-retries` work for more errors
Closes 
pukkandan e37d0efbd9
Fix bug where `original_url` was not propagated when `_type`=`url`
coletdjnz c926c9541f
[youtube] Add debug message for SAPISID cookie extraction ()
Authored by: colethedj
Matt Broadway 982ee69a74
Add option `--cookies-from-browser` to load cookies from a browser ()
* also adds `--no-cookies-from-browser`

Original PR: https://github.com/ytdl-org/youtube-dl/pull/29201
Authored by: mbway
pukkandan 7ea6541124
[youtube] Improve extraction of livestream metadata
Modified from and closes 
Authored by: pukkandan, krichbanana
pukkandan ae30b84072
Add field `live_status`
pukkandan cc9d1493c6
bugfix for 50fed816dd
Philip Xu f6755419d1
[douyin] Add extractor ()
Authored-by: pukkandan, pyx
Henrik Heimbuerger 145bd631c5
[nebula] Authentication via tokens from cookie jar ()
Closes 
Co-authored-by: hheimbuerger, TpmKranz
pukkandan b35496d825
Add `only_once` param for `write_debug`
pukkandan 352d63fdb5
[utils] Improve `traverse_obj`
pukkandan 11f9be0912
[youtube] Extract data from multiple clients ()
* `player_client` accepts multiple clients
* default `player_client` = `android,web`
* music clients can be specifically requested
* Add IOS `player_client`
* Hide live dash since they can't be downloaded

Closes 

Authored-by: pukkandan, colethedj
pukkandan c84aeac6b5
Add `only_once` param for `report_warning`
Related: https://github.com/yt-dlp/yt-dlp/pull/488#discussion_r667527297
pukkandan 50fed816dd
Errors in playlist extraction should obey `--ignore-errors`
Related: https://github.com/yt-dlp/yt-dlp/issues/535#issuecomment-883277272, https://github.com/yt-dlp/yt-dlp/issues/518#issuecomment-881794754
coletdjnz a1a7907bc0
[youtube] Fix controversial videos when requested via API ()
Closes: https://github.com/yt-dlp/yt-dlp/issues/511#issuecomment-883024350
Authored by: colethedj
pukkandan d61fc64618
[youtube:tab] Fix channels tab
pukkandan 6586bca9b9
[utils] Fix LazyList for Falsey values
pukkandan da503b7a52
[youtube] Make `parse_time_text` and `_extract_chapters` non-fatal
Related: , 7c365c2109
pukkandan 7c365c2109
[youtube] Sanity check `chapters` (and refactor related code)
Closes 
pukkandan 3f698246b2
Rename `NOTE` in `-F` to `MORE INFO`
since it's often confused to be the same as `format_note`
pukkandan cca80fe611 [youtube] Extract even more thumbnails and reduce testing
* Also fix bug where `_test_url` was being ignored

Ref: https://stackoverflow.com/a/20542029
Related: 
pukkandan c634ad2a3c [compat] Remove unnecessary code
pukkandan 8f3343809e
[utils] Improve `traverse_obj`
* Allow skipping a level: `traverse_obj([{k:v1}, {k:v2}], (None, k))` => `[v1, v2]`
* Make keys variadic: `traverse_obj(obj, k1: str, k2: str)` => `traverse_obj(obj, (k1,), (k2,))`
* Fetch from multiple keys: `traverse_obj([{k1:[1], k2:[2], k3:[3]}], (0, (k1, k2), 0))` => `[1, 2]`

TODO: Add tests
pukkandan 0ba692acc8
[youtube] Extract more thumbnails
* The thumbnail URLs are hard-coded and their actual existence is tested lazily
* Added option `--no-check-formats` to not test them

Closes , Related: , , https://github.com/ytdl-org/youtube-dl/issues/29049
pukkandan d9488f69c1
[crunchyroll:playlist] Force http
Closes 
pukkandan 5520aa2dc9
Add option `--exec-before-download`
Closes 
mzbaulhaque 8d9b902243
[pornflip] Add new extractor ()
Authored-by: mzbaulhaque
coletdjnz fe93e2c4cf
[youtube] misc cleanup and bug fixes ()
* Update some `_extract_response` calls to keep them consistent
* Cleanup continuation extraction related code using new API format
* Improve `_extract_account_syncid` to support multiple parameters
* Generalize `get_text` and related functions into one
* Update `INNERTUBE_CONTEXT_CLIENT_NAME` with integer values

Authored by: colethedj
coletdjnz 314ee30548
[youtube] Fix session index extraction and headers for non-web player clients ()
Fixes 
coletdjnz 34917076ad
[youtube] Fix authentication when using multiple accounts
`SESSION_INDEX` in `ytcfg` is the index of the active account and should be sent as `X-Goog-AuthUser` header

Closes 
Authored by @colethedj
The Hatsune Daishi ccc7795ca3
[yahoo:gyao:player] Relax `_VALID_URL` ()
Authored by: nao20010128nao
Felix S da1c94ee45
[generic] Extract previously missed subtitles ()
* [generic] Extract subtitles in cases missed previously
* [common] Detect discarded subtitles in SMIL manifests
* [generic] Extract everything in the SMIL manifest

Authored by: fstirlitz
pukkandan 3b297919e0
Revert "Merge webm formats into mkv if thumbnails are to be embedded ()"
This reverts commit 4d971a16b8 by @damianoamatruda
Closes 

This was wrongly checking for `write_thumbnail`
coletdjnz 47193e0298
[youtube:tab] Extract playlist availability ()
Authored by: colethedj
coletdjnz 49bd8c66d3
[youtube:comments] Improve comment vote count parsing (fixes ) ()
Authored by: colethedj
Felix S 182b6ae8a6
[RTP] Fix extraction and add subtitles ()
Authored by: fstirlitz
felix c843e68588
[utils] Improve `js_to_json` comment regex
Capture the newline character as part of a single-line comment

From , Authored by: fstirlitz
felix 198f7ea89e
[extractor] Allow extracting multiple groups in `_search_regex`
From , Authored by: fstirlitz
coletdjnz c888ffb95a
[youtube] Use android client as default and add age-gate bypass for it ()
Authored by: colethedj
coletdjnz 9752433221
[youtube:comments] Fix `is_favorited` ()
Authored by colethedj
pukkandan f0ff9979c6
[vlive] Extract thumbnail directly in addition to the one from Naver
Closes 
pukkandan 501dd1ad55
[metadatafromfield] Do not detect numbers as field names
Related: https://github.com/yt-dlp/yt-dlp/issues/486#issuecomment-877820394
pukkandan 75722b037d
[webtt] Fix timestamps
Closes 
coletdjnz 2d6659b9ea
[youtube:comments] Move comment extraction to new API ()
Closes , ,  

Authored by: colethedj
Kevin O'Connor c5370857b3
[BravoTV] Improve metadata extraction ()
Authored by: kevinoconnor7
pukkandan 00034c146a
[embedthumbnail] Fix `_get_thumbnail_resolution`
pukkandan 325ebc1703
Improve `traverse_obj`
pukkandan 7dde84f3c9
[FFmpegMetadata] Add language of each stream
and some refactoring
pukkandan 6606817a86
[utils] Add `variadic`
zackmark29 73d829c144
[VIKI] Rewrite extractors ()
Closes 
Also added extractor-arg `video_types` to `vikichannel`

Co-authored-by: zackmark29, pukkandan
pukkandan 60bdb7bd9e
[youtube] Fix sorting of 3gp format
pukkandan 4bb6b02f93
Improve `extractor_args` parsing
pukkandan b5ac45b197
Fix selectors `all`, `mergeall` and add tests
Bug from: 981052c9c6
pukkandan 38a40c9e16
[version] update
:ci skip all
pukkandan 51f8a31d65
Update to ytdl-commit-a803582
[peertube] only call description endpoint if necessary
a803582717
Tom-Oliver Heidel be05d5cff1
[soundcloud] Allow login using oauth token ()
Authored by: blackjack4494
zenerdi0de 30d569d2ac
[fancode] Fix extraction, support live and allow login with refresh token ()
Authored-by: zenerdi0de
OhMyBahGosh 08625e4125
[AdobePass] Add Spectrum MSO ()
From: https://github.com/ytdl-org/youtube-dl/pull/26792

Co-authored by: kevinoconnor7, ohmybahgosh
pukkandan 3acf6d3856
[Funimation] Rewrite extractor (See desc) ()
* Support direct `/player/` URL
* Treat the different versions of an episode as different formats of a single video. So `experience_id` can no longer be used as the video `id` and the `episode_id` is used instead. This means that all existing archives will break
* Extractor options `language` and `version` to pre-select them
* Compat option `seperate-video-versions` to fall back to old behavior (including using the old video IDs)

Closes 
pukkandan 46890374f7
[extractor] Minor improvements (See desc)
1. Allow removal of login hint - extractors can set their own login hint as part of `msg`
2. Cleanup `_merge_subtitles` signature
pukkandan 60755938b3
[extractor] Prevent unnecessary download of hls manifests
and refactor `hls_split_discontinuity` code
pukkandan 723d44b92b
[fragment] Handle errors in threads correctly
pukkandan bc97cdae67
[cleanup] Fix linter and some typos
Related: https://github.com/ytdl-org/youtube-dl/pull/29398
nyuszika7h e010672ab5
[videa] Fix extraction ()
Authored by: nyuszika7h
pukkandan 169dbde946
Fixes for `--list` options (See desc)
1. Fix `--list-formats-old`
2. Allow listing with `--quiet`
3. Allow various listings to work together
4. Allow `--print` to work with listing
MinePlayersPE 17f0eb66b8
[RCTIPlus] Add extractor ()
Authored by: MinePlayersPE
pukkandan 981052c9c6 Some minor fixes and refactoring (see desc)
* [utils] Fix issues with reversal
* check_formats should catch `DownloadError`, not `ExtractorError`
* Simplify format selectors with `LazyList` and `yield from`
pukkandan b1e60d1806 [facebook] Extract description and fix title
Partially fixes: 
pukkandan 6b6c16ca6c [downloader/ffmpeg] Fix `--ppa` when using simultaneous download
krichbanana f6745c4980
[Youtube] Choose correct Live chat API for upcoming streams ()
Authored by: krichbanana
coletdjnz 109dd3b237
[youtube] Use new API for additional video extraction requests ()
Co-authored-by: colethedj, pukkandan
Closes https://github.com/yt-dlp/yt-dlp/issues/427
Workarounds for https://github.com/ytdl-org/youtube-dl/issues/29326, https://github.com/yt-dlp/yt-dlp/issues/319, https://github.com/ytdl-org/youtube-dl/issues/29086
siikamiika c2603313b1
[youtube_live_chat] use `clickTrackingParams` ()
Authored by: siikamiika
LE 1e79316e20
[TBS] Support livestreams ()
Authored by: llacb47