Tuesday, September 10, 2013

Logans Lessions #4: Setting up a mumble server

Logans Lessions #4: Setting up a mumble server


So, one of my previous posts is about setting up a Ventrillo server. Ventrillo is a easy to set up, free to use (for up to 8 people) voice chat server to use however you see fit. I used Ventrillo for a while, and was pretty happy with it. I'll say that I was happy with it the way that people were happy with life before they invented Air Conditioning (for me, having lived 7 years in Arizona, AC is a BIG part of life).

So this brings me to the point of this post. What changed my feelings for ventrillo? Its simple, another product that does basically the same thing, but in my opinion, better. What was that quote about building a better mousetrap?

Reasons I switched from Ventrillo to Mumble.

  1. Lower latency. In "normal speak" this means that the delay between when you speak, and your friend hears you is lower. Meaning, its more like "normal" conversation, as your friend hears your joke almost as you say it instead of 1.4 seconds later (akward delayed reaction laughing == the worst).
  2. Supports more chatters. Now, most people will never need more than 8 for free. But mumble lets you do as many as you please, its limited only by your bandwidth.
  3. Automatic volume leveling of the chatters. So, no matter who is on the chat, they all sound the same volume to you. Great for if you have someone in your family/team/secret guild that talks loudly, because they won't overpower everyone else (PS, this sadly does not work at family gatherings... )
  4. Additional features that sound cool, but I might not use. Mostly correct positioning of audio while in specific games. So while I game, I don't know if I game enough to appreciate this feature. Although the ability to hear if your friend is on the left or right... is actually quite awesome (technically speaking, that's quite impressive).

Bottom line

The main benefit for me was the reduced latency. For those that don't know, I do some amateur StarCraft 2 commentating (wow, that sounds really, really nerdy). I commentate games for a small league, and occasionally I have a co-commentator that I use these programs to talk with. When commentating with someone that you can't physically see, latency is a huge part of making the performance feel natural.

With Ventrillo, my co-commentator and I were able to work with the roughly 1 - 1.5 second latency. At times though, we would talk over each other (remember we had 1 second to start talking before the other heard). This lead to more stops and starts of conversation as we would both start talking, then hear the fact a second or so later, then start talking again as the silence in-between was also delayed. So we worked within this limitation, but it was a noticeable hindrance.

With Mumble, I've noticed a large decrease in the number of times my co-commentator and I talk over each other. So for that reason alone, its worth the switch. While I haven't actually measured the latency with mumble, I would put it at around half a second with my very unscientific normal usage of the software. While there is obviously room for improvement, that is two to three times faster than ventrillo in my testing, and makes for much more natural conversation.

So, I'll walk you through the setup of mumble, (and its server that you run called "murmer"). Luckily, the setup is almost exactly the same as the setup for Ventrillo, just with different ports being used. Also, mumbles documentation is pretty good as well, so this is meant more just for demonstration purposes of an actual running instance, rather than re-creating the documentation that is already in effect.

Installing and configuring the server


Download the mumble install file from HERE. In this file, you will have the option to install either client only, or client and server. So if you're the one hosting it for your friends on your machine, then of course you do client and server. If you're connecting to a friend, just do client only.

Install the things. I'm not going to sit here and do screenshots of where you should click "next". Its pretty straight forward though.

After things install, you need to configure an ini file for what you want your server to do (aka, server password, number of supported users, etc). It is located in the folder C:\Program Files (x86)\Mumble, and the file is called murmur.ini.

Unlike Ventrillos ini file, this one is a bit more... involved. Its very well laid out at least, but if you're not used to reading ini files, it might take you a few minutes to find what needs to be adjusted.

Protip: Most INI files have lots of settings in them that you might not need. When getting things set up, ignore most things that are currently commented out. In this case, that means the ones with the "#" in front of the line. I am using an editor called Notepad++ to make it easier to read by color coding what is commented out (ignored code), and what is "real".



Once you do that, you need to (as the server) set up your network to allow traffic to the box you're using as the server (I recommend setting a static IP for whatever machine you choose, as this will save you pain in the future if your DHCP addresses change [which they will]).

What I mean by this is that you need to set up port forwarding on your edge device (usually your wireless router/firewall). This is usually a pretty simple process, although because of the wide number of devices on the market that all have slightly different interfaces, I wont even try to do a step by step walk through for this part.

Just know that you need to set up port forwarding to allow the TCP and UDP ports (64738) to the same port on your server.

Here is what mine looks like though.


Setting up the client

Go ahead and start up murmur (double click, select and press enter, whatever).

Once you get that set up, go to canyouseeme and then check that it can see your server on the correct port. Now go to whatsmyip and learn what your public IP is.

Once that works, simply fire up mumble, add the new server. The name you put in is just your label for the server and not its official name. Add the correct IP address (and if you're doing it inside your network, use the internal IP), and then connect. If you put a password on the server, it should now ask you for the username and password that you would like to connect with. Once you do that, you're in!

It should look something like this.



The Wrapup

I've been using mumble now for a few months, and I've been quite happy with it. I've had as many as 4 chatters on simultaneously without any problems. I've appreciated the ability to change the amount of bandwidth being used by each person (in each direction none the less), its ease of use. It is currently my favorite voice chat client and server combo.

Just know that as long as your server is running (or the murmer/ventrillo service is running), that the chat server is live, even if you're not connected to it. I usually leave it turned off when I'm not using it, but you can use it however you'd like.

So there you have it. You now have two very reliable voice chat server options that are completely free at your disposal. You can use them however you'd like. From virtual meetings, to gaming, and to commentating, it should have you covered.

Cheers!

No comments:

Post a Comment