aliquote.org

October 27, 2024

I was going to spent some times trying to output the sound of my built-in speakers to my old Apple TV which is connected via a DAC to my wi-fi system, until I realized it is as simple as loading Pipewire RAOP module, pactl load-module module-raop-discover. Then, launch pavucontrol and switch to your Airplay device.

img

The Airplay system is now listed in the list of available devices.

» wpctl status
PipeWire 'pipewire-0' [1.0.5, chl@aliquote, cookie:758904776]
 └─ Clients:
        32. WirePlumber                         [1.0.5, chl@aliquote, pid:1915]
        33. WirePlumber [export]                [1.0.5, chl@aliquote, pid:1915]
        34. pipewire                            [1.0.5, chl@aliquote, pid:1916]
        54. gnome-shell                         [1.0.5, chl@aliquote, pid:2575]
        55. GNOME Shell Volume Control          [1.0.5, chl@aliquote, pid:2575]
        56. GNOME Volume Control Media Keys     [1.0.5, chl@aliquote, pid:2728]
        57. xdg-desktop-portal                  [1.0.5, chl@aliquote, pid:3033]
        58. Music Player Daemon                 [1.0.5, chl@aliquote, pid:1905]
        64. Mutter                              [1.0.5, chl@aliquote, pid:2575]
        65. gsd-power                           [1.0.5, chl@aliquote, pid:2732]
        81. pipewire                            [1.0.5, chl@aliquote, pid:1916]
        88. Firefox                             [1.0.5, chl@aliquote, pid:82644]
       102. speech-dispatcher-dummy             [1.0.5, chl@aliquote, pid:90304]
       103. wpctl                               [1.0.5, chl@aliquote, pid:90700]

Audio
 ├─ Devices:
 │      50. Built-in Audio                      [alsa]
 ├─ Sinks:
 │  *   51. Built-in Audio Analog Stereo        [vol: 0.28]
 │      66. Apple TV Salon                     [vol: 1.00]
 ├─ Sink endpoints:
 ├─ Sources:
 │  *   52. Built-in Audio Analog Stereo        [vol: 1.00 MUTED]
 ├─ Source endpoints:
 └─ Streams:
        59. Music Player Daemon
             61. output_FL       > Apple TV Salon:send_FL       [active]
             63. output_FR       > Apple TV Salon:send_FR       [active]
        82. speech-dispatcher-dummy
             98. output_FR       > ALC3254 Analog:playback_FR   [init]
            101. output_FL       > ALC3254 Analog:playback_FL   [init]

We can even make it the default output audio channel:

img

Now, since Pipewire supports multiple streaming output devices, much like mpd, I just need to configure the audio source in their config files to get everything right for the next time.