Difference between revisions of "Planned Features"

From Mumble Wiki
Jump to: navigation, search
m (Reverted edits by Slicer (Talk) to last version by DD0T)
Line 8: Line 8:
  
 
* Put Qt 4.5 translation comments in more places, to show context of translation message.
 
* Put Qt 4.5 translation comments in more places, to show context of translation message.
* DIRECTINPUT_NOTIFICATION_DEVICEPLUG (DInput9)
 
  
 
== TODO for 1.2.0 ==
 
== TODO for 1.2.0 ==
  
 +
* 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.
 
* <= 10ms audio frames on *nix.
 
* <= 10ms audio frames on *nix.
 +
* VoiceTarget message, use those 5 bits of the UDP type to differentiate Speech, AltSpeak and <target at specific user/channel>-speak.
 
* Provide layout presets (.D0T)
 
* Provide layout presets (.D0T)
 
* change forced shutdown behaviour (.D0T)
 
* change forced shutdown behaviour (.D0T)
 
* Sorting channels (.D0T)
 
* Sorting channels (.D0T)
 
* LAN discovery (.D0T)
 
* LAN discovery (.D0T)
 +
* "Easy" speech detection.
 
* Presets
 
* Presets
 
* Merge duplicate code from the Source-based plugins
 
* Merge duplicate code from the Source-based plugins
Line 23: Line 25:
 
* Automatic overlay injection on Mac OS X [krejler]
 
* Automatic overlay injection on Mac OS X [krejler]
 
* Pretty ConfigDialog on OSX. [krejler]
 
* Pretty ConfigDialog on OSX. [krejler]
* Add buffering for broken WASAPI drivers.
+
* QDesktopServices::storageLocation to replace getenv etc?
* Try adding a 11x binary alongside the 1.2.0.
 
* Per-server config storage for whisper targets.
 
  
 
== Done for 1.2.0 ==
 
== Done for 1.2.0 ==
Line 49: Line 49:
 
* User unregistration
 
* User unregistration
 
* more formats for event sounds
 
* 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.
 
  
 
== Current snapshot testing focus ==
 
== Current snapshot testing focus ==

Revision as of 15:21, 3 July 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

  • Put Qt 4.5 translation comments in more places, to show context of translation message.

TODO for 1.2.0

  • 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.
  • <= 10ms audio frames on *nix.
  • VoiceTarget message, use those 5 bits of the UDP type to differentiate Speech, AltSpeak and <target at specific user/channel>-speak.
  • Provide layout presets (.D0T)
  • change forced shutdown behaviour (.D0T)
  • Sorting channels (.D0T)
  • LAN discovery (.D0T)
  • "Easy" speech detection.
  • Presets
  • Merge duplicate code from the Source-based plugins
  • Add UserExtended to Ice, and shrink down User a bit.
  • CoreAudio audio in/output for Mac OS X [krejler]
  • Automatic overlay injection on Mac OS X [krejler]
  • Pretty ConfigDialog on OSX. [krejler]
  • QDesktopServices::storageLocation to replace getenv etc?

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

Current snapshot testing focus

TODO for statistics

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