irs | ||
tests | ||
.gitignore | ||
.travis.yml | ||
LICENSE | ||
README.md | ||
setup.cfg | ||
setup.py |
Ironic Redistribution System
(Shields: Gotta Catch Em All)
A music downloader that understands your metadata needs.
A tool to download your music with metadata. It uses Spotify for finding metadata and Youtube for the actual audio source.
Works with Python 2 and 3.
Demo and Usages
This is a demo of the CLI displayling its features:
The usages can be found with the -h
or --help
flag:
usage: irs [-h] [(-a ARTIST -s SONG)] [-A ALBUM] [(-u USERNAME -p PLAYLIST)]
optional arguments:
-h, --help show this help message and exit
-a ARTIST, --artist ARTIST
Specify artist name. Must be used with -s/--song
-s SONG, --song SONG Specify song name. Must be used with -a/--artist
-A ALBUM, --album ALBUM
Specify album name
-u USERNAME, --username USERNAME
Specify username. Must be used with -p/--playlist
-p PLAYLIST, --playlist PLAYLIST
Specify playlist name. Must be used with -u/--username
-l LOCATION, --location LOCATION
Specify a directory to place files in.
-o, --organize Organize downloaded files.
-c, --config Display path to config file.
So all of these are valid commands:
$ irs -a "Brandon Flowers" -s "Lonely Town"
$ irs -u "spotify" -p "Brain Food"
$ irs -A "Suicide Squad: The Album"
But these are not:
$ irs -s "Bohemian Rhapsody"
$ irs -p "Best Nirvana"
Install & The Dependencies (my new band name)
Really there's only one actual external dependency: ffmpeg
. For windows, you'll want to follow this guide. For OSX, you'll want to install it through brew
with this command:
$ brew install ffmpeg
For Linux, most package managers have ffmpeg
in their default repositories, so it can be installed like so:
$ sudo apt-get install ffmpeg
Or whatever your appropriate package manager is.
Other than ffmpeg
though, all other dependencies are automatically installed with pip
:
$ sudo pip install irs
Metadata
Currently, the program attaches the following metadata to the downloaded files:
- Title
- Artist
- Album
- Album Art
- Genre
- Track Number
- Disc Number
- Compilation (iTunes only)
Philosophy
When I made this program I was pretty much broke and my music addiction wasn't really helping that problem. So, I did the obvious thing: make an uber-complicated program to steal download music for me! As for the name, its acronym spells IRS, which I found amusing, seeing as the IRS takes steals money while my program gives reimburses you with music.
The design/style inspiration of pretty much everything goes to k4m4.
Wishlist
- Full album downloading
- Album art metadata correctly displayed
- Spotify playlist downloading
- GUI/Console interactive version - in progress
- Lyric metadata
- 99% success rate for automatic song choosing