The Music Library Management blog has moved!

Please visit:
http://www.blisshq.com/music-library-management-blog/
and update your bookmarks.

Showing posts with label vortexbox. Show all posts
Showing posts with label vortexbox. Show all posts

Saturday, 8 May 2010

New release: build 20100502

A few minor-ish bug fixes this week.

I introduced the 'why?' link to the album grid a few weeks ago. Before, when revealing the details of what made an album compliant, the details inherited the tick or cross icon from the overall compliancy. Now, the tick or cross is related to the detail. Generally speaking, if just one detail has a cross (is uncompliant) then the whole album is.

I also did some work to improve the startup experience for VortexBox users using bliss. VortexBox is a home jukebox appliance. Andrew at VortexBox has set bliss up as a beta integration. With just a couple of commands you can add bliss to your VortexBox, and have it managing its album art. Read more here and here.

The new versions are available in the usual place!

Tuesday, 13 April 2010

Automatic digital music workflow with VortexBox - (part three) ripping, tagging and album art

I've been trying to streamline my digital music workflow. That is, remove as many manual steps from my current CD-to-FLAC workflow as possible:

I've been using VortexBox to automate these steps. In previous blog posts I've described how to install VortexBox in a VMware home server environment and how to integrate VortexBox with an existing music collection. This week I complete the story by describing my new digital music workflow, from CD to FLAC to listening pleasure.

I start by inserting a CD, but instead of inserting it in the VortexBox's CD drive, I insert it in my laptop's. Because this is a virtualised home server, and the VortexBox runs inside a VMware virtual machine, I can link my laptop's CD drive so it appears to be the VortexBox's, and the VortexBox proceeds none-the-wiser. A real concern for home server users is access to the home server. If the server with VortexBox is elsewhere in the house, perhaps in an attic, basement, locked cupboard or similar it can be tedious to access it and add and swap CDs, so it is useful to reuse the CD drive on more accessible computers.


Choose 'Client Media', 'Connected' and then choose the CD drive you wish to use. You must have VMware Tools installed in the guest to forward a CD device.

Now I insert a CD in my laptop and I watch the VortexBox ripper screen to make sure the rip is proceeding correctly. The screen updates with the progress of the rip:


You can see that the music has been automatically recognised. This means that as the digital music files are saved to the hard disk they are tagged so that Squeezebox and other music players can display the correct album name, artist name, track name and so on.

What about album art? VortexBox has its own facility for fetching album art, but I'm going to use bliss. If I take a look at bliss's activity, we can see that the new music has been automatically recognised, album art downloaded and installed as-per my album art rule.


Now the most important bit... listening to the music! VortexBox automatically rescans its internal Squeezebox Server when the rip is complete, so the new music, with its album art, shows up automatically too!


So that's it. Here's what I used to do to rip one CD:
  1. Insert CD
  2. Run 'abcde' on the command line
  3. Choose the tags from CDDB
  4. Copy the resulting FLACs to my music server
  5. If I have more CDs, go back to step 1
  6. Rescan the Squeezebox Server
Now, I:
  1. Insert CD
  2. Wait for the CD to pop out, if I have more CDs go back to step 1
blissful indeed...

Tuesday, 30 March 2010

Automatic digital music workflow with VortexBox - (part two) integration

I'm a process automation obsessive. Last week I started a three part series on improving my digital music workflow. I wanted to automate more parts of my workflow, from this:
To this:
Five steps down to one!

Recognising that VortexBox will do a large part of this for me, I installed VortexBox in my home network within a VMware 'virtual machine' and got VortexBox up and running. This is all pointless without having any music to play of course, so this week I integrate VortexBox into my existing music network by linking my digital music files to VortexBox. I then describe where bliss fits into the workflow, and finally and most importantly I get to play some music!

A quick warning: this post contains some specific Linux related techie language! All this is possible within Windows and Mac environments too, but my chosen home network technologies tend to be Linux based ones.

We already know from my previous post that VortexBox contains a Squeezebox Server for distributing music around the home. A Squeezebox Server is a piece of software that plays music from a directory on your computer's hard disc. So, to integrate my newly installed VortexBox with internal Squeezebox Server with my existing music, I need to link the nominated directory with my music. My music is already available from my NAS via NFS, so all I need do is 'mount' the NAS's music directory to the nominated directory on the VortexBox. To do this, first I make the music available from the NAS, then I perform the mount on the VortexBox to access the music.

To make the music available from the NAS I add an entry to /etc/exports, which lists all directories made available via NFS:

/mnt/media/music 192.168.0.5(rw,async,no_subtree_check)

This means: make the '/mnt/media/music' directory available to the computer with IP address 192.168.0.5 (the VortexBox, since I've configured it to have a static IP). The music files are available for reading and writing. More on the /etc/exports configuration file here. Then, I reload the configuration file as so:

sudo /etc/init.d/nfs-kernel-server reload

The music is now available from the NAS. Now, I need to mount this music. The directory that the VortexBox assigns to play music from is, by default, /storage/music/flac. So, to mount the music within the VortexBox:

mount 192.168.0.3:/mnt/media/music /storage/music/flac

This means: mount the '/mnt/media/music' filesystem on 192.168.0.3 (the NAS) at /storage/music/flac. Listing the contents of /storage/music/flac lists our music successfully! Now, I don't want to re-issue that mount command every time the VortexBox starts, so I add a line to /etc/fstab:

192.168.0.3:/mnt/media/music /storage/music/flac nfs rw,noatime 0 0

Now, every time VortexBox starts, it will mount the /storage/music/flac directory automatically so my music plays with no effort.

With the directory mounted, and the music files visible on the VortexBox, we can now tell the VortexBox's Squeezebox Server to 'rescan'. Rescanning is the process the Squeezebox Server undertakes to update its internal database and make music available for playback.

Rescan for victory


Where does bliss fit into this? bliss isn't dependent on Squeezebox Server or VortexBox, it works on the digital music files directly. As a result, I have kept bliss running on the NAS, co-located with the music files, rather than install it in VortexBox for now. That said, either configuration would be acceptable. Whenever I move music onto the NAS, bliss recognises the music and conforms the album art against my rules automatically. For instance, if I move an album over with no embedded album art but with a co-located image file, the image file gets embedded into the music files without me doing anything.

Now... the important bit - listening to the music! I started up SqueezePlay to test my work. After choosing the new Squeezebox Server with the 'Choose source' function I soon had music streaming in full FLAC quality.


And there we have VortexBox streaming my music around my house once more. Next week we complete the final steps in our digital music workflow when we setup ripping from CD, automated tagging and album art, and automatic rescanning of the Squeezebox Server.

Tuesday, 23 March 2010

Automatic digital music workflow with VortexBox - (part one) installation

I love being able to listen to my entire music collection throughout my home, in each room of my house. I can even listen to it at work, over the Internet. To get music throughout my house, I run Squeezebox Server. Squeezebox Server is jukebox software that distributes your music library and Internet radio across your home. The software is installed on my home server. A variety of music players in different rooms of my house connect to the Squeezebox Server to play music.

This works great, but listening to music is only part of a digital music workflow (albeit the most fun part!). I can find and play music easily, but what about the process of purchasing, ripping, tagging, organising, finding album art etc? Well it's less easy. My typical workflow at the moment is:

There's too much manual work in my digital music workflow. Most of it is related to ripping, using the manual ripper and tagger 'abcde'. To automate more of the process, I decided to try VortexBox. VortexBox is a combined automatic ripping and jukebox system that actually includes Squeezebox Server. It is essentially a full music operating system and can be installed on a bare-bones computer, replacing the existing operating system.

This is the first part of a three part series on, respectively, installing, configuring and integrating VortexBox into my home network and digital music workflow. By the end, the workflow I described above will (hopefully!) have changed to:
That's five manual steps down to one! Fingers crossed...

Part one - installing VortexBox
A quick warning: this section contains computer nerd jargon! Feel free to ask questions in the comments and I can attempt to explain further.

Currently, my home server runs Squeezebox Server in a virtual machine. Virtual machines are computers (also called 'guests') that run inside other computers (physical computers called 'hosts'). Virtual machines provide flexibility (they can be moved and power cycled separately to other virtual machines, even though they are running on the same physical computers) and lower power usage (in my case only one computer is required for all virtual machines; this server runs more than just a music system). The virtualisation software I use to run the virtual machines is VMware Server, on a headless Ubuntu Server 8.04 host.

So I created a new virtual machine for VortexBox. As far as VortexBox is concerned, as it is installing and running, it sees this virtual machine just as it would see a real, physical computer. First, then, we create a virtual machine in which we will install VortexBox:

Creating our VortexBox virtual machine

An important step is to configure networking for the VM from 'NAT' to 'bridged'. A bridged network makes the VM appear to be just like any other computer on the network and makes it easy for other computers and music players to connect directly to the VortexBox.

The network card should be 'bridged'

VortexBox is downloadable as an ISO that normally you would burn to a CD and then insert into the real, physical computer you intend to install VortexBox on. However, in our case we can skip that step and link our new virtual machine directly to the ISO. VMware does the work of making the ISO look like a CD to the virtual machine ('VM'). So, when the virtual machine is powered on, the VortexBox installation process starts just as it would with a real, physical machine. The linking of the VM to the ISO is done via the CD/DVD Drive options.

Linking the VM to the ISO. The ISO must be inside VMware's 'datastore'

Now we are finished setting up the VM, it's time to power on (virtually, of course!). We are greeted with the standard VortexBox installation menu:


VoxtexBox has a special option for installing to virtual machines. In the installer, choose "Install VortexBox on VMware or <30gb here="">". The difference is that this form of installation uses up much less space, and instead of repartitioning a virtual hard disk, it creates a directory in which music is stored. This is ideal in my use case, because I intend to link this directory to my NAS.

From here, the installation is simple. Once complete, VortexBox reboots itself, and starts successfully. When the startup is complete, we get:


See that URL in the terminal? Navigate to that URL in your browser of choice and you get the VortexBox web based interface:


(Eagle-eyed viewers will notice the IP addresses above are different - this is because I shutdown my server over night and finished this blog post the next morning by which time VortexBox had a different IP address. Shoot me.)

From this interface, you can access the Squeezebox Server, monitor the progress of automated ripping, configure MP3/FLAC mirror directories and more.

VortexBox is now installed, but there are more setup steps to go. We haven't improved our digital music workflow yet, but this will come when we link VortexBox to our existing music and enable automatic ripping. This will all be discussed in part two: integration.