Commit Graph

866 Commits (2e01ba62181fee12bf44b8f3f6cb0f46cd591e61)

Author SHA1 Message Date
pukkandan 3ad56b4236
Fix `-J` when there are failed videos 3 years ago
Glenn Slayden 5d62709bc7
[cleanup] Replace improper use of tab in trovo (#719)
:ci skip

Authored by: glenn-slayden
3 years ago
shirt 5fa206fb54
[ParamountPlus] Fix geo verification (#711)
Closes #681 
Authored by: shirt
3 years ago
mzbaulhaque df2a5633da
[pornhub] Separate and fix playlist extractor (#700)
Closes #680
Authored by: mzbaulhaque
3 years ago
Felix S 7a6742b5f9
[webvtt] Fix timestamp overflow adjustment (#698)
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
3 years ago
The Hatsune Daishi e040bb0a41
[voicy] Add extractor (#667)
Authored by: nao20010128nao
3 years ago
pukkandan f8fabc9930
[kakao] Fix extractor
Closes #699
3 years ago
jhwgh1968 d967c68e4c
[eroprofile] Fix page skipping in albums (#701)
Bug from #658 
Authored by: jhwgh1968
3 years ago
SsSsS 3dd39c5f9a
[instagram] Add referrer to prevent throttling (#676)
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
3 years ago
mzbaulhaque be44eefd5e
[filmmodu] Add extractor (#690)
Closes #288
Authored by: mzbaulhaque
3 years ago
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
3 years ago
pukkandan b714b41f81
[soundcloud] Refetch `client_id` on 403
Closes #673
3 years ago
pukkandan 31654882e9
[options] Add `_set_from_options_callback` 3 years ago
pukkandan 86c66b2d3e
Fix `-F` for extractors that directly return url
Related: #693
3 years ago
pukkandan 37242e56f2
Fix bug during subtitle conversion 3 years ago
pukkandan 6c7274ecd2
Fix resuming of single formats when using --no-part
Closes #576
3 years ago
coletdjnz 641ad5d813
[youtube] Extract error messages from HTTPError response (#644)
Authored by: coletdjnz
3 years ago
Felix S 0715f7e19b
Revert erroneous use of the `Content-Length` header (#637)
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
3 years ago
pukkandan a8731fcc1d minor bugfixes
bugs due to be2fc5b212, e9f4ccd19e
3 years ago
pukkandan ade6dc5e9e
[version] update
:ci skip all
3 years ago
jhwgh1968 c196640ff1
[eroprofile] Add album downloader (#658)
Authored by: jhwgh1968
3 years ago
SsSsS 60c8fc73c6
[instagram] Fix comments extraction (#660)
Authored-by: u-spec-png <miloradkalabasdt@gmail.com>
3 years ago
Ashish bc8745480e
[BandCamp] Add BandcampMusicIE (#668)
Authored by Ashish0804
3 years ago
The Hatsune Daishi ff5e16f2f6
[mirrativ] Add extractors (#657)
Authored by: nao20010128nao
3 years ago
pukkandan be2fc5b212
[extractor] Detect `sttp` as subtitles in MPD
Closes #656
Solution by: fstirlitz
3 years ago
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
3 years ago
funniray 245d43cacf
[crunchyroll] Fix thumbnail (#650)
Authored by: funniray
3 years ago
mzbaulhaque 246fb276e0
[blackboardcollaborate] Add new extractor (#646)
Authored by: Ashish0804
3 years ago
shirt 6e6e0d95b3
[paramountplus] Separate extractor and fix some titles (#652)
Co-authored-by: shirt, pukkandan
3 years ago
Felix S 25a3f4f5d6
[webvtt] Merge daisy-chained duplicate cues (#638)
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
3 years ago
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 #517
3 years ago
pukkandan 2831b4686c Show libraries present in verbose head 3 years ago
pukkandan 8c0ae192a4 [ffmpeg] Fix `--ffmpeg-location` when directory is given
Bug introduced in 89efdc15dd
Closes #654
3 years ago
pukkandan e9f4ccd19e
Add option `--replace-in-metadata` 3 years ago
pukkandan a38bd1defa
[viki] Print error message from API request
Closes #651
3 years ago
Ashish b6a35ad83b
[HotStar] Use API for metadata and extract subtitles (#640)
The API is not rate-limited unlike the webpage

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

Authored by: wesnm
3 years ago
pukkandan 3448870205
[docs] Fix some mistakes and improve doc 3 years ago
pukkandan b868936cd6 [cleanup] Misc 3 years ago
pukkandan c681cb5d93 Allow multiple `--exec` and `--exec-before-download` 3 years ago
pukkandan 379e44ed3c [youtube] Raise appropriate error when API pages can't be downloaded 3 years ago
pukkandan 28f436bad0 [extractor] Reset non-repeating warnings per video 3 years ago
pukkandan 2b8a2973bd Allow entire infodict to be printed using `%()s`
Makes `--dump-json` redundant
3 years ago
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
3 years ago
pukkandan 6e84b21559
Fix bugs related to `sanitize_info`
Related: 8012d892bd (r54555230)
3 years ago
pukkandan 575e17a1b9
[utils] Fix `traverse_obj` depth when is_user_input 3 years ago
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
3 years ago
pukkandan 9cc1a3130a
Fix resuming when using `--no-part`
Closes #576
3 years ago
pukkandan b51d2ae3ca
Add compat-option `no-keep-subs`
Closes #630
3 years ago
Jesse fee5f0c909
[adobepass] Add MSO Cablevision (#635)
Authored by: Jessecar96
3 years ago
funniray 7bb6434767
[vrv] Fix thumbnail extraction (#634)
Authored by: funniray
3 years ago
pukkandan 124bc071ee
Fix wrong extension for intermediate files
Closes #632
3 years ago
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
3 years ago
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
3 years ago
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
3 years ago
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
3 years ago
pukkandan 89efdc15dd [ffpmeg] Allow `--ffmpeg-location` to be a file with different name 3 years ago
pukkandan 8012d892bd
Ensure sanitization of infodict before printing to stdout
* `filter_requested_info` is renamed to a more appropriate name `sanitize_info`
3 years ago
Stavros Ntentos 9d65e7bd6d
Fix `--compat-options filename` (#629)
The correct default filename is `%(title)s-%(id)s.%(ext)s`

Authored by: stdedos
3 years ago
SsSsS 36576d7c4c
[Newgrounds] Improve extractor and fix playlist (#627)
Authored by: u-spec-png
3 years ago
nikhil bb36a55c41
[nbcolympics:stream] Fix extractor
PR: https://github.com/ytdl-org/youtube-dl/pull/29688
Closes: #617, 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
3 years ago
MinePlayersPE 3dbb2a9dcb
[RCTIPlus] Support events and TV (#625)
Authored by: MinePlayersPE
3 years ago
The Hatsune Daishi 9997eee4af
[openrec] Add extractors (#624)
Authored by: nao20010128nao
3 years ago
Wes 3e376d183e
[nbcolympics] Update extractor for 2020 olympics (#621)
Fixes: https://github.com/yt-dlp/yt-dlp/issues/617#issuecomment-891834323

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

Authored by: zerodytrash, colethedj, pukkandan
3 years ago
pukkandan a46a815b05
[cleanup] Fix linter in 96fccc101f 3 years ago
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
3 years ago
pukkandan dbf5416a20 [cleanup] Refactor some code 3 years ago
pukkandan d74a58a186
Set `home:` as the default key for `-P` 3 years ago
pukkandan f5510afef0
[FormatSort] Fix bug for audio with unknown codec 3 years ago
pukkandan e4f0275711
Add compat-option `no-clean-infojson` 3 years ago
pukkandan e0f2b4b47d
[utils] Fix slicing of reversed `LazyList`
Closes #589
3 years ago
coletdjnz eca330cb88
[youtube] Fix default global API key
bug introduced in 000c15a4ca
3 years ago
Wes d24734daea
[adobepass] Add MSO Sling TV (#596)
Original PR: ytdl-org/youtube-dl#29686
Closes: #300, ytdl-org/youtube-dl#18132

Authored by: wesnm
3 years ago
MinePlayersPE d9e6e9481e
[RCTIPlus] Remove PhantomJS dependency (#595)
Authored by: MinePlayersPE
3 years ago
pukkandan 3619f78d2c
[youtube] Misc cleanup (#577)
Authored by: pukkandan, colethedj
3 years ago
pukkandan 65c2fde23f
[youtube] Add `thirdParty` to agegate clients (#577)
* 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 #581
3 years ago
pukkandan 000c15a4ca
[youtube] simplify and de-duplicate client definitions (#577) 3 years ago
colethedj 9275f62cf8
[youtube] Improve age-gate detection (#577)
Authored by: colethedj
3 years ago
coletdjnz 6552469433
[youtube] Force `hl=en` for comments (#594)
Closes #532
3 years ago
MinePlayersPE 11cc45718c
[vidio] Fix login error detection (#582)
Authored by: MinePlayersPE
3 years ago
Ashish fe07e2c69f
[Hotstar] Support cookies (#584)
Closes #583 
Authored by: Ashish0804
3 years ago
Ashish 89ce723edd
[Mxplayer] Add h265 formats (#572)
Authored by: Ashish0804
3 years ago
Sipherdrakon 45d1f15725
[dplay] Add `ScienceChannelIE` (#567)
Authored by: Sipherdrakon
3 years ago
rigstot a318f59d14
[generic] Support KVS player (#549)
* Replaces the extractor for thisvid

Fixes: https://github.com/ytdl-org/youtube-dl/issues/2077
Authored-by: rigstot
3 years ago
pukkandan 7d1eb38af1
Add format types `j`, `l`, `q` for outtmpl
Closes #345
3 years ago
pukkandan 901130bbcf Expand and escape environment variables correctly in outtmpl
Fixes: https://www.reddit.com/r/youtubedl/comments/otfmq3/ytdlp_same_parameters_different_results
3 years ago
MinePlayersPE c0bc527bca
[YouTube] Age-gate bypass implementation (#575)
* 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 #574

Authored by pukkandan, MinePlayersPE
3 years ago
pukkandan 2a9c6dcd22
[youtube] Fix format sorting when using alternate clients 3 years ago
coletdjnz 5a1fc62b41
[youtube] Add `mobile_web` client (#557)
Authored by: colethedj
3 years ago
pukkandan b4c055bac2
[youtube] Add `player_client=all` 3 years ago
pukkandan ea05b3020d
Remove `asr` appearing twice in `-F` 3 years ago
pukkandan 9536bc072d
[bilibili] Improve `_VALID_URL` 3 years ago
Ashish 8242bf220d
[HotStarSeriesIE] Fix regex (#569)
Authored by: Ashish0804
3 years ago
Ashish 4bfa401d40
[UtreonIE] Add extractor (#562)
Authored by: Ashish0804
3 years ago
nixxo 0222620725
[mediaset] Fix extraction (#564)
Closes #365
Authored by: nixxo
3 years ago
pukkandan 1fe3c4c27e
[version] update
:ci skip all
3 years ago
pukkandan f703a88055
Release 2021.07.24 3 years ago
pukkandan a353beba83
[youtube:tab] Extract video duration early
Based on: https://github.com/ytdl-org/youtube-dl/pull/29487 by glenn-slayden
3 years ago
pukkandan 052e135029
[youtube] Simplify `_get_text` early 3 years ago
xtkoba cb89cfc14b
[test] Add Python 3.10 (#480)
Authored-by: pukkandan, xtkoba
3 years ago
pukkandan 063c409dfb
[cookies] Handle errors when importing `keyring`
Workaround for #551
3 years ago
Matt Broadway 767b02a99b
[cookies] Handle `sqlite` `ImportError` gracefully (#554)
Closes #544
Authored by: mbway
3 years ago
pukkandan f45e6c1126
[downloader] Pass same status object to all `progress_hooks` 3 years ago
pukkandan 3944e7af92
[youtube] Fix subtitles only being extracted from the first client
Closes #547
3 years ago
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
3 years ago
pukkandan c8fa48fd94
[youtube] Disable `get_video_info` age-gate workaround
This now seems to be completely dead
Closes: #553
3 years ago
coletdjnz 2fd226f6a7
[youtube] Fix age-gated videos for API clients when cookies are supplied (#545)
Fixes #543
Authored by: colethedj
3 years ago
pukkandan 3ba7740dd8
[downloader] Pass `info_dict` to `progress_hook`s 3 years ago
pukkandan 29b208f6f9
[cookies] bugfix
Fixes: https://github.com/yt-dlp/yt-dlp/pull/488#discussion_r674352059
3 years ago
pukkandan e4d666d27b
[version] update
:ci skip all
3 years ago
pukkandan 245524e6a3
Release 2021.07.21
and fix some typos
Closes #538
3 years ago
pukkandan 9c0d7f4951
[youtube] Make `--extractor-retries` work for more errors
Closes #507
3 years ago
pukkandan e37d0efbd9
Fix bug where `original_url` was not propagated when `_type`=`url` 3 years ago
coletdjnz c926c9541f
[youtube] Add debug message for SAPISID cookie extraction (#540)
Authored by: colethedj
3 years ago
Matt Broadway 982ee69a74
Add option `--cookies-from-browser` to load cookies from a browser (#488)
* also adds `--no-cookies-from-browser`

Original PR: https://github.com/ytdl-org/youtube-dl/pull/29201
Authored by: mbway
3 years ago
pukkandan 7ea6541124
[youtube] Improve extraction of livestream metadata
Modified from and closes #441
Authored by: pukkandan, krichbanana
3 years ago
pukkandan ae30b84072
Add field `live_status` 3 years ago
pukkandan cc9d1493c6
bugfix for 50fed816dd 3 years ago
Philip Xu f6755419d1
[douyin] Add extractor (#513)
Authored-by: pukkandan, pyx
3 years ago
Henrik Heimbuerger 145bd631c5
[nebula] Authentication via tokens from cookie jar (#537)
Closes #496
Co-authored-by: hheimbuerger, TpmKranz
3 years ago
pukkandan b35496d825
Add `only_once` param for `write_debug` 3 years ago
pukkandan 352d63fdb5
[utils] Improve `traverse_obj` 3 years ago
pukkandan 11f9be0912
[youtube] Extract data from multiple clients (#536)
* `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 #501

Authored-by: pukkandan, colethedj
3 years ago
pukkandan c84aeac6b5
Add `only_once` param for `report_warning`
Related: https://github.com/yt-dlp/yt-dlp/pull/488#discussion_r667527297
3 years ago
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
3 years ago
coletdjnz a1a7907bc0
[youtube] Fix controversial videos when requested via API (#533)
Closes: https://github.com/yt-dlp/yt-dlp/issues/511#issuecomment-883024350
Authored by: colethedj
3 years ago
pukkandan d61fc64618
[youtube:tab] Fix channels tab 3 years ago
pukkandan 6586bca9b9
[utils] Fix LazyList for Falsey values 3 years ago
pukkandan da503b7a52
[youtube] Make `parse_time_text` and `_extract_chapters` non-fatal
Related: #532, 7c365c2109
3 years ago
pukkandan 7c365c2109
[youtube] Sanity check `chapters` (and refactor related code)
Closes #520
3 years ago
pukkandan 3f698246b2
Rename `NOTE` in `-F` to `MORE INFO`
since it's often confused to be the same as `format_note`
3 years ago
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: #340
3 years ago
pukkandan c634ad2a3c [compat] Remove unnecessary code 3 years ago
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
3 years ago
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 #340, Related: #402, #337, https://github.com/ytdl-org/youtube-dl/issues/29049
3 years ago
pukkandan d9488f69c1
[crunchyroll:playlist] Force http
Closes #495
3 years ago
pukkandan 5520aa2dc9
Add option `--exec-before-download`
Closes #530
3 years ago
mzbaulhaque 8d9b902243
[pornflip] Add new extractor (#523)
Authored-by: mzbaulhaque
3 years ago
coletdjnz fe93e2c4cf
[youtube] misc cleanup and bug fixes (#505)
* 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
3 years ago
coletdjnz 314ee30548
[youtube] Fix session index extraction and headers for non-web player clients (#526)
Fixes #522
3 years ago
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 #518
Authored by @colethedj
3 years ago
The Hatsune Daishi ccc7795ca3
[yahoo:gyao:player] Relax `_VALID_URL` (#503)
Authored by: nao20010128nao
3 years ago
Felix S da1c94ee45
[generic] Extract previously missed subtitles (#515)
* [generic] Extract subtitles in cases missed previously
* [common] Detect discarded subtitles in SMIL manifests
* [generic] Extract everything in the SMIL manifest

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

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

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

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

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

Co-authored by: kevinoconnor7, ohmybahgosh
3 years ago
pukkandan 3acf6d3856
[Funimation] Rewrite extractor (See desc) (#444)
* 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 #428
3 years ago
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
3 years ago
pukkandan 60755938b3
[extractor] Prevent unnecessary download of hls manifests
and refactor `hls_split_discontinuity` code
3 years ago
pukkandan 723d44b92b
[fragment] Handle errors in threads correctly 3 years ago
pukkandan bc97cdae67
[cleanup] Fix linter and some typos
Related: https://github.com/ytdl-org/youtube-dl/pull/29398
3 years ago
nyuszika7h e010672ab5
[videa] Fix extraction (#463)
Authored by: nyuszika7h
3 years ago
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
3 years ago
MinePlayersPE 17f0eb66b8
[RCTIPlus] Add extractor (#443)
Authored by: MinePlayersPE
3 years ago
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`
3 years ago
pukkandan b1e60d1806 [facebook] Extract description and fix title
Partially fixes: #453
3 years ago
pukkandan 6b6c16ca6c [downloader/ffmpeg] Fix `--ppa` when using simultaneous download 3 years ago
krichbanana f6745c4980
[Youtube] Choose correct Live chat API for upcoming streams (#460)
Authored by: krichbanana
3 years ago
coletdjnz 109dd3b237
[youtube] Use new API for additional video extraction requests (#328)
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
3 years ago
siikamiika c2603313b1
[youtube_live_chat] use `clickTrackingParams` (#449)
Authored by: siikamiika
3 years ago
LE 1e79316e20
[TBS] Support livestreams (#448)
Authored by: llacb47
3 years ago
coletdjnz 45261e063b
[youtube:comments] Fix error handling and add `itct` to params (#446)
Should close #439 (untested)

Authored by: colethedj
3 years ago
pukkandan 49c258e18d
[youtube] Fix subtitle names for age-gated videos
Related: https://github.com/iv-org/invidious/pull/2205#issuecomment-868680486
3 years ago
pukkandan d3f62c1967
Fix `--throttled-rate` when using `--load-info-json` 3 years ago
pukkandan 5d3a0e794b
Add `--extractor-args` to pass extractor-specific arguments 3 years ago
Mevious 125728b038
[funimation] Add `FunimationShowIE` (#442)
Closes #436

Authored by: Mevious
3 years ago
pukkandan 15a4fd53d3
[thumbnailsconvertor] Treat `jpeg` as `jpg` 3 years ago
Adrik 4513a41a72
Process videos when using `--ignore-no-formats-error` (#441)
Authored by: krichbanana
3 years ago
pukkandan 6033d9808d
Fix `--flat-playlist` when entry has no `ie_key` 3 years ago
pukkandan bd4d1ea398
[cleanup] Minor refactoring of `fragment` 3 years ago
pukkandan 8e897ed283
[fragment] Return status of download correctly 3 years ago
LE 412cce82b0
[yahoo] Fix extraction (#435)
Fixes: https://github.com/ytdl-org/youtube-dl/issues/28290

Co-authored-by: llacb47, pukkandan
3 years ago
siikamiika d534c4520b
[youtube_live_chat] Fix download with cookies (#437)
Closes #417 

Authored by: siikamiika
3 years ago
pukkandan 2b18a8c590
[plutotv] Improve `_VALID_URL`
Closes #431
3 years ago
pukkandan dac8b87b0c
[version] update :ci skip all 3 years ago
pukkandan 6aecd87106
Release 2021.06.23 3 years ago
pukkandan ed807c1837
Update to ytdl-commit-379f52a
[liveleak] Remove extractor
379f52a495
3 years ago
Mevious 29f63c9672
[funimation] Extract subtitles (#434)
Closes #420, https://github.com/ytdl-org/youtube-dl/issues/25645
Related: https://github.com/ytdl-org/youtube-dl/pull/24906

Authored by: Mevious
3 years ago
pukkandan 9fc0de5796
[hotstar] Use server time for authentication instead of local time
Closes #396
3 years ago
siikamiika c60ee3a218
[youtube_live_chat] Support ongoing live chat (#422)
Authored by: siikamiika
3 years ago
pukkandan 8a77e5e6bc
[cleanup] Revert unnecessary changes in 51d9739f80 3 years ago
pukkandan 51d9739f80
Add option `--throttled-rate` below which video data is re-extracted
Currently only for HTTP downloads

Closes #430, workaround for https://github.com/ytdl-org/youtube-dl/issues/29326
3 years ago
pukkandan 4c7853de14
[fragment] Merge during download for `-N`, and refactor `hls`/`dash` (#364) 3 years ago
pukkandan e6779b9400
[twitcasting] Websocket support (#399)
Closes #392
Authored by: nao20010128nao
3 years ago
pukkandan e36d50c5dd
[websockets] Add `WebSocketFragmentFD` (#399)
Necessary for #392

Co-authored by: nao20010128nao, pukkandan
3 years ago
pukkandan ff0f78e1fe
[aria2c] Lower `--min-split-size` for HTTP downloads
This makes downloading smaller files much faster
3 years ago
pukkandan 7e067091e8
[options] Rename `--add-metadata` to `--embed-metadata`
and clarify that it embeds chapter markers
3 years ago
pukkandan f89b3e2d7a
Skip fixup of existing files and add `--fixup force` to force it 3 years ago
pukkandan fd7cfb6444
[cleanup] Refactor fixup 3 years ago
pukkandan 4e6767b5f2
[youtube] Temporary fix for age-gate
Related:
https://stackoverflow.com/a/67629882
https://github.com/yt-dlp/yt-dlp/issues/319
https://github.com/ytdl-org/youtube-dl/issues/29333
https://github.com/ytdl-org/youtube-dl/issues/29086
3 years ago
pukkandan 9fea350f0d
Fix id sanitization in filenames
Closes #415
3 years ago
pukkandan e858a9d6d3
[EmbedThumbnail] Add compat-option `embed-thumbnail-atomicparsley`
to force use of atomicparsley for embedding thumbnails in mp4

Related: #411
3 years ago
pukkandan 7e87e27c52
[postprocessor] Fix `_restrict_to` when a codec is not set 3 years ago
pukkandan d0fb4bd16f
[pornhub] Extract `cast`
Closes #406, https://github.com/ytdl-org/youtube-dl/pull/27384
3 years ago
felix 3fd4c2a543
[mediasite] Extract slides (#343)
Fixes:
https://github.com/ytdl-org/youtube-dl/issues/4974#issue-58006762
https://github.com/ytdl-org/youtube-dl/issues/4540#issuecomment-69574231
https://github.com/ytdl-org/youtube-dl/pull/11185#issuecomment-335554239

Authored by: fstirlitz
3 years ago
felix cdb19aa4c2
[downloader/mhtml] Add new downloader (#343)
This downloader is intended to be used for streams that consist of a
timed sequence of stand-alone images, such as slideshows or thumbnail
streams

This can be used for implementing:

https://github.com/ytdl-org/youtube-dl/issues/4974#issue-58006762
https://github.com/ytdl-org/youtube-dl/issues/4540#issuecomment-69574231
https://github.com/ytdl-org/youtube-dl/pull/11185#issuecomment-335554239

https://github.com/ytdl-org/youtube-dl/issues/9868
https://github.com/ytdl-org/youtube-dl/pull/14951


Authored by: fstirlitz
3 years ago
pukkandan 4d85fbbdbb
Fix bug in 8326b00aab 3 years ago
pukkandan 551f93885e
Ignore `images` formats from merge 3 years ago
pukkandan 8326b00aab
Allow `images` formats
Necessary for #343.

* They are identified by `vcodec=acodec='none'`
* These formats show as the worst in `-F`
* Any postprocessor that expects audio/video will be skipped
* `b*` and all related selectors will skip such formats
* This commit also does not add any selector for downloading such formats. They have to be explicitly requested by the `format_id`. Implementation of a selector is left for when #389 is resolved
3 years ago
pukkandan b0249bcaf0
Expand `--check-formats` to thumbnails
Closes #402
3 years ago
pukkandan 21cd8fae49
Use `NamedTemporaryFile` for `--check-formats` 3 years ago
pukkandan 45db527fa6
[youtube] Login is not needed for `:ytrec` 3 years ago
pukkandan 28419ca2c8
[utils] Improve `LazyList`
* Add `repr` and `str` that mimics `list`
* Add `reversed`. Unlike `[::-1]`, reversed does not exhaust the iterable and modifies the `LazyList` in-place
* Add tests
3 years ago
pukkandan 8ba8714880
[EmbedThumbnail] Fix for already downloaded thumbnail 3 years ago
pukkandan 187986a857
Better error handling of syntax errors in `-f` 3 years ago
coletdjnz 4ba001080f
[youtube] Non-fatal alert reporting for unavailable videos page (#401)
Co-Authored by: colethedj, pukkandan
3 years ago
coletdjnz 1974e99f4b
[youtube] Improve SAPISID cookie handling (closes #393) (#395)
Author: colethedj
3 years ago
pukkandan 0181adefc6
[build] Build Windows x86 version with py3.7
and remove redundant tests
Closes #390

:ci skip

Co-authored by: pukkandan, shirt-dev
3 years ago
pukkandan fd3c633d26
[version] update
:ci skip all
3 years ago
pukkandan 385a27fad1
Improve offset parsing in outtmpl 3 years ago
pukkandan 639f1cea92
Fix `%d` and empty default in outtmpl
Closes #388
3 years ago
pukkandan b5c5d84f60
Revert "[build] Build Windows x86 version with py3.8"
This reverts commit aa75e51f99.

See #390

This is being reverted instead of modified due to #388
3 years ago
pukkandan aa75e51f99
[build] Build Windows x86 version with py3.8
and remove redundant tests
:ci skip

Ao-authored by: pukkandan, shirt-dev
3 years ago
pukkandan 884ce9d05d
[version] update :ci skip all 3 years ago
pukkandan 3b1fe47d84
Release 2021.06.08 3 years ago
pukkandan 76a264ac9e
Make outtmpl more robust and catch errors early 3 years ago
pukkandan 324ad82006
[utils] Generalize `traverse_dict` to `traverse_obj` 3 years ago
Nil Admirari beb982bead
[build,update] Add GNU-style SHA512 and prepare updater for simlar SHA256 (#383)
Authored by: nihil-admirari <50202386+nihil-admirari@users.noreply.github.com>

Related: #385
3 years ago
pukkandan 46358f647d
Update to ytdl-commit-c2350ca
Update MSVC 2010 redist URL
c2350cac24
3 years ago
pukkandan bd99f6e648
Add field `original_url` with the user-inputted URL
So that they can be processed by `--parse-metadata` for example

`webpage_url` is the same, but may be modified by the extractor
3 years ago
pukkandan ecb5419149
Make more fields available for `--print` when used with `--flat-playlist` 3 years ago
pukkandan 89ee4cf8ae
[viki] Fix extraction
Closes #381
Code from: 59e583f7e8
3 years ago
pukkandan 87ea7dfc04
Fix filename sanitization
Bug from 752cda3880
3 years ago
pukkandan eb0f9d6838
[zoom] Extract transcripts as subtitles 3 years ago
pukkandan d3d8d8184a
[extractor] Fix pre-checking archive for some extractors
The `id` regex group must be present for `_match_id` and pre-checking archive to work correctly
3 years ago
pukkandan e85a39717a
[twitcasting] Add TwitCastingUserIE, TwitCastingLiveIE
Closes #374

Code adapted from: f1fb9222bb/youtube_dl/extractor/twitcasting.py
Authored by: pukkandan, nao20010128nao
3 years ago
MinePlayersPE f2cd7060fc
[vidio] Add VidioPremierIE and VidioLiveIE (#371)
Authored-by: MinePlayersPE
3 years ago
pukkandan 752cda3880
Fix and refactor `prepare_outtmpl`
The following tests would have failed previously:
%(id)d %(id)r
%(ext)s-%(ext|def)d
%(width|)d
%(id)r %(height)r
%(formats.0)r
%s
3 years ago
pukkandan 9d83ad93d0
[cleanup] Mark unused files 3 years ago
felix cc52de4356
[cleanup] Point all shebang to `python3` (#372)
Authored by: fstirlitz
3 years ago
felix 2ec1759f9d
[downloader/ffmpeg] Hide FFmpeg banner unless in verbose mode (#372)
Authored by: fstirlitz
3 years ago
felix e2efe599aa
[common] Fix FourCC fallback when parsing ISM (#372)
In some DASH manifests, the FourCC attribute is actually present,
but empty.  We thus apply the same fallback to 'AACL' that we do
when the attribute is entirely absent.

Authored by: fstirlitz
3 years ago
pukkandan 5e1dba8ed6
Remove duplicate file `trovolive.py` 3 years ago
pukkandan bea742222f
[youtube] Support shorts URL
Closes #375
3 years ago
pukkandan e06ca6ddac
[hls] Decrypt fragment when reading from disk
Closes #373
3 years ago
pukkandan eb03899192
[version] update
:ci skip all
3 years ago
pukkandan bc6b9bcd65
[utils] Escape URLs in `sanitized_Request`, not `sanitize_url`
d2558234cf added escaping of URLs while sanitizing. However, `sanitize_url` may not always receive an actual URL.
Eg: When using `yt-dlp "search query" --default-search ytsearch`, `search query` gets escaped to `search%20query` before being prefixed with `ytsearch:` which is not the intended behavior. So the escaping is moved to `sanitized_Request` instead.
3 years ago
Ashish 6e6390321c
[Hotstar] Add HotStarSeriesIE (#366)
Authored by: Ashish0804
3 years ago
pukkandan 4040428efc
[update] Block further update for unsupported systems 3 years ago
pukkandan 14eb1ee1cb
Update to ytdl-commit-d495292
[ard] Relax _VALID_URL and fix video ids
d495292852

Closes #357
3 years ago
coletdjnz 879e7199bb
[archiveorg] Add YoutubeWebArchiveIE (#356)
Co-authored by: colethedj, pukkandan, alex-gedeon
3 years ago
pukkandan d89da64b1d
[hls,dash] When using `concurrent_fragment_downloads`, do not keep the fragment content in memory
Partial fix for #359
This is a temporary solution until #364 can be implemented
3 years ago
pukkandan 5dcd8e1d88
[hls] Disable external downloader for `webtt` 3 years ago
MinePlayersPE 10bb7e51e8
[vidio] Add login support (#362)
Authored by: MinePlayersPE
3 years ago
pukkandan b0089e8992
[fancode] Add extractor (#316,#354)
Closes #269, #363

Authored by: rmsmachine
3 years ago
Ashish a3ed14cbaf
[Voot] Add VootSeriesIE (#351)
Authored by: Ashish0804
3 years ago
LE 9dee4df559
[Saitosan] Add new extractor (#350)
Closes #224
Authored by: llacb47
3 years ago
pukkandan adddc50cbf
[extractor] Functions to parse socket.io response as json
Authored by: pukkandan, llacb47
3 years ago
MinePlayersPE 46c43ffc9d
[vidio] Support premium videos (#358)
Authored by: MinePlayersPE
3 years ago
pukkandan 37a3bb66a7
[extractor] Allow `note=False` when extracting manifests 3 years ago
pukkandan 337e0c62f8
[embedthumbnail] Correctly escape filename
Closes #352
The approach in [1] is faulty as can be seen in the test cases
1. bff857a8af
3 years ago
pukkandan 885cc0b75c
[embedthumbnail] Embed if any thumbnail was downloaded, not just the best 3 years ago
pukkandan 46953e7e6e
[youtube:playlist] fix bug 3 years ago
pukkandan ae8f99e648
Remove `None` values from `info.json` 3 years ago
pukkandan 077c476276
[zee5] Fix m3u8 formats extension 3 years ago
pukkandan 835a1478b4
Write messages to `stderr` when both `quiet` and `verbose` 3 years ago
pukkandan 120fe5134a
Pre-check archive and filters during playlist extraction
This makes `--break-on-existing` much faster.
It also helps `--break-on-reject` if the playlist extractor can extract the relevant fields
3 years ago
pukkandan 56a8fb4f77
Refactor `__process_playlist` using `LazyList` 3 years ago
pukkandan 55575225b4
[utils] Add `__getitem__` for `PagedList` 3 years ago
pukkandan 483336e79e
[utils] Add `LazyList` 3 years ago
pukkandan c77495e3a4
[cleanup] `_match_entry` 3 years ago
rhsmachine 65af1839c6
[patreon] Support vimeo embeds (#349)
Authored by: rhsmachine
4 years ago
pukkandan 177877c544
[extractor] Always prefer native hls downloader by default
When the manifest is not downloadable by native downloader, it already is able to detect it and switch to `ffmpeg`. So there doesn't seem to be a reason anymore to use ffmpeg as the preferred downloader
4 years ago
pukkandan b25522ba52
[update] Replace self without launching a subprocess in windows
Closes: #335, https://github.com/ytdl-org/youtube-dl/issues/28488, https://github.com/ytdl-org/youtube-dl/issues/5810, https://github.com/ytdl-org/youtube-dl/issues/5994

In windows, a running executable cannot be replaced. So, the old updater worked by launching a batch script and then exiting, so that the batch script can replace the executable. However, this caused the above-mentioned issues.

The new method takes advantage of the fact that while the executable cannot be replaced or deleted, it can still be renamed. The current update process on windows is as follows:
1. Delete `yt-dlp.exe.old` if it exists
2. Download the new version as `yt-dlp.exe.new`
3. Rename the running exe to `yt-dlp.exe.old`
4. Rename `yt-dlp.exe.new` to `yt-dlp.exe`
5. Open a shell that deletes `yt-dlp.exe.old` and terminate

While we still use a subprocess, the actual update is already done before the app terminates and the batch script does not print anything to stdout/stderr. So this solves all the above issues
4 years ago
pukkandan c19bc311cb
[cleanup] Refactor updater
The updater now uses `.update.run_update` and not `.update.update_self`.
Although I don't expect anyone to be using the updater via API, a wrapper `update_self` is provided for compatibility just in case
4 years ago