Music library organizer and id3 tag manager
Longtang is a command-line software based on actors model capable of processing any sloppy mp3 collection that you have into a well-organized, easy-to-locate tagged media library.
Why should I use it?
Because it will save you a HUGE amount of time by:
- Tagging all your mp3 files with the right ID3Tag information.
- Downloading album cover art (New feature!!)
- Decompressing and tagging any zip, rar or 7z file that you have with music on it transparently.
- Creating a hierarchical media tree organized by artists and albums.
- Naming all files in a simple and yet clear syntax.
- Detecting tag issues that prevent files from being accurately classified.
- Avoiding any stranded or unknown music files inside any portable music player (which usually happens in Creative Zen players, just to name an example) which take up storage space and are not easily detected.
Before proceeding with the installation, please check if your system already has the following packages installed:
- Python 2.7.x and headers (python-dev)
- Chromaprint tools (libchromaprint-tools)
- Libevent headers (libevent-dev)
- Libxml (libxml2-dev and libxslt-dev)
- unrar and 7z commands available within your system PATH
1. Using the source code
Checkout the source code:
git clone https://bitbucket.org/gszeliga/longtang.git
Execute the setup utility as follows:
python setup.py install
2. Using pip
Just type on your command line:
pip install longtang
The main binary is called longtang (as you can imagine) and it accepts the following parameters:
Source path where all the to-be-processed files are located.
Target path where the hierarchical structure will be created.
Level of debug information to be printed. Accepted values are: DEBUG, INFO, WARN or ERROR. Default value is NONE.
(Optional) Whether you want Longtang to override any id3tag information on the source music files. Bear in mind that if the amount of files is high it will turn the process to be real slow.
(Optional) Since any missing id3tag information will be retrieved using Acoustid service, maybe you might be interested in not performing this action and just handle your media collection with the already existing id3 information and point out any failure during the process.
(Optional) Disables resolution of all cover art from all matched artists and albums.
Prints out help information.
What’s coming next?
Well, i currently have a lot of ideas but, in a short term, i’m thinking in:
- Supporting more music formats: ogg, mpc, flac and so on.
- Porting source code into Python 3.
- Replacing gevent with multiprocessing library so that we gain execution parallelism (take a look at branch features/multiprocessing for further details).
Bugs and Feedback
You can contact me at firstname.lastname@example.org or follow me on twitter: @gszeliga