mumble-voip / mumble

Mumble is an open-source, low-latency, high quality voice chat software.
https://www.mumble.info
Other
6.45k stars 1.12k forks source link

Support UDP proxies in supported configurations #3141

Open fwaggle opened 7 years ago

fwaggle commented 7 years ago

As reported by a user on Reddit, Mumble forces TCP mode via proxies even when the proxy should in theory support UDP tunnelling. It looks like since Qt-4.8 (which I think is our earliest supported version of Qt?), this is supported, but I haven't dug in to see what work is actually required to support it (at the moment it looks like, from a cursory search, that anything but "Direct Connection" in the proxy box forces the client to force TCP mode).

It should hopefully be as simply as querying the capabilities enum on QNetworkProxy for UdpTunnelingCapability, and forcing TCP if not. I think if we don't automatically force TCP, Qt's code should do most of the heavy lifting for us.

There's still lots that can go wrong, for example binding UDP ports can fail and so on, so it's probably a nightmare and not as simple as the user and I seem to think it is.

lexesv commented 7 years ago

I join. There is a UDP proxy, but there is no possibility to use it in a mumble