So you want to help with the Android thing…

We constantly get the question: “What’s the status on the android port?”

Well, it’s pretty much the same as it has always been. The NDK library exists and it needs a UI. We have tons of people asking us how they can help, which is great… but almost none of them ever follow up.

In short, if you do not already know Java, you’re probably not going to be much help. If you want to use this project to learn, that’s great and I encourage you to go for it. But someone learning Java and/or Anrdoid isn’t really what we need. That said, your contributions are always welcome.

If you do not understand the concepts of Java programming for Android, you’re probably not going to be much help, either. However, if you know Java then it shouldn’t be hard to make sense of the Anrdoid SDK if you are willing to put in the effort.

In any case, if you want to help, here is what you can do…

  • Check out the source from SVN at http://svn.mangler.org/mangler/branches/android/
  • Read the README
  • Add features and/or functionality in the code
  • Submit a patch via trac (or talk to us on IRC at irc.freenode.net in #mangler)
  • Have your name on the project’s developer list

The Android app needs a lead developer to take charge and make it happen. If you’re willing to do this, your effort would be much appreciated. Otherwise, the Android port remains mostly at a standstill.

Mangler 1.2.0beta1 now available for download

It’s been a long time since we released 1.0 — over 6 months. Today, we’re releasing the first beta of 1.2.0. Everyone is encouraged to upgrade. If you’re upgrading from 1.0, you’ll find that there are a lot of new features. Way too many to list them all. You can go through the previous news items to see the full list. For those of you that have been using our 1.1 developer snapshots, here is what’s newly available in 1.2.0:

  • OSSv4 support!
  • A new configuration file system. Your config file will be automatically migrated from ~/.manglerrc to a newly created directory of ~/.mangler
  • The “send silenty” option is available for setting comments
  • An on-screen display (overlay) is available
  • Support for the celt codec (note that the Windows/Mac client will not be able to hear this)
  • You can right click on the status icon to mute or quickly open the settings window
  • You can adjust the master volume by using the mouse scroll wheel on the status icon
  • The server ban list editor is available
  • The server properties editor is available
  • You can specify command line arguments to automatically connect to a server at startup
  • Channel mute is supported
  • User mute state is remembered
  • Ability to record to VRF format (compatible with the Windows/Mac client)
  • Some TTS notifications
  • G15 Keyboard support (requires g15daemon to be running)
  • User paging support
  • Many new, exciting and mysterious bugs were added!

Thanks to Haxar, Bob Shaffer, humbaba, Daniel Sloof, cesium, Mesreth, Roman Tetelman, FWishbringer and everyone else that contributed code, donations, provided feedback, and helped test for bugs. Without the community, this project would not have been possible.

Mangler 1.2 beta available on May 9th

On May 9th, we’ll be releasing Mangler 1.2 beta. There will be numerous new features available including a better UI, admin support, vrf recording and playback, ALSA and OSS support, chat, etc.

The list of new features is quite long, but I’ll save that for actual release. After we release the beta, we would like for all users to upgrade to the beta version and report bugs.

Logitech G15 LCD Support

Thanks to a handful of donations, I was able to purchase a Logitech G15 keyboard so I could add support for the LCD. I’ve got the technical details worked out of how to display stuff, but I’m not sure what is most useful to display.

The screen is 160×43, so there is very limited space. The “medium” font size is reasonable for quick information. The “small” font takes more than a glance and large font just doesn’t give enough characters per line.

I’ve come up with this (the top line is the “small” font and the others are “medium”):

LastXmit is the user that last transmitted something
SrvrJoin is the last user that joined the server
ChanJoin is the last user that joined your channel
Ping is the name of a duck in China

Or this style, which is really just an event log (I’m actually just showing off that I got the logo on there):

Certainly, the community can come up with better ideas… so post your thoughts here. For bonus points, draw a mockup in 160×43 (or at least to scale… like 320×86)

Gource shows Mangler’s Development

Mangler on Android… What’s the Deal?

Our Android port of Mangler is pretty much at a standstill. We are unable to find any Android/Java developers willing to work on the project. No one on our team is a Java developer — let alone an Android developer.

Dan has gotten our core lib and its major dependencies ported to the Andrdoid NDK and he has built JNI wrappers for the functions. In fact, last I heard, he could successfully connect to a server and send audio (a.k.a. noise) from his phone.

The missing ingredient at this point is a Java/Android developer to pick up the pieces and build a UI. Until someone volunteers, we’re pretty much stuck and/or moving at a snail’s pace. Dan and I have both reached out on the various Android forums and IRC channels looking for willing developers. So far, none seem to be interested.

Mangler Jukebox — A Ventrilo client that plays MP3s

As an example of what can be done with the libventrilo3 library, we’ve created the much requested jukebox bot that will play MP3s from your music library.

It’s not installed/compiled by default, it’s definitely not stable, and the only way to get it is to compile from source (and even then it takes some effort). The jukebox plays random songs from your music directory, allows users to search for songs, has volume control, and refuses to play Creed songs on principle.

You’ll need some additional libraries to get the jukebox working: libmpg123-dev libmpg123-0 libspeexdsp-dev libspeexdsp1

After the bot logs in, enter global chat with it and type: !start

Chat Commands:

!start -- start playing music
!stop -- stop playing music
!next -- play a new random track
!move -- move to your channel
!play [song/artist/file name] -- search for a song by filename and play the first random match
!volume [0-1] -- Set the volume to the specified level: ex: !volume 0.5

Usage:

mangler-jukebox \
    -h hostname:port \
    -u username \
    [-p password] \
    [-c channelid] \
    [-v volume_multipler] \
    [-s stereo; celt only] \
    /path/to/music

New Developer Snapshot: 1.1.20100227 is available

The 1.1.20100227 snapshot is available with the following new features:

  • Music player integration for Rhythmbox (show the currently playing song)
  • Voice activation for transmit
  • Support for setting a default channel at login. Right click on the channel and select “set default”
  • Allow custom ALSA device names to be entered
  • Fix clipping on amplification
  • Added a VU meter to show outbound transmission signal strength
  • Added a CLI jukebox client that will play MP3s to a channel and accept commands via global chat
  • Channel editor, user editor, and rank editor is available for admins
  • Many, many bugs were fixed
  • Many, many bugs were created

While the list may seem short, these features required quite a bit of work. I’d like to thank Haxar, Bob Shaffer, and Felyza Wishbringer for their efforts.

Dan is still plugging away at the Android port, but there’s still no ETA. If you know a Java developer, he sure could use the help.

New Developer Snapshot (1.1.20100116) Available

The latest developer snapshot is now available and contains the following new features:

  • Ability to compile libventrilo3 on Apple platforms
  • Added support for many admin functions in libventrilo3 (see the wiki for details)
  • Master volume control
  • Accessibility fixes for orca users
  • Per-user volume settings are saved across restarts
  • Channel passwords are saved across restarts
  • New admin button to log in as a server admin
  • Added an [ADMIN] flag if the user is logged in as a server admin
  • Added an [A] channel flag if you’re an admin on a specific channel
  • Admin users can drag/drop users into channels
  • Admin users can kick and ban users via right-click menu
  • Channel admins can move users between channels if they have appropriate access
  • Rank tags are prepended to the user’s name in the channel list
  • Users are now sorted alphabetically in the channel list
  • Added ability to mute a specific user via the right-click menu
  • Traffic statistics added to the server panel on the GUI
  • Private chat is available (work in progress… there’s some oddities on this one)
  • Added Mute Mic and Mute Sound checkboxes to the main GUI window
  • The Server Config is now split into tabs so it will be less cluttered
  • Auto-reconnect on disconnect and kick
  • Transmit button is now “sticky.” Pressing will toggle transmit.
  • Last, but certainly not least, support for direct ALSA access for audio

Polling Users for UI Thoughts…

So we’re ready to implement the Mute Sound and Mute Mic features in 1.1, but there’s some question as to how best to implement this in the GUI. We can either add this as an option under the menubar at the top or add this as checkboxes at the bottom. Here’s what the two would look like:


Minimal 1.1 With Checkboxes


Minimal 1.1 Without Checkboxes

Cast your vote in the right sidebar.