Mangler 1.2.5 is now available
9Mangler 1.2.5 is available and fixes some minor build issues. Some version strings in the code were not updated and the $CC build variable was not being honored for creating binary versions of the PCM sound files for notifications.
Mangler 1.2.4 Is Released
2This minor release fixes a problem affecting users that do not have a Logitech G15 keyboard. If Mangler was compiled with G15 support, but a G15 keyboard was not connected, the program would hang when it tried to update the display. Thanks to William Waghorn for submitting the fix.
Mangler 1.2.3 Is Released
0Mangler 1.2.3 is a minor update that replaces the deprecated CELT codec with the new Opus codec for low latency voice transmission. The CELT codec experiment has completed and it has culminated in the release of a new IETF standard:
As you hopefully all already know, the experimental celt codec has evolved into Opus, a standard endorsed by the IETF codec working group. We now have packages of Opus available in Sid, which I’d like to encourage you all to move to now, as quickly as we possibly can.
The Opus codec (which is the default used by mumble) is vastly superior to all of the codecs offered by Ventrilo. It is a true low latency codec, requires less bandwidth, and sounds much better.
I speak for all developers of Mangler when I say: “Don’t use our software: Use Mumble.”
Samsung Transmission Problems Resolved
0Thanks to a very generous user, I received a Samsung Captivate phone to debug the problem of not being able to transmit. I have since resolved the problem and Samsung phones should be able to transmit just fine. This particular bug may have affected other phones as well.
[What follows is technical, so close your eyes until you’re done reading if you don’t want to hear it]
Samsung phones had an extremely high minimum audio buffer size. The likely reason for this is to preserve battery. When you lower the buffer size, it requires more CPU interrupts to handle the audio. This means lower buffers results in faster battery drain. Unfortunately, Ventrilo servers with very low sample rates (8kHz and 11.025kHz) require extremely low buffer values. For example, Speex @8kHz quality 10 requires a 1920 byte buffer. If the minimum buffer is larger (which for Samsung it is), too much data gets buffered and the server rejects the audio packet.
The minimum buffer at 8kHz on a Samsung phone is 4160 bytes. Our solution to this is to record at the lowest available sample rate and then downsample the recording to the rate required by the Ventrilo protocol. Sadly, this will probably increase battery drain since downsampling is fairly CPU intensive. It is worth noting that if this problem is ever resolved on Samsung phones, Mangler will automatically detect it and this process won’t be necessary. On non-Samsung phones, this is not an issue.
[You can open your eyes now, the tech talk is over]
Mangler 1.0.2 is now released and it addresses this issue. You should be able to talk just fine on any server. If you do run into a problem, I am currently in possession of a Samsung phone and I am able to test.
As always, if you need support with a problem, please post in the forums using the link below rather than post in the comments of this post. Posts in the forums will notify our IRC channel. Comments on this blog post will not.
Join the forum discussion on this post
Mangler Added to Debian Repositories
2Thanks to the work of Vincent Cheng, Mangler has been added to the Debian repositories. Packages are now available for Debian SID via the normal software installation process.
Ubuntu 11.10 has also picked up the package for inclusion, so the next release of Ubuntu will be able to use Mangler without having to deal with adding a PPA, compiling from source, or downloading the package manually.
I’m told that Linux Mint 12 will also include the package as part of the standard repositories as well.
Thanks again to Debian developer Vincent Cheng for getting this pushed through.
I’ve not heard a any word from a Fedora or OpenSUSE developer, so I’m not sure what (if any) progress is being made on those operating systems.
Samsung Users: Good News and Bad News
2An extremely generous user donated a Samsung Captivate (a.k.a. Galaxy S) phone for development! We now have the ability to test functionality on these phones, which is awesome. That’s the good news.
The bad news is that my initial testing didn’t show any problems at all. I’m able to transmit and receive just fine using a brand new Captivate. So, please use the forums (not the blog comments) to describe the problems you’re having and I’ll try to recreate the issues. Please include as much detail as possible about your phone so we can narrow down the problem.
Also include information about your server: Most importantly, what codec and sample rate is it using?
Update: It appears that Samsung phones cannot transmit in Speex 8kHz channels. We’ll get this fixed as soon as possible. It appears that Samsung’s minimum buffer size for audio is 4160 bytes of data, however a Ventrilo packet at 8khz is only 1920 bytes of data. Because the Samsung phone cannot provide a small enough buffer for audio data, it cannot transmit to servers that use really low codec rates. For now, the workaround is to ask your server administrator to change the code to a higher sample rate. Speex @16khz should work fine.
Join the forum discussion on this post
Mangler 1.2.2 for Linux Is Now Available
1Mangler 1.2.2 is released in source format to address some minor bugs and add a minor feature. In this version, the client now has an input gain slider bar in the audio settings window. Additionally, multiple TTS messages should no longer cause a crash.
Binary versions of 1.2.2 are not currently available, but the source code can be downloaded from the Download page.
If you’re an Ubuntu user, you should start loudly complaining to the Ubuntu team to have Mangler included in the Ubuntu repositories. Going forward, we will not be supplying Debian packages.
Ventrilo client for iPhone may be in Cydia any day now
8Someone popped in the #mangler channel on IRC and said he was going to release the GPL version of Ventafone on Cydia. He wanted to clarify the terms of the GPL and make sure he was in compliance. This is great news, because Daniel is a slacker and he’s the only one with the hardware to work on it.
So here was the question that was posed in IRC:
<Rescue9> I've built an iPone version from the SVN. it includes the source code in the binary. I'm going to publish my repo to cydia. As long as the source is packaged with he binary I'm complying with the GPL. What else should I do to remain complaint with the GPL
I’m sorry I wasn’t there to respond to you Rescue9, but since you’ve taken it upon yourself to pick up Dan’s slack, the answer is yes! Distribution via Cydia is perfectly acceptable since the binaries can be redistributed freely. You don’t have to package the source code with the binary, but if you have that option, I would certainly recommend it.
If you make any changes to the source, you will certainly need to redistribute those changes if you also redistribute the binary. If you want to permanently maintain and support the iPhone version, I have no problem with you working with us on this either. If you want to commit your changes to our SVN repo, we can work out that arrangement as well.
It’s also important to make sure that Forwardcode, LLC is given credit for their work on porting the code to the iPhone in the first place. We certainly had no intentions of doing so. While the Ventafone application is based on the Mangler code, I’m sure they put in a lot of effort to port it over (and I pity them for having to decipher my hideous code).
My only issue with claiming the iPhone app as part of our project is that the name could possibly be considered a trademark violation. If we can find people that are willing to permanently support this, we can probably come to an agreement with all parties involved to make sure there is no confusion in the name of the app.
So again, Rescue9, feel free to stop by the channel any time.
Update: There is a cydia repo available at http://corridor9.net/cyrepo
We found this via . I can’t guarantee this software is free of malware or anything like that. It sounds like he is not planning to maintain this, so if someone wants to come in and take up that task, there’s still a position avaialble.
Preemptive Notice for Windows Phone 7 Developers
5For any Windows Phone 7 (WP7) developer that gets the grand idea to port Mangler and/or libventrilo3 over to WP7, please be aware that you will be in violation of the GPLv3 as well as Microsoft’s WP7 App Store terms of service if you attempt to distribute this through the Microsoft App Store.
Just to be incredibly clear:
You cannot write a Ventrilo application for WP7 using Mangler’s libventrilo3 library with plans to release this software on Microsoft’s App Store. When we find this software published, we will have it removed.
Apple has obfuscated the fact that the GPLv3 is not compatible with their developer terms of service. Microsoft has explicitly stated that this license is not compatible.
If you want to publish an open source version of a Ventrilo client using our code base and distribute it outside of the Microsoft App Store, that would be perfectly acceptable (the same is true for Apple devices, by the way) as long as it conforms to the terms of the GPLv3 under which both Mangler and libventrilo3 are licensed.
iPhone Users Come Out of the Woodwork to Complain
22The comments on our post about the Ventafone app violating our license are priceless. They range from people complaining about the GPL to people not understanding a thing about the GPL. One commenter said that the GPL was intended to prevent us from actually enforcing the GPL. I’m not sure how that works, but we got a good chuckle out of that anyway.
Before I give a status update on the iPhone issue, let’s get a refresher course on why this project exists in the first place. For years, Windows and Mac users have completely ignored their Linux gaming brethren. Linux users have spent countless hours trying to get the official Ventrilo program working under Linux with various levels of success. If the users of Ventrilo had decided to care in the slightest about cross-platform voice communications programs, they would have switched to Mumble (BSD licensed)… or even Teamspeak (which has Linux support, even if it is crappy).
Anyhow, Luigi Auriemma wrote a GPL implementation of the the Ventrilo call-home and encryption algorithm which is required for any implementation of the Ventrilo protocol. That code was the basis for the beginning of Spux (which, by necessity was GPL) by Michael Sierks and Cris Favero, which helped spawn the development of our little project here. Even if Luigi’s code hadn’t been GPL, we would have licensed our app as GPL anyway… but either way, we’re obligated to use the same license for our work.
I’m not sure exactly how many people have contributed code, testing, or other effort to Mangler. I’m sure it’s over 10 and probably over 20. Each of those contributors has put in time and effort to make up for the fact that Windows and Mac users did not care about their friends that run Linux. Daniel and I spent every waking moment — that we weren’t at work or sleeping — of 3 months studying and documenting the protocol, writing code, and testing… three months of staring at voice packet hex dumps fly by the screen trying to decipher what every single byte represented. For three months we spent over 8 hours each weekday and 16 to 18 hours per day on weekends working on this. We did this not because we wanted people to use Ventrilo; we did this because Linux users needed it. We did this because we care more about our fellow Linux users than their actual online gaming friends who easily could have switched to a demonstrably better and cross-platform solution.
So that was a bit over a year ago and here we are today. I find it incredibly amusing that users of closed systems are coming to us to give them access to a proprietary application that we clearly despise. And when we tell them no, they get mad and insult us — we’re dorks, losers, linuxtards. Perhaps you should be going to Flagship (the developers of Ventrilo) and demand the application from them. The fact that iPhone users are complaining to us Linux users that we won’t “allow” our code on their preferred platform is fascinating. Welcome to the world us Linux users lived in for years while you ignored us.
But it’s really not a matter of us allowing our code on the iPhone platform — in fact, we do allow it. The only matter of contention is the distribution. The source code to the iPhone version — contributed by Forwardcode, LLC — is in our SVN repository and it’s almost ready for distribution on Cydia. The fact of the matter is that even if we wanted to, we could not release our software on the iTunes App store. We are stewards of code for the community. The code is not ours to relicense and distribution on the App store is in violation of said license. In turn, it is an affront to every single person who has contributed to our project with the expectation that it was licensed under the GPL.
So iPhone users, here is your answer: Jailbreak your phone if you want to use our software, because we absolutely will not allow distribution via the App store unless Apple modifies the distribution terms of the store to comply with the GPLv3.