Xamarin.Agora.Voice.iOS 2.3.0

Xamarin bindings to the native iOS Agora.io Voice SDK.

There is a newer version of this package available.
See the version list below for details.
Install-Package Xamarin.Agora.Voice.iOS -Version 2.3.0
dotnet add package Xamarin.Agora.Voice.iOS --version 2.3.0
<PackageReference Include="Xamarin.Agora.Voice.iOS" Version="2.3.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Xamarin.Agora.Voice.iOS --version 2.3.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

v2.3.0 (Released Aug 31st, 2018)
Before Reading
An Accelerate.framework library was added to the SDK in v2.3.0, which is capable of large-scale mathemetical computations and image calculations, optimzed for high performance.
The security keys are improved and updated in v2.1.0. If you are using an Agora SDK version earlier than v2.1.0 and wish to migrate to the latest version, see Token Migration Guide.
New Features
1. Notifies the user that the Token will expire in 30 seconds
The SDK returns the tokenPrivilegeWillExpire callback 30 seconds before a Token expires to notify the app to renew it. When this callback is received, you need to generate a new Token on your server and call renewToken to pass the newly-generated Token to the SDK.

2. Returns user-specific upstream and downstream statistics, including the bitrate, frame rate, packet loss rate and time delay
The audioTransportStatsOfUid callback is added to provide user-specific upstream and downstream statistics, including the bitrate, frame rate, and packet loss rate. During a call or a live broadcast, this callback is triggered every two seconds after the user receives audio packets from a remote user. The callback includes the user ID, audio bitrate at the receiver, packet loss rate, and time delay (ms).

3. Sets the SDK’s Control over an Audio Session
The SDK and app both have control over the audio session. However, the app may restrict the SDK’s control over an audio session and allow another app or a third-party component to control it by using the setAudioSessionOperationRestriction method. You can implement different levels of control by choosing the corresponding restriction. You can call this method before or after joining the channel.

Improvements
Improved the quality for one-on-one voice/video scenarios with optimized latency and smoothness, especially for areas like Southeast Asia, South America, Africa and Middle East.
Improved the audio encoder efficiency in a live broadcast to reduce user traffic while ensuring the call quality.
Improved the audio quality during a call or a live broadcast using the deep-learning algorithm.
Issues Fixed
Crashes after publishing streams from some iOS devices.
Occasional crashes on some iOS devices.
Crash when a user frequently mutes and resumes all sound effects on some iOS devices.
Excessive increase in memory usage associated with a host when he/she frequently joins and leaves a channel of multiple delegated hosts.
Occasional issue that the remote user cannot hear the host when the host swithces to AUDIENCE and then back to BROADCASTER.
Occasional issue on some iOS devices that a user fails to hear any sound after returnning to the channel from a system phone call.
The audience cannot adjust the channel volume on some special occasions.
Occasional crashes when a user frequently joins and leaves the channel.
Occasional crashes when one of the two broadcasters mutes or disables the local audio while playing the background music.
Occasional crashes on the iOS device when the device interoperates with the web and when a Web user frequently joins and leaves a channel.
Occasional crashes on some devices when preloading the sound effects.
Occasional failure to interoperate between an iOS and a macOS device.
Occasional crashes on some iOS devices when a user leaves the live broadcast channel while playing music using a third-party application.
Occasional crashes on some iOS devices when leaving the channel.
Occasional echoes when using a specific audio card.
Failure to adjust the volume on some iOS devices.
API Changes
To improve user experience, Agora has cleaned up and made the following changes to its APIs:

To avoid adding too many users with the same UID into the CDN publishing channel, the following APIs are added in v2.3.0:

addUser
removeUser
The following APIs are deleted and no longer supported in v2.3.0. Agora provides the Recording SDK for better recording services. For more information on the Recoding SDK, see Release Notes for Agora Recording SDK.

startRecordingService
stopRecordingService
refreshRecordingServiceStatus
The following deprecated APIs are deleted and no longer supported from v2.3.0:

setSpeakerphoneVolume
Backwards Compatibility Breaking Changes
None.

Known Issues and Limitations
To use the startAudioMixing API, ensure that the iOS device is 8.0 or later.
Encryption does not interoperate with the Web SDK (based on Web RTC).
Bluetooth on iPhone 8 is not supported.

origin: https://docs.agora.io/en/2.4/product/Voice/Product%20Overview/release_ios_audio

Dependencies

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
3.0.1.3-beta1 70 6/9/2020
3.0.1.2 78 6/9/2020
3.0.1.1 48 6/8/2020
3.0.1 60 6/2/2020
3.0.1-beta1 63 6/2/2020
3.0.0.2 65 5/20/2020
3.0.0.2-beta1 66 4/29/2020
3.0.0-beta2 93 3/27/2020
3.0.0-beta1 81 3/5/2020
2.9.1 499 10/9/2019
2.9.1-beta1 113 10/2/2019
2.9.0.1 654 8/18/2019
2.8.0 169 7/21/2019
2.4.1.1 155 7/20/2019
2.4.1.1-beta1 112 7/4/2019
2.4.0.1 289 4/5/2019
2.4.0-beta2 148 4/4/2019
2.4.0-beta1 158 4/4/2019
2.3.3 229 1/31/2019
2.3.3-beta1 159 1/31/2019
2.3.1 274 10/25/2018
2.3.0 329 9/4/2018
2.2.3 428 7/10/2018
2.2.2 438 6/22/2018
2.2.2-beta3 346 6/25/2018
2.2.1 311 6/1/2018
2.2.0 396 5/21/2018
2.2.0-beta1 309 5/21/2018
2.1.4-beta1 327 1/23/2018
2.1.3 319 4/23/2018
2.1.2.2 307 4/12/2018
2.1.2 409 4/10/2018
2.1.1 381 3/19/2018
2.1.0.2 390 3/9/2018
2.1.0 358 3/8/2018
2.0.3 381 12/18/2017
2.0.2.2 320 12/18/2017
2.0.2 360 12/15/2017
2.0.2-beta1 403 12/15/2017
1.14.0 334 10/24/2017
1.14.0-beta1 286 10/24/2017
1.13.1.1-beta1 287 9/29/2017
1.13.1 322 9/29/2017
1.13.1-beta1 282 9/29/2017
1.13.0 357 9/13/2017
1.13.0-beta1 294 9/12/2017
1.12.0 362 8/18/2017
1.12.0-beta1 309 8/18/2017
1.11.1.1 371 7/12/2017
1.11.1.1-beta1 339 7/12/2017
1.11.0.1 394 6/16/2017
1.11.0.1-beta1 322 6/16/2017
1.10.0.1 350 5/25/2017
1.10.0.1-beta1 331 5/25/2017
1.10.0-beta2 387 5/25/2017
1.9.1.2 367 5/22/2017
1.8.0.6-beta3 332 2/3/2017
1.8.0.6-beta2 339 1/30/2017
1.8.0.5 435 1/14/2017
1.8.0.5-beta1 341 1/27/2017
1.8.0.4 412 1/10/2017
1.8.0.3 412 1/10/2017
1.8.0.2 463 1/9/2017
1.8.0.1 436 1/5/2017
Show less