Commit Graph
69 Commits
Author SHA1 Message Date
E.J. Talevi adfa0c6bb3 fix(ffmpeg): prevent terminal window flash on Windows during media conversion 2025-11-26 04:42:29 -03:00
Robert Honz 5cdf482ef9 refactor(downloader): 🔧 reorganize TrackStreamInfo class and imports
* Moved `TrackStreamInfo` class definition from `download.py` to `downloader.py`.
* Removed redundant `dataclass` import from `download.py`.
* Updated import statements to maintain clarity and organization.
2025-11-13 08:33:59 +01:00
exislowandGitHub b485292807 Merge pull request #596 from Winman486/fix/rate-limiting-playlist-downloads
Fix/rate limiting playlist downloads
2025-10-22 21:38:30 +02:00
Winman486 e9070eef66 refactor: Make rate limiting configurable and move session validation to Tidal class
- Add api_rate_limit_batch_size and api_rate_limit_delay_sec to Settings (cfg.py)
- Move validate_session() and is_authentication_error() to Tidal class (config.py)
- Update _load_albums_with_rate_limiting() to use config values instead of hardcoded 20/3
- Update _handle_album_load_error() to use Tidal.is_authentication_error()
- Remove _validate_session() from gui.py (now uses Tidal.validate_session())
- Addresses maintainer feedback: configurable tweaking variables and proper separation of concerns
2025-10-21 15:23:18 -05:00
Rikrdoga e266149684 Move credentials to constants, improve docs (tidal_obj), and clean up Atmos legacy code 2025-10-21 11:58:34 -06:00
Rikrdoga cb32c2fa8b Refactor Dolby Atmos Implementation 2025-10-20 20:23:14 -06:00
Winman486 3c835c2d19 Merge upstream/master and resolve conflicts
- Resolved conflict in dialog_settings.py (kept both cb_use_primary_album_artist and cb_mark_explicit checkboxes)
- Fixed code quality issues found by make check:
  * Removed duplicate on_download_album_from_track function (F811)
  * Updated isinstance calls to use X | Y syntax instead of (X, Y) (UP038)
  * Fixed unused loop variable album_stub (B007)
  * Applied automatic formatting fixes (black, prettier, trailing whitespace)
- Only remaining issue is C901 complexity warning in on_download_all_albums_from_playlist (expected per maintainer feedback)
2025-10-20 16:12:46 -05:00
Rikrdoga 302b552ed7 Add support for Dolby Atmos 2025-10-20 10:33:01 -06:00
Robert Honz 8c361249ed fix(cfg): 🐛 update mark_explicit default value and improve help text
* Set default value of `mark_explicit` to `False`.
* Update help text to clarify that marking explicit tracks applies only to metadata.
2025-10-20 08:20:20 +02:00
Trubo 0176892a3b Quick help text change 2025-10-19 18:28:18 -05:00
Trubo 2402550884 Add a checkbox to settings that toggles the explicit symbol in track titles 2025-10-19 18:16:19 -05:00
Winman486 ac3bf51c56 feat(gui): add 'Download Full Album', 'Download All Albums', and 'Single album folder (primary artist)' preference 2025-10-17 15:17:02 -05:00
Robert Honz a2e637e89c feat(metadata): ✨ add UPC metadata handling and configuration
* Introduced `MetadataTargetUPC` enum for target metadata tags.
* Added `METADATA_LOOKUP_UPC` dictionary for mapping file formats to UPC tags.
* Updated `Metadata` class to include `target_upc` for dynamic UPC tag assignment.
* Enhanced `Settings` class to allow configuration of `metadata_target_upc`.
2025-10-17 13:46:47 +02:00
Robert Honz dd5a402dce feat(path): ✨ add customizable delimiters for artist names in file paths
* Updated `format_path_media` and related functions to accept customizable delimiters for artist names.
* Modified `Settings` class to include `filename_delimiter_artist` and `filename_delimiter_album_artist`.
* Enhanced `name_builder_artist` and `name_builder_album_artist` functions to utilize the new delimiters.
2025-10-17 13:13:19 +02:00
Robert Honz 5da1855028 feat(metadata): ✨ add customizable metadata delimiters for artists
* Introduced `metadata_delimiter_artist` and `metadata_delimiter_album_artist` settings.
* Updated `name_builder_artist` and `name_builder_album_artist` functions to utilize the new delimiters.
* This allows users to specify their preferred delimiter for artist names in metadata.
2025-10-17 12:06:25 +02:00
Robert Honz de8076594c fix(cfg): 🐛 set metadata_replay_gain to false
* Updated the `metadata_replay_gain` setting in `Settings` class to `False`.
* This change disables replay gain metadata processing by default.
2025-10-06 12:37:12 +02:00
Joshua Cantara f54d3dedcf add help strings for new settings 2025-09-08 09:49:21 -04:00
Joshua Cantara 4c0d78b5ed save and restore main window position and size 2025-09-01 14:49:24 -04:00
Robert Honz f16165558c feat: add metadata_write_url setting for conditional URL metadata writing
Introduces a new configuration option, `metadata_write_url`, to control whether the media file URL is included in metadata. Updates logic to respect this setting.

- ✨ **Feature**: Adds `metadata_write_url` to enable/disable URL writing in metadata.
- 🔧 **Logic Update**: Adjusts URL handling to check the new setting before including it.
- 📝 **Documentation**: Updates help descriptions to explain the new option.

This change improves flexibility in metadata customization.
2025-08-12 19:36:41 +02:00
Robert Honz 70e8b5fb13 ✨ Either date added or date released will be shown, depending if a list is selected or a search was performed. Fixes #424 2025-06-30 10:44:51 +02:00
Robert Honz 819655d8b7 ✨ Implemented playlist track position naming ({list_pos}) for downloads. Fixes #165 2025-04-02 07:00:28 +02:00
Robert Honz 5e91194bd1 ✨ Replay gain information can be disabled in settings. Fixes #176
🛠️ Fixed some warnings
2025-02-28 10:55:41 +01:00
Robert Honz 2055606d0b 👷 File extension guesser improved. Fixes #322 2025-01-12 17:42:09 +01:00
Robert Honz 107afd5e3a ✨ Config options created for symlinking tracks and playlist creation. 2024-12-16 08:14:39 +01:00
Robert Honz 5768edacc5 ✨ Multithreaded downloads implemented (for Playlists, Albums etc.). Fixes #180 2024-12-15 23:35:10 +01:00
Robert Honz b8091e233b ✨ Album track number padding can be set. Fixes #142 2024-12-15 20:37:06 +01:00
Robert Honz 9fa0127116 👷 Refactored download delay limits to config. 2024-11-20 12:28:18 +01:00
Robert Honz d4cc677bd9 ✨ Fixed default format strings explicit tag. 2024-11-17 23:04:50 +01:00
Robert Honz fba23aee41 ✨ Default formats changed. 2024-11-15 10:01:17 +01:00
Robert Honz c1a102f646 ✨ Removed complex skipping options in favor of a faster duplicates check / skipping of already present items without download delay. 2024-11-13 09:09:00 +01:00
Robert Honz beea8f1fe7 🛠️ Fixed segment order after download. 2024-11-12 22:36:16 +01:00
Robert Honz 78a48348a8 ✨ Track segments are downloaded simultaneously, which results in a huge speed increase. Some refactoring work has been done. 2024-11-12 22:15:11 +01:00
Robert Honz ac7afca1bf ✨ Column added to display "date added" of list items. Fixes #146 2024-11-11 12:06:49 +01:00
Robert Honz d7112063a0 Option added to embed and download album art. 2024-11-11 10:05:32 +01:00
Robert Honz ce02215d7c {track_volume_num_optional} and {track_volume_num_optional_CD} added for an optional sub CD folder structure. Fixes #151 2024-11-10 14:21:10 +01:00
Robert Honz f41d65d7d3 Since TIDAL has remove MQA (HI_RES), all traces of MQA have been removed here. 2024-11-06 15:01:18 +01:00
Robert Honz 8e7d6019ff FFmpeg PR fixes. 2024-11-06 09:41:39 +01:00
Maya Doshi cce5886e5c Update text to indicate that 'path_binary_ffmpeg' is optional 2024-07-02 16:26:15 -07:00
Robert Honz b07c3374b2 ✨ FLAC can be extracted from MP4 containers (see options). Downgrade on HI_RES download is possible (see options). Fixes #93 #86 2024-04-21 19:18:05 +02:00
Robert Honz f9862e0646 ✨ PKCE / OAuth login will be chosen on the fly, depending on the desired audio quality of the track to speed up non HIRES_LOSSLESS downloads. Quality for tracks in download queue can be chosen individually. Fixes #73 2024-04-21 15:58:31 +02:00
Robert Honz 083d6604f7 👷 Legacy code cleanup due to tidalapi update. 2024-04-20 16:35:06 +02:00
Robert Honz a3ef1b8cba ✨ Explicit versions can be tagged with filename placeholder track_explicit and album_explicit. Fixes #82 2024-04-20 11:38:21 +02:00
Robert Honz b57d36ac80 ✨ Explicit versions will be shown. Audio quality is shown in results and download table. Fixes #58 2024-04-20 11:28:38 +02:00
Robert Honz 22bd6221f7 🛠️ Fixed version information for all app distributions. 2024-04-05 09:05:03 +02:00
Robert Honz 9e6f865f54 ✨ Artists can be downloaded using the download queue. Fixes #71 2024-04-01 15:40:58 +02:00
Robert Honz 8216558b9e 🛠️ Fixed default album track num placeholder. 2024-04-01 15:13:02 +02:00
Robert Honz 77ef9ef75e ✨ Can explicitly set ffmpeg path. 2024-03-29 11:17:30 +01:00
Robert Honz 7789bf9f16 ✨ Able to retrieve latest release version information from GitHub. 2024-03-27 06:49:20 +01:00
Robert Honz ece1856a3c ✨ 'album_artist' is default placeholder for album path. 2024-03-20 06:14:17 +01:00
Robert Honz 466c24fbec ✨ Extended help message for lyrics. 2024-02-12 06:05:13 +01:00