License

## Table of Contents - [Features](#features) - [Dependencies](#dependencies) - [Installing](#installing) - [Source](#source) - [Usage](#usage) - [Options](#options) - [Contribute](#contribute) - [License](#license) ## Features 1. Fixes metadata of songs based on data received from Spotify 2. Fetches lyrics from [Genius](https://www.genius.com) 3. Fetches metadata from [Spotify](https://www.spotify.com) 4. Can format filenames of songs 5. Can fetch data for a single song or complete directory ## Dependencies ### [Genius API](https://genius.com/api-clients) 1. Create an account and register an application 2. Grab Access Token 3. Set access token in config file ### [Spotify API](https://developer.spotify.com/my-applications/#!/applications/create) 1. Create an account and register an application 2. Grab Client ID and client Secret Code 3. Set both in config file ```sh $ python addMetadata.py --config Enter Genius key : Enter Spotify Secret token : Enter Spotify Client ID : ``` ## Installing ### Source ```sh $ git clone https://github.com/yash2696/BeautifyMP3 $ cd BeautifyMP3 $ python setup.py install ``` ### Options ```sh (music-tagger) ~/D/music-tagger ❯❯❯ python addMetadata.py -h usage: addMetadata.py [-h] [-d REPAIR_DIRECTORY] [-s SONG_NAME] [-c] [-n] [-f RENAME_FORMAT] ____ _ _ __ __ __ ____ _____ | __ ) ___ __ _ _ _| |_(_)/ _|_ _| \/ | _ \___ / | _ \ / _ \/ _` | | | | __| | |_| | | | |\/| | |_) ||_ \ | |_) | __/ (_| | |_| | |_| | _| |_| | | | | __/___) | |____/ \___|\__,_|\__,_|\__|_|_| \__, |_| |_|_| |____/ |___/ ______________________________________________________________ | | | Edit Metadata of MP3 files based on file name | |____________________________________________________________| optional arguments: -h, --help show this help message and exit -d REPAIR_DIRECTORY, --dir REPAIR_DIRECTORY give path of music files` directory -s SONG_NAME, --song SONG_NAME Only fix metadata of the file specified -c, --config Add API Keys to config -n, --norename Does not rename files to song title -f RENAME_FORMAT, --format RENAME_FORMAT Specify the Name format used in renaming, Valid Keywords are: {title}{artist}{album} ) ``` ## TODO - [ ] Add download functionality from youtube - [ ] add support for last.fm and soundcloud if spotify fails - [ ] add support for metrolyrics and other lyrics service if genius api fails - [ ] add support for searching with existing id3 tags if searching with name fails - [ ] somehow find a way to properly synchronize the lyrics with sound if possible - [ ] add support for other file types(aac, flac etc) ## Contribute Found an issue? Post it in the [issue tracker](https://github.com/yash2696/BeautifyMP3/issues).
Want to add another awesome feature? [Fork](https://github.com/yash2696/BeautifyMP3/fork) this repository and add your feature, then send a pull request. ## Disclaimer The inspiration for this project is [MusicRepair](https://github.com/kalbhor/MusicRepair). Downloading copyright songs is illegal in most of the countries. I made this tool for educational purposes and was created for my python learning process. Please support the artists by buying their music. ## License The MIT License (MIT) Copyright (c) 2017 Yash Agarwal