737373

streaming audio around the house

June 11th, 2008 at 11:21AM in linux and music

Lately I've been really into listening to music, or at least just having it playing while I work or clean or whatever. Up until recently I've been using the excellent Jinzora streaming media server, which is a PHP-based web app that can either stream files via HTTP or control mpd. I've mostly been using the streaming feature, either I'd stream tunes to my desktop in the office and just turn up my computer speakers, or I'd set up my laptop somewhere (like out in the screenhouse) and hook it up to some random stereo that otherwise is sitting and collecting dust.

A couple weeks ago though I wanted to have music playing both in the house and out in the screen house. I wound up blasting music from the office and had the laptop out in the screenhouse, however they were of course not in sync at all, so as you came inside you'd be hearing a completely different song. It was mainly a problem if you stood in just the right spot in the backyard, where you could hear two different songs playing at any given time. Pretty awful I thought.

Since then I've been looking for a better setup. I've tried:

  • slim server - which worked pretty good, but the Java WebStart program that behaves like a slim server client refused to run on my 64-bit Linux desktop. I also really didn't want to shell out any cash for the hardware devices, though they're a nice-to-have.
  • VLC - I wanted to try and get multicast working so I could sync several VLC clients together, but streaming over multicast seemed to completely suck, regardless of how I configured the server I couldn't get anything but a choppy stream. Also I didn't really find a good way to automate the server, or have it behave like a constant stream that I could just connect clients to.
  • Jinzora controlling mpd - Problem here is that Jinzora's controls for MPD are pretty basic, and I've been finding that my little server has been getting more and more sluggish with more recent Jinzora releases.

I finally settled on mpd using gmpc to control it. The music server outputs to both the soundcard on my server and to icecast2. And gmpc lets you toggle which output to use, either the stream, soundcard or both. This means I can still stream music from home to work (or wherever else I can get a wifi connection), and from the basement out to the screen house, but I can also have multiple clients connected to icecast2 streaming the same playlist relatively in sync. Or, I can have music playing out of the server (connected to a receiver currently in the basement hooked up to speakers pointing up at the basement ceiling) and streamed to my laptop in the screenhouse, though there's some latency between what comes through the soundcard and what comes through the stream.

I'm also using mpdscribble to submit track info to last.fm. I'm not sure why I care about submitting tracks, but it's kinda cool to see trends in what kind of music you're listening to.

The only downside is that my wife's Windows Vista laptop so far absolutely refuses to play the stream, and I haven't bothered getting an mpd client downloaded onto it, but who cares about that anyway?

2 Comments. Comments Closed!

iestyn

Jun 16th, 2008 at 9:57AM

I just got a wireless speaker/headphone combo at home depot. It's a glorified baby monitor that you can plug in to the line out jack of the computer. I have a speaker in my kitchen, one in the sunroom, and I took the headphones apart and wired the outputs into the line in of one of my main stereo receiver inputs. I got no latency. And it sounds OK for Skynyrd, for sure.

Stan

Jun 18th, 2008 at 10:20AM

You know, that's a really good idea, I'm gonna have to look into that. I was thinking of just picking up even just an FM transmitter, since all the stereos around here have radios in 'em. That'd beat the heck out of running wires through the walls or whatever. Hmmm...