I've been working for some time to digitize my family's music
collection, and I'm pleased to be mostly done with hundreds of CD's
ripped, tagged, and served on my home network.
The latest piece is a DAAP server for the Apple devices. There are
only a couple for Linux that have seen any recent development, so I
settled on forked-daapd.
There is also dmapd, which could be
excellent. However, neither one had an ebuild available, and so if I
was going to do a source build of a large project, I chose the one
with the most recent activity.
I succeeded in the manual build, and iTunes found my library
immediately. I wanted to go a step further and prepare an ebuild. I
gave it a new overlay, also, since the Gentoo leadership advocates
"themed overlays" instead of "Erik's-super-cool-stuff" type of
overlay.
Here is the overlay in a browsable and cloneable form. I may
get it into layman, and I may also make future efforts to keep up with
the version bumps, especially since the next version promises some mpd
integration.
The digitizing stack
I haven't written yet about this effort, so here's the stack I use:
- abcde for ripping and
encoding. I encode to 192 bit, mp3 format. If I was starting all
over I'd choose ogg but I've made this patented bed, and now I can
sleep in it.
- Picard for tagging.
Picard is pretty outstanding for this, since it can harness the
fingerprint-matching capabilities of the MusicBrainz project.
- An external USB hard drive, as an archive. Dull as it sounds,
I treat this as the "golden copy" of the media, and so it is storage
and nothing else.
- MediaTomb as a DLNA/UPnP
server. I run this in a container on my home server. My PS3 finds it
with no problems, and Windows machines do also. I plan to rebuild
this container at some point to a) bind-mount the media directory
which is now shared with another container, and b) use the MySQL
backend since the SQLite backend is maybe too pokey for a collection
my size.
- As noted above, forked-daapd for the Apple devices. This runs
in a container on the home server. I have the actual media on a
large logical volume (LVM) on the host, and then bind-mount it into
the small container. The mount is read-only so I can be assured
that the daemon will never corrupt the precious media files.
Never done
When I say it's pretty much done, that means the media is
accessible and my wife is impressed, no easy feat. Remaining tasks
include the MediaTomb rebuild mentioned above, and also lots of tag
cleaning. Specifically, I have a couple of classical box sets where
the four discs didn't receive the same tags, and so they look like
four releases. Also, there are errors.
End the madness
There are too many devices at my house, and something always needs
fixing. I've set a moratorium on getting new devices because the
sysadmin overhead gets unwieldy. Remind me to blog about the VOIP
setup...
Summary
This has been a nice way to wind down a large project. I hope
someone else finds this useful, and considers the ebuild.