-
Notifications
You must be signed in to change notification settings - Fork 1
offline empeg database and filesystem constructor
License
empeg/mp3tofid
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
<html> <head> <title> mp3tofid README </title> </head> <body> <font face="Verdana,Arial,Helvetica" size=2> <h2>mp3tofid README</h2> mp3tofid is a Linux utility that will convert your directory tree of MP3 files to FID's, ready for uploading to your empeg using rsync, or any other uploading tool. mp3tofid and <a href="http://rsync.samba.org/"> rsync</a> together will enable you to synchronise any change you make to your MP3 directory to your empeg automatically and efficiently. <p> mp3tofid will create a directory structure filled with symbolic links to your MP3's and FID playlists that reflect your directory structure. You can create additional playlists by just making symlinks inside your MP3 directory tree. These symlinks may be either target MP3's or directories containing MP3's. Make sure these symlinks stay inside this directory tree, or your FID playlists will be invalid. symlinks should not nest. <p> mp3tofid will calculate the target FID number based on the inode number of your MP3 file. So if you rename or move your MP3's, your MP3 will not need to be reuploaded, as its FID number remains the same. If you change ID3 tags, rsync will make sure only the differences between old and new files are transmitted. <p> But even if a file has to be transferred completely, rsync still is faster than emplode. And it is very stable; I uploaded 70 GB in one run. And if you can't wait for an upload, just interrupt it; rsync will pick up where it has left the previous run. <p> mp3tofid and rsync completely bypass emplode, now even for building the player database. mp3tofid will build it in seconds on a beefy Linux box, rather than in tens of minutes on your player. <p> You'll need rsync both on your player and on your PC. rsync is usually distributed with your operating system. For the player, you can find it <a href="http://www.macroscoop.nl/~pim/empeg/rsync/">here</a>. <p> Here's how I use mp3tofid and rsync:<br> My MP3's live in /mp3.<br> My FID tree is in /home/pim/empegfids.<br> I convert my MP3 tree using <pre> mp3tofid -Ii /mp3 /home/pim/empegfids </pre> The target directory must exist. The first run runs at about 75 GB per hour on my PC. Next runs take less than a minute, if nothing much has changed. <p> I use my Linux box as an rsync server, and my empeg as an rsync client. Here's how I set up my /etc/rsyncd.conf file: <pre> [empegfids] path = /home/pim/empegfids read only = yes hosts allow = myempeg.mydomain.com use chroot = no </pre> On my empeg, I run this script: <pre> #!/bin/sh rsyncserver=192.168.23.45 modulename=empegfids set -x swapon -a rwm rsync \ $@ \ --times \ --delete \ --verbose \ --recursive \ --copy-unsafe-links \ --exclude=config.ini \ --exclude=lost+found \ ${rsyncserver}::${modulename}/drive? / rom swapoff -a </pre> That's it. Restart the player by pressing CTRL-D. Or just power cycle it. <h3>Testing</h3> If you follow this example, <b>ALL of your existing music will be removed.</b> If you want to see what rsync would do without actually doing it, add the option <b>--dry-run</b>. In order to test this software, I recommend you rename your existing fid directories on your empeg and create new ones. This will preserve your music in case you prefer emplode after all. Then upload a small batch to see if everything works. You can still use emplode to make changes afterwards, but mp3tofid/rsync will undo all these changes later. <h3>Command line options</h3> -h: show help<br> -v: show version<br> -i: ignore case in sorting<br> -I: "intelligent" sorting: ignore "The", "A" and "An"<br> -2: percentage of FID's to put on second drive. Default is 50<br> -b: compensate a broken second drive. skip all tunes on this drive<br> -s: spread playlists across both drives. by default, all playlists go in /drive0/fids<br> -d: debug option. Default "sSm"<br> -n: start with a new inode-to-fid database. This will optimize fid number allocation, but require all tunes to be re-uploaded. Use with caution.<br> -o: use old player directory structure. This is required for player versions older than 2.0b13, and is also necessary for correct hijack playlist generation (until mlord fixes this)<br> <p> debug options:<br> d: show directories being scanned<br> i: show inode database operations<br> m: show MP3's being scanned<br> M: show MP3's being skipped<br> r: show fids being removed<br> s: show stages of program<br> S: show statistics<br> <h3>Requirements</h3> In order to compile mp3tofid, you need <a href="http://mad.sourceforge.net/">libmad</a> <p> libmad comes with Red Hat 7.3 as an RPM, which installed nicely on my RH 7.1 system. Since version 2.00, mp3tofid uses libid3tag instead of id3lib. libid3tag is written in C rather than C++ and is included with libmad. <p> <h3>Bugs and limitations</h3> <li>only MP3 support. No wav/wma/ogg/whatever support. <li>no support for special attributes, like "ignore as child" <li>no playlist consistency checking (yet) <li>no warning for or disabling of untagged MP3 files (yet) <li>MP3 scanning could be much faster, probably <li>there's no man page <li>no checking for tags that are too long or contain newlines <h3>Licensing</h3> mp3tofid is released under the GPL. Please read the file named COPYING. <h3>Author</h3> <a href="mailto:[email protected]">Pim Zandbergen</a> </font> </body> </html>
About
offline empeg database and filesystem constructor
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published