
rebuild_db
See what's new or get it at SourceForge.
Overview
This little program enables iPod shuffle users to finally get rid of all that iTunes or other complicated playlist management stuff. Due to the simple structure of the shuffle (compared to the »big« iPods), it is possible to use the player almost like any other USB flash MP3 player: You simply copy MP3 files onto it. You only need to run the rebuild_db program after you added or removed files from the iPod. This approach hasnumerous benefits:
You don't need iTunes, ml_ipod or GNUpod anymore. Simply copy some MP3 files into the iPod volume and start this teensy 8k program.
You aren't restricted to store your music in the /iPod_Control/Music subdirectory. Build your own directory and filename structure. Your iPod, your rules!
You may use the iPod on as many computers as you want.
The actual iTunes database is left untouched, your iPod should still work with iTunes, if you like. (Note that this wasn't true for me; my iTunes installation now refuses any co-operation with my iPod. But I'm pretty sure that this is due to my experimentation with the iTunes database, and not a side-effect of using rebuild_db.)
If you do not use the iPod_Control folder for your music, iTunes will not delete your files again without asking.
rebuild_db uses a quite sophisticated shuffle algorithm (»smart shuffle«) that arranges your tracks in a more uniform way.
Supported Platforms
rebuild_db comes in two flavors: A platform-independent python script, and a plain C Win32 console application.
The script requires some recent version of Python (tested with versions 2.2 through 2.4) and should work on any platform Python supports. This includes Linux, Windows, MacOS X and a large amount of other Unix-like systems.
The Win32 version is made for Windows users (obviously), and requires no additional installed software to work. Please note that it is not supported any longer and lacks many features. However, you may continue to use it if you don't need all the cool stuff like smart shuffle or custom rules.
Usage
Windows users should install Python first, because (as stated above) the Windows native version is now unsupported. Users of other operating systems (including Mac OS X) are likely to have Python installed by default.
First, initialize your iPod with iTunes (that is, give it a name, and enable its usage as a mass storage device). This is needed because the iPod shuffle, despite not really using the iTunes database, is checking for its presence. You do not need to copy any tracks to the iPod; just make sure that a hidden subdirectory with the name »iPod_Control« appears in the root directory of the iPod volume. You may even delete the iPod_Control/Music directory afterwards. If this does not work for you (e.g. because you don't have access to a computer that runs iTunes), you may also try this dump of my own iPod_Control directory.
Second, put your favorite MP3 files onto the iPod. Give them the names you like and arrange them in directories as you like. Only make sure that the names are not too long. (The total path length may not exceed 256 characters.)
Third, put rebuild_db.py into the iPod's root directory and start it. A double-click should do; if not, you have to open a terminal yourself and chdir to the iPod's root directory (i.e. the drive letter on Windows or /Volumes/NameOfYourIPod on Mac OS X) and start the script manually with `python rebuild_db.py'. The program will scan the iPod volume for playable files. It also creates file called rebuild_db.log.txt that contains the program's output messages. If you don't find error messages there, everything should be OK.
Finally, disconnect your iPod shuffle. Of course, you should do this safely, e.g. using the »safe removal of devices« icon in the Windows system tray, the Finder's eject button, or umount on Linux/BSD. You may now have some fun listening to your music :) If you want to add more music later (or delete other tracks that got too boring ;), go back to step 2.
If this is too confusing for you and you are a Mac OS X user, you may want to read the following (less technical, but slightly outdated) description written by a contributor.
No comments:
Post a Comment