Difference between revisions of "Planned Features"

From Mumble Wiki
Jump to: navigation, search
Line 13: Line 13:
 
== TODO for 1.2.0 ==
 
== TODO for 1.2.0 ==
  
 +
* Visual Leak Detector
 +
* Use an enum instead of strings for the NameMap etc.
 
* <= 10ms audio frames on *nix.
 
* <= 10ms audio frames on *nix.
 
* Merge duplicate code from the Source-based plugins
 
* Merge duplicate code from the Source-based plugins

Revision as of 13:24, 15 August 2009

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

  • Visual Leak Detector
  • Use an enum instead of strings for the NameMap etc.
  • <= 10ms audio frames on *nix.
  • Merge duplicate code from the Source-based plugins
  • 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.
  • CELT-48k.
  • Comments
  • 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).
  • s/Player/User/
  • 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?
  • OnlyAcceptWhispersFromFriends
  • 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
  • XInput instead of XEvie.
  • Crash reporting
  • Channel Add/Edit Dialog

Current snapshot testing focus

TODO for statistics

  • Migrate to PDO
  • Add murmur stats
  • Add caching
  • Look for fancy pie-like stuff like jgraph, etc