[GH-ISSUE #45] [Feature Request] Reduce Redundant Downloads Across Playlists #39

Closed
opened 2026-02-27 04:57:13 +03:00 by kerem · 2 comments
Owner

Originally created by @rcMarty on GitHub (Aug 7, 2025).
Original GitHub issue: https://github.com/Googolplexed0/zotify/issues/45

Idea

Redundancy Reduction: One-Time Song Downloads and .m3u Playlists

I have feature request to optimize music downloads and storage. Currently, a song is downloaded every time it appears in a new playlist, leading to redundant files and excessive API calls. (If I'm not mistaken)

Suggested solution

The suggested solution is to download each unique song only once into a central folder for example. For each playlist, a lightweight .m3u playlist file would be created, which simply points to the already downloaded songs.

This approach would significantly reduce storage usage and decrease API calls by eliminating duplicate downloads. It provides a more efficient way to manage a large music library with overlapping playlists.

Originally created by @rcMarty on GitHub (Aug 7, 2025). Original GitHub issue: https://github.com/Googolplexed0/zotify/issues/45 ## Idea ### Redundancy Reduction: One-Time Song Downloads and `.m3u` Playlists I have feature request to optimize music downloads and storage. Currently, a song is downloaded every time it appears in a new playlist, leading to redundant files and excessive API calls. (If I'm not mistaken) ## Suggested solution The suggested solution is to **download each unique song only once** into a central folder for example. For each playlist, a lightweight **`.m3u` playlist file** would be created, which simply points to the already downloaded songs. This approach would significantly **reduce storage usage** and **decrease API calls** by eliminating duplicate downloads. It provides a more efficient way to manage a large music library with overlapping playlists.
kerem 2026-02-27 04:57:13 +03:00
Author
Owner

@Googolplexed0 commented on GitHub (Aug 7, 2025):

Currently, as long as SKIP_EXISTING or SKIP_PREVIOUSLY_DOWNLOADED is enabled, tracks will not be redownloaded even if in multiple different playlists. These redundancy settings compare a track's track_id to those stored in the archive and skips if it finds a match (regardless of the track's intended filepath). Unfortunately, sometimes skipped songs are not added to .m3u8s.

This will no longer be an issue after my backend rewrite (#41) is released, which I hope to have in a publishable state this weekend.

To achieve a centralized music folder, simply replace the OUTPUT config option with an appropriate path template (i.e. ./AllMyMusic/{artist}_{track_name}) and it will take precedence over all other filepath options. This should recreate the functionality you want.

<!-- gh-comment-id:3166127843 --> @Googolplexed0 commented on GitHub (Aug 7, 2025): Currently, as long as SKIP_EXISTING or SKIP_PREVIOUSLY_DOWNLOADED is enabled, tracks will not be redownloaded even if in multiple different playlists. These redundancy settings compare a track's `track_id` to those stored in the archive and skips if it finds a match (regardless of the track's intended filepath). Unfortunately, sometimes skipped songs are not added to .m3u8s. This will no longer be an issue after my backend rewrite (#41) is released, which I hope to have in a publishable state this weekend. To achieve a centralized music folder, simply replace the OUTPUT config option with an appropriate path template (i.e. `./AllMyMusic/{artist}_{track_name}`) and it will take precedence over all other filepath options. This should recreate the functionality you want.
Author
Owner

@Googolplexed0 commented on GitHub (Aug 13, 2025):

Will be solved by the completion and release of #41.

<!-- gh-comment-id:3182081794 --> @Googolplexed0 commented on GitHub (Aug 13, 2025): Will be solved by the completion and release of #41.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/zotify#39
No description provided.