Version 4.0.0
Critical Alert!
There is a critical bug which prevents this version from working on all non-Windows platforms. Dissonance 4.0.1 is now available on the asset store with a fix for this issue, please upgrade as soon as possible.
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.
Integrations
SALSA Lip Sync
Upgrade Available!
Playmaker
Upgrade Available!
Forge Remastered
Upgrade Available!
Forge
Photon Unity Networking
UNet (HLAPI)
UNet (LLAPI)
Photon Bolt
Upgrade Available!
New Features
- New Microphone API allows custom microphone capture scripts for interfacing with platform specific audio APIs
- New remote Rooms API exposes which rooms remote players are listening to
- Changed menu item from
Windows > Dissonance > Welcome Window
toWindows > Dissonance > Integrations
- Added a new method for custom network scripts to signal fatal errors
- Added
VoicePlaybackState:SpeakerPriority
which fetches the current priority a player is speaking with - Compiled iOS binaries with bitcode
Bug Fixes
- Handling the case when a network client connects even when it is already connected with a different network connection
- More robustly handling HLAPI clients timing out (preventing a potential server crash and restart)
- Fixed UWP build not passing app store certification
Known Issues
- Will not run on any non-windows platforms. Expect a runtime error for MacOS, Linux and Android. Expect a build error for iOS.
- No Acoustic Echo Cancellation (Work in progress - Contact us if you're interested in testing this)