Commit Graph

1014 Commits

Author SHA1 Message Date
pukkandan f95b9dee45
[extractor] Add dev option `--load-pages` 2022-06-01 02:03:22 +05:30
pukkandan 0bf9dc1e35
Fix bug in 8a82af3511 2022-05-27 21:29:30 +05:30
pukkandan 8a82af3511
[cleanup] Misc fixes and cleanup
Closes #3780, Closes #3853, Closes #3850
2022-05-27 04:43:43 +05:30
pukkandan 6b9e832db7
`--config-location -` to provide options interactively 2022-05-27 04:32:54 +05:30
pukkandan 2dd5a2e3a1
[doc, cleanup] Re-indent "Usage and Options" section 2022-05-19 20:05:17 +05:30
pukkandan 9e49146352
Add option `--alias` 2022-05-19 19:45:21 +05:30
pukkandan b14d523558
Release 2022.05.18 2022-05-18 09:04:38 +05:30
pukkandan 2414649192
[cleanup] Misc cleanup 2022-05-17 00:07:43 +05:30
pukkandan 3d38b2d6d0
Fix `--date today`
Closes #3704
2022-05-11 07:25:56 +05:30
coletdev bb58c9ed5c
Add support for SSL client certificate authentication (#3435)
Adds `--client-certificate`, `--client-certificate-key`, `--client-certificate-password`

Authored-by: coletdjnz
Co-authored-by: df <fieldhouse@gmx.net>
Co-authored-by: pukkandan <pukkandan.ytdlp@gmail.com>
2022-05-02 07:59:45 +00:00
coletdev 6e634cbe42
[youtube] Add YoutubeStoriesIE (#3362)
Get channel stories with `ytstories:<channel UCID>`

Authored-by: coletdjnz
2022-05-01 06:46:28 +00:00
pukkandan 3fe75fdc80
[cleanup] Misc fixes (see desc)
* Do not warn when fixup is skipped for existing file
* [fragment] Fix `--skip-unavailable-fragments` for HTTP Errors
* [utils] write_string: Fix bug in 59f943cd50
* [utils] parse_codecs: Subtitle codec is generally referred to as `scodec`. https://github.com/yt-dlp/yt-dlp/pull/2174#discussion_r790156048
* [docs] Remove note about permissions. Closes #3597
2022-05-01 04:58:38 +05:30
pukkandan 6f7563beb7
[XAttrMetadata] Refactor and document dependencies 2022-05-01 04:58:38 +05:30
pukkandan 0a41f331cc
[doc] Minor improvements
Closes #3518, Closes #3560
2022-04-29 06:53:36 +05:30
pukkandan 492272fed6
`--match-filter -` to interactively ask for each video 2022-04-28 20:04:40 +05:30
pukkandan 62f6f1cbf2
Don't imply `-s` for later stages of `-O` 2022-04-20 21:01:34 +05:30
pukkandan 43cc91ad75
bugfix for 19a0394044, 3d3bb1688b 2022-04-18 05:41:56 +05:30
pukkandan 3d3bb1688b
[docs] Improve embedding docs and other minor fixes 2022-04-18 00:33:00 +05:30
pukkandan e5a998f368
[cleanup] Misc cleanup (#2173)
Authored by: fstirlitz, pukkandan
2022-04-12 05:32:52 +05:30
krichbanana ca5300c7ed
[youtube] Add `:ytnotifications` extractor (#3347)
Authored by: krichbanana
2022-04-09 12:55:24 -07:00
pukkandan ebc7d3ff1f
[docs] Minor improvements (#3309, #3343)
Authored by: cffswb, danielyli


Co-authored-by: Daniel Li <dan@danielyli.com>
Co-authored-by: cffswb <karte577@gmail.com>
2022-04-08 14:09:10 +05:30
pukkandan a44ca5a470
[cleanup] Misc fixes
Closes https://github.com/yt-dlp/yt-dlp/pull/3213, Closes https://github.com/yt-dlp/yt-dlp/pull/3117

Related: https://github.com/yt-dlp/yt-dlp/issues/3146#issuecomment-1077323114, https://github.com/yt-dlp/yt-dlp/pull/3277#discussion_r841019671, a825ffbffa (commitcomment-68538986), https://github.com/yt-dlp/yt-dlp/issues/2360, 5fa3c9a88f (r70393519), 5fa3c9a88f (r70393254)
2022-04-05 18:12:18 +05:30
MrRawes 5d0aeac0e9
[docs] Clarify the exact `BSD` license of dependencies (#3197)
Authored by: MrRawes
2022-03-30 04:35:06 -07:00
David e7870111e8
[YouTube] Add new age-gate bypass (#3233)
Closes #3182
Authored by: zerodytrash, pukkandan
2022-03-29 03:05:31 -07:00
pukkandan 18e4940825
[youtube] Add extractor-arg to skip auto-translated subs 2022-03-27 14:04:20 +05:30
pukkandan 5c3895fff1
[outtmpl] Limit changes during sanitization
Closes #2761
2022-03-27 11:18:35 +05:30
pukkandan ae6a1b9585
[docs] Minor improvements
Closes #3127, Closes #3081, Closes #3177
2022-03-24 07:30:25 +05:30
coletdev d5820461e8
Use certificates from `certifi` if installed (#3115)
Fixes #3102 and most `CERTIFICATE_VERIFY_FAILED` issues

Authored by: coletdjnz
2022-03-22 16:26:55 -07:00
Lesmiscore (Naoya Ozaki) 7bdcb4a40e
[niconico] Rewrite NiconicoIE (#3018)
Closes https://github.com/yt-dlp/yt-dlp/issues/2636, partially fixes https://github.com/yt-dlp/yt-dlp/issues/367
Authored by: Lesmiscore
2022-03-17 05:22:14 -07:00
shirt d69e55c1d8
[cleanup] Remove readthedocs from README.md 2022-03-14 12:19:33 -04:00
pukkandan 592b748582
[cleanup] Minor cleanup
Closes #3006
2022-03-11 19:40:15 +05:30
coletdev e248be3319
[panopto] Add extractors (#2908)
Based on https://github.com/ytdl-org/youtube-dl/pull/13449
Closes #1946
Authored by: coletdjnz, kmark
2022-03-08 13:00:57 -08:00
pukkandan 08d30158ec
[cleanup, docs] Misc cleanup
Closes #2828, closes #2734, closes #2802, closes #2937
2022-03-08 22:38:06 +05:30
coletdev 4390d5ec12
Add brotli content-encoding support (#2433)
Authored by: coletdjnz
2022-03-08 08:44:05 -08:00
pukkandan 8b7539d27c
Implement `--add-header` without modifying `std_headers`
Closes #2526, #1614
2022-03-04 20:59:03 +05:30
pukkandan 7eaf7f9aba
[rokfin] Add stack and channel extractors (#1534)
Authored by: P-reducible, pukkandan
2022-03-02 21:39:08 +05:30
pukkandan 09b49e1f68
Add pre-processor stage `after_filter`
* Move `_match_entry` and `post_extract` to `process_video_result`. It is also left in `process_info` for API compat
* `--list-...` options and `--force-write-archive` now obey filtering options
* Move `SponsorBlockPP` to `after_filter`. Closes https://github.com/yt-dlp/yt-dlp/issues/2536
* Reverts 4ec82a72bb since this commit addresses the issue it was solving
2022-02-23 04:26:48 +05:30
pukkandan a30a6ed3e4
[youtube:tab] Add `approximate_date` extractor-arg 2022-02-23 04:25:55 +05:30
pukkandan 72073451be
[ThumbnailsConvertor] Support `webp`
Closes #2226
2022-02-23 03:51:13 +05:30
Lukas Fink 1ce9a3cb49
Add regex operator and quoting to format filters (#2698)
Closes #2681 
Authored by: lukasfink1
2022-02-11 13:35:34 -08:00
pukkandan 3856407a86
[options] Rename `--clean-infojson` to `--clean-info-json` 2022-02-11 12:07:10 +05:30
pukkandan c1653e9efb
Release 2022.02.04 2022-02-04 12:03:56 +05:30
pukkandan d5a398988b
Update to ytdl-commit-78ce962
[youtube] Support channel search
78ce962f4f
2022-02-03 22:23:24 +05:30
pukkandan 455a15e2dc
[cleanup,docs] Minor fixes
Closes #2541, #2484
2022-02-03 21:00:39 +05:30
MinePlayersPE 046cab3915
[TikTok] Iterate through app versions (#2449)
Closes #2476
Authored by: MinePlayersPE
2022-02-01 13:56:23 +05:30
pukkandan dbcea0585f
[outtmpl] Handle `-o ""` better
Since the specific type of file is not downloaded when giving `-o "<type>:"`,
now `-o ""` acts as an alias to `--skip-download`
2022-02-01 06:21:36 +05:30
Jeff Huffman 706dfe441b
[crunchyroll:beta] Add cookies support (#2506)
* Extract directly from the beta API when cookies are passed. If login cookie is absent, the extraction is delegated to `CrunchyrollIE`. This causes different metadata to be extracted (including formats and video id) and therefore results in a different archive entry. For now, this issue is unavoidable since the browser also redirects to the old site when not logged in.

* Adds extractor-args `format` and `hardsub` to control the source and subtitles of the extracted formats

Closes #1911
Authored by: tejing1
2022-01-29 06:03:51 +05:30
pukkandan 88f23a18e0
[docs,cleanup] Fix linter and misc cleanup
Closes #2419
2022-01-24 03:24:23 +05:30
pukkandan bb66c24797
Add option `--print-to-file`
Closes #2372
2022-01-24 03:24:15 +05:30
pukkandan 144a3588b4
Release 2022.01.22 2022-01-21 17:41:33 +05:30
pukkandan fc5fa964c7
[docs] Improvements 2022-01-21 13:27:44 +05:30
pukkandan 0bfc53d05c
List playlist thumbnails in `--list-thumbnails` 2022-01-21 12:52:15 +05:30
coletdjnz 6c73052c0a
[youtube] Extract channel subscriber count (#2399)
Closes #2350
* Adds `channel_follower_count` field
Authored-by: coletdjnz
2022-01-21 06:04:36 +00:00
krichbanana 64f36541c9
[youtube:tab] Raise error on tab redirect (#2318)
Closes #2306
Authored by: krichbanana, coletdjnz
2022-01-20 03:01:57 +05:30
pukkandan 3b603dbdf1
Add option `--concat-playlist`
Closes #1855, related: #382
2022-01-13 16:32:23 +05:30
pukkandan ed8d87f911
[cleanup, docs] Minor fixes
Closes #2230
2022-01-12 09:00:21 +05:30
pukkandan 8130779db6
Allow listing formats, thumbnails, subtitles using `--print` (#2238)
Closes #2083
Authored by: pukkandan, Zirro
2022-01-11 00:28:01 +05:30
pukkandan ed5835b451
Allow `--print` to be run at any post-processing stage 2022-01-11 00:28:01 +05:30
coletdjnz f0d785d3ed
[youtube:tab] Extract more playlist metadata (#2069)
* Add fields modified_date, modified_timestamp
* Add field playlist_count
* [youtube:tab] Extract view_count, playlist_count, modified_date

Authored by: coletdjnz, pukkandan
2022-01-07 16:33:02 +05:30
pukkandan 9e907ebddf
[cleanup] Misc cleanup 2022-01-04 01:25:10 +05:30
pukkandan 9c906919ae
Add field `video_autonumber`
Closes #662
2022-01-03 19:40:11 +05:30
pukkandan ebed8b3732
Add more post-processing stages
playlist = After entire playlist
after_video = After downloading all formats of a video
2022-01-03 19:40:05 +05:30
pukkandan 1e43a6f733
Allow `--exec` to be run at any post-processing stage
Deprecates `--exec-before-download`
2022-01-03 19:40:02 +05:30
pukkandan ca30f449a1
Add `--print playlist:` to print fields per playlist 2022-01-03 19:39:59 +05:30
pukkandan 8896899216
[FfmpegMetadata] Allow setting metadata of individual streams
Closes #877
2022-01-02 03:33:15 +05:30
Ashish Gupta 26f2aa3db9
[hotstar] Add extractor args to ignore tags (#2116)
Authored by: Ashish0804
2022-01-01 02:32:23 +05:30
pukkandan abbeeebc4c
[outtmpl] Alternate form for `D` and fix suffix's case
Fixes: https://github.com/yt-dlp/yt-dlp/issues/2085#issuecomment-1002247689, https://github.com/yt-dlp/yt-dlp/pull/2132/files#r775729811
2021-12-30 08:44:18 +05:30
pukkandan 6a34813a0d
[docs] Add examples for using `TYPES:` in `-P`/`-o` 2021-12-27 07:26:39 +05:30
Matt Broadway f59f5ef8b6
[cookies] Support other keyrings (#2032)
Authored by: mbway
2021-12-27 06:58:44 +05:30
pukkandan 87e0499624
Release 2021.12.25 2021-12-25 06:01:54 +05:30
pukkandan d80d98e7d4
[docs] Minor fixes 2021-12-25 04:11:12 +05:30
MinePlayersPE d43de6821c
[GameJolt] Add extractors (#2036)
Authored by: MinePlayersPE
2021-12-25 03:58:57 +05:30
pukkandan 37893bb0c9
[outtmpl] Change filename sanitization type to `S`
`F` is already used for float!
Bug in e0fd95737d
2021-12-23 09:15:05 +05:30
Emanuel Hoogeveen 205a0654c0
Add option `--file-access-retries` (#2066)
Closes #517
Authored by: ehoogeveen-medweb
2021-12-23 07:59:03 +05:30
pukkandan b69fd25c25
[cleanup] Misc cleanup
Closes #1942 #1976 #2020 #2058 #1984
2021-12-23 07:12:46 +05:30
pukkandan e0fd95737d
[outtmpl] Add alternate forms `F`, `D`
and improve `id` detection

F = sanitize as filename (# = restricted)
D = add Decimal suffixes

Closes #2085, 2081
2021-12-23 06:49:16 +05:30
pukkandan fa9f30b802
Add interactive format selection with `-f -`
Closes #2065
2021-12-21 21:40:04 +05:30
The Hatsune Daishi adbc4ec4bb
[dash,youtube] Download live from start to end (#888)
* Add option `--live-from-start` to enable downloading live videos from start
* Add key `is_from_start` in formats to identify formats (of live videos) that downloads from start
* [dash] Create protocol `http_dash_segments_generator` that allows a function to be passed instead of fragments
* [fragment] Allow multiple live dash formats to download simultaneously
* [youtube] Implement fragment re-fetching for the live dash formats
* [youtube] Re-extract dash manifest every 5 hours (manifest expires in 6hrs)
* [postprocessor/ffmpeg] Add `FFmpegFixupDuplicateMoovPP` to fixup duplicated moov atoms

Known issue: Ctrl+C doesn't work on Windows when downloading multiple formats

Closes #1521
Authored by: nao20010128nao, pukkandan
2021-12-20 11:36:46 +05:30
Unit 193 e75bb0d6c3
[cleanup] Fix some typos (#2033)
Authored by: unit193
2021-12-19 20:48:06 +05:30
pukkandan 940a67a3e2
[docs] Change all examples to use double quotes
to be platform-agnostic
2021-12-19 09:05:58 +05:30
PilzAdam e978789f0f
[outtmpl] Add operator `&` for replacement text (#2012)
Authored by: PilzAdam
2021-12-18 02:05:48 +05:30
chris ec2e44fc57
[docs] Improve manpage format (#2003)
Closes #1448
Authored by: iw0nderhow, pukkandan
2021-12-17 06:53:04 +05:30
coletdjnz 46383212b3
[youtube:comments] Add more options for limiting number of comments extracted (#1626)
Extends `max_comments` extractor arg to support `max-parents,max-replies,max-replies-per-thread`.
Authored-by: coletdjnz
2021-12-15 04:29:48 +00:00
pukkandan 0bb322b9c0
Add field `webpage_url_domain`
Closes #1311
2021-12-15 04:51:52 +05:30
coletdjnz aa4b054512
[web.archive:youtube] Improve metadata extraction (#1785)
Authored-by: coletdjnz
2021-12-09 23:43:15 +00:00
Nil Admirari 8157a09d22
[SponsorBlock] Add Filler and Highlight categories (#1664)
Authored by: nihil-admirari, pukkandan
2021-12-09 18:10:31 +05:30
pukkandan 91f071af60
Release 2021.12.01 2021-12-01 05:46:15 +05:30
pukkandan f304da8a29
[cleanup] Misc cleanup
Closes #1805, closes #1800
2021-11-29 23:34:33 +05:30
pukkandan 75b725a7cc
[build] Use `workflow_dispatch` for release 2021-11-29 22:52:01 +05:30
pukkandan 9222c38182
[cleanup] Minor cleanup
Closes #1696, Closes #1673
2021-11-19 05:36:28 +05:30
coletdjnz d0d012d4e7
[youtube] Add `default` player client (#1685)
Authored-by: coletdjnz
2021-11-16 01:22:01 +00:00
pukkandan f279aaee8e
Add compat-option embed-metadata 2021-11-15 01:25:47 +05:30
pukkandan 093a17107e
Allow using a custom format selector through API
Closes #1619, #1464
2021-11-11 08:18:34 +05:30
pukkandan 86c1a8aae4
Release 2021.11.10 2021-11-10 06:41:44 +05:30
pukkandan 59a7a13ef9
[docs] Minor documentation improvements
Closes #1583, #1599
2021-11-10 04:19:52 +05:30
pukkandan 4476d2c764
[outtmpl] Add alternate forms for `q` and `j` 2021-11-10 04:19:42 +05:30
pukkandan aeb2a9ad27
[FormatSort] `eac3` is better than `ac3` 2021-11-05 20:40:45 +05:30
pukkandan a9d4da606d
[crunchyroll] Add extractor-args `language` and `hardsub`
Closes #1516
2021-11-05 00:12:12 +05:30
pukkandan a4211baff5
[cleanup] Minor cleanup 2021-11-04 03:53:15 +05:30
pukkandan 0930b11fda
[docs,cleanup] Improve docs and minor cleanup
Closes #1387, #1404, #1408, #1485, #1415, #1450, #1492
2021-10-31 14:47:33 +05:30
pukkandan 08438d2ca5
[outtmpl] Add type `link` for internet shortcut files
and refactor related code
Closes #1405
2021-10-26 20:27:09 +05:30
pukkandan 96565c7e55
[cleanup] Add keyword automatically to SearchIE descriptions
and some minor cleanup of docs
2021-10-23 21:20:19 +05:30
pukkandan 0676afb126
Release 2021.10.22 2021-10-23 02:09:15 +05:30
pukkandan 49a57e70a9
[cleanup] misc 2021-10-23 02:09:10 +05:30
pukkandan 19b824f693
Re-implement deprecated option `--id`
Despite `--title`, `--literal` etc being deprecated,
`--id` is still documented in youtube-dl and so should be kept
2021-10-22 04:42:24 +05:30
pukkandan 733d8e8f99
[build] Refactor `pyinst.py` and misc cleanup
Closes #1361
2021-10-21 20:11:05 +05:30
pukkandan 386cdfdb5b
[build] Release windows exe built with py2exe
Closes: #855
Related: #661, #705, #890, #1024, #1160
2021-10-21 20:11:05 +05:30
Ricardo 0e5927eebf
[build] Build standalone MacOS packages (#1221)
Closes #1075 
Authored by: smplayer-dev
2021-10-21 16:18:46 +05:30
Zirro 1e520b5535
Add option `--no-batch-file` (#1335)
Authored by: Zirro
2021-10-19 00:41:07 +05:30
pukkandan 176f1866cb
Add HDR information to formats 2021-10-18 18:35:02 +05:30
pukkandan 2d9ec70423
[ModifyChapters] Allow removing sections by timestamp
Eg: --remove-chapters "*10:15-15:00".
The `*` prefix is used so as to avoid any conflicts with other valid regex
2021-10-18 16:06:51 +05:30
pukkandan b11d210156
[EmbedMetadata] Allow overwriting all default metadata
with `meta_default` key
2021-10-18 10:31:56 +05:30
pukkandan c111cefa5d
[downloader/ffmpeg] Improve simultaneous download and merge 2021-10-13 04:14:11 +05:30
pukkandan dec0d56fa9
Release 2021.10.10 2021-10-10 09:32:01 +05:30
pukkandan c9652aa418
[docs] Remove incorrect dependency on VC++10
Closes #1163
2021-10-10 04:47:48 +05:30
pukkandan 90d55df330
Release 2021.10.09 2021-10-10 00:40:35 +05:30
pukkandan b5ae35ee6d
[cleanup] Misc cleanup 2021-10-09 22:32:00 +05:30
timethrow 8c6f4daa4c
[docs] Write embedding and contributing documentation (#528)
Authored by: pukkandan, timethrow
2021-10-09 06:38:01 +05:30
coletdjnz ac56cf38a4
[youtube:tab] Fallback to API when webpage fails to download (#1122)
and add some extractor_args to force this mode
Authored by: coletdjnz
2021-10-09 02:49:25 +05:30
pukkandan 819e05319b
Improved progress reporting (See desc) (#1125)
* Separate `--console-title` and `--no-progress`
* Add option `--progress` to show progress-bar even in quiet mode
* Fix and refactor `minicurses`
* Use `minicurses` for all progress reporting
* Standardize use of terminal sequences and enable color support for windows 10
* Add option `--progress-template` to customize progress-bar and console-title
* Add postprocessor hooks and progress reporting

Closes: #906, #901, #1085, #1170
2021-10-09 00:41:59 +05:30
pukkandan 49e7e9c3ce
[docs,build] Change all pycryptodome references to pycryptodomex 2021-10-06 06:45:45 +05:30
shirt f85e6be42e
[build] Use pycryptodomex for PyInstaller (#1179) 2021-10-05 13:37:58 -04:00
pukkandan e6f21b3d92
[docs,cleanup] Some minor refactoring and improve docs 2021-09-30 03:32:52 +05:30
pukkandan d710cc6d36
[docs] Add note about our custom ffmpeg builds 2021-09-30 03:32:49 +05:30
pukkandan 3ae5e79774
[postprocessor] Add plugin support
Adds option `--use-postprocessor` to enable them
2021-09-30 03:32:46 +05:30
pukkandan 80c03fa98f
Allow empty output template to skip a type of file
Closes #760, #1111
2021-09-30 03:32:43 +05:30
pukkandan 91dd88b90f
[outtmpl] Alternate form of format type `l` for `\n` delimited list 2021-09-27 11:29:16 +05:30
pukkandan 524e2e4fda
[outtmpl] Format type `U` for unicode normalization 2021-09-26 01:41:01 +05:30
pukkandan 0ef787d773 Release 2021.09.25 2021-09-25 06:28:05 +05:30
pukkandan b19404591a
Separate the options `--ignore-errors` and `--no-abort-on-error`
In youtube-dl, `-i` ignores both download and post-processing error, and
treats the download as successful even if the post-processor fails.

yt-dlp used to skip the entire video on either error and there was no
option to ignore the post-processing errors like youtube-dl does.

By splitting the option into two, now either just the download errors
(--no-abort-on-error, default on CLI) or all errors (--ignore-errors)
can be ignored as per the users' needs

Closes #893
2021-09-24 06:05:35 +05:30
pukkandan d806c9fd97
[docs,cleanup] Add deprecation warning in docs
for some counter intuitive behaviour that may be removed in future.

and fix linter
2021-09-22 05:50:11 +05:30
pukkandan 7c37ff97d3
Allow alternate fields in outtmpl
Closes #899, #1004
2021-09-18 16:41:01 +05:30
pukkandan f5aa5cfbff
Add format type `B` for outtmpl to treat the value as bytes
This is useful to limit the filename to a certain number of bytes rather than characters
Closes #1003
2021-09-18 00:11:11 +05:30
pukkandan 0001fcb586
Add option `--netrc-location`
Closes #792, #963
2021-09-16 01:28:55 +05:30
pukkandan c589c1d395
[compat] Don't ignore `HOME` (if set) on windows
Related: #792
2021-09-16 01:28:54 +05:30
coletdjnz b6de707d13
[youtube] Improvements to JS player extraction (See desc) (#860)
* 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
2021-09-06 12:56:41 +05:30
pukkandan 526d74ec5a
[cleanup] Misc 2021-09-05 11:16:23 +05:30
pukkandan 9ee4f0bb5b
Release 2021.09.02 2021-09-02 04:43:38 +05:30
Nil Admirari 7a340e0df3
Native SponsorBlock implementation and related improvements (#360)
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
2021-09-02 02:25:16 +05:30
The Hatsune Daishi b8773e63f0
[build] Add homebrew taps (#827)
https://github.com/yt-dlp/homebrew-taps
Closes: #754, #770
Authored by: nao20010128nao
2021-08-30 20:07:43 +05:30
pukkandan 2e7781a93c
[docs] Fix some typos
Closes #677, #774
2021-08-28 02:20:40 +05:30
pukkandan 198e3a04c9
[FormatSort] Remove priority of `lang` 2021-08-26 08:08:33 +05:30
coletdjnz 0bb1bc1b10
[youtube] Remove annotations and deprecate `--write-annotations` (#765)
Closes #692 
Authored by: coletdjnz
2021-08-24 09:22:40 +05:30
pukkandan 330690a214
[downloader/ffmpeg] Allow passing custom arguments before -i
Closes #686
2021-08-24 04:24:12 +05:30
pukkandan 88acdbc269
[extractor] Better error message for DRM (#729)
Closes #636
2021-08-23 01:38:38 +05:30
pukkandan 8f18aca871
Let `--match-filter` reject entries early
Makes redundant: `--match-title`, `--reject-title`, `--min-views`, `--max-views`
2021-08-17 04:29:56 +05:30
zootedb0t 7581d2467a
[docs] fix typo (#715)
Authored by: zootedb0t
2021-08-16 21:59:40 +05:30
pukkandan 31654882e9
[options] Add `_set_from_options_callback` 2021-08-15 00:26:34 +05:30
pukkandan 418964fa91
Release 2021.08.10 2021-08-10 20:10:39 +05:30
pukkandan e9f4ccd19e
Add option `--replace-in-metadata` 2021-08-10 01:22:55 +05:30
pukkandan 3448870205
[docs] Fix some mistakes and improve doc 2021-08-07 21:41:48 +05:30
pukkandan 2b8a2973bd Allow entire infodict to be printed using `%()s`
Makes `--dump-json` redundant
2021-08-07 21:17:04 +05:30
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
2021-08-07 21:17:03 +05:30
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
2021-08-07 12:47:54 +05:30
pukkandan b51d2ae3ca
Add compat-option `no-keep-subs`
Closes #630
2021-08-06 00:55:04 +05:30
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
2021-08-05 04:10:26 +05:30
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
2021-08-05 03:37:20 +05:30
MinePlayersPE 3dbb2a9dcb
[RCTIPlus] Support events and TV (#625)
Authored by: MinePlayersPE
2021-08-04 18:42:15 +05:30
The Hatsune Daishi 9997eee4af
[openrec] Add extractors (#624)
Authored by: nao20010128nao
2021-08-04 14:44:37 +05:30
pukkandan c31be5b009
[docs] Document which fields `--add-metadata` adds to the file
:ci skip all
2021-08-03 01:34:28 +05:30
pukkandan e980017ac8
[doc] Fix banner URL 2021-08-02 10:45:02 +05:30
pukkandan 6ccf351a87
Release 2021.08.02 2021-08-02 10:37:10 +05:30
pukkandan 28dff70b51
Add donate links 2021-08-02 08:51:23 +05:30
pukkandan 1aebc0f79e
Add logo and banner 2021-08-02 08:51:22 +05:30
David e7e94f2a5c
[youtube] Add age-gate bypass for unverified accounts (#600)
Adds `_creator` variants for each client

Authored by: zerodytrash, colethedj, pukkandan
2021-08-02 02:43:46 +05:30
pukkandan e4f0275711
Add compat-option `no-clean-infojson` 2021-08-01 12:13:40 +05:30
pukkandan 7d1eb38af1
Add format types `j`, `l`, `q` for outtmpl
Closes #345
2021-07-29 08:47:25 +05:30
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
2021-07-27 15:10:44 +05:30
coletdjnz 5a1fc62b41
[youtube] Add `mobile_web` client (#557)
Authored by: colethedj
2021-07-26 03:48:36 +05:30
pukkandan b4c055bac2
[youtube] Add `player_client=all` 2021-07-26 03:38:18 +05:30
pukkandan f703a88055
Release 2021.07.24 2021-07-24 07:03:14 +05:30
pukkandan 060ac76257
[test] Use `pytest` instead of `nosetests` (#482)
`nosetests` is no longer being maintained : https://github.com/nose-devs/nose/issues/1099
and will stop working in py 3.10 as can be seen in #480
2021-07-23 20:18:15 +05:30
pukkandan 245524e6a3
Release 2021.07.21
and fix some typos
Closes #538
2021-07-22 02:33:28 +05:30
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
2021-07-22 02:02:49 +05:30
pukkandan ae30b84072
Add field `live_status` 2021-07-21 20:50:58 +05:30
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
2021-07-21 09:22:34 +05:30
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
2021-07-20 02:42:11 +05:30
pukkandan dce8743677
[docs] fix default of multistreams 2021-07-19 23:47:57 +05:30
pukkandan 5520aa2dc9
Add option `--exec-before-download`
Closes #530
2021-07-19 23:47:45 +05:30
coletdjnz 2d6659b9ea
[youtube:comments] Move comment extraction to new API (#466)
Closes #438, #481, #485 

Authored by: colethedj
2021-07-12 04:48:40 +05:30
zackmark29 73d829c144
[VIKI] Rewrite extractors (#475)
Closes #462
Also added extractor-arg `video_types` to `vikichannel`

Co-authored-by: zackmark29, pukkandan
2021-07-10 02:08:09 +05:30
pukkandan a8bf9b4dc1
Release 2021.07.07 2021-07-07 05:35:20 +05:30
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
2021-07-07 02:51:29 +05:30
pukkandan bc97cdae67
[cleanup] Fix linter and some typos
Related: https://github.com/ytdl-org/youtube-dl/pull/29398
2021-07-04 03:04:25 +05:30
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
2021-06-29 22:07:49 +00:00
pukkandan 5d3a0e794b
Add `--extractor-args` to pass extractor-specific arguments 2021-06-25 20:10:28 +05:30
pukkandan 6aecd87106
Release 2021.06.23 2021-06-23 07:34:55 +05:30
pukkandan e36d50c5dd
[websockets] Add `WebSocketFragmentFD` (#399)
Necessary for #392

Co-authored by: nao20010128nao, pukkandan
2021-06-21 22:56:36 +05:30
pukkandan e858a9d6d3
[EmbedThumbnail] Add compat-option `embed-thumbnail-atomicparsley`
to force use of atomicparsley for embedding thumbnails in mp4

Related: #411
2021-06-16 22:33:32 +05:30
pukkandan 3b1fe47d84
Release 2021.06.08 2021-06-08 20:13:41 +05:30
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
2021-06-08 00:20:06 +05:30
pukkandan cf59cd4dcd
[docs] Improve documentation of dependencies
Related: #348
2021-06-08 00:16:44 +05:30
pukkandan 3de7c2ce9a
Release 2021.06.01 2021-06-01 20:29:03 +05:30
pukkandan 18e674b4f6
[ffmpeg] Download and merge in a single step if possible 2021-05-23 03:53:18 +05:30
louie-github a927acb1ec
[ThumbnailsConvertor] Support conversion to `png` and make it the default (#333)
PNG, being a lossless format, should be a better default here compared to JPG since we won't be compressing to a lossy format and losing some of the original image data
PNG is also supported for embedding in all the formats similar to JPEG

Authored by: louie-github
2021-05-21 23:39:48 +05:30
pukkandan 09f1580e2d
[youtube] `/live` URLs should raise error if channel is not live
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29090
2021-05-21 20:05:54 +05:30
pukkandan 0fdf490d33
Release 2021.05.20 2021-05-20 21:13:19 +05:30
pukkandan 28b0eb0f65
[cleanup] See desc
* Remove struct from `embedthumbnail`
* Use bullet lists in readme where numbered list don't make sense
* Fix error introduced in 9c2b75b561 when `ie_result` is `None`
2021-05-20 18:02:58 +05:30
pukkandan 2305e2e5c9
[options] Alias `--write-comments`, `--no-write-comments`
Closes: #264
2021-05-20 15:56:57 +05:30
pukkandan 9c2b75b561
Field `additional_urls` to download additional videos from metadata 2021-05-19 18:11:15 +05:30
pukkandan 07cce701de
[cleanup] linter, code formatting and readme 2021-05-19 16:48:20 +05:30
pukkandan 5112f26a60
Add `pl_thumbnail` outtmpl key for playlist thumbnails
This should have been implemented in 681de68e9d, but I forgot
2021-05-18 17:12:20 +05:30
pukkandan a06916d98e
[extractor] Add `write_debug` and `get_param` 2021-05-17 18:59:51 +05:30
pukkandan 53c18592d3
Add option `--print`
Deprecates: `--get-description`, `--get-duration`, `--get-filename`, `--get-format`, `--get-id`, `--get-thumbnail`, `--get-title`, `--get-url`
Closes #295
2021-05-14 13:15:47 +05:30
pukkandan 4171221823
Add compat-option `no-attach-infojson` 2021-05-11 14:25:31 +05:30
pukkandan fac988053f
Release 2021.05.11
* and some documentation improvements
2021-05-11 13:35:05 +05:30
pukkandan 53ed7066ab
Option `--compat-options` to revert some of yt-dlp's changes
* Deprecates `--list-formats-as-table`, `--list-formats-old`
2021-05-11 13:30:48 +05:30
pukkandan a61f4b287b
Deprecate support for python versions < 3.6
Closes #267
2021-05-09 04:32:23 +05:30
pukkandan 486fb17975
Remove `-l`, `-t`, `-A` completely and disable `--auto-number`, `--title`, `--literal`, `--id` 2021-05-09 04:22:29 +05:30
pukkandan e8e738406a
Add experimental option `--check-formats` to test the URLs before format selection 2021-05-06 20:50:44 +05:30
pukkandan e625be0d10
Improve output template internal formatting
* Allow slicing lists/strings using `field.start🔚step`
* A field can also be used as offset like `field1+num+field2`
* A default value can be given using `field|default`
* Capture all format strings and set it to `None` if invalid. This prevents invalid fields from causing errors
2021-05-06 20:28:58 +05:30
pukkandan 0cf0571560
Release 2021.04.22 2021-04-22 16:58:28 +05:30
pukkandan e58c22a0f6
[documentation] Fix typos 2021-04-22 16:54:44 +05:30
pukkandan f4536226c1
[documentation] Clarify which deprecated options still work 2021-04-22 04:19:33 +05:30
pukkandan a439a3a45c
Improve output template (see desc)
* Objects can be traversed like `%(field.key1.key2)s`
* A number can be added to the field as `%(field+n)s`
* Deprecates `--autonumber-start`
2021-04-22 04:19:33 +05:30
pukkandan 26e2805c3f
Add option `--skip-playlist-after-errors`
Allows to skip the rest of a playlist after a given number of errors are encountered
2021-04-22 02:16:31 +05:30
pukkandan c32b0aab8a
Improve --sub-langs (see desc)
* Treat `--sub-langs` entries as regex
* `all` can be used to refer to all the subtitles
* the language code can be prefixed with `-` to exclude it
* Deprecates `--all-subs`
Closes #253
2021-04-20 02:58:03 +05:30
pukkandan a7191c6f57
Fix some linter and typos 2021-04-16 05:31:47 +05:30
pukkandan a0f30f194a
Release 2021.04.11 2021-04-12 03:20:07 +05:30
pukkandan b31fdeedfd
[documentation] Improvements 2021-04-12 02:36:06 +05:30
pukkandan 8fa43c73d8
Add option `--convert-thumbnails`
Closes: https://github.com/yt-dlp/yt-dlp/issues/99 https://github.com/yt-dlp/yt-dlp/issues/102
2021-04-12 02:32:29 +05:30
pukkandan 9de3ea3126
Pass any field to `--exec` using similar syntax to output template
Related: https://github.com/ytdl-org/youtube-dl/issues/28642
2021-04-11 06:06:12 +05:30
pukkandan d9aa233295
Deprecate more options
* `--all-formats` = `-f all`
* `--include-ads` is not implemented
2021-04-10 20:58:36 +05:30
pukkandan 52a8a1e1b9
Option to choose different downloader for different protocols
* Renamed `--external-downloader-args` to `--downloader-args`
* Added `native` as an option for the downloader
* Use similar syntax to `--downloader-args` etc. Eg: `--downloader dash:native --downloader aria2c`
* Deprecated `--hls-prefer-native` and `--hls-prefer-ffmpeg` since the same can now be done with `--downloader "m3u8:native"` and `m3u8:ffmpeg` respectively
* Split `frag_urls` protocol into `m3u8_frag_urls` and `dash_frag_urls`
* Standardize shortening of protocol names with `downloader.shorten_protocol_name`
2021-04-10 20:57:52 +05:30
pukkandan d818eb7473
Improve argument parsing for `-P`, `-o`, `-S`
* `-P "subtitle,thumbnail:PATH"` is now possible. Similarly for `-o`
* `-S "fps,br" -S "res,codec"` is now interpreted as `-S res,codec,fps,br`. Previously, `-S fps,br` was ignored in this case.
2021-04-10 20:57:27 +05:30
pukkandan f8d4ad9ab0
Format selector `mergeall` to download and merge all formats 2021-04-10 20:57:27 +05:30
pukkandan 02aabd45d0
Release 2021.04.03 2021-04-04 03:55:41 +05:30
pukkandan 73cd218f5a
[documentation] Improve `--parse-metadata` documentation 2021-04-03 14:07:29 +05:30
pukkandan eff635394a
Ability to select nth best format
Eg: -f `bv*.2`

* Also cleaned up the related format selection code
2021-04-02 22:16:52 +05:30
pukkandan b050d210df
Fix some typos and linter 2021-04-01 14:16:10 +05:30
pukkandan a3affbe6a0
Release 2021.03.24 2021-03-25 04:18:37 +05:30
pukkandan 143db31d48
Parse metadata from multiple fields
Closes #196
2021-03-25 03:32:15 +05:30
pukkandan a7f347d9c9
Release 2021.03.21 2021-03-22 02:58:41 +05:30
Matthew c224251aad
[youtube] Show if video is `private`, `unlisted` etc in new field `availability` (#188)
Closes: #185, https://github.com/ytdl-org/youtube-dl/issues/25631

Authored by: colethedj, pukkandan
2021-03-22 02:58:41 +05:30
pukkandan dd18a58cb1 [documentation] Add `SplitChapters` to `--ppa` 2021-03-20 09:31:53 +05:30
pukkandan a515a78dd3
fix some typos and linter 2021-03-18 22:19:31 +05:30
pukkandan e167860ce7
[documentation] Add deprecated options and aliases in readme 2021-03-18 22:07:50 +05:30
pukkandan 75d43ca080
Option to keep private keys in the infojson
Options: --clean-infojson, --no-clean-infojson

Related: https://github.com/yt-dlp/yt-dlp/issues/42#issuecomment-800778391
2021-03-18 21:00:45 +05:30
pukkandan 597c18665e
Release 2021.03.15 2021-03-15 05:54:39 +05:30
pukkandan 7275535116
Split video by chapters (#158)
* New options `--split-chapters` and `--no-split-chapters`
* The output/path of the split files can be given using the key `chapter`
* Additional keys `section_title`, `section_number`, `section_start`, `section_end` are available in the output template
* Alias `--split-tracks` for parity with animelover/youtube-dl
* `--sponskrub-cut` and `--split-chapter` cannot work together

Closes:
https://github.com/blackjack4494/yt-dlc/issues/277
https://github.com/ytdl-org/youtube-dl/issues/28438
https://github.com/ytdl-org/youtube-dl/issues/12907
https://github.com/ytdl-org/youtube-dl/issues/6480
https://github.com/ytdl-org/youtube-dl/pull/25005

Rewritten from the implementation by: femaref and Wattux
https://github.com/Wattux/youtube-dl/tree/split-at-timestamps
https://github.com/ytdl-org/youtube-dl/pull/25005
https://github.com/femaref/youtube-dl/tree/split-track
2021-03-15 04:32:13 +05:30
shirt 4cf1e5d2f9
Native concurrent downloading of fragments (#166)
* Option `--concurrent-fragments` (`-N`) to set the number of threads

Related: #165

Known issues:
* When receiving Ctrl+C, the process will exit only after finishing the currently downloading fragments
* The download progress shows the speed of only one thread

Authored by shirt-dev
2021-03-13 10:16:58 +05:30
Ashish 5ba4a0b69c
[Documentation] Inclusion of two-line install script for Unix (#155)
Closes #83
Authored-by: Ashish <ashish@pop-os.localdomain>

ci skip all
2021-03-07 15:29:01 +05:30
pukkandan 5f7514957f
Release 2021.03.03 2021-03-03 16:27:55 +05:30
pukkandan d6e51845b7
Reduce default of `--extractor-retries` to 3
so that even those not using sleep won't get 429'd on youtube
2021-03-03 03:04:08 +05:30
pukkandan 5ef7d9bdd8
Release 2021.03.01 2021-03-01 05:39:50 +05:30
pukkandan f0884c8b3f Cleanup some code (see desc)
* `--get-comments` doesn't imply `--write-info-json` if `-J`, `-j` or `--print-json` are used
* Don't pass `config_location` to `YoutubeDL` (it is unused)
* [bilibiliaudio] Recognize the file as audio-only
* Update gitignore
* Fix typos
2021-02-28 20:56:32 +05:30
pukkandan 277d6ff5f2
Extract comments only when needed #95 (Closes #94) 2021-02-28 20:26:08 +05:30
pukkandan 1cf376f55a Add option `--sleep-requests` to sleep b/w requests (Closes #106)
* Also fix documentation of `sleep_interval_subtitles`

Related issues:
https://github.com/blackjack4494/yt-dlc/issues/158
https://github.com/blackjack4494/youtube-dlc/issues/195
https://github.com/ytdl-org/youtube-dl/pull/28270
https://github.com/ytdl-org/youtube-dl/pull/28144
https://github.com/ytdl-org/youtube-dl/issues/27767
https://github.com/ytdl-org/youtube-dl/issues/23638
https://github.com/ytdl-org/youtube-dl/issues/26287
https://github.com/ytdl-org/youtube-dl/issues/26319
2021-02-27 18:14:42 +05:30
pukkandan 7f7de7f94d Allow specifying path in `--external-downloader` 2021-02-27 16:52:27 +05:30
pukkandan 9bd2020476 [hls] Enable `--hls-use-mpegts` by default when downloading live-streams
* Also added option `--no-hls-use-mpegts` to disable this

Related: #96
2021-02-26 21:52:16 +05:30