mirror of
https://github.com/tiyn/wiki.git
synced 2026-04-15 16:54:48 +02:00
EasyEffects: Added Autostart
This commit is contained in:
@@ -13,6 +13,53 @@ An installation via [Flatpak](./flatpak.md) is also possible.
|
|||||||
|
|
||||||
Easyeffects can apply `Effects` to input and output sound.
|
Easyeffects can apply `Effects` to input and output sound.
|
||||||
|
|
||||||
|
### Autostart
|
||||||
|
|
||||||
|
Easyeffects can be started in various ways.
|
||||||
|
|
||||||
|
The service can be started including the window with the following.
|
||||||
|
It will have to be called each startup.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
easyeffects
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively it can be started in the background with the following command.
|
||||||
|
This command also has to be called each time the system starts.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
easyeffects --gapplication-service
|
||||||
|
```
|
||||||
|
|
||||||
|
The two former commands will only work if called on each startup.
|
||||||
|
The easiest way to do this is by using [SystemD](/wiki/linux/systemd.md).
|
||||||
|
The following will work analogously to the path explained in
|
||||||
|
[the corresponding section of the SystemD entry](/wiki/linux/systemd.md#run-command-on-boot).
|
||||||
|
|
||||||
|
Run the following command to edit the configuration file for the newly created EasyEffect service.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
systemctl --user edit --force -full easyeffects.service
|
||||||
|
```
|
||||||
|
|
||||||
|
Afterward set the contents of this file to the following.
|
||||||
|
Due to EasyEffect working together with [Pipewire and Wireplumber](/wiki/linux/pipewire.md) some
|
||||||
|
precautions have to be taken to start it before these two.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
[Unit]
|
||||||
|
Description=EasyEffects (GApplication Service)
|
||||||
|
After=pipewire.service wireplumber.service
|
||||||
|
PartOf=graphical-session.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=/usr/bin/easyeffects --gapplication-service
|
||||||
|
Restart=on-failure
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=graphical-session.target
|
||||||
|
```
|
||||||
|
|
||||||
### Noise cancellation
|
### Noise cancellation
|
||||||
|
|
||||||
Setup
|
Setup
|
||||||
|
|||||||
@@ -18,14 +18,14 @@ Make sure to restart to be sure everything is running correctly.
|
|||||||
Pipewire has a few config files.
|
Pipewire has a few config files.
|
||||||
The needed folder structure can be created by the following command for a global setup.
|
The needed folder structure can be created by the following command for a global setup.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
sudo mkdir -p /etc/pipewire/ && sudo mkdir -p /etc/wireplumber/wireplumber.conf.d/ && sudo cp /usr/share/pipewire/*.conf /etc/pipewire/ && sudo cp /usr/share/wireplumber/wireplumber.conf.d/* /etc/wireplumber/wireplumber.conf.d/
|
sudo mkdir -p /etc/pipewire/ && sudo mkdir -p /etc/wireplumber/wireplumber.conf.d/ && sudo cp /usr/share/pipewire/*.conf /etc/pipewire/ && sudo cp /usr/share/wireplumber/wireplumber.conf.d/* /etc/wireplumber/wireplumber.conf.d/
|
||||||
```
|
```
|
||||||
|
|
||||||
It can also be done locally for the user with the following, alternative setup.
|
It can also be done locally for the user with the following, alternative setup.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
mkdir -p ~/.config/pipewire/ && mkdir -p ~/.config/wireplumber/wireplumber.conf.d/ && cp /usr/share/pipewire/*.conf ~/.config/pipewire/ && cp /usr/share/wireplumber/wireplumber.conf.d/* ~/.config/wireplumber/wireplumber.conf.d/
|
mkdir -p ~/.config/pipewire/ && mkdir -p ~/.config/wireplumber/wireplumber.conf.d/ && cp /usr/share/pipewire/*.conf ~/.config/pipewire/ && cp /usr/share/wireplumber/wireplumber.conf.d/* ~/.config/wireplumber/wireplumber.conf.d/
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
@@ -140,7 +140,7 @@ pactl load-module module-null-sink media.class=Audio/Sink sink_name=null-sink-0
|
|||||||
|
|
||||||
This will return an id that can be used to remove the sink with the following command.
|
This will return an id that can be used to remove the sink with the following command.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
pactl unload-module <id>
|
pactl unload-module <id>
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -207,7 +207,7 @@ and [the official website](https://docs.pipewire.org/page_module_loopback.html).
|
|||||||
An application loopback can be created permanently by creating a `.conf` file inside the
|
An application loopback can be created permanently by creating a `.conf` file inside the
|
||||||
`~/.config/pipewire/pipewire.conf.d` directory with the following lines.
|
`~/.config/pipewire/pipewire.conf.d` directory with the following lines.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
context.modules = [{
|
context.modules = [{
|
||||||
name = libpipewire-module-loopback
|
name = libpipewire-module-loopback
|
||||||
args = {
|
args = {
|
||||||
@@ -250,12 +250,12 @@ In `alsa-vm.conf` the `suspend_timeout_seconds` have to be set to `0` like the f
|
|||||||
show.
|
show.
|
||||||
This also shows the general structure but only the line starting with `session` is to be added.
|
This also shows the general structure but only the line starting with `session` is to be added.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
|
|
||||||
monitor.alsa.rules = [
|
monitor.alsa.rules = [
|
||||||
{
|
{
|
||||||
actions = {
|
actions = {
|
||||||
update-props = {
|
update-props = {
|
||||||
session.suspend-timeout-seconds = 0
|
session.suspend-timeout-seconds = 0
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -264,13 +264,13 @@ monitor.alsa.rules = [
|
|||||||
Another possibility for crackling to occur is when the allowed rates are mismatched.
|
Another possibility for crackling to occur is when the allowed rates are mismatched.
|
||||||
In `pipewire.conf` locate the following line.
|
In `pipewire.conf` locate the following line.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
#default.clock.allowed-rates = [ 48000 ]
|
#default.clock.allowed-rates = [ 48000 ]
|
||||||
```
|
```
|
||||||
|
|
||||||
Change this line to look like the following.
|
Change this line to look like the following.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
default.clock.allowed-rates = [ 44100 48000 ]
|
default.clock.allowed-rates = [ 44100 48000 ]
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -283,7 +283,7 @@ api.alsa.headroom = 2048
|
|||||||
|
|
||||||
Change it to look like the following line.
|
Change it to look like the following line.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
api.alsa.headroom = 0
|
api.alsa.headroom = 0
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -298,7 +298,7 @@ api.alsa.period-size = 1024
|
|||||||
|
|
||||||
Change it to look like the following line.
|
Change it to look like the following line.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
api.alsa.period-size = 256
|
api.alsa.period-size = 256
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -202,7 +202,7 @@ be hidden.
|
|||||||
It is then more difficult to find the out-of-memory error that makes a program crash.
|
It is then more difficult to find the out-of-memory error that makes a program crash.
|
||||||
Problems with balooning RAM can be found using the following command.
|
Problems with balooning RAM can be found using the following command.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
journalctl -k
|
journalctl -k
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -10,6 +10,13 @@ It is used for service configuration and startup.
|
|||||||
To run a command (in this case `/bin/bash /root/run.sh`) create the following
|
To run a command (in this case `/bin/bash /root/run.sh`) create the following
|
||||||
file at `/etc/systemd/system/` with a name ending on `.service`.
|
file at `/etc/systemd/system/` with a name ending on `.service`.
|
||||||
In this case it is called `unturned.service`.
|
In this case it is called `unturned.service`.
|
||||||
|
Alternatively to creating the command manually the following command can be used.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
systemctl edit --force --full unturned.service
|
||||||
|
```
|
||||||
|
|
||||||
|
And set the contents to the following.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
[Unit]
|
[Unit]
|
||||||
@@ -31,17 +38,8 @@ initializing.
|
|||||||
After=pve-guests.service
|
After=pve-guests.service
|
||||||
```
|
```
|
||||||
|
|
||||||
Such a service can be started by running:
|
A service that was created this way can then be started as explained in
|
||||||
|
[the corresponding section](#startstopenabledisable-a-service-and-retrieve-its-logs).
|
||||||
```sh
|
|
||||||
sudo systemctl start unturned
|
|
||||||
```
|
|
||||||
|
|
||||||
Alternatively it can be enabled to start at every boot by running:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
sudo systemctl enable unturned
|
|
||||||
```
|
|
||||||
|
|
||||||
### Start/Stop/Enable/Disable a service and Retrieve its Logs
|
### Start/Stop/Enable/Disable a service and Retrieve its Logs
|
||||||
|
|
||||||
@@ -52,7 +50,9 @@ To start the service after boot it has to be enabled.
|
|||||||
This works accordingly with the keyword `enable`.
|
This works accordingly with the keyword `enable`.
|
||||||
The `disable` keyword stops the service from starting automatically.
|
The `disable` keyword stops the service from starting automatically.
|
||||||
|
|
||||||
Logs of the last start of the service can be found by running `systemctl status <service-name>`.
|
Logs of the last start of the service can be found by running `systemctl status <service-name>`.
|
||||||
|
|
||||||
|
Additionally the `--user` flag can be set to start the service only for the current user.
|
||||||
|
|
||||||
### Retrieving the SystemD Logs
|
### Retrieving the SystemD Logs
|
||||||
|
|
||||||
@@ -72,7 +72,7 @@ This time will be used to determine the time that is taken from suspend to hiber
|
|||||||
suspend-to-hibernate is called.
|
suspend-to-hibernate is called.
|
||||||
The following line will set this to 10 minutes.
|
The following line will set this to 10 minutes.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
HibernateDelaySec=10min
|
HibernateDelaySec=10min
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -102,7 +102,7 @@ ignore.
|
|||||||
As [machetie writes on Reddit](https://www.reddit.com/r/framework/comments/185035i/how_to_use_the_laptop_with_lid_closed_linux/)
|
As [machetie writes on Reddit](https://www.reddit.com/r/framework/comments/185035i/how_to_use_the_laptop_with_lid_closed_linux/)
|
||||||
the following settings need to be set.
|
the following settings need to be set.
|
||||||
|
|
||||||
```txt
|
```txt
|
||||||
HandleLidSwitch=ignore
|
HandleLidSwitch=ignore
|
||||||
HandleLidSwitchExternalPower=ignore
|
HandleLidSwitchExternalPower=ignore
|
||||||
HandleLidSwitchDocked=ignore
|
HandleLidSwitchDocked=ignore
|
||||||
@@ -125,6 +125,6 @@ This error signals problems with the trusted platform module.
|
|||||||
This however usually can be fixed easily by masking the service and is done like the following
|
This however usually can be fixed easily by masking the service and is done like the following
|
||||||
command shows.
|
command shows.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
systemctl mark dev-tpmrm0.device
|
systemctl mark dev-tpmrm0.device
|
||||||
```
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user