![]() |
(on Wikipedia)
https://www.mumble.com/
A VoIP client.
Particularly awesome not just because of it's spectacular quality, but because it's free (client and server), and forces all of its users to fix their fucking microphone settings so everyone else doesn't have to constantly fiddle with their per-user volume.
You can also run your own server "Murmur".
-
2017-02-15 - 1.2.19 on Windows 10
- 1.2.16 previously
- 1.2.13 previously
- 2016-04-03 - 1.2.11 on Slackware 14.1
- 2016-03-26 - 1.2.4-0.2ubuntu1.1 on Lubuntu 14.04.4 LTS
-
2011-08-10 - (version not recorded) on Unity Linux, a 2011 alpha, updated recently.
- Before the Mandriva repository switch.
-
I used to use Ventrilo.
2016-04-03 - 1.2.11 ∞
Installed with slpkg:
\slpkg -s sbo mumble
Spoiler
+============================================================================== | Package New version Arch Build Repos Size +============================================================================== Installing: mumble 1.2.11 i486 SBo Installing for dependencies: pysetuptools 18.2 i486 SBo six 1.10.0 i486 SBo pytz 2014.10 i486 SBo python-dateutil 2.4.2 i486 SBo python-gflags 2.0 i486 SBo protobuf 2.6.1 i486 SBo opus 1.1.1 i486 SBo speex 1.2rc2 i486 SBo Installing summary ===============================================================================
2011-08-10 - (version not recorded) ∞
Spoiler
\smart install \ git \ libqt4-devel \ libspeex-devel \ libboost-devel \ libopenssl-devel \ libspeechd-devel \ libpulseaudio-devel \ libcap-devel \ libprotobuf-devel \ protobuf-compiler \ libogg-devel \ libg15daemon_client-devel \ libxi-devel \ libavahi-compat-libdns_sd-devel \ libsndfile-devel \ ` # ` \git clone git://github.com/mumble-voip/mumble.git mumble \cd mumble \git submodule init \git submodule update \git checkout --track -b master origin/master \qmake -recursive main.pro \make
To update the Git repository, do:
\git pull
These were mentioned as dependencies for a Ubuntu build, but were not found in the Unity Linux pre-Mandriva-repository repository:
libasound2-dev g++ libzeroc-ice-dev ice-slice slice2cpp libspeexdsp-dev
- g++ isn't a package, but the command works, so it's installed from /somewhere/.
-
I need to research what the other projects are..
Before installing these:
libavahi-compat-libdns_sd-devel libsndfile-devel
.. when trying the final make
, I got:
Spoiler
/usr/lib/qt4/bin/uic VoiceRecorderDialog.ui -o ui_VoiceRecorderDialog.h g++ -pipe -Wfatal-errors -fvisibility=hidden -Wshadow -Woverloaded-virtual -Wold-style-cast -Wconversion -Wsign-compare -Wall -Wextra -O2 -g -frecord-gcc-switches -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fomit-frame-pointer -mtune=generic -march=i586 -fasynchronous-unwind-tables -fno-strict-aliasing -DPIC -fPIC -O2 -g -frecord-gcc-switches -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fomit-frame-pointer -mtune=generic -march=i586 -fasynchronous-unwind-tables -fno-strict-aliasing -DPIC -fPIC -I/usr/include/speex -I/usr/include/alsa -D_REENTRANT -Wall -W -D_REENTRANT -DRESTRICT=__restrict__ -D_FORTIFY_SOURCE=2 -DMUMBLE_VERSION_STRING=1.2.4 -DMUMBLE -DNO_CRASH_REPORT -DUSE_ALSA -DUSE_OSS -DUSE_PULSEAUDIO -DUSE_BONJOUR -DUSE_DBUS -DUSE_SPEECHD -DUSE_G15 -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_SQL_LIB -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/lib/qt4/mkspecs/linux-g++ -I. -I/usr/lib/qt4/include/QtCore -I/usr/lib/qt4/include/QtNetwork -I/usr/lib/qt4/include/QtGui -I/usr/lib/qt4/include/QtXml -I/usr/lib/qt4/include/QtSql -I/usr/lib/qt4/include/QtSvg -I/usr/lib/qt4/include -I/usr/lib/qt4/include/QtDBus -I../../src -I. -I../bonjour -I../../celt-0.7.0-src/libcelt -I/usr/lib/oss/include -Irelease -I. -x c++-header -c mumble_pch.hpp -o release/mumble.gch/c++ mumble_pch.hpp:117:20: fatal error: dns_sd.h: No such file or directory compilation terminated. make[2]: *** [release/mumble.gch/c++] Error 1 make[2]: Leaving directory `/mnt/data/live/_inbox/software/mumble/mumble/src/mumble' make[1]: *** [release] Error 2 make[1]: Leaving directory `/mnt/data/live/_inbox/software/mumble/mumble/src/mumble' make: *** [sub-src-mumble-make_default-ordered] Error 2
note: if installing dependencies, be sure to run ldconfig
and \qmake -recursive main.pro
line again.
After installing:
libavahi-compat-libdns_sd-devel libsndfile-devel
.. now I get:
Spoiler
AudioOutput.cpp:985:68: warning: shadowed declaration is here [-Wshadow] In file included from /usr/lib/qt4/include/QtCore/qvariant.h:50:0, from /usr/lib/qt4/include/QtCore/qvariantanimation.h:48, from /usr/lib/qt4/include/QtCore/qpropertyanimation.h:45, from /usr/lib/qt4/include/QtCore/QtCore:7, from mumble_pch.hpp:30: /usr/lib/qt4/include/QtCore/qhash.h: In member function ‘typename QHash<Key, T>::iterator QMultiHash<Key, T>::insert(const Key&, const T&) [with Key = const ClientUser*, T = AudioOutputUser*, typename QHash<Key, T>::iterator = QHash<const ClientUser*, AudioOutputUser*>::iterator]’: AudioOutput.cpp:797:28: instantiated from here /usr/lib/qt4/include/QtCore/qhash.h:931:45: warning: declaration of ‘value’ shadows a member of 'this' [-Wshadow] /usr/lib/qt4/include/QtCore/qhash.h:931:45: warning: declaration of ‘key’ shadows a member of 'this' [-Wshadow] /usr/lib/qt4/include/QtCore/qhash.h: In member function ‘typename QHash<Key, T>::iterator QMultiHash<Key, T>::replace(const Key&, const T&) [with Key = const ClientUser*, T = AudioOutputUser*, typename QHash<Key, T>::iterator = QHash<const ClientUser*, AudioOutputUser*>::iterator]’: AudioOutput.cpp:827:30: instantiated from here /usr/lib/qt4/include/QtCore/qhash.h:928:45: warning: declaration of ‘value’ shadows a member of 'this' [-Wshadow] /usr/lib/qt4/include/QtCore/qhash.h:928:45: warning: declaration of ‘key’ shadows a member of 'this' [-Wshadow] g++ -c -include release/mumble -pipe -Wfatal-errors -fvisibility=hidden -Wshadow -Woverloaded-virtual -Wold-style-cast -Wconversion -Wsign-compare -Wall -Wextra -O2 -g -frecord-gcc-switches -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fomit-frame-pointer -mtune=generic -march=i586 -fasynchronous-unwind-tables -fno-strict-aliasing -DPIC -fPIC -O2 -g -frecord-gcc-switches -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fomit-frame-pointer -mtune=generic -march=i586 -fasynchronous-unwind-tables -fno-strict-aliasing -DPIC -fPIC -I/usr/include/speex -I/usr/include/alsa -D_REENTRANT -D_REENTRANT -I/usr/include/avahi-compat-libdns_sd/ -D_REENTRANT -Wall -W -D_REENTRANT -DRESTRICT=__restrict__ -D_FORTIFY_SOURCE=2 -DMUMBLE_VERSION_STRING=1.2.4 -DMUMBLE -DNO_CRASH_REPORT -DUSE_ALSA -DUSE_OSS -DUSE_PULSEAUDIO -DUSE_BONJOUR -DUSE_DBUS -DUSE_SPEECHD -DUSE_G15 -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_SQL_LIB -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/lib/qt4/mkspecs/linux-g++ -I. -I/usr/lib/qt4/include/QtCore -I/usr/lib/qt4/include/QtNetwork -I/usr/lib/qt4/include/QtGui -I/usr/lib/qt4/include/QtXml -I/usr/lib/qt4/include/QtSql -I/usr/lib/qt4/include/QtSvg -I/usr/lib/qt4/include -I/usr/lib/qt4/include/QtDBus -I../../src -I. -I../bonjour -I../../celt-0.7.0-src/libcelt -I/usr/lib/oss/include -Irelease -I. -o release/main.o main.cpp main.cpp: In function ‘int main(int, char**)’: main.cpp:128:2: warning: declaration of ‘s’ shadows a previous local [-Wshadow] main.cpp:128:2: warning: shadowed declaration is here [-Wshadow] main.cpp:182:46: error: format not a string literal and no format arguments [-Werror=format-security] compilation terminated due to -Wfatal-errors. cc1plus: some warnings being treated as errors
Lowering CPU Usage ∞
Idling with 30% CPU usage is horrific. It can be lowered a significant amount. Not enough for my tastes, but it's a start.
A big fix is to remove echo cancellation. You'd have to wear headphones though. Boo.
https://wiki.archlinux.org/title/PulseAudio#2._Determine_sampling-rate_of_the_sound_card [ 1 ] was https://wiki.archlinux.org/index.php/PulseAudio#2._Determine_sampling-rate_of_the_sound_card
Determine sampling-rate of the sound card
\arecord -f dat -r 60000 -D hw:0,0 -d 5 test.wav
To fiddle with the sample rate:
tab1:
\sudo \nano /etc/pulse/daemon.conf
default-sample-rate = 48000
tab2:
\killall mumble lxpanel ; \sleep 1 ; \pulseaudio --kill ; \sleep 2 ; \pulseaudio --start ; \lxpanel >> /dev/null 2>&1 & /1/bin/mumble.sh ; \htop
(LXPanel ends up with 100% cpu usage, and needs to be restarted.)
Footnotes
Last updated 2022-04-07 at 19:33:42
poked