These are things that are planned added 'some time in the future'. Please try Mumble out before you comment on any of the ideas below.
If you want to help out with any of the below, great! Be aware that the mumble code is changing all the time, so please drop by the forums and let us know if you want to work on something so we avoid duplicate efforts.
Make SURE you are constantly updating to the latest snapshot of Mumble! Find it here: http://mumble.info/snapshot
TODO for 1.2.X
- Improve usability a lot
- Put Qt 4.5 translation comments in more places, to show context of translation message.
- Add session awareness (.D0T)
TODO for 1.2.0
- <= 10ms audio frames on *nix.
- Merge duplicate code from the Source-based plugins
- Spread trylock() for plugins out in time; one try per second instead of 10 every 10 seconds.
- Channel Add/Edit Dialog (.D0T)
- CoreAudio audio in/output for Mac OS X [krejler]
- Automatic overlay injection on Mac OS X [krejler]
- Pretty ConfigDialog on OSX. [krejler]
Done for 1.2.0
- Do a version exchange client<=>server. Export over Ice.
- Protocol Buffer based network protocol. Start merging everything into the PlayerState, ChannelState etc packets. The server should wipe fields it doesn't know about.
- Drop packet type etc from UDP, make it use it's own protocol, and have "TCP mode" be a "UDP tunnel packet" message.
- Associative key-based storage DB.
- Allow third-party "key/value" stored.
- Add a "context" for plugins, being a 32-byte array or somesuch. Players need identical context to get positional audio of each other.
- Add a "identity" for plugins, to be transmitted to the server.
- Multichannel echo cancellation.
- G15 for OSX.
- Client-certificate based authentication.
- Friends list -- recognize your friends (works across servers).
- Switch to TCP mode if no ping packets work within the first 20 seconds, and switch back if it gets fixed.
- Add additional datafields to the banlist editor
- Make address be 2 x quint64 instead of 16 x char, and make it be hashable etc.
- Automatic plugin updates.
- User unregistration
- more formats for event sounds
- VoiceTarget message, use those 5 bits of the UDP type to differentiate Speech, AltSpeak and <target at specific user/channel>-speak.
- Upload textures from the client.
- If selfgen cert, and meta has a proper cert for the same host, use meta's instead.
- Give logical names to everything in the UI. Skinners currently use names like "groupBox_2", which is a bit error prone when we change the gui.
- QDesktopServices::storageLocation to replace getenv etc?
- Multibind support for murmur, and IPv6.
- Per-server config storage for whisper targets.
- Fix ASIO.
- Try adding a 11x binary alongside the 1.2.0.
- Presets (import config)
- Access Tokens (aka password-protected channels)
- Temporary channels
- LAN discovery (Bonjour)
- Add buffering for broken WASAPI drivers.
- Provide layout presets
- Improve forced shutdown behavior
- Sorting channels
- Suppress state for the client
Current snapshot testing focus
TODO for statistics
- Migrate to PDO
- Add murmur stats
- Add caching
- Look for fancy pie-like stuff like jgraph, etc