A scriptable music downloader for Qobuz, Tidal, SoundCloud, and Deezer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Nathan Thomas 12db8e001a
Bump version to 1.9.7
2 weeks ago
.github Update stale.yml 1 year ago
demo Merge branch 'dev' 2 years ago
rip Misc typing 2 weeks ago
streamrip Bump version to 1.9.7 2 weeks ago
tests Formatting 2 years ago
.flake8 initial commit 2 years ago
.gitignore Create custom async downloader for HLS streams 2 years ago
.isort.cfg Misc typing 2 weeks ago
.mypy.ini Create custom async downloader for HLS streams 2 years ago
LICENSE initial commit 2 years ago
README.md Fix C++ build tools link #325 11 months ago
poetry.lock Update dependencies 2 weeks ago
pyproject.toml Bump version to 1.9.7 2 weeks ago



Downloads Code style: black

A scriptable stream downloader for Qobuz, Tidal, Deezer and SoundCloud.

Streamrip downloading an album


  • Super fast, as it utilizes concurrent downloads and conversion
  • Downloads tracks, albums, playlists, discographies, and labels from Qobuz, Tidal, Deezer, and SoundCloud
  • Supports downloads of Spotify and Apple Music playlists through last.fm
  • Automatically converts files to a preferred format
  • Has a database that stores the downloaded tracks' IDs so that repeats are avoided
  • Easy to customize with the config file
  • Integration with youtube-dl


First, ensure Python (version 3.8 or greater) and pip are installed. If you are on Windows, install Microsoft Visual C++ Tools. Then run the following in the command line:

pip3 install streamrip --upgrade

When you type


it should show the main help page. If you have no idea what these mean, or are having other issues installing, check out the detailed installation instructions.

If you would like to use streamrip's conversion capabilities, download TIDAL videos, or download music from SoundCloud, install ffmpeg. To download music from YouTube, install youtube-dl.

Streamrip beta

If you want to get access to the latest and greatest features without waiting for a new release, install from the dev branch with the following command

pip3 install git+https://github.com/nathom/streamrip.git@dev

Example Usage

For Tidal and Qobuz, you NEED a premium subscription.

Download an album from Qobuz

rip url https://www.qobuz.com/us-en/album/rumours-fleetwood-mac/0603497941032

Download multiple albums from Qobuz

rip url https://www.qobuz.com/us-en/album/back-in-black-ac-dc/0886444889841 https://www.qobuz.com/us-en/album/blue-train-john-coltrane/0060253764852

Download the album and convert it to mp3

rip url --codec mp3 https://open.qobuz.com/album/0060253780968

To set the maximum quality, use the --max-quality option to 0, 1, 2, 3, 4:

Quality ID Audio Quality Available Sources
0 128 kbps MP3 or AAC Deezer, Tidal, SoundCloud (most of the time)
1 320 kbps MP3 or AAC Deezer, Tidal, Qobuz, SoundCloud (rarely)
2 16 bit, 44.1 kHz (CD) Deezer, Tidal, Qobuz, SoundCloud (rarely)
3 24 bit, ≤ 96 kHz Tidal (MQA), Qobuz, SoundCloud (rarely)
4 24 bit, ≤ 192 kHz Qobuz
rip url --max-quality 3 https://tidal.com/browse/album/147569387

Search for albums matching lil uzi vert on SoundCloud

rip search --source soundcloud 'lil uzi vert'

streamrip interactive search

Search for Rumours on Tidal, and download it

rip search 'fleetwood mac rumours'

Want to find some new music? Use the discover command (only on Qobuz)

rip discover --list 'best-sellers'

Download a last.fm playlist using the lastfm command

rip lastfm https://www.last.fm/user/nathan3895/playlists/12126195

For extreme customization, see the config file

rip config --open

If you're confused about anything, see the help pages. The main help pages can be accessed by typing rip by itself in the command line. The help pages for each command can be accessed with the -h flag. For example, to see the help page for the url command, type

rip url -h


Other information

For more in-depth information about streamrip, see the help pages and the wiki.


All contributions are appreciated! You can help out the project by opening an issue or by submitting code.


If you're opening an issue use the Feature Request or Bug Report templates properly. This ensures that I have all of the information necessary to debug the issue. If you do not follow the templates, I will silently close the issue and you'll have to deal with it yourself.


If you're new to Git, follow these steps to open your first Pull Request (PR):

  • Fork this repository
  • Clone the new repository
  • Commit your changes
  • Open a pull request to the dev branch

Please document any functions or obscure lines of code.

The Wiki

To help out streamrip users that may be having trouble, consider contributing some information to the wiki. Nothing is too obvious and everything is appreciated.


Thanks to Vitiko98, Sorrow446, and DashLt for their contributions to this project, and the previous projects that made this one possible.

streamrip was inspired by:


I will not be responsible for how you use streamrip. By using streamrip, you agree to the terms and conditions of the Qobuz, Tidal, and Deezer APIs.


Buy Me A Coffee

Consider contributing some funds here, which will go towards holding the premium subscriptions that I need to debug and improve streamrip. Thanks for your support!