logo
On this page

Release Notes

2025-04-07

Version 3.22.0

Release Date: 2025-09-19

New Features

  1. Added engineUpdateState state notification callback for Android.

Related API please refer to engineUpdateState

Improvements

  1. Updated integrated Express Native SDK to version 3.22.0.

Version 3.20.2

Release Date: 2025-04-07

New Features

  1. Added real-time sequential data feature

    Developers can use real-time signaling for scenarios such as remote control and cloud gaming command distribution to receive publisher messages with low latency.

    Related APIs please refer to createRealTimeSequentialDataManager, destroyRealTimeSequentialDataManager, startBroadcasting, stopBroadcasting, sendRealTimeSequentialData, startSubscribing, stopSubscribing, receiveRealTimeSequentialData

Improvements

  1. Updated integrated Express Native SDK to version 3.20.2.

Version 3.19.0

Release Date: 2025-02-10

Improvements

  1. Updated integrated Express Native SDK to version 3.19.0.

Version 3.17.1

Release Date: 2024-10-15

New Features

  1. Added network mode change callback interface

    When the device's network mode changes, such as switching from Wi-Fi to 5G, or network disconnection, this callback will be triggered.

    Related API please refer to networkModeChanged

Improvements

  1. Removed default Screen sharing permissions declared in AndroidManifest.xml file

    Warning
    • If developers implemented Screen sharing functionality after version 3.17.0 without declaring permissions, they must now actively declare permissions after this update, otherwise compatibility issues will occur.

    • If you encounter compatibility issues in production, please contact ZEGOCLOUD technical support.

    To better comply with privacy regulations, the default Screen sharing permissions declared in AndroidManifest.xml have been removed. Developers need to actively declare them:

    • If the target Android SDK version is lower than 34.0.0, you need to set the FOREGROUND_SERVICE permission declaration.

    • If the target Android SDK version is 34.0.0 or later, you need to set both FOREGROUND_SERVICE and FOREGROUND_SERVICE_MEDIA_PROJECTION permission declarations.

    For details, please refer to the Screen sharing documentation.


Version 3.16.2

Release Date: 2024-08-16

New Features

  1. Added Android Screen sharing permission allowed and cancelled callbacks

    Related APIs please refer to mobileScreenCaptureExceptionOccurred, mobileScreenCaptureStart

Bug Fixes

  1. Fixed the issue where the camera could not be opened in certain scenarios on Android

  2. Fixed the issue where screen recording permission was not automatically stopped after the app was killed on certain Android devices

  3. Fixed an occasional crash issue when frequently publishing/stopping streams on iOS


Version 3.16.0

Release Date: 2024-07-30

Improvements

  1. Updated integrated Express Native SDK to version 3.16.0

  2. Added namespace configuration in build.gradle file for Android platform to support Gradle 8.0 and above

  3. About Screen sharing permission declaration on Android platform

    For flexible adaptation, if you need to use Screen sharing on Android SDK 34.0.0 and later versions, you need to set FOREGROUND_SERVICE and FOREGROUND_SERVICE_MEDIA_PROJECTION permission declarations in your business project.

Deprecations

  1. Deprecated CDN Plus configurations in stream playing interfaces

    Discontinued the CDN Live Streaming concept and deprecated CDN Plus live streaming related interfaces. For implementing live streaming functionality, we recommend using ZEGOCLOUD's self-developed Live Streaming product for a higher quality live streaming experience.

    Related API please refer to CDNPlus


Version 3.15.1

Release Date: 2024-06-18

New Features

  1. Added custom video capture feature

    Added custom video capture feature, supporting developers to capture video themselves and provide video data to ZEGO Express SDK, which then encodes and publishes the stream. When users enable custom video capture, by default, ZEGO Express SDK will render the local preview on the publishing side, so users don't need to render it themselves. For details, please refer to Custom video capture.


Version 3.14.5

Release Date: 2024-05-07

New Features

  1. Mobile development now supports iOS 17.0

    Note: Starting from this version, iOS 11.0 and earlier versions are no longer supported.

    Starting from 2024-04-29, all apps submitted to the App Store must support iOS 17.0. For details, please refer to Apple Developer website official announcement.

Improvements

  1. Updated privacy manifest file PrivacyInfo.xcprivacy in iOS SDK

    Note: If customers have integrated SDK versions prior to 3.13.2 and wish to publish to the App Store, they need to download the latest SDK and copy the PrivacyInfo.xcprivacy file to the corresponding location in the old SDK.

    Please upgrade the privacy manifest file PrivacyInfo.xcprivacy in the iOS SDK to the new version. For details, please refer to "PrivacyInfo.xcprivacy" in the "ZegoExpressEngine.framework" folder in the SDK package.

Bug Fixes

  1. Fixed the issue where parameters were empty when using Screen sharing on Android platform

Version 3.12.5

Release Date: 2024-03-13

Bug Fixes

  1. Fixed the issue where callbacks were not received after calling [createEngineWithProfile] interface multiple times on iOS platform

Version 3.12.4

Release Date: 2024-01-18

Bug Fixes

  1. Fixed an occasional UI freeze issue when initializing SDK on iOS platform if network exception occurred

  2. Fixed a very low probability UI freeze issue when switching networks if network exception occurred


Version 3.12.3

Release Date: 2024-01-08

Improvements

  1. Updated integrated Express Native SDK to version 3.12.3.

Version 3.11.0

Release Date: 2023-12-18

New Features

  1. Media player now supports transparent effects playback

    The media player supports playing transparent effect files by rendering the Alpha channel. For details, please refer to Play transparent gift effects.

    Related API please refer to loadResourceWithConfig


Version 3.10.3

**Release Date: 2023-11-20

Bug Fixes

  1. Fixed the issue where the sleep detection module on mobile devices reported false positives, affecting room re-login and stream publish/play retry logic

Version 3.10.2

Release Date:2023-11-17

New Features

  1. Added local media recording feature

    Developers can record audio and video streams as local files for future playback and other purposes. For details, please refer to Audio and video recording.

    Related APIs please refer to startRecordingCapturedData, stopRecordingCapturedData, capturedDataRecordStateUpdate, capturedDataRecordProgressUpdate


Version 3.10.1

**Release Date: 2023-11-09

Bug Fixes

  1. Fixed the black screen issue that occurred after enabling low-light enhancement

Version 3.8.1

Release Date: 2023-08-21

Improvements

  1. Updated integrated Express Native SDK to version 3.8.1.

Version 3.2.0

**Release Date: 2023-02-01

Improvements

  1. Custom signaling configuration now supports expansion to 4KB

    Note: The default size for custom signaling configuration is 1KB. If you need to expand to 4KB, please contact ZEGOCLOUD technical support for assistance.

Bug Fixes

  1. Fixed the crash issue caused by accessing null pointer when hardware decoder restarts after failure

  2. Fixed the issue where calling setDummyCapturelmagePath to set publishing static image when camera is disabled was invalid due to incorrect image width and height reading

  3. Fixed the crash issue when accessing non-existent APIs after starting engine on iOS 14

  4. Fixed the network time module retry failure issue


Version 3.1.0

Release Date:2022-12-14

New Features

  1. Added Screen sharing feature

    iOS Screen sharing is divided into in-app sharing and cross-app sharing, used for current app sharing and system-level app sharing respectively. If using cross-app sharing, you need to create a Broadcast Upload Extension process in the iOS native project for screen recording. For details, please refer to Screen sharing.

    Related APIs please refer to startScreenCaptureInApp, startScreenCapture, stopScreenCapture, updateScreenCaptureConfig

  2. Added Network quality callback

    Added local and remote users' uplink and downlink network quality callback onNetworkQuality, which reports the network status of local and each subscribed remote user every two seconds by default (including Unknown, Excellent, Good, Medium, Poor, and Network disconnected). When developers want to analyze network conditions on the link or understand the network status of local and remote users, they can use this feature.

    Related API please refer to onNetworkQuality

  3. Optimized NTP time error

    When calling getNetworkTimeInfo to get synchronized network time information, the SDK will periodically update NTP time to reduce the NTP time error obtained.

    Related API please refer to getNetworkTimeInfo

  4. When publishing directly to CDN, without changing the publishing method, the SDK pulls streams from the customer's CDN origin and distributes audio and video content to viewers through L3, controlling origin resources through ZegoStreamResourceMode. This feature is commonly used in live streaming scenarios

    Related API please refer to startPlayingStream

Improvements

  1. Optimized code specifications

    Changed the first letter of values in the ZegoOrientation enum to uppercase.


Version 3.0.3

Release Date:2022-11-28

Bug Fixes

  1. Fixed the issue where others in the room did not receive stream deletion notifications when stopping publishing stream in multi-room mode

  2. Fixed the potential crash issue when hardware decoder switches resolution on Android system

  3. Fixed the potential crash issue with hardware decoder on iOS platform


Version 3.0.1

Release Date:2022-11-09

Bug Fixes

  1. Fixed the issue where SDK callbacks could not be triggered after hot reload

Deprecations

  1. Removed deviceError event callback

    The device exception notification feature was deprecated in version 0.22.0 and removed in version 3.0.1. Please use localDeviceExceptionOccurred instead.

    Related API please refer to localDeviceExceptionOccurred


Version 0.22.0

Release Date:2022-10-13

New Features

  1. Added stream extra information

    Through the setStreamExtraInfo interface, you can set the stream extra information for the current publishing stream. Stream extra information is an additional identifier for the stream ID and can be modified during the publishing process of the corresponding stream ID. Developers can use stream extra information to implement synchronization of stream ID-related variable content.

    Related API please refer to setStreamExtraInfo

  2. Added the ability to take snapshots of publishing or playing stream screens

    Supports taking snapshots during stream publishing or playing, which can be used for scenarios such as content moderation.

    Related APIs please refer to takePublishStreamSnapshot, takePlayStreamSnapshot


Version 0.21.0

Release Date:2022-09-27

New Features

  1. Added more voice changer effects

    Added various voice changer effects such as foreigner, Optimus Prime, robot, ethereal, etc., making it easy to create unique sound effects and make users' voices more interesting. In voice scenarios, create a fun atmosphere between friends' voices and enhance entertainment.

    Related API please refer to setVoiceChangerPreset

  2. Added virtual voice changer and reverb features.

    Developers can implement some audio pre-processing effects based on the newly added virtual voice changer and reverb features.

    Related APIs please refer to setVoiceChangerParam, setReverbAdvancedParam

  3. Added audio equalizer (EQ)

    Added audio equalizer, supporting adjustment of gain values for 10 frequency bands to achieve tone adjustment.

    Related API please refer to setAudioEqualizerGain

  4. Added advanced reverb parameters and presets for reverb and voice changer

    Through advanced reverb parameters, you can adjust more fine-grained reverb effects as needed. Added effects such as studio, KTV, rock, concert to the existing preset reverb, and added magnetic male and fresh female voice effects to preset voice changers, increasing real-time voice fun and adapting to more scenarios.

    Related APIs please refer to setReverbAdvancedParam, setReverbPreset, setVoiceChangerPreset

  5. Added electronic music effects

    Electronic music effects refer to processing people's speaking or singing voices to have an electronic music effect. This feature is commonly used in KTV and voice chat room scenarios.

    Before initializing the SDK with createEngine, call the setElectronicEffects interface to enable electronic music effects, and set different electronic music modes and corresponding starting pitches as needed. If this interface is not called, electronic music effects are disabled by default.

    Developers can also use the setVoiceChangerPreset interface to preset common electronic music effects. Currently supports presetting C major electronic music effects, A minor electronic music effects, and harmonic minor electronic music effects.

    Related API please refer to setElectronicEffects

Improvements

  1. Optimized basic beauty effects feature

    ZEGOCLOUD provides a brand new basic beauty effects feature, presenting users with good skin condition and creating natural beauty effects.

    Developers need to call the startEffectsEnv interface to initialize the beauty environment before publishing streams, then call the enableEffectsBeauty interface to enable beauty features. Through the setEffectsBeautyParam interface, you can adjust the degree of whitening, smoothing, sharpening, and reddening as needed to achieve basic beauty capabilities.

    This feature is commonly used in video calls, live streaming, and other scenarios.

    Related APIs please refer to startEffectsEnv , stopEffectsEnv , enableEffectsBeauty , setEffectsBeautyParam


Version 0.20.0

Release Date:2022-08-02

New Features

  1. Added setAudioRouteToSpeaker interface for setting audio route to speaker

    Through setAudioRouteToSpeaker, you can set the audio route to the speaker. When choosing not to use the built-in speaker to play sound (i.e., set to false), the SDK will select the audio output device with the highest current priority according to system scheduling to play sound.

    Related API please refer to setAudioRouteToSpeaker

  2. Added getting current audio route type

    Through getAudioRouteType, you can get the current audio route type.

    Related API please refer to getAudioRouteType

  3. Added audio device route change notification callback

    When audio routing changes due to operations such as inserting/removing headphones, switching between speaker and receiver, this callback will be triggered.

    Related API please refer to audioRouteChange


Version 0.19.0

Release Date:2022-06-29

New Features

  1. Support for H.265 codec

    The complete H.265 codec solution is now available, suitable for single broadcaster live streaming and multi-person interactive live streaming scenarios. Developers can output H.265 format video streams when encoding or mixing streams. H.265 saves 30% traffic compared to H.264 at the same video quality. Before using this feature, you need to contact ZEGOCLOUD technical support to enable it.

    Related APIs please refer to isVideoEncoderSupported, isVideoDecoderSupported, enableH265EncodeFallback, publisherVideoEncoderChanged


Version 0.18.1

Release Date:2022-06-23

Bug Fixes

  1. Fixed the issue where the view parameter of startPreview and startPlayingStream functions was not optional, adjusted the view parameter to be optional.

    Related APIs please refer to startPreview, startPlayingStream


Version 0.18.0

Release Date:2022-05-18

New Features

  1. Added room extra message feature

    This feature can set an extra message per room. The message follows the entire lifecycle of the room, and every user logged into the room can synchronize the message. Developers can use it to implement various business logic, such as room announcements, etc. Currently, room extra messages only allow setting one key-value pair, with a maximum key length of 10 bytes and a maximum value length of 100 bytes.

    Related APIs please refer to setRoomExtraInfo, roomExtraInfoUpdate

  2. Added [setAllPlayStreamVolume] interface for setting all playing stream volumes

    Local users can control the playback volume of all audio streams.

    Related API please refer to setAllPlayStreamVolume

  3. Playing side provides the ability to mute all audio or video

    When you need to mute all remote users' audio or video streams at once during playing, you can achieve this through this feature.

    Related APIs please refer to muteAllPlayStreamAudio, muteAllPlayStreamVideo

  4. Added network speed test feature

    This feature supports uplink/downlink network speed testing and can be used to detect whether the network environment is suitable for publishing/playing streams of specified bitrates. Call the [startNetworkSpeedTest] interface to enable this feature, configure the "ZegoNetworkSpeedTestConfig" parameter to control the speed test process, and the speed test results will be notified through the [onNetworkSpeedTestQualityUpdate] callback.

    Related APIs please refer to startNetworkSpeedTest, stopNetworkSpeedTest, networkSpeedTestQualityUpdate, networkSpeedTestError

  5. Added room state change notification [roomStateChanged]

    When the room's connection state changes, the [roomStateChanged] callback will be triggered, providing more detailed connection state and state change reasons through the "ZegoRoomStateChangedReason" parameter.

    Related API please refer to roomStateChanged

  6. Added local preview first frame rendering callback

    This callback will be received after the first frame of video data is rendered.

    Related API please refer to publisherRenderVideoFirstFrame

  7. Support for monitoring publishing stream address and protocol related information

    After initiating stream publishing, you can monitor the publishing status in real-time through the [publisherStreamEvent] callback. This callback returns the currently used publishing address, resource type, and protocol related information.

    Related API please refer to publisherStreamEvent

  8. Added [apiCalledResult] callback notification for receiving execution results

    Get detailed information about ZEGO SDK method execution results through the [apiCalledResult] callback.

    Related API please refer to apiCalledResult

  9. Added CDN live streaming feature, and this feature supports using QUIC protocol for publishing and playing streams

    Forward to CDN: Forward to CDN refers to the process of pushing audio and video streams from ZEGO audio and video cloud to ZEGO's own CDN or third-party CDN.

    Direct Publish to CDN: Developers can directly push audio and video streams to CDN by specifying the specific CDN URL (or using ZEGO backend configuration), which needs to be set before publishing streams.

    QUIC Protocol Publishing and Playing: Mainly used to improve the unstable quality of CDN live streaming in weak network environments, but the improvement is limited. We recommend using low-latency live streaming to enjoy high-quality and low-latency live streaming services. Currently supports using Tencent and Wangsu's CDN live streaming products' QUIC protocol publishing and playing.

    Configure publishing protocol and QUIC version through the "ZegoCDNConfig" parameter in the [enablePublishDirectToCDN] interface. If you want to perform custom CDN playing with QUIC protocol, you need to configure playing protocol and QUIC version through the "ZegoPlayerConfig" parameter in [startPlayingStream].

    Related APIs please refer to addPublishCdnUrl, removePublishCdnUrl, enablePublishDirectToCDN

  10. Added [setPlayStreamVideoType] interface for setting playing video stream type

    When the publisher sets "codecID" to "SVC" through [setVideoConfig] (can be set before or after playing streams), the playing side can dynamically choose to use different stream types (small resolution is half of the standard layer). In cases of weak network or when the rendering UI window is small, you can choose to use small resolution video for playing to save bandwidth.

    Related API please refer to setPlayStreamVideoType

Bug Fixes

  1. Fixed the inconsistency between Express React Native SDK lifecycle and Native SDK lifecycle

Version 0.17.1

Release Date:2022-04-14

Bug Fixes

  1. Fixed the issue where log file collection was abnormal during log reporting

  2. Fixed the echo cancellation issue on some phones


Version 0.17.0

Release Date:2022-03-18

Improvements

  1. Optimized authentication method

    For version 0.17.0 and above, pass AppSign as empty or don't pass it when creating the engine, and must pass Token when logging into the room. After authentication passes, you can use real-time audio and video features. For details, please refer to Using Token authentication.

    For versions before 0.17.0, pass AppSign when creating the engine, and after authentication passes, you can use real-time audio and video features.

    Related APIs please refer to createEngineWithProfile, loginRoom

  2. Removed test environment

    To reduce developers' understanding cost of environments, ZEGOCLOUD has unified the environment concept. Starting from this version, the test environment has been deprecated, and only the production environment is used.

    Related API please refer to createEngineWithProfile

Previous

Download SDK

Next

Common Error Codes