From fbd46266379f6d30804663ec8dac22c851b1972c Mon Sep 17 00:00:00 2001 From: gilgongo Date: Sat, 12 Jun 2021 11:25:41 +0100 Subject: [PATCH 01/20] Initial content re-arrangement and modifications --- .../img/en-screenshots/bandwidth-diagram.png | Bin 108035 -> 165788 bytes wiki/en/FAQ.md | 11 + wiki/en/QOS-Windows.md | 33 +++ wiki/en/Running-a-Server.md | 243 ++++++++++++++++-- wiki/en/Shared-Commands.md | 11 + wiki/en/Software-Manual.md | 68 ++++- wiki/en/Tips-Tricks-More.md | 39 +-- 7 files changed, 351 insertions(+), 54 deletions(-) create mode 100644 wiki/en/QOS-Windows.md create mode 100644 wiki/en/Shared-Commands.md diff --git a/assets/img/en-screenshots/bandwidth-diagram.png b/assets/img/en-screenshots/bandwidth-diagram.png index 9157ad99458a7fe1467e8b5e2448385f6542c3fb..b21358e67379af9816d1a7536a7cb53ac952a53e 100644 GIT binary patch literal 165788 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 Jp`!WI{{yeNTl4?` literal 108035 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 gx&ON0K&W4Ez>)ub0jn>PLz1rlCW;{X5v diff --git a/wiki/en/FAQ.md b/wiki/en/FAQ.md index 89bd7648c..e1edb9e8b 100644 --- a/wiki/en/FAQ.md +++ b/wiki/en/FAQ.md @@ -50,3 +50,14 @@ Jamulus works on the client-server principle. Everybody’s audio is sent to a s ### Why doesn't Jamulus provide video support? Adding video support adds a lot of complexity. You can use other software like Jitsi or Zoom if you want to see others when playing (or have an "audience"), but the video will be significantly behind the Jamulus audio. + + +## Server FAQ + +### Why do public 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. + +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. + + diff --git a/wiki/en/QOS-Windows.md b/wiki/en/QOS-Windows.md new file mode 100644 index 000000000..590129048 --- /dev/null +++ b/wiki/en/QOS-Windows.md @@ -0,0 +1,33 @@ + +[comment]: # (This is an include file for use in multiple documents) + +## Quality of Service (QoS) + +Jamulus uses DSCP/CS4 opportunistically to deal with buffer bloat, and uses a default DSCP/CS4 value of 128 (or 0x80). This is compatible with IPv4 and IPv6. Other values can be set using the -Q option, eg -Q [0..255] (where 0 disables QoS). If you want to explore the effect of non-default settings, see RFC4594. However, most people will have no need to do this. + +### Use of QoS on Windows + +Jamulus's QoS settings (including the default) have no effect on Windows because the operating system ignores them. To enable it, you must follow these instructions. Note also that you may need to repeat this procedure every time Jamulus is updated. + +In Search box beside Start menu Type: Local Group Policy Editor (enter)
+In new window, (click) on the menu icon to display the Actions third panel
+Looking at the first panel of the Local Group Policy Editor
+ Local Computer Policy
+  Computer Configuration
+   Windows Settings
+    Policy-based QoS (click)
+Looking at the third panel (Actions) of the Local Group Policy Editor
+ Policy-based QoS
+  More Actions
+   Create new Policy (click)
+    Policy Name: Jamulus
+    Specify DSCP value: 32
+    Next
+    This QoS policy applies Only to applications with name Jamulus.exe
+    Next
+    Next
+    UDP
+    Finish
+ +(Notice Jamulus policy in center panel may be edited) + diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index 17872dc80..4ab56b5f5 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -5,35 +5,33 @@ lang: "en" permalink: "/wiki/Running-a-Server" --- -# Running a Server +# Server Administration Manual + {:.no_toc} -## Do I need to run a server to use Jamulus? +

-NO. - {: .doubletextsize .red } +Table of contents +* TOC + {:toc} -You can just choose somebody else's server from your list and get going. +
-**Don't want strangers interrupting?** Once you and your friends are connected to a public server, press the "solo" buttons on the musicians each of you want to play with. Anyone you don't solo will see a "muted" icon on your fader. And you won't hear them. -## That sounds too easy. -If you really want to run a server, it's **very important** that you read and understand what type of server you want to run. +## Do I need to run a server? - +The short answer is **no**. For various (sometimes non-obvious) reasons, you should try to use other people's servers, at least at first while getting set up with Jamulus client. -... then come back here. +Note that you can have a "private" session on a public server by simply soling each other. You will then not be able to hear anyone else if they enter your server. ### Speed and latency -**_The capability of the server itself (and the network it's on) is NOT the main determinant of the quality of a Jamulus session!_** +Many people attribute problems to the server that are in fact problems with the _client_. Much depends on the clients' [hardware](Hardware-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' [hardware](Hardware-Setup), the networks that _they_ are on, and whether they are sticking to [Rule Number One](Getting-Started#having-trouble-cant-keep-in-time). There is therefore no guarantee that you will achieve lower latency or better overall performance by having your own server. +**_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](Getting-Started#having-trouble-cant-keep-in-time) in particular). Use the solo technique above to prevent being interrupted if needed. +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_) @@ -41,6 +39,7 @@ Once any issues with musicians have been solved in this way, you can then invest A typical jam might have 4 people, for which you would need 200 Kbit/s * 4 = 800 Kbit/s (0.8 Mbit/s) up and down. So if you have a 10 Mbit/s down and 1 Mbit/s up broadband connection, **you may start running out of bandwidth if a fifth player joins**, particularly if other musicians choose settings that increase their usage. You may want to [check that you have enough speed](https://fast.com) for that. [Read more about bandwidth use](Network-Requirements) at different quality settings. + ### In general - Consider using a cloud host to get better ping times if you're having problems @@ -54,6 +53,220 @@ A typical jam might have 4 people, for which you would need 200 Kbit/s * 4 = 800 - Jamulus doesn't currently support IPv6 +# Server Types + +You can run your server in one of three "modes" (either at home or on a 3rd party host): + +### 1. Public + +Use this mode when you want anyone to join your server. + +Your server will be listed in the [directory server](Directory-Servers) list that clients use by default. Musicians can then discover and connect to your server. + + +**Note**: It is **not** necessary to port-forward or otherwise configure your router to run a public server. + +
+ Diagram of connections between clients within a Jamulus public server +
How public servers work
+
+ + + +### 2. Private + +This is the default when starting a server for the first time. + +This type of server will not be listed on a directory server list. You must give musicians your server address to connect their clients to. See [Running a Private Server](#running-a-private-server) for configuration. + + +
+ Diagram of connections between clients within a Jamulus private server +
How private servers work
+
+ + + +### 3. Directory + +For when you want to run several private servers, possibly behind a firwall or on a LAN. Examples include online events or musical associations, sectional rehearsals or music lessons. Most people can ignore this type. + +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 that directory server. + +Normal server operators can also register with your custom directory server so their servers can show up in your server list by setting yours as their `--directoryserver` option. + +To run a server as a Directory Server, it should be configured with `--directoryserver localhost` (that is, specify itself as the directory server to query). + +#### Directory Server points to note + +- If you want to control which servers can register with your Directory Server, you can enable a whitelist with the `--listfilter` command line option. See the [command line options page](Command-Line-Options) for further information about this feature and other parameters you can set. + +- 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 Server. 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. + + +# Bandwidth use + +## Audio bandwidth + +The audio settings have an impact on the required network bandwidth. The table below summarises network requirements with respect to the configuration of: +* Channels : stereo/mono +* Quality : high/medium/low +* Audio buffer duration : 2.67 ms, 5.33 ms, 10.67 ms, 21.33 ms + +With the following units +* ms : milliseconds +* Kbit/s : Kilo-bits per second (Reminder : 1 Mbit/s = 1024 Kbit/s, 1 KByte/s = 8 Kbit/s) +* Mbit/s : Mega-bits per second + +| Channels | Quality | Bandwidth (for buffer : 2.67 ms) | Bandwidth (for buffer : 5.33 ms) | Bandwidth (for buffer : 10.67 ms) | Bandwidth (for buffer : 21.33 ms) | +| --------- | ------ | -------- | -------- | -------- | -------- | +| Stereo | High | 894 Kbit/s | 657 Kbit/s | 541 Kbit/s | 483 Kbit/s | +| Stereo | Medium | 672 Kbit/s | 444 Kbit/s | 328 Kbit/s | 270 Kbit/s | +| Stereo | Low | 606 Kbit/s | 372 Kbit/s | 256 Kbit/s | 198 Kbit/s | +| Mono | High | 672 Kbit/s | 444 Kbit/s | 328 Kbit/s | 270 Kbit/s 8| +| Mono | Medium | 594 Kbit/s | 366 Kbit/s | 250 Kbit/s | 192 Kbit/s | +| Mono | Low | 534 Kbit/s | 306 Kbit/s | 190 Kbit/s | 132 Kbit/s | + +## Network bandwidth + +There is one upstream (musician sending to the server) and one downstream (server sending back the mix to the musician) +
+ A diagram of Jamulus network bandwidths from different audio qualities ranging from low to high +
Calculate bandwidth use
+
+ +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. + + + +# Running the server + + +* **Windows users** - Start the server using the entry for "Jamulus server" 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** - Please refer to the [GUI server instructions](Server-Linux#running-a-server-with-the-gui). + +## Server Setup + +
Image of the Jamulus server setup window
+ +### 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 checking this, 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. + + +### Genre + +Because there is a limit of 150 servers per directory server, 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. + + +### My Server Info + +Type in the name, city and country so that other users can easily identify you. + +### Chat Welcome Message + +The text entered here appears to all users when they join the server (the chat window will open automatically for them). + +## Options + + +
Image of Jamulus server window 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. 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._ + +### 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. 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). + +### Custom Central Server Address + +Leave this field empty unless you need to list your server on a [private central server](Choosing-a-Server-Type#3-directory) + + +### Start Minimised + +**Windows users** - If you want the server to start automatically on system start, enable the corresponding check box. + + + +# 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. + +### 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. + +**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`. + +## 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/). + +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. + +# Running a headless Linux server + +Those wishing to run a "headless" server, typically on a Linux cloud host or Raspberry Pi should read this guide. [link] + +# Command line options + +Most common functions in Jamulus can be set using the GUI, but these and others can also be set using options given in a terminal window. Exactly how you do this will depend on your operating system. + +For example on Windows, to use a specific settings file, right-click on the Jamulus shortcut and choose "Properties" > Target. Add the necessary arguments to Jamulus.exe: + +```shell +"C:\Program Files (x86)\Jamulus\Jamulus.exe" --inifile "C:\path\to\myinifile.ini" +``` + +For macOS, start a Terminal window and run Jamulus with the desired options like this: + +```shell + /Applications/Jamulus.app/Contents/MacOS/Jamulus --inifile "/path/to/myinifile.ini" +``` + +### Available options + +- `-d` or `--discononquit` Disconnect all clients on quit +- `-e` or `--directoryserver` Make the server public and sets its genre. See also `-o` See [server types](Choosing-a-Server-Type#3-directory) +- `-f` or `--listfilter` Whitelist servers registering on the server list, format `ip address 1[;ip address 2]` Directory servers only. [See note](Choosing-a-Server-Type#3-directory) +- `-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 +- `-P` or `--delaypan` Start with delay panning enabled See [Server Setup](Server-Win-Mac#other-options) +- `-R` or `--recording` Include a writeable path where the files should be stored (in quotes if needed). See [Server Setup](Server-Win-Mac#recording). +- `--norecord` Disable recording when enabled by default by `-R` +- `--serverbindip` Specify the IP address to bind to + +{% include_relative Shared-Commands.md %} +{% include_relative QOS-Windows.md %} + + +# Troubleshooting + +Various problems can arise when setting up servers, and we generally ecourage people to use other people's (public) servers when possible. + +If you are having problems, see this guide [link]. + + +=== + + ## All OK? Get set up!
diff --git a/wiki/en/Shared-Commands.md b/wiki/en/Shared-Commands.md new file mode 100644 index 000000000..84f1128a4 --- /dev/null +++ b/wiki/en/Shared-Commands.md @@ -0,0 +1,11 @@ + +[comment]: # (This is an include file for use in multiple documents) + +- `-h` or `--help` Display help text +- `-i` or `--inifile` Set location of initialization file (overrides default) +- `-n` or `--nogui` Disable GUI (for use in headless mode) +- `-p` or `--port` Sets the local UDP port number. Default is 22124 +- `-Q` or `--qos` Sets the quality of service DSCP value. Default is 128. Disable with 0. QoS is ignored by Windows. To enable it, see +section below +- `-t` or `--notranslation` Disable UI language translations +- `-v` or `--version` Output version information and exit diff --git a/wiki/en/Software-Manual.md b/wiki/en/Software-Manual.md index 4b16f48bc..f37c1f33a 100644 --- a/wiki/en/Software-Manual.md +++ b/wiki/en/Software-Manual.md @@ -16,7 +16,7 @@ This manual documents the Jamulus client application for use by musicians and si * TOC {:toc} - + # Main Window @@ -38,7 +38,7 @@ This manual documents the Jamulus client application for use by musicians and si **Yellow** - A session is still possible but it may be harder to play -
Image of a green red symbol
+
Image of a green red symbol
**Red** - The delay is too large for jamming @@ -52,8 +52,8 @@ This manual documents the Jamulus client application for use by musicians and si ## Input -This shows the level of the two stereo channels for your audio input. -Make sure not to clip the input signal to avoid distortions of the audio signal (the LEDs will indicate clipping when it occurs). +Shows the level of the two stereo channels for your audio input. +Make sure not to clip the input signal to avoid distortions of your sound (the LEDs will indicate clipping when it occurs). ## Mute Myself button @@ -61,7 +61,7 @@ Cuts your audio stream to the server so that you will be able to hear yourself a ## Reverb effect -Reverb can be applied to one local mono audio channel or to both channels in stereo mode. +Adds reverb to your local mono audio channel, or to both channels in stereo mode. The mono channel selection and the reverberation level can be modified. For example, if a microphone signal is fed in to the right audio channel of the sound card and a reverb effect needs to be applied, set the channel selector to the right and move the fader upwards until the desired reverb level is reached. @@ -69,13 +69,13 @@ to the right and move the fader upwards until the desired reverb level is reache ## Chat -The chat text entered in that dialog is sent to -all connected clients. If a new chat message arrives and the Chat dialog is not already open, it will +Opens the chat window. Text entered is sent to +all connected clients. If a new chat message arrives and the Chat dialoge is not already open, it will open automatically for all clients. ## Connect/disconnect button -Opens a dialog where you can select a server to connect to. If you are connected, +Opens a dialoge where you can select a server to connect to. If you are connected, pressing this button will end the session.
Image of a server connection window
@@ -101,9 +101,19 @@ If you have set your Audio Channel to Stereo or Stereo Out in your Settings, you If you see a "mute" icon above a user, it means that person cannot hear you. Either they have muted you, soloed one or more users not including you, or have set your fader in their mix to zero. -Using the **Mute button** prevents users being heard in your local mix. Be aware that when you mute someone, they will see a "muted" icon above your fader to indicate that you cannot hear them. Note also that you will continue to see their VU meters moving if sound from the muted user is reaching the server. Your fader position for them is also unaffected. +### Grp button -The **Solo button** allows you to hear one or more users on their own. Those not soloed will be muted. Note also that those people who are not soloed will see a "muted" icon above your fader. +Defines a group of audio channels. Moving the fader of one member of the group moves the faders of all the others Up to 8 groups can be defined. + +### Mute button + +Prevents users being heard in your local mix. Be aware that when you mute someone, they will see a "muted" icon above your fader to indicate that you cannot hear them. Note also that you will continue to see their VU meters moving if sound from the muted user is reaching the server. Your fader position for them is also unaffected. + +Note that muting your **own** channel simply means you will not hear your signal from the server (and is not advised as it can lead to you becoming out of time with other players). This is therefore not the same as using "[Mute Myself](#mute-myself-button)". + +### Solo button + +Allows you to hear one or more users on their own. Those not soloed will be muted. Note also that those people who are not soloed will see a "muted" icon above your fader. Users are listed left to right in the order that they connect. You can change the sort order using the Edit option in the application menu. @@ -259,3 +269,41 @@ Attempts to detect audio feedback loops. Once detected, this feature will activa Controls the relative levels of the left and right local audio channels. For a mono signal it acts as a pan between the two channels. For example, if a microphone is connected to the right input channel and an instrument is connected to the left input channel which is much louder than the microphone, move the audio fader to increase the relative volume of the mic. + +# Menu commands + +### File > Load/Save Mixer Channels Setup + +You can save and restore the mix you have for your band rehearsals (fader, mute, pan, solo etc.) and load these any time (even while you are playing). Loading can also be done by drag/drop to the mixer window. + + +### Edit > Auto-Adjust All Faders + +Applies a one-off fader setting to each channel depending on its volume. Useful for large ensembles to get a reasonable overall mix, although individual adjustments might still be necessary. Best applied during a warm-up or a uniform part of the music piece. + +# Command Line Options + +Most common functions in Jamulus can be set using the GUI, but these and others can also be set using options given in a terminal window. Exactly how you do this will depend on your operating system. + +For example on Windows, to use a specific settings file, right-click on the Jamulus shortcut and choose "Properties" > Target. Add the necessary arguments to Jamulus.exe: + +```shell +"C:\Program Files (x86)\Jamulus\Jamulus.exe" --inifile "C:\path\to\myinifile.ini" +``` + +For macOS, start a Terminal window and run Jamulus with the desired options like this: + +```shell + /Applications/Jamulus.app/Contents/MacOS/Jamulus --inifile "/path/to/myinifile.ini" +``` + +### Available options + +- `-M` or `--mutestream` Starts Jamulus in muted state +- `--mutemyown` Mute me in my personal mix ("headless" mode only) +- `-c` or `--connect` Connect to given server address on startup, format `address[:port]` +- `-j` or `--nojackconnect` Disable auto JACK connections +- `--ctrlmidich` MIDI controller channel to listen on, control number offset and consecutive CC numbers (channels). Format: `channel[;f*][;p*][;s*][;m*]` See [Tips & Tricks](Tips-Tricks-More#using-ctrlmidich-for-midi-controllers) +- `--clientname` Window title and JACK client name +{% include_relative Shared-Commands.md %} +{% include_relative QOS-Windows.md %} diff --git a/wiki/en/Tips-Tricks-More.md b/wiki/en/Tips-Tricks-More.md index 55538e347..ba4d3d99d 100644 --- a/wiki/en/Tips-Tricks-More.md +++ b/wiki/en/Tips-Tricks-More.md @@ -6,6 +6,16 @@ permalink: "/wiki/Tips-Tricks-More" --- # Tips & Tricks + {:.no_toc} + +
+ +Table of contents + +* TOC + {:toc} + +
## Learning about remote band rehearsing @@ -152,32 +162,3 @@ 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. -## Quality of Service - -Jamulus uses DSCP/CS4 opportunistically to deal with buffer bloat, and uses a default DSCP/CS4 value of 128 (or 0x80). This is compatible with IPv4 and IPv6. Other values can be set using the `-Q` option, eg `-Q [0..255]` (where 0 disables QoS). If you want to explore the effect of non-default settings, see [RFC4594](https://tools.ietf.org/html/rfc4594). However, most people will have no need to do this. - -### Using Quality of Service on Windows - -Jamulus’s QoS settings (including the default) have no effect on Windows because the operating system ignores them. To enable Quality of Service for Jamulus, you must follow these instructions. Note also that you may need to repeat this procedure every time Jamulus is updated. - - -In Search box beside Start menu Type: Local Group Policy Editor (enter)
-In new window, (click) on the menu icon to display the Actions third panel
-Looking at the first panel of the Local Group Policy Editor
- Local Computer Policy
-  Computer Configuration
-   Windows Settings
-    Policy-based QoS (click)
-Looking at the third panel (Actions) of the Local Group Policy Editor
- Policy-based QoS
-  More Actions
-   Create new Policy (click)
-    Policy Name: Jamulus
-    Specify DSCP value: 32
-    Next
-    This QoS policy applies Only to applications with name Jamulus.exe
-    Next
-    Next
-    UDP
-    Finish
-(Notice Jamulus policy in center panel may be edited) From b37074d7482ee7718e19f2396f45671c8928b079 Mon Sep 17 00:00:00 2001 From: gilgongo Date: Sat, 12 Jun 2021 15:40:50 +0100 Subject: [PATCH 02/20] Further consolidation and amends --- _data/en/navigation.yml | 8 +- wiki/en/Central-Servers.md | 7 -- wiki/en/Choosing-a-Server-Type.md | 63 +------------- wiki/en/Client-Troubleshooting.md | 10 +++ wiki/en/Command-Line-Options.md | 68 --------------- wiki/en/Directory-Servers.md | 29 +------ wiki/en/FAQ.md | 16 +++- wiki/en/Network-Requirements.md | 37 +------- wiki/en/QOS-Windows.md | 4 +- wiki/en/Running-a-Private-Server.md | 55 +----------- wiki/en/Running-a-Server.md | 101 +++++++++++----------- wiki/en/Server-Linux.md | 126 ++++++++++++++++++++-------- wiki/en/Server-Troubleshooting.md | 8 +- wiki/en/Server-Win-Mac.md | 69 +-------------- wiki/en/Software-Manual.md | 10 ++- wiki/en/Tips-Tricks-More.md | 69 --------------- 16 files changed, 196 insertions(+), 484 deletions(-) delete mode 100644 wiki/en/Central-Servers.md delete mode 100644 wiki/en/Command-Line-Options.md diff --git a/_data/en/navigation.yml b/_data/en/navigation.yml index 6b44e1401..6f8703e49 100644 --- a/_data/en/navigation.yml +++ b/_data/en/navigation.yml @@ -10,16 +10,16 @@ nav: url: /wiki/Installation-for-Macintosh - page: Linux url: /wiki/Installation-for-Linux - - page: Software Manual + - page: User Manual url: /wiki/Software-Manual + - page: FAQ + url: /wiki/FAQ - page: Troubleshooting url: /wiki/Client-Troubleshooting - title: More subfolderitems: - - page: Running a Server + - page: Server Administration url: /wiki/Running-a-Server - - page: Configuration - url: /wiki/Command-Line-Options - page: Tips & Tricks url: /wiki/Tips-Tricks-More - page: Community Knowledge Base diff --git a/wiki/en/Central-Servers.md b/wiki/en/Central-Servers.md deleted file mode 100644 index 52484c598..000000000 --- a/wiki/en/Central-Servers.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -layout: redirect -redirect: "/wiki/Directory-Servers" -lang: "en" -permalink: "/wiki/Central-Servers" -category: "hidden" ---- diff --git a/wiki/en/Choosing-a-Server-Type.md b/wiki/en/Choosing-a-Server-Type.md index 491c31033..d0188dcd2 100644 --- a/wiki/en/Choosing-a-Server-Type.md +++ b/wiki/en/Choosing-a-Server-Type.md @@ -1,65 +1,8 @@ --- -layout: wiki -title: "Choosing a Server Type" +layout: redirect +redirect: "/wiki/Running-a-Server" lang: "en" permalink: "/wiki/Choosing-a-Server-Type" +category: "hidden" --- -{% include breadcrumb.html root="More" branch1="Running a Server" branch1-url="Running-a-Server" %} - -# Server Types - -You can run your server in one of three "modes" (either at home or on a 3rd party host): - -### 1. Public - -Your server will be listed in the [directory server](Directory-Servers) list that clients use by default. Musicians can then discover and connect to your server. It is not necessary to run as a public server since many other people already run them. Just connect to one with low latency and start jamming. - -
Diagram of connections between clients within a Jamulus public server
- -This mode is activated by checking the "Register my server..." checkbox and (optionally) entering your server information. - -When running without the GUI ("headless"), the following would configure a public server: - -~~~ -Jamulus --nogui --server \ - --directoryserver genreServer:port \ - --serverinfo "yourServerName;yourCity;[country ID]" -~~~ - -**Note**: It is **not** necessary to port-forward or otherwise configure your router to run a public server. - -See also [Command Line Options](Command-Line-Options) for other parameters you can set. - - -### 2. Private - -This type of server will not be listed on a directory server list. You must give musicians your server address to connect their clients to. See [Running a Private Server](Running-a-Private-Server) for what needs to be done to enable others to connect to it. - -
Diagram of connections between clients within a Jamulus private server
- -This mode is activated by un-checking "Register my server...". - -When running without the GUI ("headless"), the following would configure a private server: - -```shell -Jamulus --nogui --server -``` - -See also [Command Line Options](Command-Line-Options) for other parameters you can set. - -### 3. Directory - -Configuring your server as a Directory Server need only be done under special circumstances (e.g. for online events or musical associations). Most people can ignore this type. - -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 that directory server. - -Normal server operators can also register with your custom directory server so their servers can show up in your server list by setting yours as their `--directoryserver` option. - -To run a server as a Directory Server, it should be configured with `--directoryserver localhost` (that is, specify itself as the directory server to query). - -#### Configuration points to note - -If you want to control which servers can register with your Directory Server, you can enable a whitelist with the `--listfilter` command line option. See the [command line options page](Command-Line-Options) for further information about this feature and other parameters you can set. - -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 Server. 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. diff --git a/wiki/en/Client-Troubleshooting.md b/wiki/en/Client-Troubleshooting.md index b83029379..2c00f65cf 100644 --- a/wiki/en/Client-Troubleshooting.md +++ b/wiki/en/Client-Troubleshooting.md @@ -6,6 +6,16 @@ permalink: "/wiki/Client-Troubleshooting" --- # Troubleshooting + {:.no_toc} + +
+ +Table of contents + +* TOC + {:toc} + +
### Don’t hear any sound/Others don’t hear you? diff --git a/wiki/en/Command-Line-Options.md b/wiki/en/Command-Line-Options.md deleted file mode 100644 index 311e76f28..000000000 --- a/wiki/en/Command-Line-Options.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -layout: wiki -title: "Command Line Options" -lang: "en" -permalink: "/wiki/Command-Line-Options" ---- - -# Command Line Options - -Most common functions in Jamulus can be set using the GUI, but these and others can also be set using options given in a terminal window. Exactly how you do this will depend on your operating system. - -For example on Windows, to have a client use a specific settings file, right-click on the Jamulus shortcut and choose "Properties" > Target. Add the necessary arguments to Jamulus.exe: - -```shell -"C:\Program Files (x86)\Jamulus\Jamulus.exe" --inifile "C:\path\to\myinifile.ini" -``` - -For macOS, start a Terminal window and run Jamulus with the desired options like this: - -```shell - /Applications/Jamulus.app/Contents/MacOS/Jamulus --inifile "/path/to/myinifile.ini" -``` - -*** - -You can see all possible options your version supports by starting Jamulus with the `-h` option. - -_Note that the following options will not alter settings made in the GUI._ - -### General settings (client and server modes) - -| Short | Long name | `[...]` means optional parameter | Notes | -|---------|-------------------|--------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| -| `-h,-?` | `--help` | This help text | | -| `-i` | `--inifile` | Set location of initialization file (overrides default) | Client (always) and server (with GUI) | -| `-n` | `--nogui` | Disable GUI | | -| `-p` | `--port` | Local UDP port number. Default is 22124 | | -| `-Q` | `--qos` | Sets the quality of service DSCP value. Default is 128. Disable with 0. | QoS is ignored by Windows, but see [Tips & Tricks](Tips-Tricks-More#quality-of-service) for how to apply it. | -| `-t` | `--notranslation` | Disable translations | | -| `-v` | `--version` | Output version information and exit | | - -### Server only - -| Short | Long name | `[...]` means optional parameter | Notes | -|-------|-------------------|----------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------| -| `-d` | `--discononquit` | Disconnect all clients on quit | | -| `-e` | `--directoryserver` | Make the server public and sets its genre. See also `-o` | See [server types](Choosing-a-Server-Type#3-directory) | -| `-f` | `--listfilter` | Whitelist servers registering on the server list, format `ip address 1[;ip address 2]` | Directory servers only. [See note](Choosing-a-Server-Type#3-directory) | -| `-F` | `--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` | `--log` | Enable logging, set path and file name | | -| `-L` | `--licence` | Show an agreement window before users can connect | | -| `-m` | `--htmlstatus` | Enable HTML status file, set path and file name | | -| `-o` | `--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 | -| `-P` | `--delaypan` | Start with delay panning enabled | See [Server Setup](Server-Win-Mac#other-options) | -| `-R` | `--recording` | Include a writeable path where the files should be stored (in quotes if needed). | See [Server Setup](Server-Win-Mac#recording). | -| | `--norecord` | Disable recording when enabled by default by `-R` | | -| | `--serverbindip` | Specify the IP address to bind to | - -### Client only - -| Short | Long name | `[...]` means optional parameter | Notes | -|-------|-------------------|---------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------| -| `-M` | `--mutestream` | Starts Jamulus in muted state | | -| | `--mutemyown` | Mute me in my personal mix | Headless only | -| `-c` | `--connect` | Connect to given server address on startup, format `address[:port]` | | -| `-j` | `--nojackconnect` | Disable auto JACK connections | | -| | `--ctrlmidich` | MIDI controller channel to listen on, control number offset and consecutive CC numbers (channels). Format: `channel[;f*][;p*][;s*][;m*]` | See [Tips & Tricks](Tips-Tricks-More#using-ctrlmidich-for-midi-controllers) | -| | `--clientname` | Window title and JACK client name | | diff --git a/wiki/en/Directory-Servers.md b/wiki/en/Directory-Servers.md index 4c7c33245..f397a6f9e 100644 --- a/wiki/en/Directory-Servers.md +++ b/wiki/en/Directory-Servers.md @@ -1,30 +1,7 @@ --- -layout: wiki -title: "Directory Servers" +layout: redirect +redirect: "/wiki/Running-a-Server" lang: "en" permalink: "/wiki/Directory-Servers" +category: "hidden" --- - -{% include breadcrumb.html root="More" branch1="Running a Server" branch1-url="Running-a-Server" %} - -# Public Server Registration - -Because there is a limit of 150 servers per directory server, 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). - -When you start a public server, you will see a message saying whether your server has been successfully listed or not. If not, and you leave your server running, it will keep trying to register until a free slot becomes available. - - -## Headless servers - -Set directory (genre) server using the `--directoryserver` (`-e`) option as follows: - - -| Genre | Server address | -|-----------|------------------| -|**Any Genre 1** |`anygenre1.jamulus.io:22124`| -|**Any Genre 2** |`anygenre2.jamulus.io:22224`| -|**Any Genre 3** |`anygenre3.jamulus.io:22624`| -|**Genre Rock** |`rock.jamulus.io:22424`| -|**Genre Jazz** |`jazz.jamulus.io:22324`| -|**Genre Classical/Folk** |`classical.jamulus.io:22524`| -|**Genre Choral/Barbershop** |`choral.jamulus.io:22724`| diff --git a/wiki/en/FAQ.md b/wiki/en/FAQ.md index e1edb9e8b..9009cbd19 100644 --- a/wiki/en/FAQ.md +++ b/wiki/en/FAQ.md @@ -6,8 +6,18 @@ permalink: "/wiki/FAQ" --- # Jamulus FAQ + {:.no_toc} -This is an overview of common questions. For common problems and their solutions, see the [Troubleshooting](/wiki/Client-Troubleshooting) page. +
+ +Table of contents + +* TOC + {:toc} + +
+ +**For common problems and their solutions when using Jamulus, see the [Troubleshooting](/wiki/Client-Troubleshooting) page.** ### Is there a metronome, synchronization, or some other way of keeping in time? @@ -16,7 +26,7 @@ No. Musicians on a Jamulus server simply play in real time time together as they ### How do I know if I can join a server? Are there rules? -In general, if somebody sets up a public server, then [by definition](/wiki/Choosing-a-Server-Type) 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 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. 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). @@ -34,7 +44,7 @@ Of course, if you are playing an acoustic instrument, or are a singer, it will b ### Do I need a fast Internet connection? -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. [More information on network requirements here](/wiki/Network-Requirements). +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? diff --git a/wiki/en/Network-Requirements.md b/wiki/en/Network-Requirements.md index f68f0d744..7bc3d082f 100644 --- a/wiki/en/Network-Requirements.md +++ b/wiki/en/Network-Requirements.md @@ -1,38 +1,7 @@ --- -layout: wiki -title: "Quality, Delay and Bandwidth" +layout: redirect +redirect: "/wiki/Running-a-Server" lang: "en" permalink: "/wiki/Network-Requirements" +category: "hidden" --- - -{% include breadcrumb.html root="More" branch1="Running a Server" branch1-url="Running-a-Server" %} - -# Network Requirements - -## Audio bandwidth - -The audio settings have an impact on the required network bandwidth. The table below summarises network requirements with respect to the configuration of: -* Channels : stereo/mono -* Quality : high/medium/low -* Audio buffer duration : 2.67 ms, 5.33 ms, 10.67 ms, 21.33 ms - -With the following units -* ms : milliseconds -* Kbit/s : Kilo-bits per second (Reminder : 1 Mbit/s = 1024 Kbit/s, 1 KByte/s = 8 Kbit/s) -* Mbit/s : Mega-bits per second - -| Channels | Quality | Bandwidth (for buffer : 2.67 ms) | Bandwidth (for buffer : 5.33 ms) | Bandwidth (for buffer : 10.67 ms) | Bandwidth (for buffer : 21.33 ms) | -| --------- | ------ | -------- | -------- | -------- | -------- | -| Stereo | High | 894 Kbit/s | 657 Kbit/s | 541 Kbit/s | 483 Kbit/s | -| Stereo | Medium | 672 Kbit/s | 444 Kbit/s | 328 Kbit/s | 270 Kbit/s | -| Stereo | Low | 606 Kbit/s | 372 Kbit/s | 256 Kbit/s | 198 Kbit/s | -| Mono | High | 672 Kbit/s | 444 Kbit/s | 328 Kbit/s | 270 Kbit/s | -| Mono | Medium | 594 Kbit/s | 366 Kbit/s | 250 Kbit/s | 192 Kbit/s | -| Mono | Low | 534 Kbit/s | 306 Kbit/s | 190 Kbit/s | 132 Kbit/s | - -## Network bandwidth - -There is one upstream (musician sending to the server) and one downstream (server sending back the mix to the musician) -
A diagram of Jamulus network bandwidths from different audio qualities ranging from low to high
- -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. diff --git a/wiki/en/QOS-Windows.md b/wiki/en/QOS-Windows.md index 590129048..ac38f4e36 100644 --- a/wiki/en/QOS-Windows.md +++ b/wiki/en/QOS-Windows.md @@ -1,11 +1,11 @@ [comment]: # (This is an include file for use in multiple documents) -## Quality of Service (QoS) +# Quality of Service (QoS) Jamulus uses DSCP/CS4 opportunistically to deal with buffer bloat, and uses a default DSCP/CS4 value of 128 (or 0x80). This is compatible with IPv4 and IPv6. Other values can be set using the -Q option, eg -Q [0..255] (where 0 disables QoS). If you want to explore the effect of non-default settings, see RFC4594. However, most people will have no need to do this. -### Use of QoS on Windows +## Use of QoS on Windows Jamulus's QoS settings (including the default) have no effect on Windows because the operating system ignores them. To enable it, you must follow these instructions. Note also that you may need to repeat this procedure every time Jamulus is updated. diff --git a/wiki/en/Running-a-Private-Server.md b/wiki/en/Running-a-Private-Server.md index 9623161fd..535b32da9 100644 --- a/wiki/en/Running-a-Private-Server.md +++ b/wiki/en/Running-a-Private-Server.md @@ -1,56 +1,7 @@ --- -layout: wiki -title: "Running a Private Server" +layout: redirect +redirect: "/wiki/Running-a-Server" lang: "en" permalink: "/wiki/Running-a-Private-Server" +category: "hidden" --- - -{% include breadcrumb.html root="Using Jamulus" branch1="Running a Server" branch1-url="Running-a-Server" %} - -# Running a Private Server - -**_Please ensure you have read the [server overview](Running-a-Server)_** - -This guide assumes you will be running a private server on your home network, but some of the issues here may also apply to those running on cloud hosts (e.g. Amazon EC2). - -It is highly recommended to test your server in **public mode first** so as to narrow down any subsequent problems in private mode. - -## Operating a private server behind a home network router - -### Port forwarding - -To run a private server, you need to set up port forwarding on your router. _(If you are curious about why you need to do this for private but not public servers, see [this footnote](#footnote-for-geeks).)_ - -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. - -**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. Here's an example of the port forwarding settings in a Linksys router: - -
Image of a Linksys router's port forwarding settings
- -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`. - -### Points to note - -* You do not need to open a port range as shown in the example above as long as you want to start only one instance of the Jamulus server on the same machine. - -* If using a different port than the default port (22124) you have to enter the port number after the server name or IP address separated by a colon in the Jamulus client (e.g. jamulus.example.org:22120). - -* See also this excellent [guide to running a private server](https://www.facebook.com/notes/jamulus-online-musicianssingers-jamming/how-to-create-a-private-server-for-band-rehearsals/508642543044030/) by [Simon Tomlinson](https://www.facebook.com/simon.james.tomlinson?eid=ARBQoY3KcZAtS3pGdLJuqvQTeRSOo4gHdQZT7nNzOt1oPMGgZ4_3GERe-rOyH5PxsSHVYYXjWwcqd71a) on Facebook. - -## 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/). - -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. - -## Footnote for geeks - -One of the many features of Jamulus that make it orgasmically wonderful is the fact that you can set up a server in seconds. But why do public servers not need port forwarding to do this? - -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 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. - -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. diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index 4ab56b5f5..75ccd9046 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -21,13 +21,13 @@ permalink: "/wiki/Running-a-Server" ## Do I need to run a server? -The short answer is **no**. For various (sometimes non-obvious) reasons, you should try to use other people's servers, at least at first while getting set up with Jamulus client. +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. -Note that you can have a "private" session on a public server by simply soling 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 public server by simply soling each other. You will then not be able to hear anyone else if they enter your server. ### Speed and latency -Many people attribute problems to the server that are in fact problems with the _client_. Much depends on the clients' [hardware](Hardware-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!_** @@ -37,7 +37,7 @@ Once any issues with musicians have been solved in this way, you can then invest ### Bandwidth – do you have enough? -A typical jam might have 4 people, for which you would need 200 Kbit/s * 4 = 800 Kbit/s (0.8 Mbit/s) up and down. So if you have a 10 Mbit/s down and 1 Mbit/s up broadband connection, **you may start running out of bandwidth if a fifth player joins**, particularly if other musicians choose settings that increase their usage. You may want to [check that you have enough speed](https://fast.com) for that. [Read more about bandwidth use](Network-Requirements) at different quality settings. +A typical jam might have 4 people, for which you would need 200 Kbit/s * 4 = 800 Kbit/s (0.8 Mbit/s) up and down. So if you have a 10 Mbit/s down and 1 Mbit/s up broadband connection, **you may start running out of bandwidth if a fifth player joins**, particularly if other musicians choose settings that increase their usage. You may want to [check that you have enough speed](https://fast.com) for that. You can read more about network requirements at different quality settings later in this document. ### In general @@ -48,7 +48,7 @@ A typical jam might have 4 people, for which you would need 200 Kbit/s * 4 = 800 - Running a server may require you to adjust any firewalls running on or outside of your machine or cloud host. -- Running a **private server at home** (but not a public one) will require you to [port forward](Running-a-Private-Server) on your router. +- Running a **private server at home** (but not a public one) will require you to [port forward](#running-a-private-server) on your router. - Jamulus doesn't currently support IPv6 @@ -59,12 +59,12 @@ You can run your server in one of three "modes" (either at home or on a 3rd part ### 1. Public -Use this mode when you want anyone to join your server. +Use this mode when you want anyone to join your server, whoever they are. -Your server will be listed in the [directory server](Directory-Servers) list that clients use by default. Musicians can then discover and connect to your server. +Your server will be listed in the Directory that clients use by default. Musicians can then discover and connect to your server. -**Note**: It is **not** necessary to port-forward or otherwise configure your router to run a public server. +**Note**: It is **not** necessary to port-forward or otherwise configure your router to run a public server.
Diagram of connections between clients within a Jamulus public server @@ -75,9 +75,7 @@ Your server will be listed in the [directory server](Directory-Servers) list tha ### 2. Private -This is the default when starting a server for the first time. - -This type of server will not be listed on a directory server list. You must give musicians your server address to connect their clients to. See [Running a Private Server](#running-a-private-server) for configuration. +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.
@@ -89,19 +87,19 @@ This type of server will not be listed on a directory server list. You must give ### 3. Directory -For when you want to run several private servers, possibly behind a firwall or on a LAN. Examples include online events or musical associations, sectional rehearsals or music lessons. Most people can ignore this type. +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 that directory server. +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. -Normal server operators can also register with your custom directory server so their servers can show up in your server list by setting yours as their `--directoryserver` option. +Normal server operators can register with your Directory so their servers can show up in your server list by setting your Directory address as their `--directoryserver` option at startup. -To run a server as a Directory Server, it should be configured with `--directoryserver localhost` (that is, specify itself as the directory server to query). +To run a server as a Directory, it should be configured with `--directoryserver localhost` (that is, making itself the Directory to query for servers). -#### Directory Server points to note +#### Points to note about Directories -- If you want to control which servers can register with your Directory Server, you can enable a whitelist with the `--listfilter` command line option. See the [command line options page](Command-Line-Options) for further information about this feature and other parameters you can set. +- 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 Server. 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. +- 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. # Bandwidth use @@ -139,14 +137,22 @@ Note also that mean ADSL2 transfer rate is 10 Mbit/s for downstream and 1 Mbit/s -# Running the server +# Starting the 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** +If you have installed the Jamulus client, you can run it in server mode by running Jamulus with the `-s` option as follows: -* **Windows users** - Start the server using the entry for "Jamulus server" in the Windows start menu. +1. Open a terminal window (`CTRL+ALT+t` on Ubuntu and related distros). +1. Assuming Jamulus is in `/usr/local/bin`, type `jamulus -s` -* **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)). +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. -* **Linux users** - Please refer to the [GUI server instructions](Server-Linux#running-a-server-with-the-gui). ## Server Setup @@ -156,12 +162,12 @@ Note also that mean ADSL2 transfer rate is 10 Mbit/s for downstream and 1 Mbit/s 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 checking this, 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. +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. ### Genre -Because there is a limit of 150 servers per directory server, 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. +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. ### My Server Info @@ -179,9 +185,9 @@ The text entered here appears to all users when they join the server (the chat w ### 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. 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 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. -_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 @@ -220,7 +226,7 @@ Note also that your home router may also change the IP address of the machine th # Running a headless Linux server -Those wishing to run a "headless" server, typically on a Linux cloud host or Raspberry Pi should read this guide. [link] +Those wishing to run a server on a Linux cloud or other third party hosting platform should [read this guide](Server-Linux). # Command line options @@ -229,29 +235,35 @@ Most common functions in Jamulus can be set using the GUI, but these and others For example on Windows, to use a specific settings file, right-click on the Jamulus shortcut and choose "Properties" > Target. Add the necessary arguments to Jamulus.exe: ```shell -"C:\Program Files (x86)\Jamulus\Jamulus.exe" --inifile "C:\path\to\myinifile.ini" +"C:\Program Files (x86)\Jamulus\Jamulus.exe" --serverbindip 192.168.0.100 ``` For macOS, start a Terminal window and run Jamulus with the desired options like this: ```shell - /Applications/Jamulus.app/Contents/MacOS/Jamulus --inifile "/path/to/myinifile.ini" + /Applications/Jamulus.app/Contents/MacOS/Jamulus --serverbindip 192.168.0.100 ``` -### Available options +**Note**: Command-line options will not alter settings made in the GUI. -- `-d` or `--discononquit` Disconnect all clients on quit -- `-e` or `--directoryserver` Make the server public and sets its genre. See also `-o` See [server types](Choosing-a-Server-Type#3-directory) -- `-f` or `--listfilter` Whitelist servers registering on the server list, format `ip address 1[;ip address 2]` Directory servers only. [See note](Choosing-a-Server-Type#3-directory) +- `-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` Make the server public and sets its genre (see also `-o`). See [server types](#server-types) for further information. +- `-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. - `-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 -- `-P` or `--delaypan` Start with delay panning enabled See [Server Setup](Server-Win-Mac#other-options) -- `-R` or `--recording` Include a writeable path where the files should be stored (in quotes if needed). See [Server Setup](Server-Win-Mac#recording). +- `-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 - `--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 +- `-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](#points-to-note-about-directories) {% include_relative Shared-Commands.md %} {% include_relative QOS-Windows.md %} @@ -259,25 +271,10 @@ 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 when possible. +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. -If you are having problems, see this guide [link]. +If you are having problems, [see this guide](Server-Troubleshooting). -=== - - -## All OK? Get set up! - - - -If you want to run a server on a Raspberry Pi, have a look at the [guide for Raspberry Pi](/kb/2020/03/28/Server-Rpi.html) by fredsiva. - -Server operators 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`). -## Having problems? Got issues? -See the [Server Troubleshooting FAQ](Server-Troubleshooting) diff --git a/wiki/en/Server-Linux.md b/wiki/en/Server-Linux.md index f928e046b..a62d6b3a7 100644 --- a/wiki/en/Server-Linux.md +++ b/wiki/en/Server-Linux.md @@ -1,74 +1,132 @@ --- layout: wiki -title: "Server Installation - Linux" +title: "Headless Linux Server Installation" lang: "en" permalink: "/wiki/Server-Linux" --- -{% include breadcrumb.html root="Using Jamulus" branch1="Running a Server" branch1-url="Running-a-Server" %} +{% include breadcrumb.html root="More" branch1="Server Administration" branch1-url="Running-a-Server" %} -# Server Installation - Linux +# Running a Headless Server -**_Please ensure you have read the [server overview](Running-a-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. - -## Running a server with a GUI on a desktop machine - -If you have installed the Jamulus client, you can run it in your chosen [server mode](Choosing-a-Server-Type) by running Jamulus with the `-s` option as follows: - -1. Open a terminal window (`CTRL+ALT+t` on Ubuntu and related distros). -1. Assuming Jamulus is in `/usr/local/bin`, 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 configure the server**, please refer to [the Windows & macOS instructions](Server-Win-Mac), and [Command Line Options](Command-Line-Options) for other parameters you can set. - -## 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. We also have instructions for [Raspberry Pi](Server-Rpi). +If you want to run a server on a Raspberry Pi, this [guide for Raspberry Pi](/kb/2020/03/28/Server-Rpi.html) is 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](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. 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. Check all is well with `service jamulus-headless status` (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 `service` command. For example, to stop the server cleanly: `sudo service jamulus-headless stop` -### Viewing The Logs - -Jamulus will log to the system file if you left the `StandardOutput=journal` setting in the unit file. Logging to the system log is recommended, as the system will manage the log file for you - no need to come back and purge it later or worry about filling up your disk space. - -To view the log, use `journalctl` (to exit press Ctrl-C). For example, to read the system log file, filtered for the Jamulus service: +### Running in public mode -`journalctl -u jamulus-headless` +The following minimum setup is required to [run a public server](Running-a-Server#server-types): -For today’s entries: +~~~ +jamulus --nogui --server \ + --directoryserver genreServer:port \ + --serverinfo "yourServerName;yourCity;[country ID]" +~~~ -`journalctl -u jamulus-headless --since today` +Set your Directory (genre) server using the `--directoryserver` (`-e`) option as follows: -For the last hour: -`journalctl -u jamulus-headless --since "1 hour ago"` +| Genre | Server address | +|-----------|------------------| +|**Any Genre 1** |`anygenre1.jamulus.io:22124`| +|**Any Genre 2** |`anygenre2.jamulus.io:22224`| +|**Any Genre 3** |`anygenre3.jamulus.io:22624`| +|**Genre Rock** |`rock.jamulus.io:22424`| +|**Genre Jazz** |`jazz.jamulus.io:22324`| +|**Genre Classical/Folk** |`classical.jamulus.io:22524`| +|**Genre Choral/Barbershop** |`choral.jamulus.io:22724`| -Filter the log to see connection messages for your Jamulus server: +### Viewing The Logs -`journalctl -u jamulus-headless | grep connected` +Jamulus will log to the system log file if you left the `StandardOutput=journal` setting in the unit file. -Follow (show on screen) Jamulus log messages as they occur: +To view the log, use `journalctl` (to exit press Ctrl-C). For example, to read the system log file, filtered for the Jamulus service: `journalctl -f -u jamulus-headless` + ### Upgrading To upgrade your server to a newer version, simply download a new .deb and re-install as step 3. ### Recording -See [this information](/wiki/Tips-Tricks-More#controlling-recordings-on-linux-headless-servers) on controlling recordings on headless servers. +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. + +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). + +For turning recording on or off (depending on the current state): + +~~~ + [Unit] + Description=Toggle recording state of Jamulus server + Requisite=Jamulus-Server + + [Service] + Type=oneshot + ExecStart=/bin/systemctl kill -s SIGUSR2 Jamulus-Server +~~~ + +For starting a new recording: + +~~~ + [Unit] + Description=Start a new recording on Jamulus server + Requisite=Jamulus-Server + + [Service] + Type=oneshot + 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`_ + +Run `sudo systemctl daemon-reload` to register them for first use. + +Now you can run these with the `service start` command, for example: + +`sudo service jamulusTogglerec start` (assuming you named your unit file `jamulusTogglerec.service`) + +You can see the result of these commands if you run `service jamulus status`, or by viewing the logs. + +## Making a server status 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`): + +~~~ + + +~~~ diff --git a/wiki/en/Server-Troubleshooting.md b/wiki/en/Server-Troubleshooting.md index fd105dccd..76625ea26 100644 --- a/wiki/en/Server-Troubleshooting.md +++ b/wiki/en/Server-Troubleshooting.md @@ -5,15 +5,15 @@ lang: "en" permalink: "/wiki/Server-Troubleshooting" --- -{% include breadcrumb.html root="Using Jamulus" branch1="Running a Server" branch1-url="Running-a-Server" %} +{% include breadcrumb.html root="More" branch1="Server Administration" branch1-url="Running-a-Server" %} -# Troubleshooting +# Server Troubleshooting ## Servers - Public ### 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 this page](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). If you are seeing a message that says the server is full, please [see this note](Directory-Servers) on Directory Servers. @@ -31,7 +31,7 @@ This should be your **public** IP address (find that with [Google](https://www.g ### What port numbers can I use? -Keep the default UDP ports. The actual default port is documented by the [command line](Command-Line-Options). At the time of writing this documentation, the port number is **22124**. +You can set your server to listen on a custom port with the `--port` option. If you you this, you will need to tell people which port to connect connect on. They will need to append the port number the the address of your server in the format `[serverAddress]:[portNumber]`. ### Is a private server a direct server without contact to the Jamulus Directory Server? diff --git a/wiki/en/Server-Win-Mac.md b/wiki/en/Server-Win-Mac.md index 91a3147ac..4426e79cb 100644 --- a/wiki/en/Server-Win-Mac.md +++ b/wiki/en/Server-Win-Mac.md @@ -1,71 +1,8 @@ --- -layout: wiki -title: "Server Installation - Windows and macOS" +layout: redirect +redirect: "/wiki/Running-a-Server" lang: "en" permalink: "/wiki/Server-Win-Mac" +category: "hidden" --- -{% include breadcrumb.html root="Using Jamulus" branch1="Running a Server" branch1-url="Running-a-Server" %} - -# Installation for Windows and macOS - - -**_Please ensure you have read the [server overview](Running-a-Server)_** - -* **Windows users** - Start the server using the entry for "Jamulus server" 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** - Please refer to the [GUI server instructions](Server-Linux#running-a-server-with-the-gui). - -
Image of the Jamulus server setup window
- -### Public server setup - -1. On checking "Make My Server Public" you should see a confirmation message saying whether your server has registered successfully. - -1. Type in the name, city and country so that other users can easily identify you. - -1. Specify a music genre. This will make your server appear in the relevant server list for clients (see more [details on Directory Servers](Directory-Servers)). - -_The Chat Welcome Message appears to all users when they join the server (the chat window will open automatically for them)._ - -### Private server setup - -If you do not check "Make My Server Public", you will be running a private server and need to [read these instructions](Running-a-Private-Server). - -_If you want to **run a client on the same machine** you should **connect the client to `127.0.0.1`** for best performance. (Similarly, if you want to connect a client on another machine on your LAN, use the server's LAN IP address)._ - - -### Other options - -jamulus-server - -### Recording - -Turn on server recording by first setting the Recording Directory in the Options tab. Recording starts 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. 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._ - -For headless servers: you can control the recording function [using these instructions](Server-Linux#controlling-recordings). - -### 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. 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). - -### Custom Central Server Address - - -
Image of Jamulus server window options
- -(Leave this field empty unless you need to list your server on a [private central server](Choosing-a-Server-Type#3-directory)) - - -**Windows users** - If you want the server to start automatically on system start, enable the corresponding check box. - -(Leave the "Custom Directory Server Address" field empty unless you need to list your server on a [private directory server](Choosing-a-Server-Type#3-directory)) - - -*** - -See also [Command Line Options](Command-Line-Options) for other parameters you can set. diff --git a/wiki/en/Software-Manual.md b/wiki/en/Software-Manual.md index f37c1f33a..f83e0aa6f 100644 --- a/wiki/en/Software-Manual.md +++ b/wiki/en/Software-Manual.md @@ -164,10 +164,14 @@ If the selected sound card device offers more than one input or output channel, and Output Channel Mapping_ settings are visible. For each Jamulus input/output channel (left and right channel) 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. There are three modes -available: +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. + +There are three modes available: **Mono** and **Stereo** modes use one and two audio channels respectively. @@ -297,7 +301,7 @@ For macOS, start a Terminal window and run Jamulus with the desired options like /Applications/Jamulus.app/Contents/MacOS/Jamulus --inifile "/path/to/myinifile.ini" ``` -### Available options +**Note**: Command-line options will not alter settings made in the GUI. - `-M` or `--mutestream` Starts Jamulus in muted state - `--mutemyown` Mute me in my personal mix ("headless" mode only) diff --git a/wiki/en/Tips-Tricks-More.md b/wiki/en/Tips-Tricks-More.md index ba4d3d99d..db3ee9f0e 100644 --- a/wiki/en/Tips-Tricks-More.md +++ b/wiki/en/Tips-Tricks-More.md @@ -37,32 +37,6 @@ Jamulus user [Rob Durkin](https://sourceforge.net/u/bentwrench/profile/) has wri 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. -## Making a server status page - -With the `-m` command line argument, server statistic information 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`): - -~~~ - - -~~~ - -## Saving and loading client mix states - -You can save and restore the mix you have for your band rehearsals (fader, mute, pan, solo etc.) and load these any time (even while you are playing). Do this with "File > Save Mixer Channels Setup" in your client and load them using "Load Mixer Channels Setup" (or drag/drop them to the mixer window). - ## 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!) @@ -119,46 +93,3 @@ 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), 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. - -## Controlling recordings on Linux headless servers - -When using the [recording function](Server-Win-Mac#recording) with the `-R` [command line option](Command-Line-Options), 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-server.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). - -For turning recording on or off (depending on the current state): - -~~~ - [Unit] - Description=Toggle recording state of Jamulus server - Requisite=Jamulus-Server - - [Service] - Type=oneshot - ExecStart=/bin/systemctl kill -s SIGUSR2 Jamulus-Server -~~~ - -For starting a new recording: - -~~~ - [Unit] - Description=Start a new recording on Jamulus server - Requisite=Jamulus-Server - - [Service] - Type=oneshot - 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`_ - -Run `sudo systemctl daemon-reload` to register them for first use. - -Now you can run these with the `service start` command, for example: - -`sudo service jamulusTogglerec start` (assuming you named your unit file `jamulusTogglerec.service`) - -You can see the result of these commands if you run `service jamulus status`, or by viewing the logs. - From 802dde2932b12762d193bc5024ec0056554b1232 Mon Sep 17 00:00:00 2001 From: gilgongo Date: Sat, 12 Jun 2021 15:57:21 +0100 Subject: [PATCH 03/20] Adding info re. illegal characters #514 --- wiki/en/Server-Linux.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/wiki/en/Server-Linux.md b/wiki/en/Server-Linux.md index a62d6b3a7..72b9ac434 100644 --- a/wiki/en/Server-Linux.md +++ b/wiki/en/Server-Linux.md @@ -39,6 +39,8 @@ jamulus --nogui --server \ --serverinfo "yourServerName;yourCity;[country ID]" ~~~ +**Note**: Semicolon and newline characters are not allowed in `--serverinfo` + Set your Directory (genre) server using the `--directoryserver` (`-e`) option as follows: From c173bfe4ae422696e29ebca9ebdd3ac2950ade08 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Sat, 12 Jun 2021 17:13:05 +0100 Subject: [PATCH 04/20] Update Running-a-Server.md Correcting links --- wiki/en/Running-a-Server.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index 75ccd9046..c886905db 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -160,7 +160,7 @@ Hit return and you should see the server control window. You can stop the server ### 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. +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. @@ -195,7 +195,7 @@ This option uses small differences in sound arrival time between the two ears. I ### Custom Central Server Address -Leave this field empty unless you need to list your server on a [private central server](Choosing-a-Server-Type#3-directory) +Leave this field empty unless you need to list your server on a [private central server](#3-directory) ### Start Minimised From 7c2fa9a9e36c81b8a18f1574250096b4433d4b14 Mon Sep 17 00:00:00 2001 From: gilgongo Date: Sat, 12 Jun 2021 19:15:00 +0100 Subject: [PATCH 05/20] Corrections --- wiki/en/Running-a-Server.md | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index c886905db..db5fac78c 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -23,7 +23,7 @@ permalink: "/wiki/Running-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. -Note that you can have a "private" session with other people on a public server by simply soling 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 Public Server by simply soling each other. You will then not be able to hear anyone else if they enter your server. ### Speed and latency @@ -31,7 +31,7 @@ Many people attribute problems to the server that are in fact problems with the **_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. +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_) @@ -48,7 +48,7 @@ A typical jam might have 4 people, for which you would need 200 Kbit/s * 4 = 800 - Running a server may require you to adjust any firewalls running on or outside of your machine or cloud host. -- Running a **private server at home** (but not a public one) will require you to [port forward](#running-a-private-server) on your router. +- Running a Private Server at home (but not a public one) will require you to [port forward](#running-a-private-server) on your router. - Jamulus doesn't currently support IPv6 @@ -64,34 +64,34 @@ 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. -**Note**: It is **not** necessary to port-forward or otherwise configure your router to run a public server. +**Note**: It is **not** necessary to port-forward or otherwise configure your router to run a Public Server.
- Diagram of connections between clients within a Jamulus public server -
How public servers work
+ Diagram of connections between clients within a Jamulus Public Server +
How Public Servers work
### 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. 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.
- Diagram of connections between clients within a Jamulus private server -
How private servers work
+ Diagram of connections between clients within a Jamulus Private Server +
How Private Servers work
### 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. +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. -Normal server operators can register with your Directory so their servers can show up in your server list by setting your Directory address as their `--directoryserver` option at startup. +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). @@ -137,7 +137,7 @@ Note also that mean ADSL2 transfer rate is 10 Mbit/s for downstream and 1 Mbit/s -# Starting the server +# Starting a server * **Windows users** - Use the "Jamulus Server" icon in the Windows Start menu. @@ -160,7 +160,7 @@ Hit return and you should see the server control window. You can stop the server ### 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. +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. @@ -195,7 +195,7 @@ This option uses small differences in sound arrival time between the two ears. I ### Custom Central Server Address -Leave this field empty unless you need to list your server on a [private central server](#3-directory) +Leave this field empty unless you need to list your server on a [private Central Server](#3-directory) ### Start Minimised @@ -204,7 +204,7 @@ Leave this field empty unless you need to list your server on a [private central -# Running a private 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. From 3c5ac3946d8aa1a636bb088f5c50795e84b739c7 Mon Sep 17 00:00:00 2001 From: gilgongo Date: Sun, 13 Jun 2021 08:49:27 +0100 Subject: [PATCH 06/20] Expand Rpi statement --- wiki/en/Server-Linux.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wiki/en/Server-Linux.md b/wiki/en/Server-Linux.md index 72b9ac434..74bc588b2 100644 --- a/wiki/en/Server-Linux.md +++ b/wiki/en/Server-Linux.md @@ -11,7 +11,7 @@ permalink: "/wiki/Server-Linux" 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, this [guide for Raspberry Pi](/kb/2020/03/28/Server-Rpi.html) is 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` From af3cdb66544a7faa5c0ef2461cfc441ebd3612e7 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Sun, 13 Jun 2021 09:22:59 +0100 Subject: [PATCH 07/20] Delete linksys-port-forward.png --- .../img/en-screenshots/linksys-port-forward.png | Bin 39820 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 assets/img/en-screenshots/linksys-port-forward.png diff --git a/assets/img/en-screenshots/linksys-port-forward.png b/assets/img/en-screenshots/linksys-port-forward.png deleted file mode 100644 index 948543a12c409ea7b6e83970d3ceef25d48ccdef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39820 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 X2aSL`*W$>qNS5uV_Q{m}nEt;2j;$zH From b8068f9abaa07809733a815a253356d00b404235 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Mon, 14 Jun 2021 22:24:26 +0100 Subject: [PATCH 08/20] Update Running-a-Server.md De-dupe bandwidth. Public Server port forwarding advisory. --- wiki/en/Running-a-Server.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index db5fac78c..5929f7db4 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -37,7 +37,7 @@ Once any issues with musicians have been solved in this way, you can then invest ### Bandwidth – do you have enough? -A typical jam might have 4 people, for which you would need 200 Kbit/s * 4 = 800 Kbit/s (0.8 Mbit/s) up and down. So if you have a 10 Mbit/s down and 1 Mbit/s up broadband connection, **you may start running out of bandwidth if a fifth player joins**, particularly if other musicians choose settings that increase their usage. You may want to [check that you have enough speed](https://fast.com) for that. You can read more about network requirements at different quality settings later in this document. +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 @@ -48,7 +48,7 @@ A typical jam might have 4 people, for which you would need 200 Kbit/s * 4 = 800 - Running a server may require you to adjust any firewalls running on or outside of your machine or cloud host. -- Running a Private Server at home (but not a public one) will require you to [port forward](#running-a-private-server) on your router. +- Running a Private Server at home will require you to [port forward](#running-a-private-server) on your router. When running a Private 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 doesn't currently support IPv6 From 405fb09924b4fd5b3507a4c10010714d7b943318 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Mon, 14 Jun 2021 22:28:09 +0100 Subject: [PATCH 09/20] Remove QoS to KB, update Win path --- wiki/en/Running-a-Server.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index 5929f7db4..e0bc59a15 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -235,7 +235,7 @@ Most common functions in Jamulus can be set using the GUI, but these and others For example on Windows, to use a specific settings file, right-click on the Jamulus shortcut and choose "Properties" > Target. Add the necessary arguments to Jamulus.exe: ```shell -"C:\Program Files (x86)\Jamulus\Jamulus.exe" --serverbindip 192.168.0.100 +"C:\Program Files\Jamulus\Jamulus.exe" --serverbindip 192.168.0.100 ``` For macOS, start a Terminal window and run Jamulus with the desired options like this: @@ -266,7 +266,6 @@ For macOS, start a Terminal window and run Jamulus with the desired options like - `--serverpublicip` The public IP address of the server if connecting to a Directory behind the same NAT. See [Notes on Directory Servers](#points-to-note-about-directories) {% include_relative Shared-Commands.md %} -{% include_relative QOS-Windows.md %} # Troubleshooting From da47259de2314226ae5aed2733ebad255f3439a6 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Mon, 14 Jun 2021 22:29:00 +0100 Subject: [PATCH 10/20] Move QoS to KB, correct Win path --- wiki/en/Software-Manual.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wiki/en/Software-Manual.md b/wiki/en/Software-Manual.md index f83e0aa6f..f482c8e94 100644 --- a/wiki/en/Software-Manual.md +++ b/wiki/en/Software-Manual.md @@ -292,7 +292,7 @@ Most common functions in Jamulus can be set using the GUI, but these and others For example on Windows, to use a specific settings file, right-click on the Jamulus shortcut and choose "Properties" > Target. Add the necessary arguments to Jamulus.exe: ```shell -"C:\Program Files (x86)\Jamulus\Jamulus.exe" --inifile "C:\path\to\myinifile.ini" +"C:\Program Files\Jamulus\Jamulus.exe" --inifile "C:\path\to\myinifile.ini" ``` For macOS, start a Terminal window and run Jamulus with the desired options like this: @@ -310,4 +310,4 @@ For macOS, start a Terminal window and run Jamulus with the desired options like - `--ctrlmidich` MIDI controller channel to listen on, control number offset and consecutive CC numbers (channels). Format: `channel[;f*][;p*][;s*][;m*]` See [Tips & Tricks](Tips-Tricks-More#using-ctrlmidich-for-midi-controllers) - `--clientname` Window title and JACK client name {% include_relative Shared-Commands.md %} -{% include_relative QOS-Windows.md %} + From 554028cdc7759f7973c84545202ebd83b5653bd7 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Mon, 14 Jun 2021 22:33:05 +0100 Subject: [PATCH 11/20] Correct "central" --- wiki/en/Running-a-Server.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index e0bc59a15..7d4e10073 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -193,9 +193,9 @@ This sets the path to where server's recording will be stored. With this path se 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). -### Custom Central Server Address +### Custom Directory Server Address -Leave this field empty unless you need to list your server on a [private Central Server](#3-directory) +Leave this field empty unless you need to list your server on a [private Directory](#3-directory) ### Start Minimised From a2c6e628936b8092b5c0dce812fbe812508e2ac8 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Mon, 14 Jun 2021 22:39:57 +0100 Subject: [PATCH 12/20] Add redirect --- wiki/en/Command-Line-Options.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 wiki/en/Command-Line-Options.md diff --git a/wiki/en/Command-Line-Options.md b/wiki/en/Command-Line-Options.md new file mode 100644 index 000000000..94595fc42 --- /dev/null +++ b/wiki/en/Command-Line-Options.md @@ -0,0 +1,7 @@ +--- +layout: redirect +redirect: "/wiki/Running-a-Server" +lang: "en" +permalink: "/wiki/Command-Line-Options" +category: "hidden" +--- From 207da627f66541a3ccfd4d357bbdbb014894fe6d Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Mon, 14 Jun 2021 22:43:22 +0100 Subject: [PATCH 13/20] Typo --- wiki/en/Running-a-Server.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index 7d4e10073..f1f6db92a 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -23,7 +23,7 @@ permalink: "/wiki/Running-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. -Note that you can have a "private" session with other people on a Public Server by simply soling 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 Public Server by simply soloing each other. You will then not be able to hear anyone else if they enter your server. ### Speed and latency From 978da29183f22b489d9355af1f60bf893d0b52e2 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Tue, 15 Jun 2021 16:27:20 +0100 Subject: [PATCH 14/20] Clarify Feedback Protection --- wiki/en/Software-Manual.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/wiki/en/Software-Manual.md b/wiki/en/Software-Manual.md index f482c8e94..df2f41cf9 100644 --- a/wiki/en/Software-Manual.md +++ b/wiki/en/Software-Manual.md @@ -265,8 +265,7 @@ Increases the gain from your device. Use this if your device delivers a gain tha ### Feedback Protection -Attempts to detect audio feedback loops. Once detected, this feature will activate the "Mute Myself" button and show an explanation message to enable you to fix the problem. - +Attempts to detect audio feedback loops or loud noise in the first three seconds after you connected to a server. Once detected, this feature will show a message and activate the "Mute Myself" button to mute you in your own mix. ### Input Balance From e9cf9e3299053404107c952c8b11bbe2f540d2c9 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Tue, 15 Jun 2021 16:32:02 +0100 Subject: [PATCH 15/20] use systemctl not service --- wiki/en/Server-Linux.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wiki/en/Server-Linux.md b/wiki/en/Server-Linux.md index 74bc588b2..1277287a1 100644 --- a/wiki/en/Server-Linux.md +++ b/wiki/en/Server-Linux.md @@ -19,15 +19,15 @@ If you want to run a server on a Raspberry Pi, you will need to [compile from so 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. Check all is well with `service jamulus-headless status` (hit `q` to get back to the command prompt). +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 `service` command. For example, to stop the server cleanly: +You can control Jamulus with the `systemctl` command. For example, to stop the server cleanly: -`sudo service jamulus-headless stop` +`sudo systemctl stop jamulus-headless` ### Running in public mode From 106840d05565bb7d0fdc1d0932a215a3a48eb34d Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Tue, 15 Jun 2021 16:38:17 +0100 Subject: [PATCH 16/20] Typo --- wiki/en/Software-Manual.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wiki/en/Software-Manual.md b/wiki/en/Software-Manual.md index df2f41cf9..7e49e91e2 100644 --- a/wiki/en/Software-Manual.md +++ b/wiki/en/Software-Manual.md @@ -70,12 +70,12 @@ 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 dialoge is not already open, it will +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 -Opens a dialoge where you can select a server to connect to. If you are connected, +Opens a dialogue where you can select a server to connect to. If you are connected, pressing this button will end the session.
Image of a server connection window
From a76b9dd6ad33778e790a4b129803712548b32b80 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Tue, 15 Jun 2021 16:47:14 +0100 Subject: [PATCH 17/20] Simplify running server under Linux --- wiki/en/Running-a-Server.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index f1f6db92a..fdb626793 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -146,10 +146,7 @@ Note also that mean ADSL2 transfer rate is 10 Mbit/s for downstream and 1 Mbit/s * **Linux users** -If you have installed the Jamulus client, you can run it in server mode by running Jamulus with the `-s` option as follows: - -1. Open a terminal window (`CTRL+ALT+t` on Ubuntu and related distros). -1. Assuming Jamulus is in `/usr/local/bin`, type `jamulus -s` +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. From 34e38682c9d3f0d79b3d2c31afdbbae1e1a74fae Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Tue, 15 Jun 2021 16:50:08 +0100 Subject: [PATCH 18/20] Remove port-forwarding statement --- wiki/en/Running-a-Server.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index fdb626793..9fbfac923 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -63,9 +63,6 @@ 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. - -**Note**: It is **not** necessary to port-forward or otherwise configure your router to run a Public Server. -
Diagram of connections between clients within a Jamulus Public Server
How Public Servers work
From 7b8cffb6530b9cfe3643d8dde5a74c4638535586 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Tue, 15 Jun 2021 16:52:32 +0100 Subject: [PATCH 19/20] Add space for po4a --- wiki/en/Software-Manual.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wiki/en/Software-Manual.md b/wiki/en/Software-Manual.md index 7e49e91e2..97d02ef7c 100644 --- a/wiki/en/Software-Manual.md +++ b/wiki/en/Software-Manual.md @@ -291,7 +291,7 @@ Most common functions in Jamulus can be set using the GUI, but these and others For example on Windows, to use a specific settings file, right-click on the Jamulus shortcut and choose "Properties" > Target. Add the necessary arguments to Jamulus.exe: ```shell -"C:\Program Files\Jamulus\Jamulus.exe" --inifile "C:\path\to\myinifile.ini" + "C:\Program Files\Jamulus\Jamulus.exe" --inifile "C:\path\to\myinifile.ini" ``` For macOS, start a Terminal window and run Jamulus with the desired options like this: From ceec58267f57469333faa32146a33920926cc2a4 Mon Sep 17 00:00:00 2001 From: Jonathan <4561747+gilgongo@users.noreply.github.com> Date: Tue, 15 Jun 2021 16:59:11 +0100 Subject: [PATCH 20/20] Add TOC --- wiki/en/Server-Troubleshooting.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/wiki/en/Server-Troubleshooting.md b/wiki/en/Server-Troubleshooting.md index 76625ea26..cea6178e5 100644 --- a/wiki/en/Server-Troubleshooting.md +++ b/wiki/en/Server-Troubleshooting.md @@ -8,6 +8,16 @@ permalink: "/wiki/Server-Troubleshooting" {% include breadcrumb.html root="More" branch1="Server Administration" branch1-url="Running-a-Server" %} # Server Troubleshooting + {:.no_toc} + +
+ +Table of contents + +* TOC + {:toc} + +
## Servers - Public