# Music Dragon
Desktop application written in Python3 + PyQt5 with a spotify-likish interface that can be used to
search artists, albums and songs and automatically download and tag those with one click.
Supports Linux and Windows (experimental).
### Features
- Search artists, albums or songs (`musicbrainz`)
- Automatically download single songs or entire albums from youtube with a single click (`youtube_dl`)
- Manually download any song or playlist from youtube by pasting its URL
- Automatically fetch images of songs and albums
- Automatically tag downloaded songs using musicbrainz and youtube metadata, with a configurable tagging pattern
- Show and manage local songs
- Automatically recognize whether songs and albums have already been downloaded
(the border of the song/album's cover changes accordingly)
- Play songs, either locally or directly from youtube stream
### What it looks like
![Search](https://raw.githubusercontent.com/Docheinstein/music-dragon/master/img/screenshot-0.png "Search")
![Artist](https://raw.githubusercontent.com/Docheinstein/music-dragon/master/img/screenshot-1.png "Artist")
![Album](https://raw.githubusercontent.com/Docheinstein/music-dragon/master/img/screenshot-2.png "Album")
![Downloads](https://raw.githubusercontent.com/Docheinstein/music-dragon/master/img/screenshot-3.png "Downloads")
## INSTALLATION
#### Linux
```
pip install music-dragon
```
#### Windows
Using pip:
```
pip install music-dragon
```
Otherwise:
* Clone the repository
* Follow the instructions at .\other\pyinstaller_data\windows\README.txt:
* Place the ffmpeg binaries (ffmpeg, ffplay, ffprobe) in .\other\pyinstaller_data\windows\ffmpeg
* Place the content of the VLC folder in .\other\pyinstaller_data\windows\vlc
* Compile with .\scripts\build-windows-exe.cmd
* Run the executable in .\dist\main\main.exe
## USAGE
```
music-dragon
```
## TODO
* Improve UI
* Allow manual tagging of local songs (`eyed3`)
* Solve some known bugs
* Refactor
Raw data
{
"_id": null,
"home_page": "https://github.com/Docheinstein/music-dragon",
"name": "music-dragon",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3",
"maintainer_email": null,
"keywords": "music manager youtube spotify musicbrainz musicbrainzngs tag cover eyed3 ytmusicapi youtube_dl",
"author": "Stefano Dottore",
"author_email": "docheinstein@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/04/fb/4e9da4fab2d12de9f54f2c15a96907c242eac90eb44abb6c430cd6d855ff/music-dragon-0.15.tar.gz",
"platform": null,
"description": "# Music Dragon\n\nDesktop application written in Python3 + PyQt5 with a spotify-likish interface that can be used to \nsearch artists, albums and songs and automatically download and tag those with one click.\n\nSupports Linux and Windows (experimental).\n\n### Features\n- Search artists, albums or songs (`musicbrainz`)\n- Automatically download single songs or entire albums from youtube with a single click (`youtube_dl`)\n- Manually download any song or playlist from youtube by pasting its URL\n- Automatically fetch images of songs and albums\n- Automatically tag downloaded songs using musicbrainz and youtube metadata, with a configurable tagging pattern\n- Show and manage local songs\n- Automatically recognize whether songs and albums have already been downloaded\n (the border of the song/album's cover changes accordingly)\n- Play songs, either locally or directly from youtube stream\n\n### What it looks like\n\n![Search](https://raw.githubusercontent.com/Docheinstein/music-dragon/master/img/screenshot-0.png \"Search\")\n![Artist](https://raw.githubusercontent.com/Docheinstein/music-dragon/master/img/screenshot-1.png \"Artist\")\n![Album](https://raw.githubusercontent.com/Docheinstein/music-dragon/master/img/screenshot-2.png \"Album\")\n![Downloads](https://raw.githubusercontent.com/Docheinstein/music-dragon/master/img/screenshot-3.png \"Downloads\")\n\n## INSTALLATION\n\n#### Linux\n\n```\npip install music-dragon\n```\n\n#### Windows\n\nUsing pip:\n\n```\npip install music-dragon\n```\n\nOtherwise:\n\n* Clone the repository\n* Follow the instructions at .\\other\\pyinstaller_data\\windows\\README.txt:\n * Place the ffmpeg binaries (ffmpeg, ffplay, ffprobe) in .\\other\\pyinstaller_data\\windows\\ffmpeg\n * Place the content of the VLC folder in .\\other\\pyinstaller_data\\windows\\vlc\n* Compile with .\\scripts\\build-windows-exe.cmd\n* Run the executable in .\\dist\\main\\main.exe\n\n## USAGE\n```\nmusic-dragon\n```\n\n## TODO\n* Improve UI\n* Allow manual tagging of local songs (`eyed3`)\n* Solve some known bugs\n* Refactor\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "All-in-one music manager: scrapes albums, artists and songs from musicbrainz and automatically download them from youtube.",
"version": "0.15",
"project_urls": {
"Homepage": "https://github.com/Docheinstein/music-dragon"
},
"split_keywords": [
"music",
"manager",
"youtube",
"spotify",
"musicbrainz",
"musicbrainzngs",
"tag",
"cover",
"eyed3",
"ytmusicapi",
"youtube_dl"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "04fb4e9da4fab2d12de9f54f2c15a96907c242eac90eb44abb6c430cd6d855ff",
"md5": "01c0d1fea14703e9352259933c32b56c",
"sha256": "5755617ff488d4ea98035c6fa3562b50dcce30f728e306a5b8777722afb66b68"
},
"downloads": -1,
"filename": "music-dragon-0.15.tar.gz",
"has_sig": false,
"md5_digest": "01c0d1fea14703e9352259933c32b56c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3",
"size": 233228,
"upload_time": "2024-08-29T14:50:04",
"upload_time_iso_8601": "2024-08-29T14:50:04.571343Z",
"url": "https://files.pythonhosted.org/packages/04/fb/4e9da4fab2d12de9f54f2c15a96907c242eac90eb44abb6c430cd6d855ff/music-dragon-0.15.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-29 14:50:04",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Docheinstein",
"github_project": "music-dragon",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "music-dragon"
}