Releases: 4Players/odin-sdk
Releases · 4Players/odin-sdk
1.3.0
New Features
- Added support for Windows on ARM
- Refactored internal jitter buffer for improved overall reliability
API Changes
- Updated
OdinAudioStreamStats
struct- Renamed
jitter_packets_processed
topackets_processed
- Renamed
jitter_packets_dropped_too_early
topackets_arrived_too_early
- Renamed
jitter_packets_dropped_too_late
topackets_arrived_too_late
- Renamed
jitter_packets_lost
topackets_lost
- Added
packets_total
- Added
packets_invalid
- Added
packets_repeated
- Renamed
- Removed
odin_audio_data_len
Bugfixes / Improvements
- Enabled FEC feature for Opus encoder/decoder
- Switched Opus encoder application mode from Audio to VoIP when working with single channel streams
- Fixed initial values for time and sequence number in audio datagrams
- Fixed a bug where malformed audio datagrams could lead to delayed audio playback
1.2.2
New Features
- Added several diagnostic functions to help with on-premise server setups
API Changes
- Added
OdinConnectionStats
struct - Added
OdinAudioStreamStats
struct - Added
odin_room_connection_stats
- Added
odin_audio_stats
Bugfixes / Improvements
odin_room_join
will now check token audience inOdinTokenOptions
and connect to gateway or SFU accordingly
1.2.1
Bugfixes / Improvements
- Improved error messages for connection problems
- Fixed a potential crash when an internal event was called while shutting down
1.2.0
General
- Updated test console client
API Changes
- Added
OdinRoomConnectionState_Disconnecting
- Added
own_user_id
andown_user_id_len
toOdinEvent_JoinedData
Bugfixes / Improvements
- Improved internal shutdown process to prevent media handles from being removed too soon
- Fixed an issue where a room handle could become unresponsive after a timeout
1.1.1
Bugfixes / Improvements
- Fixed an issue where iOS clients were unable to access local root certificates
1.1.0
General
- Updated test console client
New Features
- Added gain controller to bring the input audio signal to an appropriate range when it's either too loud or too quiet
API Changes
- Added
gain_controller
boolean toOdinApmConfig
struct - Updated
odin_error_format
to make error messages more specific - Updated
odin_room_update_user_data
to return an error when trying to set user data of the room while not being connected
Bugfixes / Improvements
- Fixed a bug where peer user data was not set after re-connecting to a room
- Fixed a bug where peer position was not set correctly before joining a room
1.0.1
Bugfixes / Improvements
- Fixed an issue with conflicting symbols for Unreal Engine builds
1.0.0
General
- Improved overall reliability by adding an internal mechanism to re-establish a connection to the ODIN server on timeouts
- Updated test console client to properly handle reconnects
- Removed the internal media ID from the API in favor of media handles (internal IDs can still be retrieved using
odin_media_stream_media_id
for reference while the media stream is added to a connected room)
New Features
- Added a generic resampler for situations where your audio pipeline doesn't support 48 kHz (one resampler instance should be used exclusively per audio stream)
API Changes
- Added
odin_resampler_create
- Added
odin_resampler_process
- Added
odin_resampler_destroy
- Added
odin_room_close
to ensure a clean disconnect before callingodin_room_destroy
- Changed type of
OdinReturnCode
from unsigned to signed integers - Replaced
media_id
andstream
properties withmedia_handle
inMedia*
event data - Removed unused
None
event tag
Bugfixes / Improvements
- Fixed a bug where
odin_audio_mix_streams
was only outputting the last media stream - Fixed a possible deadlock when calling API functions within event handlers
- Added missing null terminator to room ID and customer strings
0.7.1
Bugfixes / Improvements
- Fixed a crash when running Rosetta 2 translated Intel binaries on Apple Silicon Macs
0.7.0
General
- Updated test console client to store auto-generated access keys so we're not generating a new demo key on every use
New Features
- Added a volume gate to measure if the user is speaking loud enough to actually send voice data, which can be very useful in noisy environments
API Changes
- Extended
OdinApmConfig
with more options to configure voice activity detection (VAD) behaviorvoice_activity_detection
now enables or disables usage of the smart speech detection algorithmvoice_activity_detection_attack_probability
defines the speech probability required to start transmitting
(recommended value:0.9
)voice_activity_detection_release_probability
defines the speech probability that must be fallen below to stop transmitting
(recommended value:0.8
)volume_gate
now enables or disables measuring the volume of the input audio signalvolume_gate_attack_loudness
defines the root mean square power (dBFS) when the gate should engage
(recommended value:-30
)volume_gate_release_loudness
defines the root mean square power (dBFS) when the gate should disengage
(recommended value:-40
)
- Allowed to clear room event handlers using
odin_room_set_event_callback
by passingNULL
Bugfixes / Improvements
- Fixed a crash when resampling failed to initialize
- Fixed an issue where Linux builds had a requirement for the AVX2 instruction set