-
-
Notifications
You must be signed in to change notification settings - Fork 93
Pipewire as a JACK Replacement #480
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from 1 commit
fe38f72
35ca3cf
13bc422
54c70f2
d2b253d
0598fb2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -6,3 +6,87 @@ summary: Configuration of sound systems on Solus | |||||||||
| # Sound | ||||||||||
|
|
||||||||||
| Solus comes with Pipewire configured by default. | ||||||||||
|
|
||||||||||
| ## Pipewire as a JACK Replacement | ||||||||||
|
|
||||||||||
| Firstly, install `pipewire-jack` | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| ```bash | ||||||||||
| sudo eopkg it pipewire-jack | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| Currently, using `pipewire-jack` as a `JACK` replacement is not as smooth as one would think. One must get their hands dirty a little to get JACK apps to behave appropriately 🛠 | ||||||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We don't use emojis this way. Please remove 🛠
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| ### Issues to be fixed | ||||||||||
|
|
||||||||||
| With no configuration pipewire will not be able to switch to the appropriate sample-rate for the project. | ||||||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. put pipewire in backticks, since you are referring to a package
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
|  | ||||||||||
|
|
||||||||||
| ### Configuration | ||||||||||
|
|
||||||||||
| Fortunately both the `pipewire` and `pipewire-jack` packages come with the configs we need. | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| Open up your terminal of choice and input the commands below | ||||||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Add a sentence here explaining what the string of commands will do, like: "The following commands copy the default configurations to your user configuration directory, where you can modify them."
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| ```bash | ||||||||||
| cd .config/ | ||||||||||
| mkdir -p pipewire/pipewire.conf.d/ | ||||||||||
| sudo cp /usr/share/pipewire/pipewire.conf.avail/10-rates.conf pipewire/pipewire.conf.d/ | ||||||||||
| sudo cp /usr/share/pipewire/jack.conf pipewire/ | ||||||||||
| sudo chown yourUserName:yourUserName pipewire/jack.conf pipewire/pipewire.conf.d/10-rates.conf | ||||||||||
|
davidjharder marked this conversation as resolved.
|
||||||||||
| ``` | ||||||||||
|
|
||||||||||
| Now open the `jack.conf` in your text editor and | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| 1. Search for `node.rate` | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
| 2. Uncomment `node.rate` | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
| 3. Input the sample-rate you wish JACK applications to open with after the `1/` | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
| - common rates: 44100 48000 88200 96000 | ||||||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. You should probably suggest a good default rate
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| **Without this `Pipewire` wont dynamically adjust the sample-rate for you whenever a `JACK` application opens** | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
|  | ||||||||||
|
|
||||||||||
| Now reboot your system. | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| :::note | ||||||||||
| After applying the configuration above there **WILL** be a delay of up to 2 seconds when beginning to play audio. This is due to the 10-rates.conf that allows `Pipewire` to dynamically change sample-rates. Although, once the sample-rate is set everything is instant. | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
| ::: | ||||||||||
|
|
||||||||||
| ### Not Done Yet | ||||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Give your headings descriptive names. They help the users navigate the document and find what they need easily. Some suggestions:
Suggested change
Suggested change
|
||||||||||
|
|
||||||||||
| Lastly, we need to enable the `Pro Audio` sound configuration for our card. Not doing so will result in terrible Xruns (pops and crackles) even with all applied configuration. | ||||||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What are Xruns?
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. https://alsa.opensrc.org/Xruns (I get why you are asking and it's the right question to ask)
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| **On Budgie**: `pavucontrol` is required to get access to the `Pro Audio` config. So install it | ||||||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Presumably, the Budgie changes also work for GNOME and XFCE. Please note that
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| ```bash | ||||||||||
| sudo eopkg it pavucontrol | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| Now open the program, switch over to the `Configuration` tab and select the `Pro Audio` option from the dropdown menu for your card | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
|  | ||||||||||
|
|
||||||||||
| **On KDE**: everything you need is in the `Audio` section of system settings. Simply choose from the dropdown same as above. | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| **All is done! Happy audio production!!** 🥰 | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| ### Limits | ||||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think troubleshooting is a more appropriate title |
||||||||||
|
|
||||||||||
| If this is annoying you | ||||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Try to use a more neutral language.
Suggested change
|
||||||||||
|
|
||||||||||
|  | ||||||||||
|
davidjharder marked this conversation as resolved.
Outdated
|
||||||||||
|
|
||||||||||
| You can adjust it by configuring the `limits.conf`. In this case we'll be using the `limits.d` for simplicity. | ||||||||||
|
|
||||||||||
| Input the commands below | ||||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As mentioned before, explain what the commands will do.
Suggested change
|
||||||||||
|
|
||||||||||
| ```bash | ||||||||||
| sudo mkdir -p /etc/security/limits.d/ | ||||||||||
| echo "@audio - memlock unlimited" | sudo tee -a /etc/security/limits.d/audio.conf | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| **On Budgie**: Log out and log back in for changes to take effect | ||||||||||
|
|
||||||||||
| **On KDE**: Reboot the system | ||||||||||
Uh oh!
There was an error while loading. Please reload this page.