Over the years I've collected a few sound effect libraries, mostly random CDs/DVDs/downloads. One of the libraries I did pick up is all four volumes of Digital Juice's SoundFX. The price was right and the quality seemed really high. But in all the many years I've owned it I've only used it a few times. Not because the sound I wanted was or wasn't inside of it -- I didn't use it because the Jucier database software is pretty much unusable. The requirement of using the Juicer (and it's very broken search engine) and the fact it had no way to work with a complete copy of the DVDs on a hard drive meant that the process of using it involved so many steps it was never worth it.
After completing a recent project, where having those four SoundFX libraries available and searchable would have actually helped, I decided it was time to do something about it. The Juicer uses a SQlite database to store all its information about your collection. SQLite databases are very open and easy to work with. There are lots of tools and I have a fairly extensive amount of experience with it. It wasn't that hard to figure out their database table format. This gave me a mapping from the file names they used on disc, things like 47267_SFX.wav and the actual name (in this case Slow Thunder). So I wrote a PHP script (yes it's a scripting language you can run locally on your PC) to open the Juicer database, extract the mapping between nice names and the filenames, then walks a directory and rename any files it finds that match. So for example:
47267_SFX.wav
47266_SFX.wav
47265_SFX.wav
47264_SFX.wav
47263_SFX.wav
Becomes
47267_SFX_Slow Thunder.wav
47266_SFX_Science Fiction Laser Space Ship.wav
47265_SFX_Science Fiction Blaster Shield Deflector.wav
47264_SFX_Multimedia Laser Blast Sweeper Glitch.wav
47263_SFX_Multimedia Beep Squeaky Feedback.wav
And everything stays in the directory structure (which was already decent).
I then whipped up a tiny batch file that would wait for a key press, then copy a DVD to a directory on my hard drive, then when done play a sound and eject the DVD. I ran this on a loop so I could fed each of the many DVDs in the 4 volumes of the SoundFX library to my hard drive, producing one giant 202GB directory of badly named sounds. I then ran my PHP script which renamed everything into names that I can now search with IFoundASound or SoundMiner or anything that can index filenames.
There was some other keyword data in the Juicer file but I decided it wasn't worth trying to figure out how to get at that. I didn't want to modify the files in anyway to add more metadata. Just having the full descriptive file names seemed more than enough. It's possible this was a waste of my time, someone else may have already done it or perhaps DJ actually has a solution for this problem and I didn't see it. But I have to admit I'm pretty happy with how it turned out. I beat the Juicer. < insert 05375_SFX_Evil Laugh Male.wav >
After completing a recent project, where having those four SoundFX libraries available and searchable would have actually helped, I decided it was time to do something about it. The Juicer uses a SQlite database to store all its information about your collection. SQLite databases are very open and easy to work with. There are lots of tools and I have a fairly extensive amount of experience with it. It wasn't that hard to figure out their database table format. This gave me a mapping from the file names they used on disc, things like 47267_SFX.wav and the actual name (in this case Slow Thunder). So I wrote a PHP script (yes it's a scripting language you can run locally on your PC) to open the Juicer database, extract the mapping between nice names and the filenames, then walks a directory and rename any files it finds that match. So for example:
47267_SFX.wav
47266_SFX.wav
47265_SFX.wav
47264_SFX.wav
47263_SFX.wav
Becomes
47267_SFX_Slow Thunder.wav
47266_SFX_Science Fiction Laser Space Ship.wav
47265_SFX_Science Fiction Blaster Shield Deflector.wav
47264_SFX_Multimedia Laser Blast Sweeper Glitch.wav
47263_SFX_Multimedia Beep Squeaky Feedback.wav
And everything stays in the directory structure (which was already decent).
I then whipped up a tiny batch file that would wait for a key press, then copy a DVD to a directory on my hard drive, then when done play a sound and eject the DVD. I ran this on a loop so I could fed each of the many DVDs in the 4 volumes of the SoundFX library to my hard drive, producing one giant 202GB directory of badly named sounds. I then ran my PHP script which renamed everything into names that I can now search with IFoundASound or SoundMiner or anything that can index filenames.
There was some other keyword data in the Juicer file but I decided it wasn't worth trying to figure out how to get at that. I didn't want to modify the files in anyway to add more metadata. Just having the full descriptive file names seemed more than enough. It's possible this was a waste of my time, someone else may have already done it or perhaps DJ actually has a solution for this problem and I didn't see it. But I have to admit I'm pretty happy with how it turned out. I beat the Juicer. < insert 05375_SFX_Evil Laugh Male.wav >