DownOnSpot was not developed for piracy.
It is meant to be used in compliance with DMCA, Section 1201, for educational, private and fair use.
I am not responsible in any way for the usage of the source code.
- Works with free Spotify accounts
- Download 96, 160kbit/s audio with a free, 256 and 320 kbit/s audio with a premium account from Spotify, directly
- Multi-threaded
- Search for tracks
- Download tracks, playlists, albums and artists
- Convert to mp3
- Metadata tagging
- Simple usage over CLI
Clone the repository using git and change to the local repository directory:
git clone https://github.com/oSumAtrIX/DownOnSpot.git
cd DownOnSpotNightly Rust is required to build this project. Install it by following rustup.rs instructions.
cargo build --releaseIf you get a linker error, you might need to download the standard libmp3lame library.
On OS X, it should be enough to just run brew install lame, provided you have Homebrew installed.
Running DownOnSpot once will create the default configuration file in the same directory as your shell.
$ down_on_spot.exe
Settings could not be loaded, because of the following error: IO: NotFound No such file or directory. (os error 2)...
..but default settings have been created successfully. Edit them and run the program again.
$ down_on_spot.exe
Usage:
down_on_spot.exe (search_term | track_url | album_url | playlist_url | artist_url)On OS X, the settings.json file is created globally for the logged in user and is located in ~/.config/down_on_spot/settings.json.
Apart from your Spotify username and password, you will need to login in to the Spotify developer dashboard and create a new private application. Fill in the client_id and client_secret in your settings.json from your newly created app.
All the other settings should be self-explanatory, conversion from Ogg to MP3 is disabled by default.
Following variables are available for path and filename_template in the settings.json:
- %0disc%
- %0track%
- %album%
- %albumArtist%
- %albumArtists%
- %artist%
- %disc%
- %id%
- %title%
- %track%
- Mp3 downloads slow due to libmp3lame
- Downloads fail sometimes due to
channel error