Awesome
š° TIDAL Downloader Next Generation! (tidal-dl-ng)
This tool allows to download songs and videos from TIDAL. Multithreaded and multi-chunked downloads are supported.
A paid plan is required! Audio quality varies up to HiRes Lossless / TIDAL MAX 24-bit, 192 kHz depending on the song available. You can use the command line or GUI version of this tool.
$ tidal-dl-ng --help
Usage: tidal-dl-ng [OPTIONS] COMMAND [ARGS]...
āā Options āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā®
ā --version -v ā
ā --help -h Show this message and exit. ā
ā°āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāÆ
āā Commands āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā®
ā cfg Print or set an option. If no arguments are given, all options will ā
ā be listed. If only one argument is given, the value will be printed ā
ā for this option. To set a value for an option simply pass the value ā
ā as the second argument ā
ā dl ā
ā gui ā
ā login ā
ā°āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāÆ
If you like this projects and want to support it, you can buy me a coffee :-)
<a href="https://www.buymeacoffee.com/exislow" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/arial-orange.png" alt="Buy Me A Coffee" style="height: 51px !important;width: 217px !important;" ></a> <a href="https://ko-fi.com/exislow" target="_blank" rel="noopener noreferrer"><img src="https://help.ko-fi.com/hc/article_attachments/11833788361117" alt="61e11d430afb112ea33c3aa5_Button-1-p-500"></a>
š» Installation / Upgrade
Requirements: Python >= 3.12 (other versions might work but are not tested!)
pip install --upgrade tidal-dl-ng
# AND if you like to have the GUI as well
pip install --upgrade tidal-dl-ng[gui]
You can use the command line (CLI) version to download media:
tidal-dl-ng dl https://tidal.com/browse/track/46755209
# OR
tdn dl https://tidal.com/browse/track/46755209
But also the GUI:
tidal-dl-ng-gui
# OR
tdng
# OR
tidal-dl-ng gui
If you like to have the GUI version only, have a look at the release page and download the correct version for your platform.
š§ Features
- Download Tracks, Videos, Albums, Playlists etc.
- Multithreaded and multi-chunked downloads
- Metadata for songs
- Adjustable audio and video download quality.
- FLAC extraction from MP4 containers
- Lyrics and album art / cover download
- Creates playlist files
- Can symlink tracks instead of having several copies, if added to different playlist
ā¶ļø Getting started with development
š° Install dependencies
Clone this repository and install the dependencies:
poetry install --all-extras --with dev,docs
The main entry points are:
tidal_ng_dl/cli.py
tidal_ng_dl/gui.py
šŗ GUI Builder
The GUI is build with PySide6
using the Qt Designer:
PYSIDE_DESIGNER_PLUGINS=tidal_dl_ng/ui pyside6-designer
After all changes are saved you need to translate the Qt Designer *.ui
file into Python code:
pyside6-uic tidal_dl_ng/ui/main.ui -o tidal_dl_ng/ui/main.py
š Build the project
To build the project use this command:
make install
The CI/CD pipeline will be triggered when you open a pull request, merge to main, or when you create a new release.
To finalize the set-up for publishing to PyPi or Artifactory, see here. For activating the automatic documentation with MkDocs, see here. To enable the code coverage reports, see here.
ā¼ļø Disclaimer
- For educational purposes only. I am not liable and responsible for any damage that happens.
- You should not use this method to distribute or pirate music.
- It may be illegal to use this app in your country.
š« Contributors
Thanks to all, who have contributed to this project!
This project is based on:
<a href="https://github.com/exislow/tidal-dl-ng/graphs/contributors"><img src="https://contributors-img.web.app/image?repo=exislow/tidal-dl-ng" /></a>