Commit graph

89 commits

Author SHA1 Message Date
Jesse Bannon
6d84e52467
[FEATURE] Add multiple preset inheritance (#204) 2022-09-01 10:43:07 -07:00
Jesse Bannon
5782445366
[FEATURE] Add ability for downloaders to add new override variables. Add source_title, source_uploader, and source_description for YouTube channels and playlists (#203) 2022-09-01 00:25:01 -07:00
Jesse Bannon
ca0ac787b0
[FEATURE] Ability to write .info.json files (#201) 2022-08-29 22:50:42 -07:00
Jesse Bannon
73be77c500
[FEATURE] date_range plugin, supports Override variables (#199) 2022-08-28 11:09:11 -07:00
Jesse Bannon
9ea1be4c5f
[FEATURE] NFO/XML attribute support (#198) 2022-08-28 00:56:51 -07:00
Jesse Bannon
d79e94e7e6
[BACKEND] Use native xml library, remove dicttoxml (#196) 2022-08-27 15:01:14 -07:00
Jesse Bannon
0642ddf3b7
[BACKEND] Use Ubuntu 22.04 for CI, update all expected download hashes (#197) 2022-08-27 00:56:01 -07:00
Jesse Bannon
61c5a22933
[REFACTOR] Move chapter timestamps support into chapter plugin, remove from youtube.video (#193)
Introduces breaking changes to youtube.video.chapter_timestamps. Please use chapters.embed_chapter_timestamps instead to embed timestamps into a video
2022-08-26 23:08:53 -07:00
Jesse Bannon
553862fdad
[FEATURE] Add day_of_year variables (#195) 2022-08-24 09:59:34 -07:00
Jesse Bannon
9b224b7fc6
[FEATURE] Add reversed date variables (#192) 2022-08-23 22:32:41 -07:00
Jesse Bannon
790c65859a
[FEATURE] Add split_by_chapters plugin (#184) 2022-08-18 23:24:03 -07:00
Jesse Bannon
c443d2e295
[BUGFIX] Fix truncated year source variable (#185) 2022-08-18 17:57:27 -07:00
Jesse Bannon
2a666ef70b
[FEATURE] Chapters plugin with SponsorBlock support (#178) 2022-08-15 17:01:03 -07:00
Jesse Bannon
871c051aa8
[FEATURE] Audio extract plugin (#177) 2022-08-14 10:10:10 -07:00
Jesse Bannon
064dca40b2
[BUGFIX] Subtitles for channel + playlist downloads (#176)
* subtitle fix for playlists

* download channel vids as singles

* no regen tests
2022-08-13 15:47:26 -07:00
Jesse Bannon
9a7a34f3d0
[FEATURE] Video tags plugin to embed metadata into video files (#173) 2022-08-13 09:53:55 -07:00
Jesse Bannon
1f09398ad5
[FEATURE] Subtitles support via Subtitles plugin (#169) 2022-08-12 09:58:08 -07:00
Jesse Bannon
bcf45f7f7e
[REFACTOR] Use JSON files instead of hard-coded classes for expected downloads (#165)
* Expected download summaries WIP

* jesse/fix-tests

* working

* tests passing

* remove fixture usage

* fix ignore md5 logic
2022-08-10 12:16:38 -07:00
Jesse Bannon
3e60f7d1da
[BACKEND] Do not write download archive file if no files changed (#161)
* [BACKEND] Do not write download archive file if no files changed

* ensure empty log for playlists

* test dl args

* test main completely
2022-08-07 15:02:02 -07:00
Jesse Bannon
034855fbc4
[FEATURE+BUGFIX] Add kodi_safe arg for NFO plugins, support YT shorts (#157) 2022-08-05 16:53:36 -07:00
Jesse Bannon
b28ef2365b
[BACKEND] Allow more nesting for source + override variables (#150) 2022-08-04 14:42:20 -07:00
Jesse Bannon
e3d6245aeb
[BUG] Prevent ytdl-sub args being specified as dl args (#139)
* [BUG] Prevent ytdl-sub args being specified as dl args

* refactor fail
2022-08-01 15:40:52 -07:00
Jesse Bannon
2fde8f69c3
[BUG] Fix log-level not respected by loggers (#138)
* [BUG] Fix log-level not respected by loggers

* _main

* fix mocking
2022-08-01 14:45:01 -07:00
Jesse Bannon
9fd97beca3
[BACKEND|BUG] Retry downloads with missing files (#137)
* [BACKEND|BUG] Retry downloads with missing files

* fix if statement, rename channel test file
2022-08-01 12:39:23 -07:00
Jesse Bannon
258b519f85
[BUG] Fix merge_playlist ordering (#136) 2022-07-31 23:23:13 -07:00
Jesse Bannon
09bc12c815
[FEATURE] Option to add chapters to YouTube videos via timestamps file (#130) 2022-07-30 15:52:20 -07:00
Jesse Bannon
232b1ac75a
[BACKEND] Improve info logger messages (#129) 2022-07-29 00:03:02 -07:00
Maria Mozgunova
287ac821dc
[FEATURE] List support for ytdl-sub dl (#125)
* List support for ytdl-sub dl (#103)

* Add test and amend docstrings
2022-07-27 09:52:25 -07:00
Jesse Bannon
962b26d1ec
[BACKEND] Allow list validators to support length-1 lists without defining a yaml list (#126) 2022-07-26 09:10:51 -07:00
Jesse Bannon
d292ab0510
[BACKEND] Remove individual_download parameter from youtube channel + playlist (#119) 2022-07-22 08:46:05 -07:00
Jesse Bannon
72442ab846
[BACKEND] Download and process Soundcloud tracks individually (#117) 2022-07-22 00:09:08 -07:00
Jesse Bannon
079994c003
[BUGFIX] Remove description from Soundcloud source variables (#114)
* [BUGFIX] Remove description from Soundcloud source variable

* update unit tests
2022-07-20 22:41:42 -07:00
Philipp Rintz
12a857bf9a
[BUGFIX] Fix youtube url validator for channels without 'c', 'channel' or 'user' (#109)
* Fix youtube url validator for channels without 'c', 'channel' or 'user'

* Fix linter errors
2022-07-18 11:48:23 -07:00
Jesse Bannon
605de74697
[FEATURE] download_individually for youtube playlists (#102) 2022-07-17 22:02:50 -07:00
Jesse Bannon
8e35c1674b
[FEATURE] download_individually for Youtube channel (#101) 2022-07-17 18:17:00 -07:00
Jesse Bannon
53adbbcb22
[FEATURE] Regex capture and filtering on source variables plugin (#100)
* actually working

* changed plugin format. Need unit tests, documentation, update e2e to filter

* refactor plugin name, matching now working

* description work in progress, need more intricate testing

* tests looks good, regenerate output

* e2e tested, need more failure tests, no dupe variable names, add docs

* unit tests passing again

* more fail tests

* updated with name, default, better docs

* sanitized vars created
2022-07-16 23:39:46 -07:00
Jesse Bannon
119a0c212f
[BACKEND] Add regex validators (#97)
* [BACKEND] Add regex validators
2022-07-10 17:47:55 -07:00
jbannon
f318cf6fcb [HOTFIX] dry-run merge_playlist test 2022-07-08 19:22:20 +00:00
Jesse Bannon
a0b46c0982
Add --dry-run summary (#92)
* tests updated with new class

* fix nfo tags, no tests only manual inspection

* txt

* dry-run output tested

* readability

* all tests now have files except rolling recent

* better

* almost fixed

* updated txt files w/indents

* files updated, looking good

* rolling recent dry-run test

* Print in main
2022-07-05 22:51:23 -07:00
Maka0
cb31156b42
Added QEMU/buildx to Github Actions to build multiarch containers (#84)
* Updated docker to use buildx Buildkit

* Updated github actions to include QEMU/buildx to build multiarch containers

* Removed packages after build is done

* Updated documentation to set the correct default thumbnail file name

* Parallel jobs (#1)

Implemented parallel docker builds on Github Actions

* Updated default config file in Docker container

* Replaced Pillow with ffmpeg for thumbnail converting (and updated documentation to change the default thumbnail to -thumb.jpg) (#2)

* Swapped Pillow for ffmpeg for thumbnail conversion
* Further changed default thumbname to include "-thumb" (Kodi needs this to pick up the thumbnail image)
* Added ffmpeg bitexact for reproducability

* Removed extra packages needed for Pillow

* Updated ref check (#3)

* Fixed formatting on if statement for deploy job

Co-authored-by: Maka0 <bas@oddens.net>
2022-07-04 01:17:04 -07:00
Jesse Bannon
9df40497e2
Add --dry-run argument logic (#82)
* dry-run huge refactor

* small fixes, all tests passing

* file handler, transaction log, metadata

* dry-run actually dry running

* working tests, still have more

* Everything passing besides channel

* fix youtube channel thumbnail issue, need to fix fixtures on test

* lint 10, channel tests passing. Need dry-run for split and merge video

* all tests passing, lint 10, should test dry-run arg
2022-07-02 11:24:46 -07:00
Jesse Bannon
e5b925fb57
Fix error where download archive does not exist from no downloads (#83) 2022-06-30 09:14:14 -07:00
Jesse Bannon
4447f456d5
Validate all preset StringFormatValidators on init (#79)
* fast fail

* update error msg in test
2022-06-28 09:34:30 -07:00
Jesse Bannon
cb6dc8e034
Add youtube.download_strategy: "merge_playlist" (#77)
* begin

* chapters class, trying to add chapter splitting and general ffmpeg metadata creation

* working split video

* so very close

* test passing, is reproducible

* lint fixed

* fix docs

* track no longer used in example

* if, then del

* multiple values

* github hash
2022-06-26 15:18:07 -07:00
Jesse Bannon
1620c3a42d
youtube.download_strategy split_video (#76)
* youtube.download_strategy split_video

* almost working, need to deal with track_title and other overwrites

* working test

* ci ffmpeg

* sudo -f

* fix code block
2022-06-18 23:12:10 -07:00
Jesse Bannon
ee6706334f
ytdl_options defaults for each download strategy (#72)
* `ytdl_options` defaults for each download strategy

* fix docker, fix defaults getting added, add debugger test

* test playlist as well

* fix with hack

* fix full channel test

* existing
2022-06-14 00:03:01 -07:00
Jesse Bannon
3d7595cda9
Configurable log levels (#71) 2022-06-08 23:01:31 -07:00
Jesse Bannon
a79fcaa25b
Use URLs instead of IDs for sources (#70)
* youtube video url

* WIP, channel /user/ and /c/ should be valid

* unit tests passing

* soundcloud artist url

* soundcloud username

* break configs with name change

* Update all yamls with urls

* update all docs

* more negative url tests
2022-06-05 16:19:08 -07:00
Jesse Bannon
e111ae53f5
Add aliases for ytdl-sub dl (#68)
* Add aliases for `ytdl-sub dl`

* error tests
2022-06-04 16:58:50 -07:00
Jesse Bannon
4994e3685e
mkv bugfix from ffmpeg (#57)
* mkv bug from ffmpeg

* always have working directory with entry
2022-05-30 18:45:00 -07:00