Commit Graph
100 Commits
Author SHA1 Message Date
tcely e5f76efebf Do not unset Media.media_file
This could be a temporary condition, and keeping the old path in the database is not harmful for the software.
2025-02-14 18:53:03 -05:00
tcely afcefc04c1 Do not change the Media instance 2025-02-14 18:48:32 -05:00
tcely 986fda59ce Do not unset Media.downloaded when the file is not found 2025-02-14 18:44:15 -05:00
tcely 806dde6cac Do not allow filtering to turn off Media.skip 2025-02-14 15:01:55 -05:00
tcely ab0cc1c5ee Don't turn Media.skip off when starting 2025-02-14 14:50:40 -05:00
tcely 7a39fcf21e Log the SQL being used 2025-02-13 18:51:46 -05:00
tcely 5534bb5cf5 Find only downloading media with the key 2025-02-13 18:45:09 -05:00
tcely 165fb8607f Display Media.download_date after check mark 2025-02-13 18:03:34 -05:00
tcely 18ba5c4424 Show publication date and the not truncated title 2025-02-13 06:10:49 -05:00
tcely 69095f9f92 Use a raw string
SyntaxWarning: invalid escape sequence '\/'
2025-02-12 00:43:44 -05:00
tcely c34700839b We can filter before metadata
After #704, the `duration`, `published`, and `title` are all available before `metadata` has been retrieved.
2025-02-11 20:53:20 -05:00
tcely a7abb6e907 Merge branch 'main' into patch-10 2025-02-11 15:24:22 -05:00
tcely 57e52f4848 Remove the generated fields variant 2025-02-11 14:56:27 -05:00
tcely 749fb1308e Control writethumbnail with embed_thumbnail 2025-02-11 04:29:53 -05:00
tcely 00e89623be Sort the excluded set 2025-02-11 01:56:07 -05:00
tcely 09fab821e9 Deduplicated fields 2025-02-11 01:34:28 -05:00
tcely 0850470867 Rename the internal function
After removing the assert, the old name was a bit confusing.
2025-02-10 22:57:09 -05:00
tcely f963c55610 Limit the title string to fit in the database column 2025-02-10 08:52:09 -05:00
tcely 488294475a Limit the metadata_title string to fit in the title column 2025-02-10 08:48:16 -05:00
tcely b8f8d9d7fa Use Media.get_metadata_field 2025-02-10 08:27:10 -05:00
tcely b6334ce41c Add timestamp to mappings
Return `field` instead of '' so that a missing mapping returns itself.
2025-02-10 08:18:22 -05:00
tcely d7222e8fbb Be consistent with get_media_metadata_task 2025-02-10 07:23:50 -05:00
tcely 92130f3604 Do not schedule additional download_media tasks 2025-02-10 06:19:25 -05:00
tcely 33ad4179b8 Clean up previously prepended task_status 2025-02-10 05:27:45 -05:00
tcely b16fb062aa Avoid ImportError 2025-02-10 04:50:08 -05:00
tcely 332f34c78e Avoid ImportError 2025-02-10 04:46:35 -05:00
tcely 55637c2caf Add status text to the download task 2025-02-10 04:34:58 -05:00
tcely 83dc375810 Save duration, timestamp, and title to Media instances 2025-02-09 19:32:13 -05:00
tcely 6390f5a1c3 Try to include timestamp 2025-02-09 16:15:48 -05:00
tcely 365ad555db Skip downloaded media that was deleted
Moved the save of media to the end of the function.
2025-02-09 06:21:39 -05:00
tcely 913514326a Remove unused filter_media 2025-02-09 05:57:29 -05:00
tcely cae285cd9f Allow exec_cmd dictionary to be configured in settings
This is a dictionary with keys of `WHEN` and values are a `list` of commands for the `ExecPP` to run.
2025-02-09 04:51:17 -05:00
tcely 6247a8b062 Account for language code in subtitle files 2025-02-09 02:33:32 -05:00
tcely 4dbb0c5196 Remove subtitles also
Fixes #416
2025-02-09 02:21:16 -05:00
tcely e58fae1f96 Skip over items that are not dictionaries 2025-02-08 20:17:53 -05:00
tcely 208a540bc9 Add and use list_of_dictionaries function 2025-02-08 19:59:00 -05:00
tcely 2fd5e70486 Use version sorting 2025-02-08 17:22:54 -05:00
tcely 1d51c6182b COPY doesn't do any globbing
Instead, set up and use a 'python3' symbolic link.
2025-02-08 17:04:33 -05:00
tcely 2205f08124 Remove the assert for lang_codes
The test data doesn't conform to this expectation.
2025-02-08 16:11:45 -05:00
tcely 8bff3b6c24 More stringent checking of types 2025-02-08 16:02:38 -05:00
tcely cfec876796 Adjust for requested_subtitles layout 2025-02-08 14:14:56 -05:00
tcely e2680c4b24 Split the COPY line 2025-02-08 13:45:21 -05:00
tcely a9078c3521 Update modify_chapters.py 2025-02-08 00:14:48 -05:00
tcely bf7b57e666 Update modify_chapters.py 2025-02-07 22:27:26 -05:00
tcely e889c78a48 Patch yt_dlp postprocessor modify_chapters.py 2025-02-07 21:20:31 -05:00
tcely f78f33f8fa Add modify_chapters.py
From:
https://github.com/tcely/yt-dlp/raw/refs/heads/modify-chapters-codecs/yt_dlp/postprocessor/modify_chapters.py
2025-02-07 21:15:13 -05:00
tcely 88a200a338 Update and rename modify_chapters.py to modify_chapters.py 2025-02-07 21:13:22 -05:00
tcely 23e38312a7 Create modify_chapters.py 2025-02-07 21:10:48 -05:00
tcely 3039e3105c More VP9 tweaks 2025-02-07 19:12:17 -05:00
tcely d1eecf19c2 Use libopus and speed up VP9 encoding 2025-02-07 18:56:09 -05:00
tcely 64302e8191 Change the minimum next step to 1 2025-02-07 17:15:45 -05:00
tcely d7d1f52ff3 Completed fragments or bytes can be zero 2025-02-07 15:59:44 -05:00
tcely 23abc545d2 Replace '100%' with the calculated percent 2025-02-07 15:34:24 -05:00
tcely 90b892fd85 Prefer fragment count calculation
When the first fragment is downloaded, the percent is calculated as `100`, because the bytes and total are from the fragment, which prevents additional logging.
2025-02-07 15:21:23 -05:00
tcely 7f64226369 Add more keys to filter
- `heatmap`: is a huge list of tiny "chapters" used to display popularity of sections of the video
- `requested_subtitles`: also has a URL that expires
2025-02-07 14:58:43 -05:00
tcely ee9849a1aa Calculate percent from number of fragments downloaded 2025-02-07 13:58:22 -05:00
tcely 074230b737 Switch from key to filename
When downloading subtitles, key isn't available.
2025-02-07 13:04:23 -05:00
tcely 034110e6fe Log str output 2025-02-07 11:42:19 -05:00
tcely f5c832e5ab fixup: use repr to identify the class 2025-02-07 07:35:51 -05:00
tcely d6ed3388e2 Removing existing (unlocked) tasks is safe to use 2025-02-07 06:19:13 -05:00
tcely 71d84e1d74 Better output 2025-02-07 06:11:09 -05:00
tcely 6177ff4c59 Move get into BaseStatus 2025-02-07 05:42:34 -05:00
tcely afa5ec8684 fixup: it is status not self needed here 2025-02-07 04:45:11 -05:00
tcely 09812019b5 Use next_progress to avoid logging in spurts 2025-02-07 04:28:52 -05:00
tcely 3c4849551b Define then update *_hook dictionaries 2025-02-07 03:50:48 -05:00
tcely 75df4a57e3 Move common methods to a BaseStatus class 2025-02-07 03:44:12 -05:00
tcely 08842752d4 We can't use self without an instance 2025-02-07 03:06:21 -05:00
tcely 3b14e03842 Add & use functions from status classes 2025-02-07 01:50:23 -05:00
tcely 194e84b074 Differentiate the unknown event logs 2025-02-06 22:36:56 -05:00
tcely 3ec1d2dc29 Initialization is done by the class now 2025-02-06 22:26:23 -05:00
tcely c24178f7d6 Support multiple independent statuses 2025-02-06 22:24:43 -05:00
tcely 36a9902d26 Reset hook.download_progress before downloading 2025-02-06 20:31:32 -05:00
tcely 6d71c69878 Reset hook.download_progress so that it isn't above 100% 2025-02-06 20:02:14 -05:00
tcely dfc63a2b94 Reworked download progress hook
Be more resilient about missing keys.
Log the downloading state the first time through.
2025-02-06 18:06:15 -05:00
tcely 5a477eb97e Stop when the paths match 2025-02-05 03:56:48 -05:00
tcely 4ec407cf6f Bump ffmpeg 2025-02-04 13:39:46 -05:00
tcely 459cb4b891 Remove the td function
It is no longer being used for a default argument value.
2025-02-04 11:21:24 -05:00
tcely 0b233be517 Use a single datetime for now 2025-02-04 11:16:17 -05:00
tcely 3b58d86cd3 Remove code that didn't work
This method of changing `verbose_name` didn't result in any visible changes.
2025-02-04 11:05:18 -05:00
tcely 5cf7f1574a We don't need the extra run 2025-02-03 21:22:19 -05:00
tcely aba3b1f16d Display the datetime without partial seconds 2025-02-03 18:32:41 -05:00
tcely df5746dac4 Don't log the handled exception 2025-02-03 11:52:25 -05:00
tcely a8e7299dbe Log units and number within the try block 2025-02-03 11:44:02 -05:00
tcely bf0dcc631a Fixes from testing for wait_for_media_premiere 2025-02-03 11:33:56 -05:00
tcely b50477e536 Add minutes as a unit also 2025-02-03 10:22:38 -05:00
tcely 724e632814 Remove debug logging and cache 2025-02-03 09:22:29 -05:00
tcely 4a5660be8d Preserve the ordering
set made no guarantees about ordering
2025-02-03 09:16:26 -05:00
tcely bdfd645097 Add duplicated categories to the test data 2025-02-03 09:11:35 -05:00
tcely 79783b11db Test duplicated category is not saved 2025-02-03 08:53:34 -05:00
tcely d1f078cf0c Do not store duplicate categories 2025-02-03 08:12:09 -05:00
tcely c0f52ae12e We only need one waiting task per video 2025-02-03 00:09:59 -05:00
tcely b05d3854a1 Use repeat_until in the call 2025-02-02 23:58:09 -05:00
tcely bd67b9bb20 Apply the class to the category labels 2025-02-02 23:03:13 -05:00
tcely 4e12c2e7fb Revert a06bd29f88 2025-02-02 23:01:57 -05:00
tcely 3b001d1837 Turn off the text-transform with a class 2025-02-02 22:58:49 -05:00
tcely a028b4ea26 Let the wait task go ahead first 2025-02-02 14:09:53 -05:00
tcely 89573e93f5 Add verbose_name for better display
Also, some code readability changes.
2025-02-02 13:49:25 -05:00
tcely deeb2f61a9 background has less documentation than I wanted 2025-02-02 13:00:30 -05:00
tcely 9e46b9f6d5 A first attempt at waiting for future videos 2025-02-02 12:29:36 -05:00
tcely 480d5dd891 Add wait_for_media_premiere task 2025-02-02 11:38:32 -05:00