Mumble (software)
Main view of Mumble | |
Original author(s) | Thorvald Natvig |
---|---|
Developer(s) | Various |
Initial release | 2005 |
Stable release |
1.2.17
/ September 24, 2016 |
Repository |
github |
Written in | C++ |
Operating system | Linux, OS X, Microsoft Windows, iOS, Android |
Platform | Qt |
Type | VoIP client and server |
License | New BSD license |
Website |
wiki |
Mumble is a voice over IP (VoIP) application primarily designed for use by gamers, similar to programs such as TeamSpeak and Ventrilo.[1]
Mumble uses a client–server architecture which allows users to talk to each other via the same server.[2] It has a very simple administrative interface and features high sound quality and low latency. All communication is encrypted to ensure user privacy.[3]
Mumble is free and open-source software, is cross-platform, and is released under the terms of the new BSD license.
Channel hierarchy
A Mumble server (called Murmur) has a root channel and a hierarchical tree of channels beneath it. Users can temporarily connect channels to create larger virtual channels. This is useful during larger events where a small group of users may be chatting in a channel, but are linked to a common channel with other users to hear announcements. It also matches team-based first-person shooter (FPS) games. Each channel has an associated set of groups and access control lists which control user permissions. The system supports many usage scenarios, at the cost of added configuration complexity.[4]
Sound quality
Mumble uses the low-latency audio codec Opus as of version 1.2.4, the codec that succeeds the previous defaults Speex and CELT. This and the rest of Mumble's design allow for low-latency communication, meaning a shorter delay between when something is said on one end and when it's heard on the other. Mumble also incorporates echo cancellation to reduce echo when using speakers or poor quality sound hardware.
Security and privacy
Mumble connects to a server via a TLS control channel, with the audio travelling via UDP encrypted with AES in OCB mode.[5] As of 1.2.9 Mumble now prefers ECDHE + AES-GCM cipher suites if possible, providing Perfect Forward Secrecy.[6] While password authentication for users is supported, since 1.2.0 it is typically eschewed in favor of strong authentication in the form of public key certificates.[7]
Overlay
There is an integrated overlay for use in games.[3] The overlay shows who is talking and what linked channel they are in. As of version 1.0, users could upload avatars to represent themselves in the overlay, creating a more personalized experience. As of version 1.2, the overlay works with most Direct3D 9/10 and OpenGL games on Windows and has OpenGL support for Linux and Mac OS X.[8] DirectX 11 game support was later added.
Positional audio
For certain games, Mumble modifies the audio to position other players' voices according to their relative position in the game.[3] This not only includes giving a sense of direction, but also of distance.
To realise this, Mumble sends each player's in-game position to players in the same game with every audio packet. Mumble can gather the information needed to do this in two ways: it either reads the needed information directly out of the memory of the game or the games provide it themselves via the so-called link plugin interface.
The link plugin provides games with a way to expose the information needed for positional audio themselves by including a small piece of source code provided by the Mumble project.[9] Several high-profile games have implemented this functionality including many of Valve's Source Engine based games (Team Fortress 2, Day of Defeat: Source, Counter-Strike: Source, Half-Life 2: Deathmatch)[10][11] and Guild Wars 2.[12][13]
Mobile apps
Mobile apps are available for Mumble, such as Mumblefy for iOS[14] and Plumble for Android.[15][16]
Server integration
Mumble fits into existing technological and social structures. As such, the server is fully remote controllable over Ice.[17] User channels as well as virtual server instances can be manipulated. The project provides a number of sample scripts illustrating the abilities of the interface[18] as well as prefabricated scripts offering features like authenticating users using an existing phpBB or Simple Machines Forum database.[19] The murmur server uses port 64738 TCP and UDP by default.
An alternative minimalist implementation of the mumble-server (Murmur) is called uMurmur.[20] It is intended for installation on embedded devices with limited resources, such as, for example, residential gateways running OpenWrt.[21]
Server hosting
Like many other VoIP clients, Mumble servers can be both rented or hosted locally. Hosting a Mumble server locally requires downloading Murmur (included as an option in the Mumble installer) and launching it. Configuring the server is achieved via editing the configuration file. The configuration file holds information for the server's name, user authentication, audio quality restrictions, and port.
Administrating the server from within requires a user to be given administrator rights, or can also be done by logging into the SuperUser account. Administrators within the server can add or edit rooms, manage users, and view the server's information.
See also
References
- ↑ "FAQ/English – Mumble". www.mumble.info. Retrieved 2011-06-30.
- ↑ "FAQ/English – Mumble". www.mumble.info. Retrieved 2011-06-30.
- 1 2 3 "Project of the Month, November 2009". SourceForge.net. 2005-08-31. Retrieved 2011-06-30.
- ↑ "ACL and Groups/English – Mumble". www.mumble.info. Retrieved 2011-06-30.
- ↑ "FAQ/English - Mumble Wiki". Retrieved 2015-06-12.
- ↑ "Mumble 1.2.9 - Mumble Blog". Retrieved 2015-06-12.
- ↑ "Features - Mumble Wiki". Retrieved 2015-06-12.
- ↑ "Games – Mumble". www.mumble.info. Retrieved 2011-06-30.
- ↑ "Link – Mumble". www.mumble.info. Retrieved 2011-06-30.
- ↑ Updates for Team Fortress 2, Day of Defeat: Source and Half-Life 2: Deathmatch
- ↑ Counter-Strike: Source Update Released
- ↑ Guildwars Website
- ↑ the official website
- ↑ "Mumblefy – a Mumble client for the iPhone".
- ↑ "Plumble – Voice chat for Mumble servers". in F-Droid
- ↑ "Plumble – a Mumble client for Android". at Google Store
- ↑ "Interview: Mumble Does OSS VoIP Chats for Online Games". Ostatic.org. Retrieved 2011-06-30.
- ↑ "SourceForge – mumble/mumble/tree – scripts/". Mumble.git.sourceforge.net. Retrieved 2011-06-30.
- ↑ "Tree for mumble-scripts in Mumble scripts". Gitorious. Retrieved 2011-06-30.
- ↑ umurmur - Minimalistic Murmur (Mumble server) - Google Project Hosting. Code.google.com. Retrieved on 2014-06-10.
- ↑ "uMurmur – Howto". wiki.openwrt.org. Retrieved 2011-10-09.