
### 3.8.1 (2021-10-23) ###

- Client: JACK support on Windows has been improved (#1718).
  (contributed by @jujudusud, @henkdegroot)

- Client: Rewrote multiple error messages to improve UX (#1568, #1732).
  (contributed by @ann0see)

- Client: Add custom directory servers to Connect Dialog (#1869, #1894).
  (contributed by @jp8)

- Client: Rearrange existing UI menu bar items (#1915, #1926).
  (contributed by @jp8)

- Bug Fix: Mute myself has been made more consistent (#1838).
  (contributed by @ngocdh)

- Bug Fix: Fix ampersand not being shown correctly on mixer (#1886, #1893).
  (contributed by @HughePaul, @ann0see)
  
- Bug Fix: A crash fix related to the way iOS handles sockets in idle mode (#1875). 
  (contributed by @ngocdh)

- Server: A single click on the server application in the systemtray now opens the Jamulus Server main window (#1722, #1731).
  (contributed by @henkdegroot)

- Server: Jam Recorder's internal locking and initialization code has been made more robust (#1826).
  (contributed by @cdmahoney)

- Server: The list of servers registered on a directory can now be saved during directory restart. Use the new
  --directoryfile CLI option to use this feature (#1867).
  (contributed by @pljones)
  
- Server: Add link to website if a new version is available (#1980).
  (contributed by: @ann0see)

- Bug Fix: Remove incorrect version of headless .service file (#2009).
  (contributed by @ann0see)

- Client/Server: Add IPv6 support for direct connections (#1017, #1938).
  (contributed by @jardous, @softins)

- CLI: Re-order and refactor help for client/server validation (#1896).
  (contributed by @pljones)

- CLI: Jamulus now shows a link to the Website for translated content (#1759).
  (contributed by @henkdegroot)

- Android: Add close button on Android to enhance UX (#1763, #1876).
  (contributed by @ngocdh)
  
- iOS: Sound support, feature to allow switch between external device and the internal mic (#1875).
  (contributed by @ngocdh)

- MacOS: Keyboard shortcuts now also work on macOS (#1726, #1873).
  (contributed by @henkdegroot)

- Installer: Add zh_CN translation + for nsis win installer (#1922, #1954).
  (contributed by @BLumia)

- Documentation: Move Demos, description of inputs options to Knowledge Base (#603, #551).
  (contributed by: @pcar75, @gilgongo)

- Documentation: Add user experience section to CONTRIBUTING.md (#1885).
  (contributed by: @ann0see)

- Documentation: Create Server Admin Manual (#527).
  (contributed by: @gilgongo)

- Documentation: Update typo on links in compiling.md file (#1824).
  (contributed by @jujudusud)

- Documentation: Number range command line error messages reworded accurately (#1978).
  (contributed by @DavidSavinkoff)
  
- Website: switch to .po file format to make updating translations easier (various PRs)
  (contributed by: @ignotus666)

- Website: Removed edit button from wiki layout file (#576).
  (contributed by: @DevRish)

- Internal: Enable signing of macOS binaries (via build script and automatically via CI) (#1856, #1937). 
  (contributed by @emlynmac)

- Internal: Added Apple Appstore licence waiver (#1874)
  (contributed by @ann0see, @pljones, @gilgongo)

- Internal: Add autobuild for Windows with JACK (#1829).
  (contributed by @henkdegroot)

- Internal: Document release process on contribute page (#1594, #592).
  (contributed by: @hoffie, @ann0see)
  
### 3.8.0 (2021-06-02) ###

- The term "Central server" has been replaced with "Directory server" (#1407, #1715, #1629).
  Note that the program will still accept the --centralserver option for backward
  compatibility with existing system startup scripts, but its usage is deprecated.
  (contributed by @pljones, @softins)

- Mac: Generate build with Qt 5.15.2 for better compatibility with Big Sur (#1687, #1768).
  We still build a legacy version with Qt 5.9.9 to support older versions of macOS:
  * Users of 10.13 (High sierra) or newer should use the standard build with Qt 5.15.2
  * Users of Yosemite, El Capitan or Sierra should use the legacy build with Qt 5.9.9
  (contributed by @softins)

- GUI: Settings window has been reorganized into tabs (#1415, #1554, #1542, #1588):
    * User Profile window has been integrated into the settings window.
    * Input Pan has been moved to the newly created Advanced tab and removed from main window.
  (contributed by @dcorson-ticino-com, @pljones)

- GUI: Moved the Ping and Delay stats from the Settings window to the main window (#1762):
  This was partly to work around a Mac issue with updates to the settings window (#1643)
  and is actually an improvement anyway, as the settings window does not need to remain open.
  (contributed by @dcorson-ticino-com and @softins)

- GUI: Added "About Qt" to the help menu to display version of Qt (#1685, #1692).
  (contributed by @softins)

- GUI: Corrected the operation of What's This in the settings dialog (#1622, #1635).
  (contributed by @dcorson-ticino-com)

- GUI: Improved the muted speaker icon display (#1691).
  (contributed by @henkdegroot)

- Added new icons for Linux desktop use (#1672).
  (contributed by @jujudusud)

- GUI: Corrected handling of custom directory server in the server, to prevent
  unintended registration with a directory server (#1624, #1627).
  (contributed by @softins)

- GUI: Corrected alignment of Mute icon above fader (#811, #1312, #1640).
  (contributed by @vimpostor)

- GUI: Support for more than two mixer rows has been added (#1549, #1560).
  (contributed by @pljones)

- GUI: --clientname also works in dialog titles now (#1352, 1370).
  (contributed by @dcorson-ticino-com)

- GUI: Translations have been updated
  * Dutch, by @henkdegroot (#1562, #1623, #1714, #1557)
  * French, by @jujudusud (#1648, #1708)
  * German, by @rolamos (#1677, #1810)
  * Italian, by @dzpex (#1620)
  * Polish, by @SeeLook (#1619)
  * Portuguese Brazilian, by @melcon (#1671, #1807)
  * Portuguese European, by @Snayler (#1689)
  * Slovak, by @jose1711 (#1647)
  * Spanish, by @ignotus666 (#1621, #1730, #1808)
  * Swedish, by @genesisproject2020 (#1664, #1696)

- Network: Support for DSCP Quality of Service flags has been added (#1310).
  This is supposed to lead to improved network performance.
  It is enabled by default.
  On Windows, this requires additional configuration in order to work.
  Please see the Tips & Tricks page on the website for a setup guide for Windows.
  (contributed by @DavidSavinkoff)

- Client: Automatic channel fader adjustment simplifies mixer setup by using the channel level meters (#1071).
  (contributed by @JohannesBrx)

- Client: Basic audio feedback detection has been added (#1179).
  (contributed by @JohannesBrx)

- Client: Support for input gain boost has been added (#1222, #1030)
  (contributed by @hoffie)

- Client: Grouping support has been extended to allow for up to eight groups (#1551).
  (contributed by @pljones)

- Client: A hint regarding non-default Jack support has been added (#1397, #1438).
  (contributed by @djfun)

- Server: Support for Delay Panning has been added (#332, #567, #1151, #1417, #1744):
  This feature can be enabled on servers using the new --delaypan option.
  Enabling this feature will slightly increase server CPU usage.
  It can create a much more realistic spatial sound impression for clients
  that are set to Stereo or Mono-in/Stereo-out mode.
  (contributed by @DetlefHennings, @Hk1020, @softins, @henkdegroot)

- Server: Multi-threading performance has been improved (#960).
  (contributed by @menzels, @softins)

- Server: Half-connected clients will no longer receive audio (#1243, #1589):
  Note: This breaks compatibility with client versions before 3.3.0 (Feb 2013).
  If you update your server, ensure that all clients use 3.3.0 or later as well.
  (contributed by @softins)

- Server: HTML status file is now emptied on exit (#1423, #1427).
  (contributed by @hoffie, @drummer1154)

- Server: An explicit bind address can now be specified (#141, #1561).
  This can be done by the new --serverbindip option.
  (contributed by @buv)

- Recorder: Compatibility with third-party tools such as Audacity has been improved (#1384, #1424, #1437).
  Non-ASCII characters are now stripped out when creating filenames.
  (contributed by @softins, @gilgongo, @reinhardwh)

- Recorder: Failures to start recording no longer result in crashes (#1163, #1289, #1463).
  (contributed by @hoffie, @softins, @pljones)

- Recorder: Logging has been improved (#1284, #1463).
  (contributed by @hoffie, @drummer1154)

- Bug fix: The mute indicator is now also shown in mono mode (#1074).
  (contributed by @npostavs)

- Bug fix: Channel mapping on Windows now only resets if the sound card or the numbers of channels changed (#1347).
  (contributed by @ann0see)

- Bug fix: Jamulus client should now close itself correctly if a non-working device was selected (#872).
  (contributed by @npostavs)

- Bug fix: Server no longer crashes while changing the recording directory (#1501, #1573).
  (contributed by @henkdegroot, @hoffie, @softins)

- Bug fix: Example systemd unit has been fixed to avoid crashing when sending signals (#1515, #1518).
  (contributed by @softins, @helgeerbe, @gilgongo)

- Bug fix: The Windows installer now correctly compiles in a path with spaces (#864, #1319).
  (contributed by @henkdegroot)

- Performance: Opus encoding/decoding now uses machine-specific optimizations (#1105).
  (contributed by @npostavs)

- Performance: Timer configuration for Windows servers has been improved (#1536).
  (contributed by @npostavs)

- iOS support is being worked on (#1450).
  (contributed by @jeroenvv)

- Github autobuild for Mac now uses Xcode 11.7 and SDK 10.15 for compatibility with Qt5 (#1655).
  (contributed by @softins)

- Build: Creation of debug builds has been simplified (#1516).
  (contributed by @hoffie)

- Internal: Constants for JACK usage have been renamed (#1429).
  (contributed by @djfun)

- Internal: Legacy IP address variables have been cleaned up (#1400).
  (contributed by @wferi)

- Internal: Added automatic code formatting with clang-format (#901, #1127, #1751).
  (contributed by @passing)

- Internal: New pull requests will now be checked for coding style automatically (#1735).
  (contributed by @passing)

- Internal: Windows deploy script has been aligned to autobuilds (#1720).
  (contributed by @henkdegroot)

### 3.7.0 (2021-03-17) ###

- Server lists have been reorganized to make room for more servers (#875):
  * Default has been renamed to Any Genre 1.
  * Any Genre has been renamed to Any Genre 2.
  * Any Genre 3 has been added.
  * Choral/Barbershop has been added.
  * Classical/Folk/Choral has been renamed to Classical/Folk.

- Central server addresses have been moved to the jamulus.io domain (#919).
  The fischvolk.de addresses are deprecated.

- GUI: If a name is provided using --clientname, that name is shown first in the window title, to avoid clipping in the Windows task bar (#789).

- GUI: Translations have been updated:
  * Dutch, by @jerogee (#1110)
  * French, by @trebmuh & @jujudusud (#1199 & #1113)
  * German, by @rolamos (#1097)
  * Italian, by @dzpex (#1112)
  * Polish, by @SeeLook (#1099)
  * Portugese, by @melcon & @Snayler (#1141 & #1168)
  * Slovak, by @jose1711 (#1104)
  * Spanish, by @ignotus666 (#1152)
  * Swedish, by @genesisproject2020 (#1182 & #1106)

- Active recording state is now highlighted in the mixerboard title (#968).
  (contributed by @dcorson-ticino-com)

- Client window makes it more obvious when not connected to a server by graying out input levels and showing a message (#847, #983).
  (contributed by @ann0see)

- Screensaver and screen blanking are now prevented on Macs (#834).
  (contributed by @jerogee)

- Windows installer has been improved (#792, #841).
  Note: If you are using ASIO4ALL, we strongly suggest that you take a screenshot
  of your ASIO4ALL settings before upgrading. The installer will try its best to
  migrate your settings, but it may fail to do so when using custom
  installation paths.
  (contributed by @ann0see and @doloopuntil)

- Windows installer interface now supports English, Dutch, French, German, Italian, Polish, Portuguese, Spanish and Swedish.
  (contributed by @jerogee, @jujudusud, @ann0see, @dzpex, @SeeLook, @Snayler,
  @melcon, @ignotus666 and @genesisproject2020)

- Windows ASIO Setup button placement has been improved to be below the driver selection (#977).
  (contributed by @mulyaj and @ann0see)

- Chat dialog has gained support for auto-linking http addresses (#879).
  (contributed by @hoffie)

- Chat messages no longer allow HTML-formatted chat messages due to security reasons (#939).
  HTML formatting in Welcome messages will continue to work.
  (contributed by @atsampson)

- Mixerboard background image quality in the Fancy skin has been improved (#970).
  (contributed by @passing)

- MIDI controller logic has been improved to support fader, pan, mute and solo buttons in --ctrlmidich syntax (#945).
  Mute & solo buttons are only for toggle-type controllers and do not support
  headless operation yet.
  (contributed by @dakhubgit)

- Servers connected to central servers behind the same NAT can now be made accessible to public clients via the newly added --serverpublicip option (#954).
  (contributed by @hoffie)

- External IP detection no longer generates traffic to Cloudflare (#633, #1092).
  (contributed by @atsampson and @hoffie)

- Version update detection has been improved (#1155):
    * The check now uses two servers instead of one (updatecheck1.jamulus.io and updatecheck2.jamulus.io).
    * The server version is now ignored if it is not a release, due to a
      suffix such as dev, beta or rc.
  (contributed by @softins)

- Official Ubuntu/Debian packages are now built and published as part of the release (#1100).
  The packages are compatible with Ubuntu 18.04 or later.
  (contributed by @ann0see)

- Experimental .apk installation packages for Android are now provided (#880).
  (contributed by @nefarius2001)

- Bug fix: A suspected memory leak has been solved by removing usage of ConsoleWriterFactory (#926).
  (contributed by @pljones)

- Bug fix: Changing ASIO driver properties like switching input/outputs in ASIO4ALL now resets input/output channel mapping in Jamulus again (#796).
  This was done to solve a bug with ASIO4ALL introduced in the last version.

- Bug fix: Fader levels, mute and solo state are now restored properly when reconnecting to a restarted server (#955, #1010).
  This is a server-side fix.
  (contributed by @hoffie)

- Bug fix: Multiple memory leaks in the server's recording feature have been fixed (#1073).
  (contributed by @softins)

- Bug fix: Menu accelerator keys have been fixed in multiple translations (#1165).
  (contributed by @softins)

- Bug fix: Windows sound driver lacked driverInfo initialisation (#1194).
  (coded by @npostavs)

- Internal build and release process have been re-designed, automated and moved to Github.
  (contributed by @pljones, @nefarius2001, @ann0see, @ranfdev)

- Internal development builds now contain a detailed version number (#475).
  (contributed by @nefarius2001)


### 3.6.2 (2020-12-12) ###

- change Clear All Stored Solo Settings to clear Mute as well (#731)

- avoid selecting IPv6 results from hostname lookup, coded by jarmar (#722)

- added possibility to set MIDI offset for fader control to --ctrlmidich (#95)

- detect if no audio Device is selected before trying to connect a server (#129)

- on MacOS if an audio device is no longer available, show a warning
  rather than switching to default automatically (#727)

- bug fix: sliders move by themselves if fader groups are used on reconnect (#611)

- bug fix: do not reset sound card channel selection on a device property change (#727)

- bug fix: compiling Jamulus 3.6.1 is failing on Debian 9 Linode (#736)

- bug fix: on MacOS Jamulus does not always select the previous sound card (#680)

- bug fix: use new server icon on Mac server bundle and Windows installer (#737)

- bug fix: ping times of servers which are further down the server list are too high (#49)


### 3.6.1 (2020-11-21) ###

- added menu entry "Set All Faders to New Client Level" (#622)

- isolate a channel from the group temporarily with shift-click-drag (#695)

- on shift-click the pan reset to 0 L/R (#707)

- support multiple custom central server addresses (#698)

- the Jamulus server now has a different icon, created by geheimerEichkater (#700)

- support two rows for the mixer panel (#720)

- changed RYG indicator lights with colour-blind compensation, created by geheimerEichkater (#57)

- saving and loading mixer settings is now possible during an active connection and a
  mixer settings file can be loaded with drag'n'drop (#706)

- menu entry Clear All Stored Solo Settings is now enabled during an active connection

- bug fix: the fader group property was not correctly loaded from the ini file


### 3.6.0 (2020-10-25) ###

- handle audio packets received out of order, coded by softins (#619)

- most recently connected users appear on the RH side on the fader panel (#673)

- improvements for the server multithreading, coded by kraney (#653)

- removed Display Channel Levels setting and --servername (#638)

- removed support for further server infos in --serverinfo since the preferred
  way of registering a server is to do it using the protocol messages (#638)

- removed -g, --pingservers since all Central servers must activate this function,
  now it is activated by default and no command line argument is needed (#638)

- added --mutemyown command line argument to mute my own signal in my personal mix,
  only supported in headless client mode (#340)

- added "Mountain Dulcimer" instrument icon, created by dora71 (#649)

- added new instrument icons for "Scratching" and "Rapping"

- replaced double types by floats for some of the signal processing, coded by hselasky (#544)

- support permanent channel fader sorting (i.e., not only on request but always) (#666)

- support sorting faders by channel city

- if sorting the faders by instrument, we now sort by the name for the same instruments

- improvements to the Android audio interface, coded by j-santander (#83)

- bug fix: reduced server list is displayed instead of the normal list (#657)


### 3.5.12 (2020-10-03) ###

- added hyperlink support for the chat window, coded by jc-Rosichini (#591)

- added new menu entry "Clear All Stored Solo Settings" (#616)

- fade in all clients at the server when entering a server to avoid the volume
  is at 100% when joining a server (#628)

- added a qmake CONFIG flag for disabling the automatic version check (#370)

- avoid confusion with the Server Address field on the connection setup window by
  no longer showing the server name in that field since it is only intended for
  entering IP addresses or valid server URLs (#365)

- removed the "Show Creative Commons BY-NC-SA 4.0 Licence Dialog" setting from the
  server GUI and changed the -L/--licence text in the licence dialog to "Do you agree
  to the text in the chat window?" so that a licence text must now be given in the
  server welcome message (#587, #367, #81)

- added a protocol message for a reduced server list to improve the situation caused
  by UDP packet fragmentation (#631, #255)

- added translation: Slovak by jose1711 (#635)

- bug fix: crash when using the jam recorder in the server, coded by pljones (#618)


### 3.5.11 (2020-09-19) ###

- support a check for updates (#370)

- added an optional server list whitelist filter (#413)

- added a command line argument to enable multithreading in the server (#339)

- added support for split protocol messages (fixes bug with large number of clients
  connected to a server, #547)

- store recorder settings, coded by pljones (#313)

- added a command line argument to disable recording on start up, coded by pljones (#574)

- accessibility improvements, coded by chigkim (#498, #512)

- added Jack audio latency calculation, coded by bflamig (#437)

- show the server name in the title bar (#559)

- bug fix: crash when using the Jack backend and quickly reconfiguring, coded by hselasky (#543)

- bug fix: Alt+h shortcut to open the Chat dialog did not work, use Alt+c instead

- bug fix: pan is not correctly initialized in the server on a new connection (#537)


### 3.5.10 (2020-08-16) ###

- do not change the server list order if the mouse is over the table to
  avoid selecting an incorrect server on a mouse double click (#293)

- if network name/address contains spaces, they are removed now,
  coded by dingodoppelt (#462)

- improve Compact skin by using smaller font size

- improve server audio mix processing for better clipping behavior

- support MIDI control faders in headless build (#483)

- option to set Mute Myself on with a command line argument (#495)

- added a red message to indicate that Mute Myself is activated (#476)

- manual clip LED reset by mouse click on the level meter (#421)

- replacing internal history graph functionality by external scripts/tools (#501)

- accessibility improvements, coded by chigkim (#499, #510, #514)

- bug fix: fixed a stability issue in the server

- bug fix: --showallservers ping column sort is alphabetic (#201)


### 3.5.9 (2020-07-19) ###

- new app icon for Jamulus, created by geheimerEichkater (#410)

- support up to four different groups for the channels (#202)

- support sorting faders by channel group

- add support to change the GUI language (#297)

- add special server list filter for filtering occupied servers by using "#" (#397)

- update server UI to allow setting the jam recorder directory (like -R) (#228, #405)

- redesign of the server dialog (e.g. added welcome message setting)

- save and restore mixer state (like fader, mute, etc.) (#377),
  note that saving/loading of settings only works if not connected

- scale channel instrument picture in Compact skin mode

- show maximum number of clients for servers in the serverlist, coded by dingodoppelt (#451)

- log the number of connected clients on each new connection (#277)

- move the Mute Myself button up to prevent accidentally disconnecting

- bug fix: grouping faders in the client should be proportional (see discussion in #202, #419)


### 3.5.8 (2020-06-30) ###

- bug fix: incorrect selection of UI language (#408)


### 3.5.7 (2020-06-28) ###

- add new "compact" skin, intended for large ensembles (#339)

- support sorting faders by channel instrument, coded by Alberstein8 (#356)

- new group switch to change several faders in sync, coded by Alberstein8 (#202, #379)

- support a clip LED, coded by fleutot (#220)

- add server recording indicator, coded by pljones (#295)

- support for storing/recovering the server window positions (#357)

- add a headless build type which does not depend on QtGui/QtWidgets, coded by marcan (#322)

- the local pan middle position is no longer attenuated in Mono-in/Stereo-out mode (#353)

- added translation: Brazilian Portuguese by melcon (#372)

- add send button to chat window (#384)

- add some protections to the code, coded by atsampson (#380, #381, #382)

- bug fix: server window stop updating after minimized, coded by AronVietti (#355, #383)


### 3.5.6 (2020-06-09) ###

- support sorting faders by channel name (#178)

- enable/disable recording from command line, coded by pljones (#228)

- add Audacity "list of files" writer to jam recorder, by pljones (#315)

- make level meter LED black when off, by fleutot (#318)

- added ukulele/bass ukulele instrument icons created by dos1 (#319)

- avoid showing IP address if no name in the musician profile is given (#316)

- show channel numbers if --ctrlmidich is used (#241, #95)

- added check in acknowledge message, coded by atsampson (#302)

- bug fix: on MacOS declare an activity to ensure the process doesn't get throttled
  by OS level Nap, Sleep, and Thread Priority systems, coded by AronVietti (#23)


### 3.5.5 (2020-05-26) ###

- added banjo/mandolin instrument icons created by atsampson (#283)

- faster update of musicians list in the server list table

- display recorder state and latest recording directory in the server GUI,
  allow a new recording to be requested, by pljones (#228)

- New Client Level now also applies if you enter a server

- bug fix: honour own fader and Mute button in Mute Myself (#148)

- bug fix: audio fader sliders cannot be moved if the main windows is too small (#292)

- bug fix: server gain calculations were incorrect (introduced in version 3.5.4)


### 3.5.4 (2020-05-24) ###

- introduce genre-based server lists (#139)

- implement panning for channels, coded by tarmoj (#52, #145)

- added an indicator that another client has muted me (#257)

- move central server type dropdown to connection setup (#157)

- added vocal bass/tenor/alto/soprano instrument icons created by Alberstein8 (#131)

- support intermediate Reaper RPP file while recording, coded by pljones (#170)

- save client settings on Linux cmdline termination signal, coded by pljones (#70)

- added translation: Italian by dzpex (#249)

- bug fix: fixed misaligned tracks in recordings, coded by snayler, improved by pljones (#234)


### 3.5.3 (2020-05-15) ###

- correct unregister of headless server and RPP file creation on
  SIGINT/SIGTERM, coded by pljones (Tickets #130, #168)

- for CoreAudio and 4 channel input, support mixing channels 1&2 with 3&4

- added bassoon/oboe/harp instrument icons created by dszgit,
  congas/bongo created by bspeer (#131)

- link to docs from application Help menu (#90)

- support Mac CoreAudio aggregated devices (#138)

- added translations: French by trebmuh, Portuguese by Snayler,
  Spanish by ignotus666, Dutch by jerogee, German by corrados (#77)

- new design for the About dialog (#189)

- new command line option -d to disconnect all clients on shutdown of the server (#161)

- bug fix: for mono capture Jack audio interface Jamulus complains it
  cannot make connections (#137)

- bug fix: fixed that Jamulus segfaults when jackd is restarted (#122, #127)

- bug fix: better handling of disconnect message in the client

- note: Jamulus is no longer compatible to Qt4


### 3.5.2 (2020-04-24) ###

- use audio level meter bars for normal skin

- store Show All Musicians setting in the ini-file

- improved Mac installer, coded by doloopuntil

- support to open ASIO driver setup(s) if startup failed due to incorrect driver settings (#117)

- added -v/--version command line argument to output version information (#121)

- added bodhran and other instrument icons, bodhran created by bomm (#131)

- bug fix: if small network buffers are used we get much better audio quality when drop outs occur

- bug fix: if names given with the -o option were too long, the server registration failed (#91)

- bug fix: audio level changes if Buffer Delay is changed (#106)

- bug fix: do not reset fader level meters if number of clients change

- bug fix: fixed a crash with JackRouter 64 bit ASIO driver (#93, thanks to elliotclee)


### 3.5.1 (2020-04-18) ###

- added a Mute Stream button to hear your signal and the signal of the other clients but
  do not transmit your signal to the server so that the other clients cannot hear you

- added Enable Small Network Buffers switch to enable small sound card buffers in
  combination with legacy OPUS packets since OPUS packets with 64 samples enable low
  latency but can increase audio drop outs

- upgrade OPUS codec library to v1.3.1 by doloopuntil

- server list registration status indicator added to the server GUI, coded by pljones

- improved auto jitter buffer for 64 samples frame size

- the ping times in the server list are now more stable


### 3.5.0 (2020-04-15) ###

- added support for 64 samples OPUS packets in the client (if a sound card buffer size
  larger or equal than 128 samples is chosen, the legacy 128 samples OPUS packets are used)

- added a filter for the server list to, e.g., filter a specific country or search for a musician

- refresh server list if the Central Server address type is changed

- the unit of the mixer faders is now dB using the range -50 dB to 0 dB

- increased LED luminance (#71)

- bug fix: the server welcome message may appear twice if the server list was double clicked


### 3.4.7 (2020-04-11) ###

- added support for alternative Central Servers to solve the 200 server registration limit (#50)

- added support for 64 samples frame size in the server (if server runs in 64 or 128 samples
  mode it is still compatible to both, 64 and 128 samples frame size clients)

- added multichannel CoreAudio support, coded by emlynmac (#44)

- fixed server not visible if in same local network, coded by pljones (#27)


### 3.4.6 (2020-04-09) ###

- added support for channel meters, coded by pljones

- added show licence switch in the server GUI

- store fader mute state in the ini file, coded by doloopuntil

- fixed low-res icon issue (#28)


### 3.4.5 (2020-04-04) ###

- audio fade-in at the server if a new client connects

- added a scroll bar to the mixer board to support large numbers of
  mixer faders (a thank you to doloopuntil for his help)

- changed the maximum number of clients supported by the server from 20 to 50

- Windows installer now contains a 32 and 64 bit version of Jamulus (the version to
  be installed is selected automatically according to the detected operating system)

- bug fix: server list ping times may not be accurate and client list may not be retrieved


### 3.4.4 (2020-03-25) ###

- added support for controlling the audio mixer faders with a MIDI controller (MacOS and Linux)

- added command line argument for disabling auto jack connection (#49)

- audio recording for the server, coded by pljones

- SVG server history graph, coded by pljones


### 3.4.3 (2018-05-17) ###

- for ASIO and 4 channel input, support mixing channels 1&2 with 3&4

- bug fix: fixed a crash, running Jamulus on MacOS version "High Sierra"


### 3.4.2 (2017-08-11) ###

- removed old CELT library (minimum compatible version is now 3.3.1)

- show server name in the server list in bold font if it is a permanent server

- Jack can be used instead of CoreAudio on MacOS (using qmake "CONFIG+=jackonmac")


### 3.4.1 (2016-02-10) ###

- show the number of connected clients in the MacOS task bar if more
  than one client is connected

- avoid a single jitter buffer for the auto detection

- the Musicians value in the server list shows a warning if the server is full

- automatic server setting for permanent server flag in the protocol

- bug fix: ping time measurement may be invalid for the Linux OS


### 3.4.0 (2015-12-10) ###

- show the names of the connected clients in the server list


### 3.3.11 (2015-11-26) ###

- added a new client fader level setting

- changed the MacOS audio interface to be future proof (do not use
  the Carbon Component Manager anymore)

- added support for audio channel selection for MacOS


### 3.3.10 (2015-10-20) ###

- changed the default central server URL

- added support for server disconnection


### 3.3.9 (2015-07-12) ###

- another improvement of auto jitter buffer detection in very bad
  network conditions

- support client operation without using a GUI front end

- bug fix: fixed a crash in the MacOS audio interface


### 3.3.8 (2015-03-15) ###

- improved audio quality in bad network conditions

- more realistic overall delay estimation

- improvement of auto jitter buffer detection in bad network conditions

- show info about sound card buffer size if not one of the standard sizes


### 3.3.7 (2015-02-05) ###

- added a musician profile dialog (some settings in the main window
  were removed)

- a tool tip for the fader tag shows the complete musician profile

- the city and skill level can be set in the musician profile

- added new instrument picture for "Guitar+Vocal"


### 3.3.6 (2015-01-25) ###

- support for a country flag icon on the fader tag

- a licence agreement dialog can be requested by the server


### 3.3.5 (2014-07-30) ###

- new compile config options for disabling old CELT, use OPUS in a shared
  library and change the executable name

- added a Linux jamulus.desktop file


### 3.3.4 (2014-02-25) ###

- true stereo reverberation effect (previously it was a mono reverberation
  effect on both stereo channels)

- added a mono-in/stereo-out mode to support special sound cards which have
  mono inputs for the instrument and a microphone but have stereo outputs

- store fader solo state in the ini file

- improved stability of the audio stream by reducing audio drop outs (by
  using a separate socket thread)

- removed unnecessary settings and LED indicators

- bug fix: the fader level could not be changed if the fader was on solo


### 3.3.3 (2013-12-30) ###

- support for storing/recovering the window positions

- added new instrument pictures for "Recorder", "Streamer" and "Listener"

- the solo state of a mixer fader is not exclusive any more and the solo
  state is preserved if the number of mixer faders changes

- more precise sound card latency estimation under Windows

- integrated a new OPUS version: v1.1

- bug fix: support for correct utf-8 storage of names in the ini-file


### 3.3.2 (2013-08-24) ###

- the connection setup dialog can now be opened during a connection

- support for three audio quality settings: low, normal and high


### 3.3.1 (2013-03-24) ###

- enabled the OPUS codec

- store fader level settings

- improved server performance under Linux

- changed the network buffer for improved OPUS PLC performance

- added protocol overhead for DSL line for upload rate calculation

- fixed outstanding renaming from llcon to Jamulus

- bug fix: the overall delay was not correctly calculated


### 3.3.0 (2013-02-24) ###

- renamed the software from llcon to Jamulus

- support for an instrument picture on the fader tag

- a server welcome message can be shown on a connect to the
  server (the message is shown in the chat dialog of the client)

- the source code is now compatible to Qt5

- bug fix: strings in the protocol are now utf-8 coded


### 3.2.2 (2012-07-15) ###

- changed auto jitter buffer property to reduce audio drop outs

- bug fix: mechanism to keep port in NAT of slave server open works now correctly

- bug fix: slave server unregistering may not be successful


### 3.2.1 (2012-02-02) ###

- support for audio device selection under Mac OS

- connect dialog list is sorted by the ping time

- software icon changed

- bug fix: fixed distorted audio with USB sound cards on Mac OS

- bug fix: fixed crash on slave server unregistering


### 3.2.0 (2011-07-23) ###

- new GUI style of the main window, added switch for selecting the GUI style
  in the settings window

- a list of available servers is shown on pressing the connect button, the list
  is managed by a central server, any private server is added automatically if
  the registering setting is enabled

- the jitter buffer size can be independently set for client and server

- improved auto jitter buffer algorithm

- the Qt project file is now used for Linux, too

- ini-file is stored in the home directory instead of the application directory

- added server settings in the GUI for the server list and added ini file
  support to store the settings

- bug fix: fixed Jack audio interface instability


### 3.1.2 (2011-03-02) ###

- show warning in main window if audio delay is too long

- added download link in help menu

- bug fix: solo switch did not work correctly


### 3.1.1 (2010-07-01) ###

- added stereo audio channel support

- added input/output audio channel mapping for ASIO audio interface


### 3.1.0 (2010-03-16) ###

- support for MacOS (using CoreAudio audio interface)

- sound card frame size support for frame sizes other than 128, 256 and 512
  samples

- improvement of network buffer (jitter buffer) in case of small buffer sizes

- all available ASIO sample formats supported

- bug fix for M-Audio Delta ASIO driver


### 3.0.3 (2009-12-05) ###

- accessibility improvements

- show number of connected clients in window title (and therefore in OS task
  bar)

- added "What's this" help text to the GUI controls in the general settings
  dialog, added Tool Tips to some GUI controls

- server logging history grid lines of weekend days are now plotted with
  different line width

- removed ALSA support since the ALSA interface implementation in llcon was
  buggy and will not be maintained in the future

- bug fix: fix for server logging history graph x-axis

- bug fix: fix for disconnect issue at the server


### 3.0.2 (2009-09-21) ###

- new server features: for chat messages the time stamp is also shown, parsing
  of existing log file supported

- updates for help texts

- new design for fader tag

- change for Jack Linux audio interface: ports are only registered and
  connected once when the software is started up

- bug fix: under bad network conditions chat messages were randomly repeated

- bug fix: in case the server was shutdown and restarted during a connection,
  the channel name was not updated correctly at the server


### 3.0.1 (2009-08-23) ###

- use low complexity CELT encoder profile, this lowers audio dropout
  probability on slow computers

- in case "Open Chat on New Message" is not enabled, a hint in the status bar
  is shown when a message is received

- bug fix: buzzing occurred when audio stream was interrupted (e.g. in case
  of network trouble)


### 3.0.0 (2009-08-19) ###

- introduced new audio codec "CELT", not compatible to old versions

- only the sound card frame sizes 128, 256 and 512 are allowed (since other
  frame sizes require additional conversion buffers which introduce delay)

- IMA-ADPCM, MS-ADPCM removed

- since CELT works on 48 kHz sample rate, resampling was removed

- various bug fixes (e.g. disconnecting did not work reliably)


### 2.3.0 (2009-07-09) ###

- new system sample rate of 33 kHz to improve audio quality, not compatible
  to old versions

- added history graph for server logging

- added command line argument for connecting a server at software start-up


### 2.2.2 (2009-05-14) ###

- "Mute" and "Solo" check boxes for each connected client fader

- store previous server URLs

- changes to the main GUI (grouped "local" and "server" settings)

- LED status lights and LED input level meter

- better behaviour on disconnection (introduced disconnection protocol message)


### 2.2.1 (2009-03-29) ###

- bug fix and improvements for automatic jitter buffer size setting


### 2.2.0 (2009-03-13) ###

- added Jack audio interface (Linux)

- simplified settings dialog, complete redesign (removed sound card
  buffer settings, network block sizes settings, added upload rate display)

- improved audio stability (audio interface is not callback based, removed
  intermediate audio buffers, client audio buffer size equals network
  buffer size now)

- added upload rate limitation for server (server decides which network
  parameters to use depending on the upload limit and the number of connected
  clients)


### 2.1.4 (2009-02-15) ###

- added automatic jitter buffer size setting

- speed optimizations to improve audio interface stability

- new default settings (e.g. turn off Reverb by default since it requires
  significant CPU)


### 2.1.3 (2008-11-02) ###

- added sound card selection

- improved ASIO configuration

- added total delay display


### 2.1.2 (2008-08-15) ###

- audio compression type can be selected (IMA ADPCM, MS ADPCM, None)

- security checks for protocol messages (wrong messages could crash the
  software)

- bug fix: ping time measurement problems on Windows OS fixed


### 2.1.1 (2008-08-03) ###

- added a chat window

- the client can select a port number of server additional to the URL

- the server can be operated on an arbitrary port number

- ping time information in general settings dialog added


### 2.1.0 (2008-07-17) ###

- ASIO support


### 2.0.0 (2008-03-29) ###

- first QT4 compatible release


### 0.9.9 (2007-09-10) ###

- new client settings dialog

- at each client a separate audio mix can be generated for all connected clients
  at the server


### 0.9.4 (2006-03-10) ###

- added a protocol mechanism, now it is possible to set the jitter buffer in the
  server according to the setting in the client (they are coupled now)

- removed sample rate offset estimation since it was not used anyway

- internal audio processing in the server is now based on the minimum block
  size (improves latency)


### 0.9.1 (2006-01-28) ###

- initial version
