finalize final pieces of project

pull/1/head
Yash Agarwal 2017-06-17 20:53:08 +05:30
parent 7b94319d3f
commit 05723d21b0
4 changed files with 117 additions and 8 deletions

106
README.md
View File

@ -1,3 +1,94 @@
<p align="center">
<a href="https://github.com/yash2696/BeautifyMP3/LICENSE">
<img alt="License" src="https://img.shields.io/github/license/mashape/apistatus.svg?style=flat-square"/>
</a>
</p>
## 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 genius key>
Enter Spotify Secret token : <enter client secret here>
Enter Spotify Client ID : <enter client id here>
```
## 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
@ -5,3 +96,18 @@
- [ ] 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). <br>
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

View File

@ -2,6 +2,13 @@
DESC = """
____ _ _ __ __ __ ____ _____
| __ ) ___ __ _ _ _| |_(_)/ _|_ _| \/ | _ \___ /
| _ \ / _ \/ _` | | | | __| | |_| | | | |\/| | |_) ||_ \
| |_) | __/ (_| | |_| | |_| | _| |_| | | | | __/___) |
|____/ \___|\__,_|\__,_|\__|_|_| \__, |_| |_|_| |____/
|___/
______________________________________________________________
| |
| Edit Metadata of MP3 files based on file name |

View File

@ -5,13 +5,9 @@ certifi==2017.4.17
chardet==3.0.4
eyeD3==0.8
idna==2.5
musicbrainzngs==0.6
musictools==2.1.4
mutagen==1.38
packaging==16.8
pyparsing==2.2.0
requests==2.17.3
six==1.10.0
spotipy==2.4.4
urllib3==1.21.1
youtube-dl==2017.6.5

View File

@ -1,12 +1,12 @@
from distutils.core import setup
setup(
name='music-tagger',
name='BeautifyMP3',
version='1.0.0',
packages=[''],
url='https://github.com/yash2696/MP3Repair',
url='https://github.com/yash2696/BeautifyMP3',
license='MIT',
author='Yash Agarwal',
author_email='yashagarwaljpr@gmail.com',
description=''
description='A tool to automatically fix MP3 file metadata and filenames.'
)