You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+31-6Lines changed: 31 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,6 +29,7 @@ Utilities:
29
29
*`overwitch-record`, which records multitrack audio from Overbridge devices.
30
30
31
31
For a device manager application for Elektron devices, check [Elektroid](https://dagargo.github.io/elektroid/).
32
+
32
33
## Installation
33
34
34
35
As with other autotools project, you need to run the commands below. There is a compilation option available.
@@ -86,24 +87,41 @@ To allow the service to be started at boot, running `systemctl --user enable ove
86
87
87
88
## Usage
88
89
89
-
Overwitch contains three JACK clients, one for the desktop, one for the command line and one to be used as a service. Additionally, a recording and playing utilities for the command line are also included.
90
+
Overwitch contains two JACK clients. One is a D-Bus and systemd compatible hotplug service, which is used by the GUI application; and the other is a CLI application. Additionally, a playing and recording utilities for the CLI are also included.
90
91
91
92
Regarding the JACK clients, latency needs to be under control and it can be tuned with the following parameters.
92
93
93
-
- Blocks, which controls the amount of data sent in a single USB operation. The higher, the higher latency but the lower CPU usage. 4 blocks keeps the latency quite low and does not impact on the CPU.
94
-
- Quality, which controls the resampler accuracy. The higher, the more CPU consuming. A medium value is recommended. Notice that in `overwitch-cli`, a value of 0 means the highest quality while a value of 4 means the lowest.
94
+
- Blocks, which controls the amount of data sent in a single USB operation. The more blocks, the higher latency but the lower CPU usage.
95
+
- Quality, which controls the resampler accuracy. The higher the quality, the higher CPU usage. A medium value is recommended. Notice that in `overwitch-cli`, a value of 0 means the highest quality while a value of 4 means the lowest.
96
+
97
+
### Use cases
98
+
99
+
For all use cases, the default installation is needed.
100
+
101
+
#### Typical desktop user
102
+
103
+
Just use `overwitch` (GUI). This will start up the included D-Bus service when needed. No other tools are required.
104
+
Notice that closing the application window does **not** terminate the D-Bus service, which means that the hotplug system is still running. Starting the application again will show the window with the ongoing state of all the devices. To terminate everything, click on the exit menu.
105
+
106
+
#### Non GUI user
107
+
108
+
Install the systemd service from the `systemd` directory and start it up. This uses the same code as the D-Bus service and runs the devices as soon as they are connected. No other tools are required. Stopping the service will stop all the devices.
109
+
110
+
#### Testing
111
+
112
+
In case of testing Overwitch, only the CLI utilities should be used. In this scenario, use all of these with `-vv` to add some debugging output.
95
113
96
114
### overwitch
97
115
98
-
The GUI is self explanatory and does not requiere any parameter passed from the command line. It runs all found Overbridge device in different JACK clients.
116
+
The GUI is self explanatory and does not requiere any parameter passed from the command line. It controls the D-Bus service, which will manage any Overbridge device.
99
117
100
118
Notice that once an Overbridge device is running the options can not be changed so you will need to stop the running instances and refresh the list.
101
119
102
120
It is possible to rename Overbridge devices by simply editing its name on the list. Still, as JACK devices can not be renamed while running, the device will be restarted.
103
121
104
122
### overwitch-service
105
123
106
-
Using `overwitch-service` allows having a systemd unit which uses device hotplugging. This will load the configuration from the same config file the GUI uses.
124
+
Using `overwitch-service` allows having a systemd unit which uses device hotplug. This will load the configuration from the same configuration file the GUI uses.
107
125
108
126
This is a configuration example with the recommended properties. Not all the properties are shown here.
Obviously, when running the service there is no need for the GUI whatsoever.
121
139
140
+
Notice that this binary is used by both the D-Bus service and the systemd service is rarely needed to be run like this.
141
+
122
142
### overwitch-cli
123
143
124
144
The CLI interface allows the user to create a single JACK client and have full control the options to be used.
@@ -130,10 +150,15 @@ $ overwitch-cli -l
130
150
0: Digitakt (ID 1935:000c) at bus 001, address 005
131
151
```
132
152
133
-
Then, you can choose which device you want to use by using one of these options. Notice that the second option will only work for the first device found with that name.
153
+
Then, you can choose which device you want to use by using `-n`.
134
154
135
155
```
136
156
$ overwitch-cli -n 0
157
+
```
158
+
159
+
You can select the device by name too but the use of this option is discouraged and `-n` should be used instead. When using this option, the first device in the list will be used.
Copy file name to clipboardExpand all lines: docs/usage.md
+30-6Lines changed: 30 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,24 +7,41 @@ order: 3
7
7
8
8
## Usage
9
9
10
-
Overwitch contains three JACK clients, one for the desktop, one for the command line and one to be used as a service. Additionally, a recording and playing utilities for the command line are also included.
10
+
Overwitch contains two JACK clients. One is a D-Bus and systemd compatible hotplug service, which is used by the GUI application; and the other is a CLI application. Additionally, a playing and recording utilities for the CLI are also included.
11
11
12
12
Regarding the JACK clients, latency needs to be under control and it can be tuned with the following parameters.
13
13
14
-
- Blocks, which controls the amount of data sent in a single USB operation. The higher, the higher latency but the lower CPU usage. 4 blocks keeps the latency quite low and does not impact on the CPU.
15
-
- Quality, which controls the resampler accuracy. The higher, the more CPU consuming. A medium value is recommended. Notice that in `overwitch-cli`, a value of 0 means the highest quality while a value of 4 means the lowest.
14
+
- Blocks, which controls the amount of data sent in a single USB operation. The more blocks, the higher latency but the lower CPU usage.
15
+
- Quality, which controls the resampler accuracy. The higher the quality, the higher CPU usage. A medium value is recommended. Notice that in `overwitch-cli`, a value of 0 means the highest quality while a value of 4 means the lowest.
16
+
17
+
### Use cases
18
+
19
+
For all use cases, the default installation is needed.
20
+
21
+
#### Typical desktop user
22
+
23
+
Just use `overwitch` (GUI). This will start up the included D-Bus service when needed. No other tools are required.
24
+
Notice that closing the application window does **not** terminate the D-Bus service, which means that the hotplug system is still running. Starting the application again will show the window with the ongoing state of all the devices. To terminate everything, click on the exit menu.
25
+
26
+
#### Non GUI user
27
+
28
+
Install the systemd service from the `systemd` directory and start it up. This uses the same code as the D-Bus service and runs the devices as soon as they are connected. No other tools are required. Stopping the service will stop all the devices.
29
+
30
+
#### Testing
31
+
32
+
In case of testing Overwitch, only the CLI utilities should be used. In this scenario, use all of these with `-vv` to add some debugging output.
16
33
17
34
### overwitch
18
35
19
-
The GUI is self explanatory and does not requiere any parameter passed from the command line. It runs all found Overbridge device in different JACK clients.
36
+
The GUI is self explanatory and does not requiere any parameter passed from the command line. It controls the D-Bus service, which will manage any Overbridge device.
20
37
21
38
Notice that once an Overbridge device is running the options can not be changed so you will need to stop the running instances and refresh the list.
22
39
23
40
It is possible to rename Overbridge devices by simply editing its name on the list. Still, as JACK devices can not be renamed while running, the device will be restarted.
24
41
25
42
### overwitch-service
26
43
27
-
Using `overwitch-service` allows having a systemd unit which uses device hotplugging. This will load the configuration from the same config file the GUI uses.
44
+
Using `overwitch-service` allows having a systemd unit which uses device hotplug. This will load the configuration from the same configuration file the GUI uses.
28
45
29
46
This is a configuration example with the recommended properties. Not all the properties are shown here.
Obviously, when running the service there is no need for the GUI whatsoever.
42
59
60
+
Notice that this binary is used by both the D-Bus service and the systemd service is rarely needed to be run like this.
61
+
43
62
### overwitch-cli
44
63
45
64
The CLI interface allows the user to create a single JACK client and have full control the options to be used.
@@ -51,10 +70,15 @@ $ overwitch-cli -l
51
70
0: Digitakt (ID 1935:000c) at bus 001, address 005
52
71
```
53
72
54
-
Then, you can choose which device you want to use by using one of these options. Notice that the second option will only work for the first device found with that name.
73
+
Then, you can choose which device you want to use by using `-n`.
55
74
56
75
```
57
76
$ overwitch-cli -n 0
77
+
```
78
+
79
+
You can select the device by name too but the use of this option is discouraged and `-n` should be used instead. When using this option, the first device in the list will be used.
0 commit comments