diff --git a/assets/img/en-screenshots/diagram-public-server.inc b/assets/img/en-screenshots/diagram-reg-server.inc
similarity index 100%
rename from assets/img/en-screenshots/diagram-public-server.inc
rename to assets/img/en-screenshots/diagram-reg-server.inc
diff --git a/assets/img/en-screenshots/diagram-private-server.inc b/assets/img/en-screenshots/diagram-unreg-server.inc
similarity index 100%
rename from assets/img/en-screenshots/diagram-private-server.inc
rename to assets/img/en-screenshots/diagram-unreg-server.inc
diff --git a/wiki/en/Client-Troubleshooting.md b/wiki/en/Client-Troubleshooting.md
index 1142384ec..2327638cf 100644
--- a/wiki/en/Client-Troubleshooting.md
+++ b/wiki/en/Client-Troubleshooting.md
@@ -33,12 +33,12 @@ Your audio device may not work with the buffer size you selected. Select a bigge
### You all sound OK, but it's difficult to keep together
-**If at all possible, DO NOT listen to your direct signal.** Make sure you are listening as much as you can to the sound of your own instrument/voice _coming back from the server_. This signal has you and your playing partners mixed together in sync, and will be the signal that your bandmates are hearing too. So listening to that means you will be in sync with each other (assuming you all have reasonably low latency). Note that if one or more musicians are not following this rule, they will slow down as they play or sing.
+**If at all possible, DO NOT listen to your direct signal.** Make sure you are listening as much as you can to the sound of your own instrument/voice _coming back from the Server_. This signal has you and your playing partners mixed together in sync, and will be the signal that your bandmates are hearing too. So listening to that means you will be in sync with each other (assuming you all have reasonably low latency). Note that if one or more musicians are not following this rule, they will slow down as they play or sing.
You can test whether you are hearing your signal correctly by doing the following:
-1. Run Jamulus and connect to a server with a long ping time (greater than 200ms)
-2. Clap your hands once (or play one short note on an instrument). You should hear the sound from the Jamulus server come back, but significantly delayed.
+1. Run Jamulus and connect to a Server with a long ping time (greater than 200ms)
+2. Clap your hands once (or play one short note on an instrument). You should hear the sound from the Jamulus Server come back, but significantly delayed.
3. Click the "Mute" button under your Jamulus name/slider in the main Jamulus mixer window (**NOT** the "Mute Myself" button on the left).
4. Clap your hands again.
@@ -46,7 +46,7 @@ If you hear two claps after step 2, or any claps after step 4, then you are **no
Exactly how you avoid listening to your direct signal will depend on your individual setup - your sound interface, mixing desk, headphone connection point, etc. For example, some audio interfaces have "monitor" buttons (turn these off), or similar options. **If you are still having problems**, try asking on the [forum](https://github.com/jamulussoftware/jamulus/discussions).
-Be aware that while listening to the server's signal will ensure you will be in sync with other musicians, you may also experience problems if your overall latency (indicated by the "Delay" light in Jamulus) is not green or at least yellow most of the time. Consult the [software manual](/wiki/Software-Manual) to understand how to adjust your setup to help with this.
+Be aware that while listening to the Server's signal will ensure you will be in sync with other musicians, you may also experience problems if your overall latency (indicated by the "Delay" light in Jamulus) is not green or at least yellow most of the time. Consult the [software manual](/wiki/Software-Manual) to understand how to adjust your setup to help with this.
### Can't work out your mic settings?
@@ -62,21 +62,21 @@ This can indicate something else is competing with Jamulus on your network, so m
### Getting frustrated with software channels, audio routing, sample rates and more?
-It's usually far easier and more reliable to have a [mixing desk](https://www.thomann.de/pics/bdb/191244/7355025_800.jpg) to connect your kit (instruments, mic, recorder etc.) and then send a simple stereo signal to your sound interface (be sure to listen to the resulting sound from the Jamulus server via your computer though!). The huge variety of possible hardware, software and instrument combinations means that setting up your sound card to work with your particular configuration can otherwise get complicated very fast.
+It's usually far easier and more reliable to have a [mixing desk](https://www.thomann.de/pics/bdb/191244/7355025_800.jpg) to connect your kit (instruments, mic, recorder etc.) and then send a simple stereo signal to your sound interface (be sure to listen to the resulting sound from the Jamulus Server via your computer though!). The huge variety of possible hardware, software and instrument combinations means that setting up your sound card to work with your particular configuration can otherwise get complicated very fast.
### Somebody joining your jam and being too loud?
You can set your "New Client Level" to a low value (e.g. 10), or set the musicians you are playing with to "Solo" state (in the mixer panel on the right side). That way, either new entrants will be very quiet, or you won't hear them at all.
-### Can't see the server you want to join?
+### Can't see the Server you want to join?
-First check that you have the right genre server selected in your Connection Setup window. Sometimes network issues mean your client won't list all the available servers. If you know the name of the server you want to join, you can [look up its IP address here](https://explorer.jamulus.io/). Enter the IP address in the "Server Name/Address" field in the Connect Setup window to connect to it.
+First check that you have the right genre Server selected in your Connect window. Sometimes network issues mean your Client won't list all the available Servers. If you know the name of the Server you want to join, you can [look up its IP address here](https://explorer.jamulus.io/). Enter that address in the "Server Address" field in the Connect Setup window to connect to it.
-### Not seeing a list of servers at all?
+### Not seeing a list of Servers at all?
In the UK (and possibly other regions/routers) the Virgin Media Cable Internet Modem setting can cause an issue. "Block Fragmented IP Packets" should not be checked. For other routers/ISP, also try turning off SPI (Stateful Packet Inspection) and if that fixes it, you can make a judgment about whether to leave that off or not.
-In some cases, it may be your ISP that is blocking your use of Jamulus. See the note on the [server troubleshooting page](Server-Troubleshooting#nobody-can-connect-to-my-server---but-i-can-connect-locally) about "Nobody can connect to my server"
+In some cases, it may be your ISP that is blocking your use of Jamulus. See the note on the [server troubleshooting page](Server-Troubleshooting#nobody-can-connect-to-my-server---but-i-can-connect-locally) about "Nobody can connect to my Server"
### Trouble using Garageband (or other DAW) with Jamulus?
diff --git a/wiki/en/Custom-Directories.md b/wiki/en/Custom-Directories.md
new file mode 100644
index 000000000..efbb0e162
--- /dev/null
+++ b/wiki/en/Custom-Directories.md
@@ -0,0 +1,30 @@
+---
+layout: wiki
+title: "Custom Directories"
+lang: "en"
+permalink: "/wiki/Custom-Directories"
+---
+
+{% include breadcrumb.html root="More" branch1="Server Administration" branch1-url="Running-a-Server" %}
+
+
+# Running a Custom Directory
+
+This is a specialised Jamulus Server configuration, as described in [Server Types](Running-a-Server#server-types).
+
+To view Servers listed by a Custom Directory, users must enter the address of that Directory in their Client's Settings > Advanced Setup > Custom Directories field. Multiple addresses can be added in this way if needed. Custom Directories will then appear in the Directory drop-down list on their Connect window. Custom Directories otherwise work for Clients in the same way as Public Directories, displaying a list of Servers registered with them.
+
+To run a Server as a Directory, it should be started with the `--directoryserver` option to make itself (that is, 'localhost' or '127.0.0.1') the Directory to query for Servers.
+
+When running a Server with the GUI, set the Custom Directory server address in the Options tab to "localhost", then select "Custom" from the Directory drop-down list.
+
+
+### Points to note about Directories
+
+- If you want to control which Servers can register with your Directory, you can enable a whitelist with the `--listfilter` command line option in the format `ip address 1[;ip address 2]`.
+
+- When running a Directory behind a NAT firewall on a private network, use the `--serverpublicip` option to specify the public IP address of the Server(s) being listed by your Directory if those Servers are on the same LAN / with the same public IP as the Directory. This is necessary to allow Clients on the public Internet to connect to them via NAT. Note that for the Servers using this option, you will still need proper port forwarding in your router/firewall.
+
+- If you are running your Server as a Directory and need to restart it for any reason (for example when rebooting the host), Servers connected to it will be disconnected until they re-register. This does not mean that Clients connected to those Servers will be disconnected, but does mean that new Clients will be not able to see Servers listed by your Directory until those Servers reconnect. To enable the list of registered Servers to persist between restarts, use the `--directoryfile` option to specify the location and name of a file that the Directory can read and write to.
+
+- Up to 150 Servers can then register with a Directory.
diff --git a/wiki/en/FAQ.md b/wiki/en/FAQ.md
index 5e11d380a..812f02b97 100644
--- a/wiki/en/FAQ.md
+++ b/wiki/en/FAQ.md
@@ -22,15 +22,15 @@ permalink: "/wiki/FAQ"
### Is there a metronome, synchronization, or some other way of keeping in time?
-No. Musicians on a Jamulus server simply play in real time together as they would in person. If you want to have a time signal, then there are shared metronome solutions on the Internet you can try. But it’s probably best to just minimise latency so nobody has an overall delay more than about 30-50 ms.
+No. Musicians on a Jamulus Server simply play in real time together as they would in person. If you want to have a time signal, then there are shared metronome solutions on the Internet you can try. But it’s probably best to just minimise latency so nobody has an overall delay more than about 30-50 ms.
Bear in mind also that all participants should follow [The Golden Rule](/wiki/Client-Troubleshooting#you-all-sound-ok-but-its-difficult-to-keep-together) which will also determine whether you can play in time properly.
-### How do I know if I can join a server? Are there rules?
+### How do I know if I can join a Server? Are there rules?
-In general, if somebody sets up a public server, they accept that anyone can play on it. Jamulus has no password protection or other authentication mechanisms. However, some servers may state their policies in the welcome message you will see in the chat window.
+In general, if somebody lists a Server on one of the Public Directories provided by Jamulus by default, they accept that anyone can play on it. Jamulus has no password protection or other authentication mechanisms built in. However, some Servers may state their policies in the welcome message you will see in the chat window.
-You can also set up a private server on Jamulus and give others your address to connect to that. Have a look at [this page for more information](/wiki/Running-a-Server).
+Note also that Servers do not have to be registered on a Directory in order for Jamulus Clients to connect to them. Server operators can simply give out the address of their Servers to those they want to play with, and they can then connect directly. Have a look at [this overview for more information](/wiki/Running-a-Server#server-types).
### Why shouldn’t I use wireless equipment?
@@ -42,22 +42,22 @@ So it makes sense to minimise any sources of delay or other problems with the si
For the same reason as you need to minimise delay in your signal in order to play in time, you need to make sure you are playing to your own sound that other musicians are hearing. More information on this, and a way of testing your setup to make sure you are obeying this “Golden Rule” [can be found here](/wiki/Client-Troubleshooting#you-all-sound-ok-but-its-difficult-to-keep-together).
-Of course, if you are playing an acoustic instrument, or are a singer, it will be hard to exclude your “local” sound. But you should at least try to do so by for example using closed-back headphones turned up as loud as you are able to mask your own sound. This will let you concentrate on the mix coming back to you from the server.
+Of course, if you are playing an acoustic instrument, or are a singer, it will be hard to exclude your “local” sound. But you should at least try to do so by for example using closed-back headphones turned up as loud as you are able to mask your own sound. This will let you concentrate on the mix coming back to you from the Server.
### Do I need a fast Internet connection?
-No, especially if you don't run a server to host other musicians. Having a low ping is more important. For most people on standard broadband (e.g. 10 Mbit/s down and 1 Mbit/s up) you will have no problems. For those running servers at home, depending on how many people join, you may encounter issues if your _upstream_ bandwidth is lower than about 5 Mbit/s.
+No, especially if you don't run a Server to host other musicians. Having a low ping is more important. For most people on standard broadband (e.g. 10 Mbit/s down and 1 Mbit/s up) you will have no problems. For those running Servers at home, depending on how many people join, you may encounter issues if your _upstream_ bandwidth is lower than about 5 Mbit/s.
-### Do I need to run a server?
+### Do I need to run a Server?
-No. If you just intend to connect to other people’s servers, then all you need is a client. [Read this if you think you need to run your own server](/wiki/Running-a-Server).
+No. If you just intend to connect to other people’s Servers, then all you need is a Client. [Read this if you think you need to run your own Server](/wiki/Running-a-Server).
### How does Jamulus work (in general)?
-Jamulus works on the client-server principle. Everybody’s audio is sent to a server, mixed and processed there. Afterwards, the audio is sent back to each client. If a server is made public and registered on a public directory, its information will be broadcast to all clients.
+Jamulus works on the Client-server principle. Everybody’s audio is sent to a Server, mixed and processed there. Afterwards, the audio is sent back to each Client. If a Server is registered in a Jamulus Directory, the Server's information will be provided to all Clients using that Directory.
### Why doesn't Jamulus provide video support?
@@ -66,10 +66,10 @@ Adding video support adds a lot of complexity. You can use other software like J
## Server FAQ
-### Why do public servers not need port forwarding?
+### Why do Registered Servers not need port forwarding?
-Normally, network address translation (NAT) firewalls prevent incoming requests initiated from outside the local network. Inbound traffic is only possible for packets relating to an outbound request (strictly speaking, “related” and “established” packets to an initial outbound connection). In public server mode, when your Jamulus server connects to a Directory Server it of course initiates an outbound connection. From then on, the Directory Server sends (established/related) connection “pings” (not ICMP pings) to your server at regular intervals to keep the relevant NAT port(s) open on your router/firewall.
+Normally, network address translation (NAT) firewalls prevent incoming requests initiated from outside the local network. Inbound traffic is only possible for packets relating to an outbound request (strictly speaking, “related” and “established” packets to an initial outbound connection). In Registered Server mode, when your Jamulus Server connects to a Directory it of course initiates an outbound connection. From then on, the Directory sends (established/related) connection “pings” (not ICMP pings) to your Server at regular intervals to keep the relevant NAT port(s) open on your router/firewall.
-However, in private mode, clients have to **initiate** connections into the server’s network. NAT firewalls prevent this, so you need to tell them to allow incoming connection requests on the Jamulus port using port forwarding.
+However, in Unregistered mode, Clients have to **initiate** connections into the Server’s network. NAT firewalls prevent this, so you need to tell them to allow incoming connection requests on the Jamulus port using port forwarding.
diff --git a/wiki/en/Getting-Started.md b/wiki/en/Getting-Started.md
index 7c0cbf8ba..13994c3b2 100644
--- a/wiki/en/Getting-Started.md
+++ b/wiki/en/Getting-Started.md
@@ -37,7 +37,7 @@ When you open Jamulus, you will see a window which looks like this:
- The main window before you connect to a server
+ The main window before you connect to a Server
@@ -53,30 +53,30 @@ First, let others know who you are. Click on the “Settings” button on the bo
Fill in at least “Alias/Name” and close the window.
-## Connecting to a server and testing your sound
+## Connecting to a Server and testing your sound
-Before you connect to a server, you should **not** be able to hear yourself. Listening to your sound from Jamulus (and not from yourself) is called “The Golden Rule” and enables you to play in time with others ([see the FAQ](/wiki/FAQ#why-should-i-not-listen-to-my-own-signal)).
+Before you connect to a Server, you should **not** be able to hear yourself. Listening to your sound from Jamulus (and not from yourself) is called “The Golden Rule” and enables you to play in time with others ([see the FAQ](/wiki/FAQ#why-should-i-not-listen-to-my-own-signal)).
-**Before playing with others, we recommend that you connect to an empty server to test your setup**, and make sure you are listening to the signal coming back from the server (if possible) and not yourself.
+**Before playing with others, we recommend that you connect to an empty Server to test your setup**, and make sure you are listening to the signal coming back from the Server (if possible) and not yourself.
-Now use the “Connect” button in the Jamulus main window to join a server. A window will now open:
+Now use the “Connect” button in the Jamulus main window to join a Server. A window will now open:
- Connect to a server
+ Connect to a Server
-The most important thing about servers is their “ping time”. The bigger the number, the harder it will be to play in time with others. Usually, you would select a server with a ping of less than 50ms if you can.
+The most important thing about Servers is their “ping time”. The bigger the number, the harder it will be to play in time with others. Usually, you would select a Server with a ping of less than 50ms if you can.
-Once connected to a server, make sure you can hear yourself OK and fix any input volume or other problems. You can have a look at the [troubleshooting page](/wiki/Client-Troubleshooting) for common problems. And of course, check that you are also able to obey [The Golden Rule](/wiki/Client-Troubleshooting#you-all-sound-ok-but-its-difficult-to-keep-together).
+Once connected to a Server, make sure you can hear yourself OK and fix any input volume or other problems. You can have a look at the [troubleshooting page](/wiki/Client-Troubleshooting) for common problems. And of course, check that you are also able to obey [The Golden Rule](/wiki/Client-Troubleshooting#you-all-sound-ok-but-its-difficult-to-keep-together).
## Playing for the first time
-With your sound all set up, you are ready to go. When you connect to a server (you may want to select a genre from the list), the faders you see on the right are your own personal mix. Everything you change here will change what you hear, but won’t affect others. If you move a fader down, that channel will be quieter, if you move it up, the channel will be louder for you.
+With your sound all set up, you are ready to go. When you connect to a Server (you may want to select a genre from the list), the faders you see on the right are your own personal mix. Everything you change here will change what you hear, but won’t affect others. If you move a fader down, that channel will be quieter, if you move it up, the channel will be louder for you.
- The main window when you are connected to a sever
+ The main window when you are connected to a Server
If you don’t want others to hear your audio, click on the “Mute Myself” button which will stop your audio from being sent to other people. They won’t be able to tell you have done this though. But if you see a “mute” icon above a fader, that means they can’t hear you because they've muted your channel in their mix.
@@ -87,4 +87,4 @@ More information about using Jamulus can be found in the [Software Manual](/wiki
## Troubleshooting
-Having audio trouble? Can't see servers, or some other issue? Have a look at the [Troubleshooting page](/wiki/Client-Troubleshooting), or feel free to ask in the [Discussions](https://github.com/jamulussoftware/jamulus/discussions).
+Having audio trouble? Can't see Servers, or some other issue? Have a look at the [Troubleshooting page](/wiki/Client-Troubleshooting), or feel free to ask in the [Discussions](https://github.com/jamulussoftware/jamulus/discussions).
diff --git a/wiki/en/Include-Backing-Up.md b/wiki/en/Include-Backing-Up.md
index 24bc09e08..172c40bf2 100644
--- a/wiki/en/Include-Backing-Up.md
+++ b/wiki/en/Include-Backing-Up.md
@@ -1,4 +1,4 @@
-
+
Once installed and running, you may want to keep a copy of your settings. Having a backup is always a good idea, and settings files are not backwardly compatible between versions of Jamulus. So if you want to go back to the previous version, you will need to restore the settings you had.
diff --git a/wiki/en/Include-Server-Commands.md b/wiki/en/Include-Server-Commands.md
index 7367398e5..7d11329ed 100644
--- a/wiki/en/Include-Server-Commands.md
+++ b/wiki/en/Include-Server-Commands.md
@@ -1,19 +1,19 @@
-- `-d` or `--discononquit` Disconnect all clients on quit. Normally, when a server is stopped or restarted, any clients that have not used their "Disconnect" buttons will re-establish connection when the server comes back up again. Using this option forces clients to manually re-establish their connections to the server.
-- `-e` or `--directoryserver` Register the server on a directory (e.g. to set its genre (see also `-o`)). See [server types](#server-types) for further information.
-- `--directoryfile` Enable directory to remember registered servers even if the directory is restarted. You'll need to specify a path to a writable file location in which server information is stored.
-- `-f` or `--listfilter` Whitelist servers registering on the server list, format `ip address 1[;ip address 2]` Directory Servers only. See [server types](#server-types)
-- `-F` or `--fastupdate` Reduces latency if clients connect with "Enable Small Network Buffers" option. Requires faster CPU to avoid dropouts, and more bandwidth to enabled clients.
+- `-d` or `--discononquit` Disconnect all Clients on quit. Normally, when a Server is stopped or restarted, any Clients that have not used their "Disconnect" buttons will re-establish connection when the Server comes back up again. Using this option forces Clients to manually re-establish their connections to the Server.
+- `-e` or `--directoryserver` Register the Server on a Directory (e.g. to set its genre (see also `-o`)). See [Server Types](#server-types) for further information.
+- `--directoryfile` Remember registered Servers even if the Directory is restarted. Directory Servers only. See [this guide](Custom-Directories) for further information.
+- `-f` or `--listfilter` Whitelist Servers registering on the Server list, format `ip address 1[;ip address 2]` Directories only.
+- `-F` or `--fastupdate` Reduces latency if Clients connect with "Enable Small Network Buffers" option. Requires faster CPU to avoid dropouts, and more bandwidth to enabled Clients.
- `-l` or `--log` Enable logging, set path and file name
- `-L` or `--licence` Show an agreement window before users can connect
- `-m` or `--htmlstatus` Enable HTML status file, set path and file name
-- `-o` or `--serverinfo` Location details in the format: `[name];[city];[locale value]` (see [values](https://doc.qt.io/qt-5/qlocale.html#Country-enum)) Public servers only
+- `-o` or `--serverinfo` Location details in the format: `[name];[city];[locale value]` (see [values](https://doc.qt.io/qt-5/qlocale.html#Country-enum)) Registered Servers only
- `-P` or `--delaypan` Start with delay panning enabled See [notes](#delay-panning)
- `-R` or `--recording` Include a writeable path where the files should be stored (in quotes if needed). See [Options](#options).
- `--norecord` Disable recording when enabled by default by `-R`
-- `-s` or `--server` Start in server mode
+- `-s` or `--server` Start in Server mode
- `--serverbindip` Specify the IP address to bind to
-- `-T` or `--multithreading` Use multithreading to make better use of multi-core CPUs to support more clients
-- `-u` or `--numchannels` Maximum number of channels (clients)
-- `-w` or `--welcomemessage` Welcome message on connect
+- `-T` or `--multithreading` Use multithreading to make better use of multi-core CPUs to support more Clients
+- `-u` or `--numchannels` Maximum number of channels (Clients)
+- `-w` or `--welcomemessage` Welcome message on connect. Can be given as a string or filename, and can contain HTML.
- `-z` or `--startminimized` Start minimizied
-- `--serverpublicip` The public IP address of the server if connecting to a Directory behind the same NAT. See [Notes on Directory Servers](Running-a-Server#points-to-note-about-directories)
+- `--serverpublicip` The public IP address of the Server if connecting to a Directory behind the same NAT. See [Notes on Directory Servers](Running-a-Server#points-to-note-about-directories)
diff --git a/wiki/en/Installation-for-Linux.md b/wiki/en/Installation-for-Linux.md
index 1b4f75abf..c86c13e82 100644
--- a/wiki/en/Installation-for-Linux.md
+++ b/wiki/en/Installation-for-Linux.md
@@ -30,7 +30,7 @@ For installers on other distributions, see their package managers and [Repology]
### Configure JACK with QjackCtl
-Jamulus clients need [JACK](https://jackaudio.org/) to run, but you need to configure that first. The recommended method is to use `QjackCtl`.
+Jamulus Clients need [JACK](https://jackaudio.org/) to run, but you need to configure that first. The recommended method is to use `QjackCtl`.
1. Launch QjackCtl. You will see the **Qt JACK Control utility main page**
2. Configure your audio hardware as follows (the exact settings for JACK will depend on what your audio hardware is capable of):
diff --git a/wiki/en/Installation-for-Macintosh.md b/wiki/en/Installation-for-Macintosh.md
index 87a71caaa..ace42ba7a 100644
--- a/wiki/en/Installation-for-Macintosh.md
+++ b/wiki/en/Installation-for-Macintosh.md
@@ -16,7 +16,7 @@ Upgrading? You may want to [back up your configuration](Software-Manual#backing-
1. [Download Jamulus]({{ site.download_root_link }}{{ site.download_file_names.mac }}){: .button}\\
**macOS Sierra (10.12) or lower:** [Download legacy version]({{ site.download_root_link }}{{ site.download_file_names.mac-legacy }})\\
**Mirror 2:** [SourceForge](https://sourceforge.net/projects/llcon/files/latest/download)
-1. **Install Jamulus**: Open the downloaded `.dmg` file, agree to the licence, *drag and drop* each icon you see in the window (Jamulus client and server) into your *Applications folder*. After that, you can close this window.
+1. **Install Jamulus**: Open the downloaded `.dmg` file, agree to the licence, *drag and drop* each icon you see in the window (Jamulus Client and Server) into your *Applications folder*. After that, you can close this window.
1. **Run Jamulus**. Now you should be able to use Jamulus just like any other application.
_You can remove the folder in the Downloads directory containing the `.dmg` and eject the "Jamulus" drive on your desktop. They are no longer needed._
diff --git a/wiki/en/Installation-for-Windows.md b/wiki/en/Installation-for-Windows.md
index 7e7737926..35e167bf7 100644
--- a/wiki/en/Installation-for-Windows.md
+++ b/wiki/en/Installation-for-Windows.md
@@ -41,7 +41,7 @@ You can try two versions of ASIO4ALL. ASIO4ALL v2.14 includes a workaround for a
You may or may not need to experiment a bit depending on your sound hardware. If everything works out of the box, you don't need to do anything.
-**Tip:** Set up your sound card while you're [connected to a server](Getting-Started#connecting-to-a-server-and-testing-your-sound) to hear your instrument or voice and check if everything is correctly set up; but first read on.
+**Tip:** Set up your sound card while you're [connected to a Server](Getting-Started#connecting-to-a-server-and-testing-your-sound) to hear your instrument or voice and check if everything is correctly set up; but first read on.
Before you start with Jamulus:
diff --git a/wiki/en/Privacy-Statement.md b/wiki/en/Privacy-Statement.md
index 5390b92f0..38844bdc8 100644
--- a/wiki/en/Privacy-Statement.md
+++ b/wiki/en/Privacy-Statement.md
@@ -7,32 +7,38 @@ permalink: "/wiki/Privacy-Statement"
# Privacy Statement
+## Definition of Terms
+
+- "**Server**" The Jamulus Server software, as opposed to the host machine/OS it is running on.
+- "**Client**" The Jamulus software used to connect to a Server
+- "**Directory**" A Jamulus Server configured to supply a list of Servers to Clients
+
## Web site
-The website at jamulus.io is served using GitHub Pages. We do not collect your personal data or set tracking cookies. When you connect to the jamulus.io site, your IP is sent to GitHub Pages.
+The website at [jamulus.io](https://jamulus.io) is served using GitHub Pages. We do not collect your personal data or set tracking cookies. When you connect to the jamulus.io site, your IP is sent to [GitHub Pages](https://pages.github.com/).
-## Jamulus software
+## Jamulus Software
### Use of Profile Information
-When you connect to a public or private Jamulus server, whatever you put in My Profile (in Settings) will be shown to others on that server while you are connected to it. The server does not otherwise store or record your Profile information and the server operator has no access to it unless they are also connected as a client.
+When you connect to a Server, whatever you put in My Profile (in Settings) will be shown to others on that Server while you are connected to it. The Server does not otherwise store or record your Profile information and the Server operator has no access to it unless they are also connected as using a Client.
-When you connect to a public server, your profile is also available to third parties from the Directory Server to which that server is registered. This is can be for informational purposes about the status of the public Jamulus network (for example, [here](https://explorer.jamulus.io/)), but may not be limited to that. Profile information is not otherwise logged or stored by the Jamulus server you are connected to, or by the Jamulus Directory Server, but may be stored or processed by third parties.
+When you connect to a Server, your profile may also be available to third parties from the Directory to which that Server is registered. This can be for informational purposes about the status of the public Jamulus network (for example, [here](https://explorer.jamulus.io/)), but may not be limited to that. Profile information is not otherwise logged or stored by the Jamulus Server you are connected to, or by the Jamulus Directory, but may be stored or processed by third parties.
### Use of IP Addresses
-When you connect to a public or private server, the server operator can see your IP address while you are connected. If the server operator has enabled logging (which is off by default) your IP address will also be logged and stored in the server's log file.
+When you connect to Server, the Server operator can see your IP address while you are connected. If the Server operator has enabled logging (which is off by default) your IP address will also be logged and stored in the Server's log file.
-The IP addresses of all public servers registered with the Directory Server can also be seen by third parties for informational or other purposes (for example [here](https://explorer.jamulus.io/)). Your public IP address is otherwise not logged or stored by Jamulus, but may be stored or processed by third parties.
+The IP addresses of all Servers registered with the Directory can also be seen by third parties for informational or other purposes (for example [here](https://explorer.jamulus.io/)). Your public IP address is otherwise not logged or stored by Jamulus, but may be stored or processed by third parties.
### Audio Recordings
-You will see a notice if you are connected to a Jamulus server while server recording is turned on. Recordings of each player are stored by the server separately as .WAV files and only the server operator has access to them.
+You will see a notice if you are connected to a Jamulus Server when Server recording is turned on. Recordings of each player are stored by the Server separately as .WAV files and only the Server operator has access to them unless they choose to make them available to third parties.
### Text Chat
-When you type a message in the Chat Window, other connected players can see that, but chats are not stored by the server and neither the server operator nor any third parties have access to them.
+When you type a message in the Chat Window, other connected players can see that, but chats are not stored by the Server and neither the Server operator nor any third parties have access to them.
### Data Transmission
-Please note that all audio and text data is sent and received between the Jamulus server and client without encryption.
+Please note that all audio and text data is sent and received between the Jamulus Server and Client without encryption.
diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md
index fa54645e1..5f842ad5a 100644
--- a/wiki/en/Running-a-Server.md
+++ b/wiki/en/Running-a-Server.md
@@ -19,87 +19,69 @@ permalink: "/wiki/Running-a-Server"
-## Do I need to run a server?
+## Do I need to run a Server?
-The short answer is **no**. For various reasons, you should try to use other people's servers, at least at first while getting your sound set up with the Jamulus client.
+The short answer is **no**. For various reasons, you should try to use Servers listed by the built in Directories, at least at first while getting your sound set up with the Jamulus Client. You may also be able to use a Server hosted by a third party. Doing so will save you the trouble of setting one up yourself.
-Note that you can have a "private" session with other people on a Public Server by simply soloing each other. You will then not be able to hear anyone else if they enter your server.
+Note that you can have a "private" session with other people on a Server by simply soloing each other. You will then not be able to hear anyone else if they enter your Server (note that this does not stop them from hearing you, using the chat function, or seeing your profile information).
-If you do decide to run a server, please read the following. Setting up a server is easy, however it is better to know the theory first:
+If you decide you cannot use any of the Servers listed by the built in Directories, you may be able to use a Server (either Registered in a Custom Directory, or Unregistered - see [Server Types](#server-types)) hosted by a third party. Doing so will save you the trouble of setting one up yourself.
+
+While setting up a Server isn't difficult, it's a good idea to read the following backround information to avoid some problems:
### Speed and latency
-Many people attribute problems to the server that are in fact problems with the _client_. Much depends on the clients' hard/software setup, the networks that _they_ are on, and whether they are sticking to [Rule Number One](Client-Troubleshooting#you-all-sound-ok-but-its-difficult-to-keep-together).
+Many people attribute problems to the Server that are in fact problems with the _Client_. Much depends on the Clients' hard/software setup, the networks that _they_ are on, and whether they are sticking to [Rule Number One](Client-Troubleshooting#you-all-sound-ok-but-its-difficult-to-keep-together).
-**_The capability of the server itself (and the network it's on) is NOT the main determinant of the quality of a Jamulus session!_**
+**_The capability of the Server itself (and the network it's on) is NOT the main determinant of the quality of a Jamulus session!_**
If you plan to be playing regularly with the same people, **you are strongly advised** to first make sure that each member of the group is set up to use Jamulus properly. Do this by finding a Public Server with a reasonable ping time for all of you (20 ms or less perhaps), all connect to that and work to fix any individual issues (verifying that they can [follow Rule Number One](Client-Troubleshooting#you-all-sound-ok-but-its-difficult-to-keep-together) in particular). Use the solo technique above to prevent being interrupted if needed.
-Once any issues with musicians have been solved in this way, you can then investigate hosting your own server either at home or on a cloud host such as Amazon, which may result in better latency than servers run at home. For example, [see this guide](https://www.facebook.com/notes/jamulus-worldjam/howto-idiots-guide-to-installing-or-upgrading-a-jamulus-server-on-amazon-aws-lig/818091045662521/) for using AWS Lightsail, by Jamulus user [Simon Tomlinson](https://www.facebook.com/simon.james.tomlinson?eid=ARBQoY3KcZAtS3pGdLJuqvQTeRSOo4gHdQZT7nNzOt1oPMGgZ4_3GERe-rOyH5PxsSHVYYXjWwcqd71a) (_Facebook_)
+Once any issues with musicians have been solved in this way, you can then investigate hosting your own Server either at home or on a cloud host such as Amazon, which may result in better latency than Servers run at home.
### Bandwidth – do you have enough?
Unless you plan on hosting more than about 5 players on a slower-speed home connection (eg 10 Mbit/s down and 1 Mbit/s up), then you are unlikely to run out of bandwidth. You can read more about network requirements at different quality settings later in this document.
-
### In general
- Consider using a cloud host to get better ping times if you're having problems
-- Any server should have at least 1.6GHz CPU frequency and 1GB RAM
-
-- Running a server may require you to adjust any firewalls running on or outside of your machine or cloud host.
+- Any Server should have at least 1.6GHz CPU frequency and 1GB RAM
-- Running a Private Server at home will require you to [port forward](#running-a-private-server) on your router. When running a Public Server, port forwarding should not be necessary in most cases, but it's advisable to do so because some networks may not work properly with Jamulus in its default mode.
+- Running a Server may require you to adjust any firewalls running on or outside of your machine or cloud host.
-- Jamulus only has limited IPv6 support which needs to be enabled with a command line argument on the client and server. There are plans to expand IPv6 support.
+- Running an Uregistered Server at home will require you to [port forward](#running-an-unregistered-server) on your router. When running a Registered Server, port forwarding should not be necessary in most cases, but it's advisable to do so because some networks may not work properly with Jamulus in its default mode.
+- Jamulus only has limited IPv6 support which needs to be enabled with a command line argument on the Client and Server. There are plans to expand IPv6 support.
# Server Types
-You can run your server in one of three "modes" (either at home or on a 3rd party host):
+You can run your Server in different ways (either at home or on a 3rd party host):
-### 1. Public
+### 1. Registered
-Use this mode when you want anyone to join your server, whoever they are.
-
-Your server will be listed in the Directory that clients use by default. Musicians can then discover and connect to your server.
+Your Server will be listed in a Directory. By default, Jamulus has a list of Public Directories that Clients can connect to. If you register with one of these, anyone can then discover and connect to your Server. You can also have your Server listed on a Custom Directory, if that better meets your needs.
-
-How Public Servers work
+
+How Registered Servers work
+### 2. Unregistered
-
-### 2. Private
-
-This is the default when starting a server for the first time. Private Servers are not listed by Directories, so only musicians who know your server's address to will be able to connect to it. This is useful because Jamulus does not (in any server mode) let you control who can connect to a server.
-
+This is the default when starting a Server for the first time. Unregistered Servers are not listed by Directories, so only musicians who know your Server's address to will be able to connect to it. This is useful because Jamulus does not let you control who can connect to a Server.
-
- How Private Servers work
+
+ How Unregistered Servers work
+### 3. Custom Directory
+If you want to run a number of Servers, possibly also behind a firewall or on a LAN, you may want to run your Server as a Directory. Examples include online events, music associations, sectional rehearsals or music lessons for schools.
-### 3. Directory
-
-For when you want to run a number of Private Servers, possibly also behind a firewall or on a LAN. Examples include online events, music associations, sectional rehearsals or music lessons for schools.
-
-To view servers listed by a custom Directory Server, musicians must enter the address in their client’s "Custom Directory Server" settings field. They will then see a Connection Setup list which is generated by your Directory.
-
-Up to 150 servers can then register with your Directory by setting your Directory address in their `--directoryserver` option at startup.
-
-To run a server as a Directory, it should be configured with `--directoryserver localhost` (that is, making itself the Directory to query for servers).
-
-#### Points to note about Directories
-
-- If you want to control which servers can register with your Directory, you can enable a whitelist with the `--listfilter` command line option. See the section on command line options later in this document.
-
-- When running a public Directory Server behind a NAT firewall on a private network, use the `--serverpublicip` option to specify the public IP address of the server(s) being listed by your Directory. This is necessary to allow clients on the public Internet to connect to them via NAT. Note that for the servers using this option, you will still need proper port forwarding in your router/firewall.
-
+To run a Custom Directory [read this guide](Custom-Directories)
# Bandwidth use
@@ -126,7 +108,7 @@ With the following units
## Network bandwidth
-There is one upstream (musician sending to the server) and one downstream (server sending back the mix to the musician)
+There is one upstream (musician sending to the Server) and one downstream (server sending back the mix to the musician)
Calculate bandwidth use
@@ -135,64 +117,63 @@ There is one upstream (musician sending to the server) and one downstream (serve
Note also that mean ADSL2 transfer rate is 10 Mbit/s for downstream and 1 Mbit/s for upstream. The actual performance depends on distance to the provider, which may [theoretically range from 24 Mbit/s at 0.3 km to 1.5 Mbit/s at 5.2 km](https://en.wikipedia.org/wiki/Asymmetric_digital_subscriber_line) for download rate.
-
-# Starting a server
+# Starting a Server
* **Windows users** - Use the "Jamulus Server" icon in the Windows Start menu.
* **macOS users** - Double-click the "Jamulus Server" icon in Applications (assuming you put the files from the install there as per [these instructions](Installation-for-Macintosh)).
-* **Linux users** - Open a terminal window (`CTRL+ALT+t` on Ubuntu and related distros) and type `jamulus -s`. Hit return and you should see the server control window. You can stop the server by closing the server window, or by using `CTRL+C` in the terminal. _(To run a headless server [read this guide](Server-Linux))_
+* **Linux users** - Open a terminal window (`CTRL+ALT+t` on Ubuntu and related distros) and type `jamulus -s`. Hit return and you should see the Server control window. You can stop the Server by closing the Server window, or by using `CTRL+C` in the terminal. _(To run a headless Server [read this guide](Server-Linux))_
## Server Setup
-
-
-### Make My Server Public
-
-By default, you will be running a Private Server and need to [read these instructions](#running-a-private-server) to have others connect to you in this mode.
+
-When making your server public, you should see a confirmation message saying whether your server has registered successfully. If not, and you leave your server running, it will keep trying to register until a free slot becomes available.
+### The Directory list
+**None**: By default, you will not be connected to a Directory and will be running in unregistered mode. [Read these instructions](#running-an-unregistered-server) to have other people connect to your Server in this mode.
-### Genre
+**Genre**: To allow other people to see your Server on one of the built-in Public Directories, select your desired genre Directory. You should see a confirmation message saying whether your Server has registered successfully. If not, and you leave your Server running, it will keep trying to register until a free slot becomes available.
-Because there is a limit of 150 servers per Directory, you need to select which Directory Server you want to advertise your server on. Select a genre if you intend to limit players to that style (players can then see your server in their genre list). This will make your server appear in the relevant server list for clients.
+**Custom**: This allows you to specify a custom directory on which to be listed. See the "Options" tab for the Custom Directory server address you want to use.
+To run your Server _as_ a Directory, you need to set the Custom Directory server address as `localhost` or `127.0.0.1` and set the "Genre" to "Custom". [Read this guide](Custom-Directories) for further details.
### My Server Info
-Type in the name, city and country so that other users can easily identify you.
+When running as a registered Server this displays the Server's name, city and country so that other users can easily identify it in the Directory listing.
### Chat Welcome Message
-The text entered here appears to all users when they join the server (the chat window will open automatically for them).
+The text entered here appears to all users when they join the Server (the chat window will open automatically for them). HTML is also supported.
## Options
-
-
+
### Recording Directory
-This sets the path to where server's recording will be stored. With this path set, the "Enable Jam Recoder" function in the Server Setup tab will make recording start once the first person connects to the server, and stops when the last person leaves. Use the "New Recording" button to create a new sub-directory in which the recordings will be stored from then on. Note that Recordings are per track in [Audacity](https://www.audacityteam.org/) `.lof` format and [REAPER](https://en.wikipedia.org/wiki/REAPER) `.rpp`. Open the respective files to listen to them in those applications.
+This sets the path to where the Server's recordings will be stored. With this path set, the "Enable Jam Recoder" function in the Server Setup tab will make recording start once the first person connects to the Server, and stops when the last person leaves. Use the "New Recording" button to create a new sub-directory in which the recordings will be stored from then on. Note that Recordings are per track in [Audacity](https://www.audacityteam.org/) `.lof` format and [REAPER](https://en.wikipedia.org/wiki/REAPER) `.rpp`. Open the respective files to listen to them in those applications.
-**Note**: When your server is recording, clients will display a message that recording is on.
+**Note**: When your Server is recording, Clients will display a message that recording is on.
-### Delay panning
+### Directory Server Address
-This option uses small differences in sound arrival time between the two ears. It produces a stereo effect similar to natural human hearing when compared to normal "volume" panning. Note that to achieve the effect, all clients should be set to 'mono in / stereo out' (or to 'stereo', but only if transmitting a stereo signal).
+Leave this field empty unless you need to list your Server on a [Custom Directory](#3-custom-directory) or run a Directory.
-### Custom Directory Server Address
+### Server List Filename
-Leave this field empty unless you need to list your server on a [private Directory](#3-directory)
+Leave this field empty unless you need to run your Server as a [Directory](#3-custom-directory). When in use, this holds the list of registered Servers whilst restarting the Directory. This prevents the server list appearing "empty" until the Servers re-register.
+### Delay panning
+
+This option uses small differences in sound arrival time between the two ears. It produces a stereo effect similar to natural human hearing when compared to normal "volume" panning.
### Start Minimised
-**Windows users** - If you want the server to start automatically on system start, enable the corresponding check box.
+**Windows users** - If you want the Server to start automatically on system start, enable the corresponding check box.
### Server status icon
@@ -203,34 +184,33 @@ When the Server is running, the operating system will show an icon in the system
The Server is occupied
+# Running an Unregistered Server
-# Running a Private Server
-
-It is highly recommended to test your server in **public mode first** so as to narrow down any subsequent problems in private mode.
+It is highly recommended to test your Server on a **Public Directory** first so as to narrow down any subsequent problems in unregistered mode.
### Port forwarding
-Normally, people from outside your home network cannot see things inside it. So if you want to operate a Jamulus server at home, you need to open a hole in your router to let Jamulus clients connect to it.
+If you are running a Server on your home network, people from outside will not be able to see things inside it. So if you want to operate a Jamulus Server, you need to open a hole in your router's firewall to let Jamulus Clients connect to it.
**The default port for the current version of Jamulus is UDP (not TCP) port 22124.**
The exact setup of port forwarding differs for every router. For help see [portforward.com](https://portforward.com).
-Once you have your router set up, you can get your external (WAN) IP address e.g. by [using Google](https://www.google.com/search?q=what+is+my+ip). Give this address to your friends so they can connect to your server (_but see also the note on dynamic DNS below_). You yourself have to connect to your own computer instead, since your computer runs the server. Therefore **only you** need to connect to `127.0.0.1`.
+Once you have your router set up, you can get your external (WAN) IP address e.g. by [using Google](https://www.google.com/search?q=what+is+my+ip). Give this address to your friends so they can connect to your Server (_but see also the note on dynamic DNS below_). You yourself should connect using the local network (LAN) address of the machine the Server is running on. If you are running a Client on the same machine as your Server, that would be `127.0.0.1`.
## Dynamic DNS and why you will probably need it
-Most domestic Internet connections will change their IP address after a period (hours, days or weeks). To make it easier for people to connect to you, you may therefore also want set up a dynamic DNS address. You can do this on [the machine](https://www.online-tech-tips.com/computer-tips/ddns-dynamic-dns-service/) that you are running the Jamulus server on, or preferably your router [may support it](https://www.noip.com/support/knowledgebase/how-to-configure-ddns-in-router/).
+Most domestic Internet connections will change their IP address after a period (hours, days or weeks). To make it easier for people to connect to you, you may therefore also want set up a dynamic DNS address. You can do this on [the machine](https://www.online-tech-tips.com/computer-tips/ddns-dynamic-dns-service/) that you are running the Jamulus Server on, or preferably your router [may support it](https://www.noip.com/support/knowledgebase/how-to-configure-ddns-in-router/).
-Note also that your home router may also change the IP address of the machine that you are running your server on. In which case you may need either to give that machine a static IP in the router's DHCP configuration, or simply port forward to all the addresses in your LAN.
+Note also that your home router may also change the IP address of the machine that you are running your Server on. In which case you may need to give that machine a static IP in the router's DHCP configuration.
-# Running a headless Linux server
+# Running a headless Linux Server
-Those wishing to run a server on a Linux cloud or other third party hosting platform should [read this guide](Server-Linux).
+Those wishing to run a Server on a Linux cloud or other third party hosting platform should [read this guide](Server-Linux).
-# Backing up the server
+# Backing up the Server
-_Note that headless servers do not use `.ini` files. All configuration is given as command line options._
+_Note that headless Servers do not use `.ini` files. All configuration is given as command line options._
{% include_relative Include-Backing-Up.md %}
@@ -250,7 +230,7 @@ For macOS, start a Terminal window and run Jamulus with the desired options like
/Applications/Jamulus.app/Contents/MacOS/Jamulus --serverbindip 192.168.0.100
```
-**Note**: Command line options will set the server's defaults at startup. You can override them with their corresponding GUI controls while the server is running.
+**Note**: Command line options will set the Server's defaults at startup. You can override them with their corresponding GUI controls while the Server is running.
{% include_relative Include-Server-Commands.md %}
@@ -261,6 +241,6 @@ For macOS, start a Terminal window and run Jamulus with the desired options like
# Troubleshooting
-Various problems can arise when setting up servers, and we generally ecourage people to use other people's (public) servers at first to isolate any issues that may in fact be due to client configuration.
+Various problems can arise when setting up Servers, and we generally encourage people to use other people's (public) Servers at first to isolate any issues that may in fact be due to Client configuration.
If you are having problems, [see this guide](Server-Troubleshooting).
diff --git a/wiki/en/Server-Linux.md b/wiki/en/Server-Linux.md
index 1277287a1..73f7fc36b 100644
--- a/wiki/en/Server-Linux.md
+++ b/wiki/en/Server-Linux.md
@@ -9,29 +9,29 @@ permalink: "/wiki/Server-Linux"
# Running a Headless Server
-The following is for running Jamulus as a "pure" server on **hardware without audio** (e.g. on a 3rd party/cloud host) and assumes Ubuntu/Debian distributions using systemd.
+The following is for running Jamulus as a "pure" Server on **hardware without audio** (e.g. on a 3rd party/cloud host) and assumes Ubuntu/Debian distributions using systemd.
-If you want to run a server on a Raspberry Pi, you will need to [compile from source](https://github.com/jamulussoftware/jamulus/blob/master/COMPILING.md). See also this [guide for Raspberry Pi](/kb/2020/03/28/Server-Rpi.html) maintained by Jamulus user fredsiva.
+If you want to run a Server on a Raspberry Pi, you will need to [compile from source](https://github.com/jamulussoftware/jamulus/blob/master/COMPILING.md). See also this [guide for Raspberry Pi](/kb/2020/03/28/Server-Rpi.html) maintained by Jamulus user fredsiva.
1. Download the [latest headless .deb file]({{ site.download_root_link }}{{ site.download_file_names.deb-headless }})
1. Update apt to make sure you have a current list of standard packages: `sudo apt update`
1. Install the Jamulus package: `sudo apt install ./{{ site.download_file_names.deb-headless }}`
-1. Enable the headless server process via systemd: `sudo systemctl enable jamulus-headless`
-1. Add your desired [command line options](Running-a-Server#command-line-options) to the `ExecStart` line in the systemd service file in `/lib/systemd/system/jamulus-headless.service` (By default you will be running a private server).
-1. Reload the systemd files `sudo systemctl daemon-reload` and restart the headless server: `sudo systemctl restart jamulus-headless`
+1. Enable the headless Server process via systemd: `sudo systemctl enable jamulus-headless`
+1. Add your desired [command line options](Running-a-Server#command-line-options) to the `ExecStart` line in the systemd service file in `/lib/systemd/system/jamulus-headless.service` (By default you will be running an Unregistered Server).
+1. Reload the systemd files `sudo systemctl daemon-reload` and restart the headless Server: `sudo systemctl restart jamulus-headless`
1. Check all is well with `systemctl status jamulus-headless` (hit `q` to get back to the command prompt).
You may also be interested in downloading [this set of useful tools](https://github.com/jamulussoftware/jamulus/tree/master/tools) from the Jamulus repository (clone the Git repo and also call `git submodule update --init`).
## Notes
-You can control Jamulus with the `systemctl` command. For example, to stop the server cleanly:
+You can control Jamulus with the `systemctl` command. For example, to stop the Server cleanly:
`sudo systemctl stop jamulus-headless`
-### Running in public mode
+### Running in Registered mode
-The following minimum setup is required to [run a public server](Running-a-Server#server-types):
+The following minimum setup is required to [run a Registered Server](Running-a-Server#server-types):
~~~
jamulus --nogui --server \
@@ -41,7 +41,7 @@ jamulus --nogui --server \
**Note**: Semicolon and newline characters are not allowed in `--serverinfo`
-Set your Directory (genre) server using the `--directoryserver` (`-e`) option as follows:
+Replace `genreServer:port` in the example above with one of the following options:
| Genre | Server address |
@@ -54,6 +54,11 @@ Set your Directory (genre) server using the `--directoryserver` (`-e`) option as
|**Genre Classical/Folk** |`classical.jamulus.io:22524`|
|**Genre Choral/Barbershop** |`choral.jamulus.io:22724`|
+
+### Running as a Directory
+
+If you wish to run a [Custom Directory](Running-a-Server#3-custom-directory) please see [this guide](Custom-Directories).
+
### Viewing The Logs
Jamulus will log to the system log file if you left the `StandardOutput=journal` setting in the unit file.
@@ -65,23 +70,22 @@ To view the log, use `journalctl` (to exit press Ctrl-C). For example, to read t
### Upgrading
-To upgrade your server to a newer version, simply download a new .deb and re-install as step 3.
+To upgrade your Server to a newer version, simply download a new .deb and re-install as step 3.
### Recording
-When using the recording function with the `-R` command line option, if the server receives a SIGUSR1 signal during a re
-cording, it will start a new recording in a new directory. SIGUSR2 will toggle recording enabled on/off.
+When using the recording function with the `-R` command line option, if the Server receives a SIGUSR1 signal during a recording, it will start a new recording in a new Directory. SIGUSR2 will toggle recording enabled on/off.
To send these signals using systemd, create the following two `.service` files in `/etc/systemd/system`, calling them something appropriate (e.g. `newRecording-Jamulus-serv
er.service`).
-**Note:** You will need to save recordings to a path _outside_ of the jamulus home directory, or remove `ProtectHome=true` from your systemd unit file (be aware that doing so is however a potential security risk).
+**Note:** You will need to save recordings to a path _outside_ of the jamulus home Directory, or remove `ProtectHome=true` from your systemd unit file (be aware that doing so is however a potential security risk).
For turning recording on or off (depending on the current state):
~~~
[Unit]
- Description=Toggle recording state of Jamulus server
+ Description=Toggle recording state of Jamulus Server
Requisite=Jamulus-Server
[Service]
@@ -93,7 +97,7 @@ For starting a new recording:
~~~
[Unit]
- Description=Start a new recording on Jamulus server
+ Description=Start a new recording on Jamulus Server
Requisite=Jamulus-Server
[Service]
@@ -101,7 +105,7 @@ For starting a new recording:
ExecStart=/bin/systemctl kill -s SIGUSR1 Jamulus-Server
~~~
-_Note: The Jamulus service name in the `ExecStart` line needs to be the same as the `.service` file name you created when setting systemd to control your Jamulus server. So in this example it would be `Jamulus-Server.service`_
+_Note: The Jamulus service name in the `ExecStart` line needs to be the same as the `.service` file name you created when setting systemd to control your Jamulus Server. So in this example it would be `Jamulus-Server.service`_
Run `sudo systemctl daemon-reload` to register them for first use.
@@ -111,11 +115,11 @@ Now you can run these with the `service start` command, for example:
You can see the result of these commands if you run `service jamulus status`, or by viewing the logs.
-## Making a server status page
+## Making a Server status page
-With the `-m` command line argument, server statistics can be generated to be put on a web page.
+With the `-m` command line argument, Server statistics can be generated to be put on a web page.
-Here is an example php script using the server status file to display the current server status on a html page (assuming the following command line argument to be used: `-m /var/www/stat1.dat`):
+Here is an example php script using the Server status file to display the current Server status on a html page (assuming the following command line argument to be used: `-m /var/www/stat1.dat`):
~~~
-## Servers - Public
+## Servers - Registered
-### Why doesn't my server show up in the list? Why isn't it registering?
+### Why doesn't my Server show up in the list? Why isn't it registering?
-If you are registered OK (you can [see it here](https://explorer.jamulus.io/)) and you or your friends can't see your server, you may need to wait, or start your client with the `--showallservers` option and try connecting from there ([see command line options](Software-Manual#command-line-options)) on how to start your client with a config option).
+If you are registered OK (you can [see it here](https://explorer.jamulus.io/)) and you or your friends can't see your Server, you may need to wait, or start your Client with the `--showallservers` option and try connecting from there ([see command line options](Software-Manual#command-line-options)) on how to start your Client with a config option). In some network configurations, you may also need to [port forward](Running-a-Server#port-forwarding) your router.
-If you are seeing a message that says the server is full, please [see this note](Running-a-Server#3-directory) on Directory Servers.
+If you are seeing a message that says the Server is full, you will need to wait until a slot becomes free.
-You can verify that your server is listed in the relevant genre by [checking it here](https://explorer.jamulus.io/).
+You can verify that your Server is listed in the relevant genre by [checking it here](https://explorer.jamulus.io/).
-## Servers - Private
+## Servers - Unregistered
-### I'm running my client on the same machine/network as my server but I can't connect to it
+### I'm running my Client on the same machine/network as my Server but I can't connect to it
-Connect your client to `127.0.0.1` (or `localhost` if that works for you). If you're running the client on a different machine to the server but on the same network, then connect to the _local network_ address of the server. Do not connect via the server's public (WAN) address.
+Connect your Client to `localhost` or `127.0.0.1`. If you're running the Client on a different machine to the Server but on the same network, then connect to the _local network_ address of the Server. Do not connect via the Server's public (WAN) address.
-### What address do I give to people so that they can connect to my server?
+### What address do I give to people so that they can connect to my Server?
-This should be your **public** IP address (find that with [Google](https://www.google.com/search?q=whatsmyip)). Connect your **own** Jamulus client to the **local** IP address of your server (127.0.0.1 if it's on the same machine as your client). Note that your public IP address can change - see the note on "dynamic DNS" in [this guide](Running-a-Server#dynamic-dns-and-why-you-will-probably-need-it).
+This should be your **public** IP address (find that with [Google](https://www.google.com/search?q=whatsmyip)). Connect your **own** Jamulus Client to the **local** IP address of your Server (`localhost` or `127.0.0.1` if it's on the same machine as your Client). Note that your public IP address can change - see the note on "dynamic DNS" in [this guide](Running-a-Server#dynamic-dns-and-why-you-will-probably-need-it).
-### What port numbers can I use?
-
-You can set your server to listen on a custom port with the `--port` option. If you do this, you will need to tell people which port to connect on. They will need to append the port number to the address of your server in the format `[serverAddress]:[portNumber]`.
-
-### Is a private server a direct server without contact to the Jamulus Directory Server?
-Yes. Please see [Server Types](Running-a-Server#server-types)
-
-### Can I convert my private server to being a public one?
-
-Yes. Simply check the "Make my Server Public" box in the server window and fill out the details. If you register your server, do not use port forwarding as it may prevent others using your server.
+### What port numbers can I use?
-### **_Headless Linux_**: I have created a server but it is joining the Directory Server and I don't want it to.
+You can set your Server to listen on a custom port with the `--port` option. If you do this, you will need to tell people which port to connect on. They will need to append the port number to the address of your Server in the format `[serverAddress]:[portNumber]`.
-To enable a private server, do not use the `--directoryserver` (`-e`) option when starting your server command line.
+### Nobody can connect to my Server - but I can connect locally
-### Nobody can connect to my server - but I can connect locally
+Some ISPs are using techniques like [Address plus Port (A+P)](https://en.wikipedia.org/wiki/Address_plus_Port) or [Carrier-grade NAT (CGN)](https://en.wikipedia.org/wiki/Carrier-grade_NAT) to conserve address space. This makes it impossible to host services like Jamulus at home (and may mean you also cannot see Server lists in your Client, or you may be missing [some specific Servers](https://sourceforge.net/p/llcon/discussion/server/thread/f72b293af0/)).
-Some ISPs are using techniques like [Address plus Port (A+P)](https://en.wikipedia.org/wiki/Address_plus_Port) or [Carrier-grade NAT (CGN)](https://en.wikipedia.org/wiki/Carrier-grade_NAT) to conserve address space. This makes it impossible to host services like Jamulus at home (and may mean you also cannot see server lists in your client, or you may be missing [some specific servers](https://sourceforge.net/p/llcon/discussion/server/thread/f72b293af0/)).
+To detect if CGN is the issue, go to your router's configuration screen (typically, 192.168.X.X) and look at the WAN Status page. If your listed IPv4 address does not match with the address you see [here](https://ifconfig.me), then this means CGN may be enabled. Or if you experience problems such as being unable to [connect to Servers or an empty Server list](https://sourceforge.net/p/llcon/discussion/533517/thread/b3eea395c4/) this may also be an indicator that your ISP is the problem too.
-To detect if CGN is the issue, go to your router's configuration screen (typically, 192.168.X.X) and look at the WAN Status page. If your listed IPv4 address does not match with the address you see [here](https://ifconfig.me), then this means CGN may be enabled. Or if you experience problems such as being unable to [connect to servers or an empty server list](https://sourceforge.net/p/llcon/discussion/533517/thread/b3eea395c4/) this may also be an indicator that your ISP is the problem too.
+To fix the issue: if you are running a registered Server, try [port forwarding](Running-a-Server#port-forwarding). If you are running an unregistered Server and are port forwarding already, contact your ISP support and request them to remove you from CGN and assign you a real WAN IP address because you want to host a Server. If CGN is not the issue, you may need to ask your ISP to give you a WAN IP address (or fixed one to avoid using DDNS, if possible). If all else fails, consider hosting on a cloud platform (some providers do free trial periods).
-To fix the issue: if you are running a public server, try [port forwarding](Running-a-Server#port-forwarding). If you are running a private server and are port forwarding already, contact your ISP support and request them to remove you from CGN and assign you a real WAN IP address because you want to host a server. If CGN is not the issue, you may need to ask your ISP to give you a WAN IP address (or fixed one to avoid using DDNS, if possible). If all else fails, consider hosting on a cloud platform (some providers do free trial periods).
diff --git a/wiki/en/Software-Manual.md b/wiki/en/Software-Manual.md
index 7afdd0ab3..897706680 100644
--- a/wiki/en/Software-Manual.md
+++ b/wiki/en/Software-Manual.md
@@ -7,7 +7,7 @@ permalink: "/wiki/Software-Manual"
# Jamulus User Manual
{:.no_toc}
-This manual documents the Jamulus client application for use by musicians and singers using the software to connect to a server.
+This manual documents the Jamulus Client application for use by musicians and singers using the software to connect to a server.
@@ -49,7 +49,7 @@ This manual documents the Jamulus client application for use by musicians and si
- The network jitter buffer is not large enough for the current network/audio interface jitter.
- The sound card's buffer delay (buffer size) is too small (see Settings window).
- The upload or download stream rate is too high for your internet bandwidth.
-- The CPU of the client or server is at 100%.
+- The CPU of the Client or server is at 100%.
## Input
@@ -70,8 +70,8 @@ to the right and move the fader upwards until the desired reverb level is reache
## Chat
Opens the chat window. Text entered is sent to
-all connected clients. If a new chat message arrives and the Chat dialogue is not already open, it will
-open automatically for all clients.
+all connected Clients. If a new chat message arrives and the Chat dialogue is not already open, it will
+open automatically for all Clients.
## Connect/disconnect button
@@ -165,9 +165,9 @@ a different actual sound card channel can be selected.
### Audio channels
-Selects the number of audio channels to be used for communication between client and server.
+Selects the number of audio channels to be used for communication between Client and server.
-**Note**: It is preferable to run separate client instances per voice/instrument, with each client given its own ini file, rather than using this built-in mono pair to stereo mixer.
+**Note**: It is preferable to run separate Client instances per voice/instrument, with each Client given its own ini file, rather than using this built-in mono pair to stereo mixer.
There are three modes available:
@@ -212,14 +212,14 @@ The jitter buffer compensates for network and sound card timing jitters. The siz
therefore influences the quality of the audio stream (how many dropouts occur) and the overall delay
(the longer the buffer, the higher the delay).
-You can set the jitter buffer size manually for your local client and the remote server. For the local jitter
+You can set the jitter buffer size manually for your local Client and the remote server. For the local jitter
buffer, dropouts in the audio stream are indicated by the light below the jitter buffer size faders.
If the light turns to red, a buffer overrun/underrun has taken place and the audio stream is interrupted.
The jitter buffer setting is therefore a trade-off between audio quality and overall delay.
If the Auto setting is enabled, the jitter buffers
-of your local client and the remote server are set automatically based on measurements of the network and sound card
+of your local Client and the remote server are set automatically based on measurements of the network and sound card
timing jitter. If the Auto check is enabled, the jitter buffer size faders are disabled (they cannot be moved with the mouse).
### Enable small network buffers
@@ -242,7 +242,7 @@ Leave this blank unless you need to enter the address of a directory server othe
### New Client Level
-This setting defines the fader level of a newly connected client in percent. If a new user connects
+This setting defines the fader level of a newly connected Client in percent. If a new user connects
to the current server, they will get the specified initial fader level if no other fader level from a previous connection of
that user was already stored. You can set all users in an occupied server to this level using Edit > "Set All Faders to New Client Level".
diff --git a/wiki/en/Tips-Tricks-More.md b/wiki/en/Tips-Tricks-More.md
index 8636ea8bd..2bf2c11f8 100644
--- a/wiki/en/Tips-Tricks-More.md
+++ b/wiki/en/Tips-Tricks-More.md
@@ -33,23 +33,23 @@ Jamulus user [Rob Durkin](https://sourceforge.net/u/bentwrench/profile/) has wri
## Remote management of recordings
-Jamulus user [vdellamea](https://github.com/vdellamea) has written a [web-based remote tool](https://github.com/vdellamea/jamulus-server-remote) for starting and stopping recordings on Linux servers, allowing you to then download them from your browser. See also [Jamulus Jam Exporter](https://github.com/pljones/jamulus-jamexporter) by [pljones](https://github.com/pljones), which also includes a server recording recovery script.
+Jamulus user [vdellamea](https://github.com/vdellamea) has written a [web-based remote tool](https://github.com/vdellamea/jamulus-server-remote) for starting and stopping recordings on Linux Servers, allowing you to then download them from your browser. See also [Jamulus Jam Exporter](https://github.com/pljones/jamulus-jamexporter) by [pljones](https://github.com/pljones), which also includes a Server recording recovery script.
## Sharing song/chord sheets
Jamulus user [BTDT](https://sourceforge.net/u/btdt/profile/) has written a system called [305keepers](https://github.com/keepers305/Song-Sheet-Sharing-Web-Pages), a web application that allows a "Jam leader" to push song sheets (in PDF format) to "Jammers" in real time using standard web browsers.
-## Converting a public server to a private one on the fly
+## Converting a public Server to a private one on the fly
-You can run a public server long enough for your band to connect, then go private by simply unchecking the 'Make my server Public' box in the server GUI. Your band mates will still be connected to the server until they disconnect. (Thanks to [David Savinkoff](https://github.com/DavidSavinkoff) for this tip!)
+You can run a public Server long enough for your band to connect, then go private by simply unchecking the 'Make my Server Public' box in the Server GUI. Your band mates will still be connected to the Server until they disconnect. (Thanks to [David Savinkoff](https://github.com/DavidSavinkoff) for this tip!)
-## Jamulus client Linux start script
+## Jamulus Client Linux start script
Here's a Linux start script for Jamulus using an old Audigy4 sound card, the large number of available audio faders for which makes it hard to get the correct settings.
This script therefore includes the most important audio fader settings. The second part of the script deals with the JACK connections. I use Guitarix as my guitar effect processor which I plug in in the JACK audio path.
-Finally I start Jamulus automatically connecting to the directory server.
+Finally I start Jamulus automatically connecting to the Directory.
Here is the script:
@@ -82,7 +82,7 @@ Here is the script:
## Using ctrlmidich for MIDI controllers
-The volume fader, pan control and mute and solo buttons in the client's mixer window strips can be controlled using a MIDI controller by using the `--ctrlmidich` parameter (note: only available for use with macOS and Linux using Jamulus version 3.7.0 or higher, and on Windows using the Jamulus version with JACK support). To enable this feature, Jamulus must be launched with `--ctrlmidich`. There is one global MIDI channel parameter (1-16) and two parameters you can set for each item controlled: `offset` and `consecutive CC numbers`. Set the first parameter to the channel you want Jamulus to listen on (0 for all channels) and then specify the items you want to control (f = volume fader; p = pan; m = mute; s = solo; o = mute myself) with the offset (CC number to start from) and number of consecutive CC numbers. There is one exception that does not require establishing consecutive CC numbers which is the "Mute Myself" command - it only requires a single CC number as it is only applied to one's own audio stream. Take the following example:
+The volume fader, pan control and mute and solo buttons in the Client's mixer window strips can be controlled using a MIDI controller by using the `--ctrlmidich` parameter (note: only available for use with macOS and Linux using Jamulus version 3.7.0 or higher, and on Windows using the Jamulus version with JACK support). To enable this feature, Jamulus must be launched with `--ctrlmidich`. There is one global MIDI channel parameter (1-16) and two parameters you can set for each item controlled: `offset` and `consecutive CC numbers`. Set the first parameter to the channel you want Jamulus to listen on (0 for all channels) and then specify the items you want to control (f = volume fader; p = pan; m = mute; s = solo; o = mute myself) with the offset (CC number to start from) and number of consecutive CC numbers. There is one exception that does not require establishing consecutive CC numbers which is the "Mute Myself" command - it only requires a single CC number as it is only applied to one's own audio stream. Take the following example:
`--ctrlmidich "1;f0*8;p16*8;s32*8;m48*8;o64"`
@@ -97,3 +97,4 @@ Fader strips in the mixer window are controlled in ascending order from left to
Make sure you connect your MIDI device's output port to the Jamulus MIDI in port (QjackCtl (Linux/Windows), MIDI Studio (macOS) or whatever you use for managing connections). In Linux you will need to install and launch a2jmidid so your device shows up in the MIDI tab in Qjackctl.
*Tip*: When you enable MIDI control in Jamulus, each user's name is prepended with a number, with the leftmost user starting at 0, then 1, etc. With default settings, when some users leave and others join, their left-right arrangement in the GUI may cease to follow a numerical order, making it more difficult to know who each physical fader/knob on your MIDI controller corresponds to. In order to keep the fader strips following a numerical order, go to "View" on the top menu bar and choose "Sort Users by Name".
+