From 70c618e06940abe1e2e05d21c2b538fe22ea3c4d Mon Sep 17 00:00:00 2001 From: fiso64 Date: Tue, 28 Mar 2023 00:40:57 +0200 Subject: [PATCH] search with album name, yt-dlp fallback --- README.md | 14 +- slsk-batchdl/Program.cs | 468 ++++++++++++++------ slsk-batchdl/Properties/launchSettings.json | 8 + slsk-batchdl/Spotify.cs | 39 +- 4 files changed, 374 insertions(+), 155 deletions(-) diff --git a/README.md b/README.md index 5ede12d..b5eee32 100644 --- a/README.md +++ b/README.md @@ -11,15 +11,16 @@ Options: --password Soulseek password --spotify Download a spotify playlist - --spotify-id Your spotify client id (in case the default one failed) - --spotify-secret Your spotify client secret (in case the default one failed) + --spotify-id Your spotify client id (use if the default fails or if playlist private) + --spotify-secret Your spotify client secret (use if the default fails or if playlist private) --csv Use a csv file containing track info to download --artist-col Specify if the csv file contains an artist name column --track-col Specify if if the csv file contains an track name column + --album-col CSV album column name. Optional, may improve searching --full-title-col Specify only if there are no separate artist and track name columns in the csv --uploader-col Specify when using full title col if there is also an uploader column in the csv (fallback in case artist name cannot be extracted from title) - --length-col Specify the name of the track duration column, if exists + --length-col CSV duration column name. Recommended, will improve accuracy --time-unit Time unit for the track duration column, ms or s (default: s) --pref-format Preferred file format (default: mp3) @@ -39,6 +40,8 @@ Options: --create-m3u Create an m3u playlist file --m3u-only Only create an m3u playlist file with existing tracks and exit --m3u Where to place created m3u files (--parent by default) + --yt-dlp Use yt-dlp to download tracks that weren't found on Soulseek. yt-dlp must be availble from the command line. + --yt-dlp-f yt-dlp audio format (default: "bestaudio/best") --search-timeout Maximal search time (default: 15000) --download-max-stale-time