Commit Graph

357 Commits

Author SHA1 Message Date
7x11x13
9732b538db Format 2024-08-18 11:56:58 -04:00
7x11x13
6dde8e930b Fallback to SoftFileLock if file lock fails 2024-08-18 11:54:21 -04:00
7x11x13
e499979498 v2.12.0 2024-08-14 12:46:10 -04:00
Mark Henry
e06cc9c685
Add -q <search_query> command line argument (#511)
* Add -s <search_term> command line argument

* add final newline

* Format and lint

* Update README

* Update no results test to use random query

---------

Co-authored-by: 7x11x13 <x7x11x13@gmail.com>
2024-08-14 12:45:16 -04:00
7x11x13
091596c282 Fix playlist_info for original downloads 2024-07-30 11:20:44 -04:00
7x11x13
643aab8975 v2.11.3 2024-07-26 15:49:26 -04:00
Jason Butler
43890f9336
Added '--add-description' option (#459)
* Added '--add-description' option

This new option will add the track description to a txt file (using the same filename as the music file).
Some music players will display this text whilst the track is playing - great for tracklists on DJ mixes and podcasts.

* Added subfolder switch

* Revert: Added subfolder switch

Accidently pushed to my branch by mistake - changes reverted

* Fix lint errors

* Add test for description file

* Fix tests for pull requests

---------

Co-authored-by: 7x11x13 <x7x11x13@gmail.com>
2024-07-26 15:48:11 -04:00
7x11x13
413040ecac Fix tracknumber for mp4s 2024-07-21 11:53:09 -04:00
7x11x13
61dc702db7 Use temp directory for automatic cleanup 2024-07-14 13:00:28 -04:00
7x11x13
8990483cdb Write FLACs to tempfiles 2024-07-14 12:41:34 -04:00
7x11x13
e54d57c365 ci: install ffmpeg only if linting succeeds 2024-07-09 14:27:40 -04:00
7x11x13
c09d01cd55 Better CI output 2024-07-09 14:25:22 -04:00
7x11x13
a3c116d0dd Don't pipe progress to stderr if hide_progress is true 2024-07-09 14:19:17 -04:00
7x11x13
9cf3b3a9be Support tagging more formats 2024-07-09 13:55:50 -04:00
7x11x13
51bd01986a More consistent tag mapping 2024-07-09 13:48:28 -04:00
7x11x13
ce0074fd75 Fix for ffmpeg versions < 4.4 2024-07-09 12:40:16 -04:00
7x11x13
c0a23d04ca Only test on 3.7 and 3.12 2024-07-09 11:07:07 -04:00
7x11x13
9fd4814e1f
Typecheck with mypy, lint and format with ruff (#499)
* Lint and format with ruff, check types with mypy

* Fix mypy checks

* Update CI

* Remove shebangs

* Ignore EXE rules

* Fix EOL

* Fix mypy for 3.7

* Fix CI

* Fix CI

* Ensure filelock path exists

* ci: various ci fixes (#500)

---------

Co-authored-by: Arsenii es3n1n <me@es3n.in>
2024-07-09 10:51:23 -04:00
7x11x13
399ea88eab Don't add streamhandler unless main is called 2024-07-08 14:15:03 -04:00
Arsenii es3n1n
ef6de53776
Making things easier for scdl-as-a-lib users (#498)
* refactor: don't touch the global logging config

* test: skip m4a test if there's no go+ sub instead of erroring

* Log to stderr

---------

Co-authored-by: 7x11x13 <x7x11x13@gmail.com>
2024-07-08 14:10:44 -04:00
flyingrub
b688e6a977 Removed old mention of my username 2024-07-08 19:21:50 +02:00
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