Commit Graph

336 Commits

Author SHA1 Message Date
Arsenii es3n1n
8974a997fc
Track downloading refactoring, reducing amount of I/O operations, #493 (#494)
* feat: download to stdout if name is `-` #493

still a wip though, somehow i need to add metadata to these streams oh well...

* refactor: rework reencoding, metadata adding

* chore: ignore .idea

* chore: add dev requirements

* test: suppress encoding warnings

* feat: add reworked ffmpeg progress bar

* perf: use memoryview for streaming responses

* fix: fix large tracks downloading

* refactor: migrate threads to asyncio (wip)

* Revert "refactor: migrate threads to asyncio (wip)"

This reverts commit d6e247ee2f6f8d5c57fac21de20a81dde3b2e395.

* refactor: get rid of the queue

* refactor: inline stderr thread, adjust buf sizes

* perf: don't reencode original wavs/hls streams

* refactor: mark threads as daemonic

* refactor: remove unused imports

* fix: reencode aacs with adts

* refactor(metadata): output a bit more detailed error message

* refactor: properly reencode m4a

* Performance improvements

* Bump version

* Update README

---------

Co-authored-by: 7x11x13 <x7x11x13@gmail.com>
2024-07-08 12:47:41 -04:00
7x11x13
69f7741c43 Progress bar for hls downloads 2024-06-27 13:28:29 -04:00
7x11x13
7438d0b600 Use maintained dependencies 2024-06-26 12:28:33 -04:00
Arsenii es3n1n
c96b308d25
Migrate from cgi.parse_header to email.message.Message due to PEP 594 (#492)
* refactor: embed cgi.parse_header

* refactor: use email.message.Message

* Remove unused import

---------

Co-authored-by: 7x11x13 <x7x11x13@gmail.com>
2024-06-26 12:10:23 -04:00
7x11x13
2430215772 Re-enable original download tests 2024-06-26 11:54:32 -04:00
7x11x13
d88897df06 Skip broken tests 2024-06-23 21:26:49 -04:00
7x11x13
8ea3721b14 Test user streams 2024-06-23 21:03:17 -04:00
7x11x13
f5801c36fc Test download archive and sync 2024-06-23 20:42:06 -04:00
7x11x13
7f22f4b4be Fix sync 2024-06-23 20:40:41 -04:00
7x11x13
eaf1793741 Fix get_file_lock 2024-06-23 20:07:09 -04:00
7x11x13
a2c4b509e2 Use filelocks on unix systems 2024-06-23 19:57:06 -04:00
7x11x13
a077939be7 Fix missing transcodings error 2024-06-23 19:31:33 -04:00
7x11x13
d74fcde85d Fix 2024-06-23 19:07:03 -04:00
7x11x13
5f4ad5582d Don't use filelock for unix systems 2024-06-23 19:04:13 -04:00
7x11x13
196d065949 Set albumartist metadata for playlists 2024-06-23 18:48:21 -04:00
7x11x13
2641a370ae Add tests 2024-06-23 18:47:40 -04:00
7x11x13
d15487011f Support for downloading .opus streams with --opus flag 2024-06-23 14:44:35 -04:00
7x11x13
fad6bdf557 Downloading fix 2024-06-21 08:54:01 -04:00
7x11x13
5cff160168 Permissions fix 2024-06-20 16:23:07 -04:00
7x11x13
7134f4a2d2 Update README 2024-06-20 15:30:36 -04:00
7x11x13
6b251323df Use file locks to allow multiple scdl instances to run at once 2024-06-20 15:29:00 -04:00
7x11x13
832ac2188e Use tempdir for downloading 2024-06-20 14:43:56 -04:00
7x11x13
b9e2e6cc38 v2.7.13 2024-06-20 14:26:37 -04:00
7x11x13
78053f9560 Fix filename sanitization 2024-06-20 14:22:46 -04:00
7x11x13
fcdabed050 Fix for wav files on non-Windows platforms 2024-06-20 14:07:58 -04:00
7x11x13
42fbc5c23e Remove default client_id 2024-06-14 12:30:40 -04:00
7x11x13
e8a4161032 v2.7.11 2024-06-13 11:00:39 -04:00
adi
361ec6b2cc
client og dl (#485) 2024-06-13 10:59:39 -04:00
7x11x13
8a08a43ab0 Don't download original file if auth token is not present 2024-06-07 22:24:53 -04:00
7x11x13
f9e4691db8 v2.7.9 2024-05-22 21:10:21 -04:00
Zachariah Carmichael
bd45454af4
Fix regex in utils.py (#482)
Convert regex string into a raw string so that `\s` is interpreted correctly. Also removes the warning `SyntaxWarning: invalid escape sequence '\s'`
2024-05-22 21:09:11 -04:00
7x11x13
70b5be8554 v2.7.8 2024-05-20 13:30:33 -04:00
adi
a0dfc2b88e
sanitize_filename fix (#481)
* handle empty string playlists

* fix sanitization

* Use underscore padding to preserve dots in filename as much as possible

---------

Co-authored-by: 7x11x13 <x7x11x13@gmail.com>
2024-05-20 13:28:44 -04:00
7x11x13
954265bb54 v2.7.7 2024-04-30 13:04:23 -04:00
7x11x13
e1d0a25069 Revert "Sync Update: Simplified Removal Process (#438)"
This reverts commit a95b8d61ae.
2024-04-30 13:03:57 -04:00
hunkyburrito
a95b8d61ae
Sync Update: Simplified Removal Process (#438)
* Simplified Removal Process

* v2.7.4

* - Fix removing lossless tracks
- Print removed files

* Fix typo

---------

Co-authored-by: HunkyBurrito3 <pianoman01.ew@gmail.com>
Co-authored-by: 7x11x13 <32209764+7x11x13@users.noreply.github.com>
2024-04-27 22:06:51 -04:00
7x11x13
e8a0f92166 Update requirements 2024-03-20 11:04:06 -04:00
7x11x13
a0cffd7a37 Fix client_id validation 2024-03-19 18:05:45 -04:00
7x11x13
4276511e39 v2.7.3 2022-09-04 15:08:06 -04:00
hunkyburrito
3d34221dd2
Removed download count check (#432) 2022-09-04 14:00:45 -04:00
7x11x13
51042eefa9 Update requirements 2022-07-12 10:17:43 -04:00
7x11x13
b7c0c448e7 v2.7.1 2022-05-05 07:45:30 -04:00
hunkyburrito
2ee3b26ae4
Prefer filename* header (#416)
* Prefer filename* header

* Fix typo
2022-05-05 07:40:02 -04:00
Littletsu
3758fc194f
Support wav file tagging (#417) 2022-05-05 07:34:23 -04:00
7x11x13
c06f642bc1 Update README 2022-04-06 01:28:10 -04:00
7x11x13
ca0e48a334 v2.7.0 2022-04-06 01:26:46 -04:00
hunkyburrito
24988f740d
New sync option (#374) 2022-04-06 01:25:15 -04:00
7x11x13
3ecc7196b3 Fix offset for playlists 2022-02-12 12:45:22 -05:00
7x11x13
4d9bf45bdb Fix downloading hidden tracks from a hidden playlist 2022-01-20 04:36:58 -05:00
7x11x13
593eb1613f Implement offset 2022-01-18 04:46:53 -05:00