multiple source music downloader
Base code found here: https://notabug.org/RemixDevs/demixed-dl
command | deezer | tidal | qobuz | soundcloud | napster | gpm | dtq | Spotify
-------- | -------- | -------- | -------- | -------- | -------- | -------- |-------- |----------
login | Y | Y | Y | N | Y | Y | N | N
grab track <id> | Y | Y | Y | Y | Y | Y | N | Y
grab album <id> | Y | Y | Y | N | Y | Y | N | N
grab playlist <id> | Y | Y | Y | Y | Y | Y | N | Y
grab discography <artist id> | Y | Y | Y | N | N | N | N | N
grab saved | Y | N | Y | N | N | N | N | Y
search track [ENTER] | Y | Y | Y | N | Y | Y | Y | N
search album [ENTER] | Y | Y | Y | N | Y | Y | Y | N
search isrc <id> | Y | N | N | N | N | N | N | N
show track <id> | Y | Y | Y | N | Y | Y | N | N
show playlists | Y | Y | Y | Y | Y | Y | Y | Y
track quality <id> | Y | Y | Y | N | Y | Y | N | N
grab show <id> (podcast)
grab episode <id> (single episode from a podcast)
search video [ENTER]
grab video <id>
show video <id>
Download a complete label with it's ID.
Label metadata gets cached under import/cache/label_[label_id].pkl.
If that file is older than 4 days it gets deleted and recreated.
Donwload could possibly crash, so I would advise you to change the album download settings, to not overwrite
and check_db to True
.
Folder Path: Music Root\<Label Name>\Albums
grab label <id>
For a complete usage use the help page or look in the source code of main.py
around line 420
https://notabug.org/Aesir/chimera/wiki/FAQ
Chimera has an api interface see: https://notabug.org/Aesir/chimera-api-docs/src/master/api.md
python main.py --api
Feature like Shazam, for integration see: https://notabug.org/Aesir/chimera/wiki/Audio+Fingerprinting
07-10-2019
- Concurrency added (multiple downlod workers)
- new commands:
show status
andshow queue
When you grab an track, album or playlist with concurrency enabled you will not get any feedback. Use show status
to monitor the progress.
24-09-2019
- New dependency install with
pip install -r requirements.txt
- Faster decryption for deezer track
- MQA support (again) for tidal
22-09-2019
- Playlists can now be downloaded as a compilation
Track NR in Tags changes to position
Album Tag changes to playlist name
Everything gets saved in a single playlist folder
05-09-2019
- GooglePlayMusic added, uses gmusicapi which does not come
with the requirements.txt file, because it has to many dependecies
install it with
pip install gmusicapi
There is a config option to enable it, if you don't install gmusicapi everything else will still work Supports:- grab [track | album | playlist (use the public share token)]
- search [track | album]
- show playlists (shows user playlist, to download you still have to share it and use that token)
01-09-2019
- Napster added, supports (M4A_320(AAC), M4A_192(AAC), M4A_64(AAC))
- napster [login | grab track [id | url] | grab album [id | url] | grab playlist id | show playlists]
Info: official track id starts with tra.365693021
=> just use the 365693021
without tra.
Usage
grab track 365693021
grab track https://app.napster.com/artist/eminem/album/recovery/track/cold-wind-blows
grab album https://app.napster.com/artist/eminem/album/recovery
show playlists
grab playlist mp.272317212
grab playlist pp.234543479
search track [new input for query]
search album [new input for query]
31-08-2019
- Smart CLI Added, just input any url from deezer, tidal or qobuz
and it will start downloading (supported: track, album, playlist)
current active service does not matter.
DEEZER -> https://www.deezer.com/track/737967312
grabbing The Man by Taylor Swift ID: 737967312
downloading: 23.0MB [00:05, 4.38MB/s]
decrypting: 100% 4/4 [00:03<00:00, 1.10it/s]
DEEZER -> https://play.qobuz.com/album/x88yammbh9rta
grabbing qobuz album Live and Loud
grabbing Radio Friendly Unit Shifter by Nirvana ID: 69299877
downloading: 35.2MB [00:02, 13.6MB/s]
28-08-2019
- New Config System
- use
setup chimera
to populate new config
Requires Python 3.7.4 (for audio fingerprinting 64bit is required)
- download python from here https://www.python.org/downloads/
- download the latest source code from here https://notabug.org/Aesir/chimera/archive/master.zip
- unzip and open a terminal in that folder
- not required but recommended to create a virtual env https://docs.python-guide.org/dev/virtualenvs/
you can skip this if you only installed python for this project - install requirements with pip
pip install -r requirements.txt
Short video: https://www.youtube.com/watch?v=wleo_QNKe_s&feature=youtu.be
Thanks to Bas Curtiz for creating it.
If you created an virtual env: workon chimera
python main.py
If the file db\db.sqlite
does not exists, it gets created with default values. Furthermore your default webbrowser gets opened to http://localhost:5000/configure where you can configure chimera.
To configure chimera after your initial run. You can use setup chimera
if you are in the cli mode.
After each new version, run this command to update the DB scheme:
python update.py
- https://notabug.org/RemixDevs/demixed-dl
- https://github.com/Sorrow446/Qo-DL
- https://github.com/spencercharest/tidal-api
- https://github.com/Qobuz/api-documentation
- https://git.fuwafuwa.moe/FatKiwi
- https://github.com/DashLt/Spoofbuz
- Chimera was developed for educational and private use only.
- Not intended for distibuting and pirating music!
- I am not responsible for the usage of others.
- It may be illegal to use this in your country, inform yourself!