Voice data is automatically transmitted and replayed without any title effort whatsoever. The GamerPrivileges.AllowCommunication property enables you to see which players are allowed to send voice data. The LocalNetworkGamer.EnableSendVoice method allows a game to programmatically specify which players can talk. Titles can use this to implement team chat or proximity voice. The XNA Framework does not expose direct program access to the voice data stream.
There are three Boolean properties exposed to query the voice status of another player:
- Do they have voice access? NetworkGamer.HasVoice
- Are they currently talking? NetworkGamer.IsTalking
- Are they muted? NetworkGamer.IsMutedByLocalUser
These properties allow games to display voice-related information in the user interface. One example would be flashing the name of the player who is currently talking.