2010年7月3日土曜日

ALSA: samplerate_best

I am using MPD (music player daemon) for my music jukebox: a sheevaplug with an Audiophile USB attached to it.
On Ubuntu, the Audiophile USB is recognized as:

$ cat /proc/asound/cards
 1 [tm             ]: USB-Audio - Audiophile USB (tm)
                      M-Audio Audiophile USB (tm) at usb-orion-ehci.0-1, full speed

The following configuration is working well.

/etc/asound.conf:
defaults.pcm.rate_converter "samplerate_best"
pcm.!default {
        type plug
        slave.pcm hw
}

in /etc/mpd.conf:
audio_output {
        type                    "alsa"
        name                    "M-Audio Audiophile USB"
        device                  "plughw:1,0"     # optional
}

I am not very sure, but it seems that alsa is correctly avoiding needless sample rate
conversion.

Playing 48Khz source:
$ cat /proc/asound/card1/stream0
M-Audio Audiophile USB (tm) at usb-orion-ehci.0-1, full speed : USB Audio

Playback:
  Status: Running
    Interface = 2
    Altset = 5
    URBs = 2 [ 1 1 ]
    Packet Size = 192
    Momentary freq = 48000 Hz (0x30.0000)
...

Playing 44.1Khz source:

$ cat /proc/asound/card1/stream0
M-Audio Audiophile USB (tm) at usb-orion-ehci.0-1, full speed : USB Audio

Playback:
  Status: Running
    Interface = 2
    Altset = 5
    URBs = 2 [ 1 1 ]
    Packet Size = 192
    Momentary freq = 44100 Hz (0x2c.199a)
  Interface 2
...

And an MPD client, Minion, makes MPD manipulations so comfortable. :-)
The only thing I badly want for MPD is practical cue sheet support :-(



2010年7月2日金曜日