USB I/F to Icecast2

alsa

My rig, IC-7410, has a USB I/F for sound output and rig controls. The USB sound captured with your PC can be fed into Ices, a source client to provide an audio stream to, Icecast2, a streaming server, via Alsa. Let’s see how Alsa recognizes your USB I/F.

% arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: MID [HDA Intel MID], device 0: ALC889 Analog [ALC889 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: MID [HDA Intel MID], device 2: ALC889 Alt Analog [ALC889 Alt Analog]
  Subdevices: 2/2
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
card 1: CODEC [USB Audio CODEC], device 0: USB Audio [USB Audio]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

You can see that, in this particular case, the USB Audio is at card 1 and device 0, or hw:1,0 in alsa terminology.

% cat ices.xml
        <input>
            <module>alsa</module>
            <param name="rate">44100</param>
            <param name="channels">2</param>
            <param name="device">hw:1,0</param>
            <!-- Read metadata (from stdin by default, or -->
            <!-- filename defined below (if the latter, only on SIGUSR1) -->
            <param name="metadata">1</param>
            <param name="metadatafilename">test</param>
        </input>

Then you will start both ices and icecast2.

% ices ices.xml
% icecast -c icecast.xml

Leave a Reply

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