Skip to content

Tags

, ,

Ubuntu handbook has instructions on how to get Airplay up and running on a Linux box.

With these instructions, here is what I did for my desktop.

$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC662 rev3 Analog [ALC662 rev3 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: Dock [OWC USB-C Dock], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 4: Microphone [AUVM01F Rocket USB Microphone], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0

Most of my sound comes out of the USB-C dock, so this device is what I wanted for sound output. The relevant entries from the next terminal command are:

$ aplay -L
. . .
hw:CARD=Dock,DEV=0
OWC USB-C Dock, USB Audio
Direct hardware device without any conversions

plughw:CARD=Dock,DEV=0
OWC USB-C Dock, USB Audio
Hardware device with all software conversions

sysdefault:CARD=Dock
OWC USB-C Dock, USB Audio
Default Audio Device
. . . 

After installing shairpoint-sync, I then edited the /etc/shairport-sync.conf file to change to the output device to specific hardware:

alsa =
{
output_device = "hw:CARD=Dock,DEV=0";

Avahi was already running on my desktop, so sudo systemctl restart shairport-sync.service got shairport-sync up and running right away.

Previously, Airplay had not worked on the desktop because I could not figure out the correct output device (selecting Pulse Audio, or PA, as the output was not finding the right hardware output). This guidance helped on entering the hardware output correctly. Excellent.

__ATA.cmd.push(function() {
__ATA.initVideoSlot(‘atatags-370373-6718952eb967a’, {
sectionId: ‘370373’,
format: ‘inread’
});
});

 

__ATA.cmd.push(function() {
__ATA.initDynamicSlot({
id: ‘atatags-26942-6718952eb96b6’,
location: 120,
formFactor: ‘001’,
label: {
text: ‘Advertisements’,
},
creative: {
reportAd: {
text: ‘Report this ad’,
},
privacySettings: {
text: ‘Privacy’,

}
}
});
});