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