PipeWire: Difference between revisions

Bmillwood (talk | contribs)
reflecting new default status
No edit summary
Line 67: Line 67:


It is possible change a particular user instead of system-wide, with adding this to <code>~/.config/wireplumber/bluetooth.conf.d</code> (<code>~/.config/wireplumber/bluetooth.lua.d</code> for wireplumber 4.X and below) instead, manually or using [[Home Manager]]. Refer to [https://wiki.archlinux.org/title/PipeWire ArchWiki] for possible configurations, as well as the [https://docs.pipewire.org/ Full Documentation].
It is possible change a particular user instead of system-wide, with adding this to <code>~/.config/wireplumber/bluetooth.conf.d</code> (<code>~/.config/wireplumber/bluetooth.lua.d</code> for wireplumber 4.X and below) instead, manually or using [[Home Manager]]. Refer to [https://wiki.archlinux.org/title/PipeWire ArchWiki] for possible configurations, as well as the [https://docs.pipewire.org/ Full Documentation].
==AirPlay/RAOP configuration==
Remote Audio Output Protocol, branded as AirPlay, is the apple-developed wireless audio stack used in apple devices, many "smart speakers" and similar appliances as well as several open source implementations. It's based on RTSP, streams in PCM and is supported natively by PipeWire. With the following configuration AirPlay servers on your local network should be automatically added as output devices.
<syntaxhighlight lang="nix">
# avahi required for service discovery
services.avahi.enable = true;
services.pipewire = {
  # opens UDP ports 6001-6002
  raopOpenFirewall = true;
  extraConfig.pipewire = {
    "10-airplay" = {
      "context.modules" = [
        {
          name = "libpipewire-module-raop-discover";
          # increase the buffer size if you get dropouts/glitches
          # args = {
          #  "raop.latency.ms" = 500;
          # };
        }
      ];
    };
  };
};
</syntaxhighlight>
Note that to set up an airplay server as opposed to a client, separate software is required.


==Graphical tools==
==Graphical tools==