Dissonance 4.0.0 Release
This release brings two new features to Dissonance.
Custom Microphone Capture Scripts
With custom microphone capture scripts it's possible to write a new script which captures audio data and feeds it in to Dissonance. This allows platform specific microphone implementations which can access special features such as super low latency audio capture, special effects or acoustic echo cancellation. To write one of these scripts create a new MonoBehaviour which implements the IMicrophoneCapture
interface and attach it to the same gameObject as the DissonanceComms
component.
Remote Rooms API
We've added some new properties which expose which rooms remote players are listening to. There are several ways to acccess this data:
- Access the
VoicePlayerState:Rooms
property for a list of which rooms that specific player is listening to - Subscribe to the
VoicePlayerState:OnEnteredRooms
andVoicePlayerState:OnExitedRoom
events to receive an event when that specific player starts or stops listening to a room - Subscribe to the
DissonanceComms:OnEnteredRooms
andDissonanceComms:OnExitedRoom
events to receive an event when any player starts or stops listening to a room
These changes involve two very small breaking changes to custom network scripts using the ICommsNetwork
interface. The events Action<RoomEvent> PlayerEnteredRoom
and Action<RoomEvent> PlayerExitedRoom
have been added to the interface, these events should fire when a player starts and stops listening to a room. If your custom network layer does not support rooms simply never raise the events.
See the full release notes for this version here.