Commit Graph

190 Commits

Author SHA1 Message Date
Matthew 8e40b9d1ec
Improve plugin architecture (#5553)
to make plugins easier to develop and use:
* Plugins are now loaded as namespace packages.
* Plugins can be loaded in any distribution of yt-dlp (binary, pip, source, etc.).
* Plugin packages can be installed and managed via pip, or dropped into any of the documented locations.
* Users do not need to edit any code files to install plugins.
* Backwards-compatible with previous plugin architecture.

As a side-effect, yt-dlp will now search in a few more locations for config files.

Closes https://github.com/yt-dlp/yt-dlp/issues/1389

Authored by: flashdagger, coletdjnz, pukkandan, Grub4K
Co-authored-by: Marcel <flashdagger@googlemail.com>
Co-authored-by: pukkandan <pukkandan.ytdlp@gmail.com>
Co-authored-by: Simon Sawicki <accounts@grub4k.xyz>
2023-01-01 04:29:22 +00:00
pukkandan 69f5fe45b9
[FFmpegVideoConvertor] Add `gif` to `--recode-video` 2022-12-23 01:44:20 +05:30
Robert Geislinger 7aaf4cd2a8
[cleanup] Misc
Closes #5471, Closes #5312

Authored by: pukkandan, Alienmaster
2022-11-11 15:48:29 +05:30
pukkandan 8522226d2f
[ThumbnailsConvertor] Fix filename escaping
Closes #4604
Authored by: pukkandan, dirkf
2022-11-11 15:28:19 +05:30
ClosedPort22 fbb0ee7747
[compat] Fix `shutils.move` in restricted ACL mode on BSD (#5309)
Authored by: ClosedPort22, pukkandan
2022-11-07 20:54:30 +05:30
pukkandan d5d1df8afd
[cleanup Misc
Closes #5162
2022-10-18 23:52:44 +05:30
pukkandan cd5df121f3
[SponsorBlock] Relax duration check for large segments 2022-10-18 23:36:59 +05:30
pukkandan a7ddbc0475
[ModifyChapters] Handle the entire video being marked for removal
Closes #5238
2022-10-18 23:08:24 +05:30
pukkandan 8fab23301c
[SponsorBlock] Obey `--retry-sleep extractor` 2022-10-18 23:08:24 +05:30
pukkandan 1338ae3ba3
[SponsorBlock] Add `type` field 2022-10-18 23:08:23 +05:30
Ajay Ramachandran 63c547d71c
[SponsorBlock] Support `chapter` category (#5260)
Authored by: ajayyy, pukkandan
2022-10-18 22:21:57 +05:30
Noah e02e6d86db
[embedthumbnail] Fix thumbnail name in mp3 (#5163)
Authored by: How-Bout-No
2022-10-07 17:34:27 +05:30
pukkandan da4db748fa
[utils] Add `deprecation_warning`
See https://github.com/yt-dlp/yt-dlp/pull/2173#issuecomment-1097021515
2022-08-30 21:03:07 +05:30
pukkandan 0e0ce898f6
[ThumbnailsConvertor] Fix conversion after fixup_webp
Closes #4565
2022-08-14 20:34:55 +05:30
pukkandan 8420a4d063
[ffmpeg] Smarter detection of ffprobe filename 2022-08-11 07:23:45 +05:30
pukkandan b5e9a641f5
[postprocessor/embedthumbnail] Detect libatomicparsley.so 2022-08-11 07:23:36 +05:30
pukkandan c220d9efc8
[ffmpeg] Disable avconv unless `--prefer-avconv` 2022-08-09 05:15:38 +05:30
pukkandan be5c1ae862
Standardize retry mechanism (#1649)
* [utils] Create `RetryManager`
* Migrate all retries to use the manager
* [extractor] Add wrapper methods for convenience
* Standardize console messages for retries
* Add `--retry-sleep` for extractors
2022-08-02 01:43:18 +05:30
pukkandan 5f2a7f7c4a
[FFmpegThumbnailsConvertor] Fix conversion from GIF
Closes #2988
2022-08-01 07:36:08 +05:30
pukkandan 4f04be6add
Validate `--merge-output-format`
Closes #4489
2022-07-31 02:20:14 +05:30
pukkandan 8dc5930511
[utils, cleanup] Consolidate known media extensions 2022-07-31 02:20:13 +05:30
pukkandan 6a7d3a0a09
[ffmpeg] Set `ffmpeg_location` in a contextvar
Fixes #2191 for the CLI, but not when used through the API
2022-07-31 02:20:12 +05:30
pukkandan 4f547d6d2c
[metadataparser] Don't set `None` when the field didn't match
Fixes: https://github.com/ytdl-org/youtube-dl/issues/31118#issuecomment-1198254512
2022-07-31 02:20:10 +05:30
pukkandan 3bec830a59
Reject entire playlists faster with `--match-filter`
Rejected based on `playlist_id` etc can be checked before any entries are extracted

Related: #4383
2022-07-26 09:33:12 +05:30
pukkandan 4019bf0525
[ModifyChapters] Modify duration in infodict 2022-07-11 01:10:38 +05:30
pukkandan f2df407165
[cleanup] Misc cleanup 2022-07-09 09:07:10 +05:30
crazymoose77756 962ffcf89c
[cleanup] Fix some typos (#4194)
Authored by: crazymoose77756
2022-06-26 17:50:06 -07:00
pukkandan 14f25df2b6
[compat] Remove deprecated functions from core code 2022-06-25 00:14:12 +05:30
pukkandan f67baae17e
[ffmpeg] Write full output to debug on error
Bug in f0c9fb9682
2022-06-23 09:17:34 +05:30
christoph-heinrich e121e3cee7
[cleanup] Minor fixes (#4096)
Authored by: christoph-heinrich
2022-06-17 18:57:22 -07:00
pukkandan f0c9fb9682
[utils] `Popen`: Refactor to use contextmanager
Fixes https://github.com/yt-dlp/yt-dlp/issues/3531#issuecomment-1156223597
2022-06-16 06:23:50 +05:30
pukkandan 56ba69e4c9
[cleanup] Misc fixes
Closes #4027
2022-06-11 05:00:12 +05:30
pukkandan e0ab98541c
[ExtractAudio] Allow conditional conversion
Closes #1715
2022-06-06 21:51:28 +05:30
pukkandan 35faefee5d
[ExtractAudio, cleanup] Refactor 2022-06-06 21:49:57 +05:30
pukkandan 00bbc5f177
[ThumbnailsConvertor] Allow conditional conversion
Closes #3970
2022-06-05 20:51:19 +05:30
pukkandan 1890fc6389
[cleanup] Misc fixes
Cherry-picks from: #3498, #3947
Related: #3949, https://github.com/yt-dlp/yt-dlp/issues/1839#issuecomment-1140313836
Authored by: pukkandan, flashdagger, gamer191
2022-06-03 21:45:35 +05:30
pukkandan 8a82af3511
[cleanup] Misc fixes and cleanup
Closes #3780, Closes #3853, Closes #3850
2022-05-27 04:43:43 +05:30
pukkandan d9473db78a
[ModifyChapters] Fix repeated removal of small segments
Closes #3846
2022-05-23 16:12:33 +05:30
pukkandan 3a85e9cee9
[ffmpeg] Check version lazily
Closes #3830
2022-05-22 19:56:22 +05:30
pukkandan 5792c950bf
[compat] Implement `compat.imghdr`
Python 3.11 deprecates `imghdr` module
2022-05-17 19:46:01 +05:30
pukkandan 0f06bcd759
[cleanup] Minor fixes (See desc)
* [youtube] Fix `--youtube-skip-dash-manifest`
* [build] Use `$()` in `Makefile`. Closes #3684
* Fix bug in 385ffb467b
* Fix bug in 43d7f5a5d0
* [cleanup] Remove unnecessary `utf-8` from `str.encode`/`bytes.decode`
* [utils] LazyList: Expose unnecessarily "protected" attributes
and other minor cleanup
2022-05-09 17:59:26 +05:30
pukkandan 6f7563beb7
[XAttrMetadata] Refactor and document dependencies 2022-05-01 04:58:38 +05:30
pukkandan 43d7f5a5d0
[EmbedThumbnail] Do not obey `-k` 2022-05-01 04:58:26 +05:30
pukkandan 1d485a1a79
[cleanup] Misc fixes
Closes #3565, https://github.com/yt-dlp/yt-dlp/issues/3514#issuecomment-1105944364
2022-04-29 07:39:33 +05:30
pukkandan e13945a2fe
[ffmpeg] Fix features detection 2022-04-27 05:36:06 +05:30
pukkandan ca04e1bf49
[Metadata] Remove filename from attached info-json 2022-04-27 01:19:06 +05:30
pukkandan b0f636beb4
[Sponsorblock] Don't crash when duration is unknown
CLoses #3529
2022-04-23 22:45:42 +05:30
Evan Spensley 7774db5bf9
[EmbedThumbnail] Disable thumbnail conversion for mkv (#3512)
Closes #3209
Authored by: evansp
2022-04-21 14:26:10 -07:00
pukkandan 9b8ee23b99
[dependencies] Create module with all dependency imports 2022-04-21 00:48:52 +05:30
pukkandan 1e9969f4f5
bugfix for a44ca5a470, 19a0394044, 77f9033095
Closes #3472
2022-04-19 02:59:20 +05:30