All Projects â†’ oSumAtrIX â†’ DownOnSpot

oSumAtrIX / DownOnSpot

Licence: GPL-3.0 license
🎵 A Spotify music and playlist downloader written in Rust which also works with a free Spotify account

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to DownOnSpot

Homehost
self-hosted, Netflix-like app made for streaming
Stars: ✭ 564 (+82.52%)
Mutual labels:  spotify, media
Spotify Downloader
Download your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found).
Stars: ✭ 6,957 (+2151.46%)
Mutual labels:  spotify, mp3
Monstercat Visualizer
A real time audio visualizer for Rainmeter similar to the ones used in the Monstercat videos.
Stars: ✭ 571 (+84.79%)
Mutual labels:  spotify, media
audius
🎧 A cross-platform app for downloading songs from YouTube and Spotify
Stars: ✭ 19 (-93.85%)
Mutual labels:  spotify, mp3
Getsong
Download any song mp3 with no dependencies except ffmpeg
Stars: ✭ 102 (-66.99%)
Mutual labels:  spotify, mp3
Spotiflyer
Spotify/Gaana/Youtube Music Downloader For Android!
Stars: ✭ 231 (-25.24%)
Mutual labels:  spotify, mp3
Spotify Dl
Downloads songs from your Spotify Playlist
Stars: ✭ 578 (+87.06%)
Mutual labels:  spotify, mp3
Mp3Info
The fastest PHP library to extract mp3 meta information (duration, bitrate, samplerate and so on) and tags (id3v1, id3v2).
Stars: ✭ 114 (-63.11%)
Mutual labels:  mp3, media
Spotivy
🎼 Download music videos from Spotify playlists
Stars: ✭ 64 (-79.29%)
Mutual labels:  spotify, mp3
Spy Spotify
🎤 Records Spotify to mp3 without ads and adds media tags to the files 🎵
Stars: ✭ 929 (+200.65%)
Mutual labels:  spotify, mp3
Symphonia
Pure Rust multimedia format demuxing, tag reading, and audio decoding library
Stars: ✭ 191 (-38.19%)
Mutual labels:  mp3, media
Alltomp3
Node module to download and convert in MP3 with tags an online video
Stars: ✭ 120 (-61.17%)
Mutual labels:  spotify, mp3
Sjmediacacheserver
A HTTP Media Caching Framework. It can cache FILE or HLS media. 音视频边播边缓存框架, 支持 HLS(m3u8) 和 FILE(mp4, mp3等).
Stars: ✭ 87 (-71.84%)
Mutual labels:  mp3, media
Spotifydownload
A dependency-free Spotify playlist downloader that should just work
Stars: ✭ 245 (-20.71%)
Mutual labels:  spotify, mp3
Flutter Assetsaudioplayer
Play simultaneously music/audio from assets/network/file directly from Flutter, compatible with android / ios / web / macos, displays notifications
Stars: ✭ 458 (+48.22%)
Mutual labels:  mp3, media
Lofi
🎵🔉 A mini Spotify player with WebGL visualizations.
Stars: ✭ 583 (+88.67%)
Mutual labels:  spotify, media
TonUINO
Alternative TonUINO Firmware
Stars: ✭ 112 (-63.75%)
Mutual labels:  mp3, media
Alltomp3 App
Download and Convert YouTube, SoundCloud & Spotify in MP3 with full tags (title, artist, genre, cover, lyrics 🔥)
Stars: ✭ 920 (+197.73%)
Mutual labels:  spotify, mp3
Ytmdl
A simple app to get songs from YouTube in mp3 format with artist name, album name etc from sources like iTunes, Spotify, LastFM, Deezer, Gaana etc.
Stars: ✭ 2,070 (+569.9%)
Mutual labels:  spotify, mp3
Savify
Download Spotify songs to mp3 with full metadata and cover art!
Stars: ✭ 227 (-26.54%)
Mutual labels:  spotify, mp3

DownOnSpot

A Spotify downloader written in Rust

drawing

Build project Codacy Badge GitHub license GitHub issues GitHub forks GitHub stars Stability: Experimental

Disclaimer

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.

Features

  • Works with free Spotify accounts (if using free-librespot fork)
  • 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

Building

Clone the repository using git and change to the local repository directory:

git clone https://github.com/oSumAtrIX/DownOnSpot.git
cd DownOnSpot

A private ssh key is needed to use free Spotify accounts. Follow this answer by DopeGhoti on stackexchange.com on how to set up ssh with the required private key. A sample ~/.ssh/config file could look like this:

Host github.com
  IdentityFile ~/.ssh/free_librespot_private_key

If you do not want to use free-librespot (i.e. if you are using a paid Spotify account), then remove the git dependency of free-librespot. For that, delete git = "ssh://[email protected]/oSumAtrIX/free-librespot.git" inside Cargo.toml. For paid Spotify accounts, make sure to then add librespot = "0.4.2" in the Cargo.toml file instead.

Nightly Rust is required to build this project. Install it by following rustup.rs instructions.

cargo build --release

If 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.

Usage/ Examples

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.

Template variables

Following variables are available for path and filename_template in the settings.json:

  • %0disc%
  • %0track%
  • %album%
  • %albumArtist%
  • %albumArtists%
  • %artist%
  • %disc%
  • %id%
  • %title%
  • %track%

Additional scripts

Known issues

  • Mp3 downloads slow due to libmp3lame
  • Downloads fail sometimes due to channel error

Authors

License

GPLv3

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].