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.
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:
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.