HOWTO: Stream your music library to your iPod with MPD (part 2/2)

posted in technology | 0 comments

Cat meme

To begin:

In part 1 of this guide, I laid down the basic groundwork to enable audio streaming from your Linux installation and onto your iDevice. While I was able to get both MPD and Icecast functioning and communicating with relatively little trouble, I ran into a brick wall as I tried the final, trivial step of connecting to my Icecast server via the MPoD app on my iPod.

In hindsight I probably glossed over all of the existing documentation, copied and pasted from pre-existing configurations floating around the Internet and just plain pushed buttons randomly. This thankfully doesn’t detract from the first part of this guide because it really does help you get MPD and Icecast functioning on your machine.

To fix this requires a spot of methodical troubleshooting. For the record, my convoluted internal IP assignment goes something like this:

192.168.1.100 - laptop
192.168.1.101 - iPod
192.168.1.250 - router

Let’s get this ball rolling in grand style:

[mark][~] $ icecast2 -b -c .icecast/icecast.xml
Starting icecast2
Detaching from the console
[mark][~] $ mpd
[mark][~] $

Navigating to 192:168.1.100:8000 in Chrome opens the Icecast status/admin page. I can get it locally. I can open it on my iPod in Safari. Double great, grand. Minor “however”: Icecast doesn’t report MPD as a connected source?

source_client_connections 0

My next step is to kill both Icecast and MPD so I can compare their configurations. Are their passwords and other miscellaneous in sync?

MPD:

music_directory         "/mnt/windows/Users/Mark/Music"
playlist_directory      "~/Music/Playlists"
db_file                 "~/.mpd/tag_cache"
log_file                "~/.mpd/log"
pid_file                "~/.mpd/pid"
state_file              "/var/lib/mpd/state"
...
audio_output {
          type            "shout"
             encoding        "ogg"    
             name            "RAWR"
             host            "192.168.1.100"
             port            "8000"
             mount           "/mpd.ogg"
             password        "littlewood"
             bitrate         "128"
             format          "44100:16:1"
             protocol        "icecast2"
             user            "mark"
             genre           "the works"
             public          "no" 
             timeout         "2" 
}

Icecast:

<authentication>
      <!-- Sources log in with username 'source' -->
      <source-password>littlewood</source-password>
      <!-- Relays log in username 'relay' -->
      <relay-password>mediumwood</relay-password><br />
      <!-- Admin logs in with the username given below -->
      <admin-user>admin</admin-user>
      <admin-password>bigwood</admin-password>
</authentication>

Rinse and repeat this

I tweaked the config files slightly by changing MPD from running at 127.0.0.1:6000 to 192.168.1.100:6000, and tweaking the passwords. Let’s kill them all and start anew…

[mark][~] $ killall mpd && killall icecast2

…and a quick glance at MPoD after my program shows it all working (currently as a remote, but still!). MPoD is connected to 192.168.1.100:6000: under password littlewood.

Music streamed to iPod Touch

/glee

by Mark on
Tagged: , , , , , , , , , , ,

Say something

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>