Mumble 1.5.634

Posted on May 19, 2024 by Hartmnt

After quite some time, we are proud to present you with the first stable release of the Mumble 1.5.x series. While this release may not be groundbreaking in terms of flashy and new features, we implemented a lot of quality-of-life and structural improvements to provide a solid foundation for the future development of the project.

You can download the new version from our Downloads page or the GitHub release page or from within your Windows client or software package management system.

Mumble 1.5.634

Almost two years after the previous stable release Mumble 1.4.287, a lot of changes have been made to the codebase. With this update, you will surely notice some long-standing bugs fixed, as well as some convenient changes that were long overdue. In the time between the major versions, the project has exceeded the 10,000 commit mark and now has over 350 contributors. Thanks to all of you who contributed, translated, submitted issues, and tested pre-releases! Without you, the Mumble project would not be possible at this scale ♥

While the changelog is quite long, the amount of notable client changes is relatively small. For this release, we focus on the few main changes. For the interested reader, we of course also include a full changelog at the bottom of this page as well.

If you are wondering why this first 1.5.x release is not version 1.5.0, but 1.5.634, please see this old blog post describing our new versioning scheme that explains the absence of the aforementioned version numbers.

Feature spotlight

Positional audio improvements

There have been some changes to the positional audio system, especially to better fine-tune the configuration. The maximum distance thresholds have been significantly increased. The option to set a minimum volume of 0 has been brought back. And some clever psychoacoustic effects, such as interaural delay as well as improved blooming will enhance the positional audio experience even more.

For those users who wish to develop positional audio plugins - or try to debug them - we have added a convenient “Positional Audio Viewer” to the developer context menu. This replaces the existing external “MumblePAHelper” with an in-client solution. It shows you the positional information of your client and the associated metadata in real-time.

Positional Audio Viewer

For the positional audio viewer in action see: https://odysee.com/@Mumble:5/positional-audio-viewer-left4dead:f

UI and accessibility overhaul

Mumble 1.5 introduces some quality-of-life UI changes alongside the long-awaited accessibility overhaul. In the software context, accessibility features (often abbreviated as “a11y”) are considerations and tools meant to reduce the hassle of running a specific application for users with disabilities. Most often, you will find features specifically crafted or tweaked for visually impaired users, but other disabilities such as cognitive or motor impairments should also be considered.

We ensured that the entire application is now keyboard navigable and removed any existing focus traps. We also implemented forwarding of some context information, such as the muted/deafened state of other users, are now forwarded to screen readers. Also, all existing settings pages, their contents, and any actions that were previously only available as a toolbar button are now usable without a mouse. If you are using a screen reader or other accessibility tooling and have any trouble using Mumble 1.5.634, make sure to let us know via our GitHub issue tracker. We want to make sure the application is usable by everyone.

For users regulary connecting to very large Mumble servers, some neat features were added to make life easier: The new message thresholding options will make Mumble suppress certain notifications when a configurable user limit is reached on the server. Additionally, users are now able to not only hide certain channels explicitly when activating the channel filter, but also pin channels in the filtered view even when they are empty.

Message threshold

The new inline local volume adjustment slider removes the complexity of using a dedicated popup menu and therefore reduces the required clicks for the same action significantly.

Local volume adjustment

A lot of new global shortcut actions were added, including many of the menubar options, allowing to control Mumble with ease even when the window is minimized or a fullscreen application is running. Furthermore, the volume of notifications, audio cues, and text-to-speech can now be changed separately.

There have also been quite a lot of UI fixes, such as the chat log scrolling up when a new image is posted, the “channel name links” not behaving correctly in the chat log, hiding UI elements not being persistent, and more!

Persistent channel listeners

Channel Listeners - a feature introduced in Mumble 1.4 - were previously only valid for the current user session. In this release, we introduce persistent channel listeners for registered users. That means existing listeners and their respective volume adjustments will be remembered by the server across reconnections.

Changelog

This is the full changelog for this release (changes relative to the Mumble 1.4.x series).

Client

  • Added: “Move To Own Channel” action to the user context menu (#5984)
  • Added: Ability to pin channels when filtering (#5923)
  • Added: Ability to record MP3s (#6219)
  • Added: Ability to toggle audio cue exclusively for certain transmit modes (#6005)
  • Added: Allow magnet-URIs for links (#5147)
  • Added: Channel filter toggle entry in context menu (#5923)
  • Added: Extended quit behavior setting (#5799)
  • Added: Immediately save settings instead of only on shutdown (#5531)
  • Added: Improve handling of IP masks in BanEditor (#5406)
  • Added: Improve positional audio with interaural delay effects (#5094)
  • Added: Increase maximum positional audio distance thresholds (#6134)
  • Added: Introduce Positional Audio Viewer (#5127)
  • Added: Make minimal view show a note while not connected to a server (#5777)
  • Added: New Global Shortcuts (#6260)
  • Added: Notification thresholding (#4808)
  • Added: Option to change notification volume (#5725)
  • Added: Option to toggle TTS in settings menu (#5565)
  • Added: Opus as output format for recording (#5251)
  • Added: Popup when mute cue is activated for the first time (#6155)
  • Added: Prompt to load backup settings after crash (#5531)
  • Added: ReNameNoise as a replacement for RNNoise (#6364)
  • Added: Separate IPv4 and IPv6 tooltip in server browser (#5714)
  • Added: Setting to always show users in Talking UI (#6158)
  • Added: Shortcut to listen to a channel (#4636)
  • Added: Shortcut to send plain text messages (instead of Markdown) (#5744)
  • Added: Support –version CLI flag (#5599)
  • Added: Tooltips for mute & deaf-buttons now depend on their state (#5141)
  • Added: User and Listener volume slider to context menus (#5776)
  • Added: Warn when attempting to use positional audio with mono output (#5247)
  • Changed: Allow minimum volume of 0 for positional audio (#6134)
  • Changed: Default value for “hold time” - set to “industry standard” (#5438)
  • Changed: Drop support for all legacy audio codecs - only Opus remains (#5869)
  • Changed: Drop the version from window title (#5164)
  • Changed: Fetch cypher info about used cyphers at runtime instead of hard coding them (#5566)
  • Changed: Increase the maximum value for the silent user lifetime setting (TalkingUI) (#5297)
  • Changed: Make https the default link protocol (#5620)
  • Changed: Make listener icon fit with other icons (#5470)
  • Changed: Make lock icons fit with other icons (#5455)
  • Changed: Show action icons in menu bar where applicable (#5771)
  • Changed: Show lost packages instead of received ones in server browser tooltips (#5594)
  • Changed: Use JSON file for storing settings (#5531)
  • Changed: Use Protobuf for UDP messages (#5594)
  • Fixed: Accessibility across the entire application (#5984)
  • Fixed: Adapt Qt behavior change regarding padding in QMenu (#5771)
  • Fixed: Always stop audio on/off cue when switching state (#6018)
  • Fixed: Audio wizard being shown repeatedly (#5596)
  • Fixed: Broken link targets with percent signs (#5821)
  • Fixed: Chinese characters not displayed properly (#6200)
  • Fixed: Clear shortcut data also for user-types (#4636)
  • Fixed: Code blocks end on three backticks without interruption by any other pattern of backticks in the code (#6261)
  • Fixed: DB not found after migration on Windows (#5593)
  • Fixed: DB transactions not effective (#5531)
  • Fixed: Fallback theme (#5088)
  • Fixed: Log incorrectly scrolling up (#6290)
  • Fixed: Logging of plugin loading errors (#6123)
  • Fixed: Make channel links in the chat bar work again (#5916)
  • Fixed: Make hiding UI elements persistent again (#5833)
  • Fixed: Migration of GKey shortcuts (#5960)
  • Fixed: PipeWire crash (#6103)
  • Fixed: Positional audio minimum and maximum distance constraints (#6234, #6134)
  • Fixed: Preserve other check-box states if “All messages” was checked (#6348)
  • Fixed: PulseAudio backend failing when changing audio settings (#6051)
  • Fixed: PulseAudio device hotplugging (#6371)
  • Fixed: Remove gaps within chat bar (#5927)
  • Fixed: Replace flag icons for licensing reasons (#6412)
  • Fixed: Save shortcuts in a single DB transaction (#5531)
  • Fixed: size_t type for QT invoke functions in API (#6329)
  • Fixed: Target and permission selection (#5917)
  • Fixed: Text selection in chat log (#6289)
  • Fixed: TTS volume not passed in proper format (#5725)
  • Fixed: Unresponsiveness due to shortcut system overload (#5944)
  • Fixed: Use fixed dark font color for themeless notice labels (#6256)

Server

  • Added: Ability to flag bot connections (#5948)
  • Added: Make channel listeners persistent for registered users (#5856)
  • Added: Option to disallow recording (#5298)
  • Added: Support –version CLI flag (#5599)
  • Added: Support for the tracy profiler (#5396)
  • Changed: Clear priority speaker flag when switching channels (#5925)
  • Changed: Enforce Opus by default (#5594)
  • Changed: Make joining root channel explicit (#5324)
  • Changed: Remove gRPC implementation (#5552)
  • Changed: Use Protobuf for UDP messages (#5594)
  • Fixed: Actually use the settings provided pluginmessagelimit and -burst (#6117)
  • Fixed: Announce if settings file is not present (#6231)
  • Fixed: Cap receiver ranges at a volume difference of 5dB (#6267)
  • Fixed: Don’t ignore explicit PermissionQuery (#5767)
  • Fixed: Don’t send useless UserState message (#5893)
  • Fixed: Don’t silently ignore errors in INI (#5751)
  • Fixed: Invalid ACLs on connect in some circumstances (#6044)
  • Fixed: Look for mumble-server* files instead of only for murmur* (#5838)
  • Fixed: Make rememberchannelduration work as expected (#5918)
  • Fixed: Permission checks for temporary channels (#5925)
  • Fixed: Potential crash regarding empty receiver list (#5628)
  • Fixed: Potential crash due to missing locks (#6057)
  • Fixed: Rare crash regarding whisper cache (#6372)
  • Fixed: Send enter restriction updates to correct user (#6057)

Both

  • Fixed: Remove unreachable -V flag (#6064)

Positional audio plugins

  • Added: Rewrite GTAV plugin to use signatures and game structs (#5704)
  • Fixed: ManualPlacement plugin orientation indicator (#6234)
  • Fixed: Source Engine plugin not working on Windows (#6245)
  • Fixed: Update GTAV plugin to version 1.59.2612 (#5679)
  • Fixed: Use atomic operations in Link plugin (#6075)

Known issues

  • macOS binaries not being signed/notarized (overlay installer not signed) (#4263)
  • Overlay blocked by BattleEye. A request to whitelist it has been made.
  • Overlay blocked by CS:GO Trusted Mode