12

After upgrading from PulseAudio to PipeWire my sound devices now feature the "Pro Audio" profile however I've Googled for it and haven't found anything interesting. You can find it by running PulseAudio Volume Control and see it under the Configuration tab for your devices.

Would be nice if someone could, I don't know, glance over PipeWire sources (I'm not a C programmer per se and I don't really understand digital audio aside from the very basics) and explain what it is and why the user may want to use it instead of e.g. something which is offered by default.

muru
  • 69,900
  • 13
  • 192
  • 292
Artem S. Tashkinov
  • 26,392
  • 4
  • 33
  • 64
  • @muru why did you delete the `sound-card` tag? It's a tad more specific and pertinent than `audio`, I believe. – Artem S. Tashkinov Oct 29 '21 at 05:32
  • Why do we need it? What's it supposed to be for? Physical cards? Virtual cards? Software representations of cards? What does it have to do with this question anyway, which is about audio profiles in Pipewire? – muru Oct 29 '21 at 05:34
  • @muru "Physical cards? Virtual cards? Software representations of cards?" Yes, yes, yes. Audio profiles **for Sound Cards**. https://i.stack.imgur.com/vwrSb.png – Artem S. Tashkinov Oct 29 '21 at 06:49
  • The irony being your screenshot says "Audio Controllers" – muru Oct 29 '21 at 07:09
  • This how this application calls physical sound cards. OK, suit yourself, you seem to know better. "Audio" at least in my world relates to a bitstream containing audio data. – Artem S. Tashkinov Oct 29 '21 at 07:27

2 Answers2

18

The Pro Audio profile provides "raw device access with the maximum number of channels and no mixer controls" (from the release notes with the feature).

Based on the code creating this profile, it looks like it adds direct mappings from each PCM device provided by ALSA to a corresponding input or output channel in PipeWire. This is in contrast with higher-level options such as the ALSA Use Case Manager, which would associate some of these channels to particular combinations of device type and verb (e.g. "Mic" and "Voice Call", respectively).

The main reason someone might want to use the Pro Audio profile is to access all the channels of interfaces with more than a single stereo input/output; for example, a USB mixer with 8 channels, which may not all be usable through the default profile. By using Pro Audio, these extra channels could be connected to various other applications with PipeWire's graph architecture.

Here's an additional source describing the use of PipeWire for professional audio work, showing that not all channels are available by default.

Peter F
  • 506
  • 4
  • 7
-2

Those Pro Audio slots are to pipe audio to other apps, thereby turning your OS into a digital audio workstation. This is the point of JACK/ JACK2, Carla, and to a certain degree, Pipewire as well.

Pulseaudio has the pipe functionality as well, but it is sort of hidden and much less intuitive. The modules in pulse are the same thing as the cards in other servers. They are shared memory slots with specific permissions/ purposes attached. Technically, you could run pulseaudio and pipewire alongside each other.

Nate T
  • 113
  • 6
  • I have more to add. I have an image which will explain the `OS as a digital audio workstation` concept better than I can. I am editing it down now. It is way too large to post as is. – Nate T Nov 09 '21 at 14:50
  • PipeWire is meant to replace PulseAudio. I've no idea why you needed to insult me. Also, you do **not** answer the question. – Artem S. Tashkinov Nov 09 '21 at 15:18
  • @NateT, be careful that your answers aren't asking further questions of the OP. The question here is "explain what it is and why the user may want to use it", which your answer should focus on. – Jeff Schaller Nov 09 '21 at 16:32
  • @JeffSchaller Thank you. I'll Update. This answer actually started as a comment. Then it became 2, and I decided to port it to the answer box. Evidently I didn't spend enough time editing to the format. I will fix it today. Thanks again for the feedback. – Nate T Nov 10 '21 at 08:21
  • @ArtemS.Tashkinov I am confused by your comment. I just tried to edit my answer to remove anything that could be taken as an insult, but I can't find anything. If you were insulted by something I wrote, I am truly sorry. I was sincerely just trying to help, as pro audio is currently central to my linux setup and the reason I switched to linux. Please let me know what insulted you and I will remove it right away. – Nate T Nov 10 '21 at 08:34
  • I just found the original in another tab. I should have worded better. Please know that I didn't mean to insult you. Again, I apologize for coming off that way. Look up the term "carla linux audio." From what Ive read online, I believe this app will be packaged with pipewire in the near future (although it is just hints at this point so take it with a grain of salt.) Once you see how `carla` works, you will understand the purpose of the slots. A profile is just inputs and outputs. – Nate T Nov 10 '21 at 08:48
  • "Those Pro Audio slots are to pipe audio to other apps" is incorrect. OP is talking about the device profiles that expose the channels independently, as correctly pointed out by the accepted answer. The rest of this answer has nothing to do with OPs question anyway. – istepaniuk Jan 13 '23 at 22:07