Developer Documentation

Classes

The Unity SDK consists of these classes:

Unity Components

You typically interact with these components directly in the Unity Editor. Check out the manual on how to use these components in the Unity editor.

ComponentDescription
OdinHandler
MicrophoneReaderHandles microphone input data and sends input to ODIN
PlaybackComponentHandles the Playback for received ODIN audio data.
PlaybackStats
OdinBanner

Utility Classes

Many of these classes are used internally or you rarely need to work with these.

ComponentDescription
NativeBindingsC# bindings for the native ODIN runtime
OdinExceptionException type for the native ODIN runtime
OdinLibraryMain lib entry class
OdinLibraryParametersA set of values that are used when initializing the native ODIN runtime
OdinMediaConfigODIN audio stream configuration
OdinRoomConfigAudio processing configuration of an ODIN room
Utility
MediaCollectionInternal collection of available media streams
MediaStreamBase stream
MicrophoneStreamRepresentation of a write only audio stream
PlaybackStreamRepresentation of a read only audio stream
OdinClientClient Wrapper for ODIN ffi OdinLibrary
OdinDefaultsODIN default configuration
PeerClient/Remote peer
PeerCollectionIntern peer dictionary
ConnectionStateChangedEventArgsArguments for ConnectionStateChanged events in the current room
MediaActiveStateChangedEventArgsArguments for MediaActiveStateChanged events in the current room
MediaAddedEventArgsArguments for MediaAdded events in the current room
MediaRemovedEventArgsArguments for MediaRemoved events in the current room
MessageReceivedEventArgsArguments for MessageReceived events in the current room
PeerJoinedEventArgsArguments for PeerJoined events in the current room
PeerLeftEventArgsArguments for PeerLeft events in the current room
PeerUserDataChangedEventArgsArguments for PeerUserDataChanged events in the current room
RoomMain Room
RoomCollectionIntern room dictionary
RoomConfigA set of values that are used when creating Rooms
RoomJoinEventArgsArguments for RoomJoin events right before the room is joined
RoomJoinedEventArgsArguments for RoomJoined events when the room was joined successfully
RoomLeaveEventArgsArguments for RoomLeave events right before the room handle is destroyed
RoomLeftEventArgsArguments for RoomLeft events when the room handle was destroyed
RoomUserDataChangedEventArgsArguments for RoomUserDataChanged events in the current room
UserDataOdin UserData helper for marshal byte arrays
ConnectionStateChangedProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
MediaActiveStateChangedProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
MediaAddedProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
MediaRemovedProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
MessageReceivedProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
PeerJoinedProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
PeerLeftProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
PeerUserDataChangedProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
RoomJoinProxyThis class provides the base functionality for ODIN SDK UnityEvents. A persistent callback that can be saved with the Scene.
RoomJoinedProxyThis class provides the base functionality for ODIN SDK UnityEvents. A persistent callback that can be saved with the Scene.
RoomLeaveProxyThis class provides the base functionality for ODIN SDK UnityEvents. A persistent callback that can be saved with the Scene.
RoomLeftProxyThis class provides the base functionality for ODIN SDK UnityEvents. A persistent callback that can be saved with the Scene.
RoomUserDataChangedProxyThis class provides the base functionality for UnityEvents based Room. A persistent callback that can be saved with the Scene. Unity Inspector event wrapper (UnityEvent)
UnityCreatedMediaObject
UnityDeleteMediaObjectUnity Inspector event wrapper (UnityEvent)
OdinEditorConfigUnityEditor UI component for instance config of Odin