The machinery needed to support the "manual" plugin as a DLL file on Windows is very complex. This is because we build Mumble itself as mumble_app.dll and link our dependencies statically. And also because of various changes made in Qt 5. The manual plugin uses Qt. When Mumble linked dynamically against Qt4Gui.dll, etc. - everything worked fine. The manual plugin simply linked against the same DLLs. With the move to mumble_app.dll, we also moved to statically link against Qt for mumble_app.dll. To accommodate the manual plugin, we implemented various hacks to export the Qt symbols from mumble_app.dll that were necessary for loading the manual plugin. And that worked for a while. However, right now, with Qt 5.6, the plugin is broken. And I get a lot of weird crashes when interacting with the manual plugin. Most of it boils down to the fact that both manual.dll and mumble_app.dll have copies of statically initialized data, like QArrayData::shared_null. Sharing objects between mumble_app.dll and manual.dll in this scenario is impossible, because using the object in one module will cause one set of statically initialized data to be used, while use in the other will cause the other data to be accessed. This is especially bad for things that use reference counting, because it'll get out of sync. So, to get rid of this mess, we're moving the manual plugin into Mumble itself. Functionally, it doesn't change anything. The manual plugin could not be auto-updated because it depended on a specific Qt and Mumble version. Mostly because it depended on the correct set of Qt symbols to be exported from mumble_app.dll. The plugin now works correctly, and we can safely remove a lot of the hacks that were required to load the manual plugin in its earlier incarnation. The only downside is that we can't test the manual plugin in PAHelper. But that wasn't really the case before either, because the plugin practically depended on Mumble to run. |
||
|---|---|---|
| .tx | ||
| 3rdparty | ||
| 3rdPartyLicenses | ||
| docs | ||
| g15helper | ||
| icons | ||
| installer | ||
| macx | ||
| man | ||
| overlay | ||
| overlay_gl | ||
| overlay_winx64 | ||
| plugins | ||
| samples | ||
| scripts | ||
| src | ||
| themes | ||
| toolchain/win32-msvc2013 | ||
| .gitignore | ||
| .gitmodules | ||
| .mailmap | ||
| AUTHORS | ||
| CHANGES | ||
| compiler.pri | ||
| Doxyfile | ||
| INSTALL | ||
| LICENSE | ||
| LICENSE.header | ||
| main.pro | ||
| pkgconfig.pri | ||
| python.pri | ||
| qt.pri | ||
| rcc.pri | ||
| README | ||
| README.Linux | ||
| README.md | ||
| README.static.linux | ||
| README.static.osx | ||
| symbols.pri | ||
| uname.pri | ||
| winpaths_default.pri | ||
| winpaths_static.pri | ||
Mumble - A voicechat utility for gamers
http://mumble.info/
#mumble on freenode
Mumble is a voicechat program for gamers written on top of Qt and Speex.
There are two modules in Mumble; the client (mumble) and the server (murmur). The client works on Win32/64, Linux and Mac OS X, while the server should work on anything Qt can be installed on.
Note that when we say Win32, we mean Windows XP or newer.
Running Mumble
On Windows, after installation, you should have a new Mumble folder in your Start Menu, from which you can start Mumble.
On Mac OS X, to install Mumble, drag the application from the downloaded
disk image into your /Applications folder.
Once Mumble is launched, you need a server to connect to. Either create your own or join a friend's.
Running Murmur on Unix-like systems
Murmur should be run from the command line, so start a shell (command prompt) and go to wherever you installed Mumble. Run murmur as
murmurd [-supw <password>] [-ini <inifile>] [-fg] [v]
-supw Set new password for the user SuperUser, which is hardcoded to
bypass ACLs. Keep this password safe. Until you set a password,
the SuperUser is disabled. If you use this option, murmur will
set the password in the database and then exit.
-ini Use a inifile other than murmur.ini, use this to run several instances
of murmur from the same directory. Make sure each instance is using
a separate database.
-fg Run in the foreground, logging to standard output.
-v More verbose logging.
Running Murmur on Mac OS X
Murmur is distributed seperately from the Mumble client on Mac OS X. It is called Static OS X Server and can be downloaded from the main webpage.
Once downloaded it can be run in the same way as on any other Unix-like system. For more information please see the 'Running Murmur on Unix-like systems' above.
Running Murmur on Win32
Doubleclick the Murmur icon to start murmur. There will be a small icon on your taskbar from which you can view the log.
To set the superuser password, run murmur with the parameters -supw <password>.
Bandwidth usage
Mumble will use 10-40 kbit/s outgoing, and the same incoming for each user. So if there are 10 other users on the server with you, your incoming bandwidth requirement will be 100-400 kbit/s if they all talk at the same time.