Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/user/software/sound/config-change.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
84 changes: 84 additions & 0 deletions docs/user/software/sound/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,87 @@ summary: Configuration of sound systems on Solus
# Sound

Solus comes with Pipewire configured by default.

## Pipewire as a JACK Replacement

Comment thread
davidjharder marked this conversation as resolved.
Firstly, install `pipewire-jack`
Comment thread
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 🛠

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't use emojis this way. Please remove 🛠

Comment thread
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.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

put pipewire in backticks, since you are referring to a package

Comment thread
davidjharder marked this conversation as resolved.
Outdated

![Pipewire Rates Issue](ardour-pipewire-rates-issue.png)

### Configuration

Fortunately both the `pipewire` and `pipewire-jack` packages come with the configs we need.
Comment thread
davidjharder marked this conversation as resolved.
Outdated

Open up your terminal of choice and input the commands below

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The 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."

Comment thread
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
Comment thread
davidjharder marked this conversation as resolved.
```

Now open the `jack.conf` in your text editor and
Comment thread
davidjharder marked this conversation as resolved.
Outdated

1. Search for `node.rate`
Comment thread
davidjharder marked this conversation as resolved.
Outdated
2. Uncomment `node.rate`
Comment thread
davidjharder marked this conversation as resolved.
Outdated
3. Input the sample-rate you wish JACK applications to open with after the `1/`
Comment thread
davidjharder marked this conversation as resolved.
Outdated
- common rates: 44100 48000 88200 96000

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should probably suggest a good default rate

Comment thread
davidjharder marked this conversation as resolved.
Outdated

**Without this `Pipewire` wont dynamically adjust the sample-rate for you whenever a `JACK` application opens**
Comment thread
davidjharder marked this conversation as resolved.
Outdated

![jack.conf change gif](config-change.gif)

Now reboot your system.
Comment thread
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.
Comment thread
davidjharder marked this conversation as resolved.
Outdated
:::

### Not Done Yet

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The 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
### Not Done Yet
### Pro audio sound configuration
Suggested change
### Not Done Yet
### Configure pro audio sound


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.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are Xruns?

@ermo ermo Feb 2, 2024

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The 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)

Comment thread
davidjharder marked this conversation as resolved.
Outdated

**On Budgie**: `pavucontrol` is required to get access to the `Pro Audio` config. So install it

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The 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

Comment thread
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
Comment thread
davidjharder marked this conversation as resolved.
Outdated

![Pavucontrol Config Change](pavu-config.gif)

**On KDE**: everything you need is in the `Audio` section of system settings. Simply choose from the dropdown same as above.
Comment thread
davidjharder marked this conversation as resolved.
Outdated

**All is done! Happy audio production!!** 🥰
Comment thread
davidjharder marked this conversation as resolved.
Outdated

### Limits

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The 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

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Try to use a more neutral language.

Suggested change
If this is annoying you
If you see the following error message:


![Ardour yelling about limited amount of locked memory](ulimits.png)
Comment thread
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

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As mentioned before, explain what the commands will do.

Suggested change
Input the commands below
Execute the commands below:


```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
Binary file added docs/user/software/sound/pavu-config.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/user/software/sound/ulimits.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.