Release Date: 2024-08-19
New Features
ZegoMixerTask has added a new parameter, mixImageCheckMode, which controls whether Stream Mixing tasks can be initiated when image resources such as background images (backgroundImageURL), input stream placeholder images (inputList.imageInfo.url), and watermark images (watermark.imageURL) fail validation.
By default, this feature is disabled (mixImageCheckMode is set to 0), which means that strict image validation rules must be met, including "supported protocols and formats," "image size," and "successful image resource requests," in order to initiate Stream Mixing tasks.
This feature has already been supported by the ZEGO server API Stream Mixing interface.
For related APIs, please refer to StartMixerTask.
Electronic Sound Effects refer to processed voices or singing with an electronic sound effect. This feature is commonly used in KTV and voice chat room scenarios.
Before initializing the SDK with [CreateEngine], you can enable Electronic Sound Effects by calling the [SetElectronicEffects] interface. You can also set different modes and corresponding starting pitches for the electronic sound effects as needed. If this interface is not called, Electronic Sound Effects will be disabled by default.
Developers can also use the [SetVoiceChangerPreset] interface to preset common Electronic Sound Effects. Currently, presets for C Major Electronic Sound Effects, A Minor Electronic Sound Effects, and Harmonic Minor Electronic Sound Effects are supported.
For related APIs, please refer to SetElectronicEffects.
Supports adjusting the gain values of 10 frequency bands to achieve sound adjustment.
For related APIs, please refer to SetAudioEqualizerGain.
Note: This feature is only supported on Windows, macOS, and Linux.
Supports setting the capture volume of audio devices (speakers or microphones) through the [SetAudioDeviceVolume] interface before streaming. However, due to system limitations, this interface may fail to be called. It is recommended to directly use the [SetCaptureVolume] and [SetPlayVolume] interfaces to adjust the streaming volume.
For related APIs, please refer to SetAudioDeviceVolume, GetAudioDeviceVolume, SetCaptureVolume, SetPlayVolume.
Note: This feature is only supported on Windows and macOS.
Allows monitoring the volume of audio input or output devices.
For related APIs, please refer to StartAudioDeviceVolumeMonitor, StopAudioDeviceVolumeMonitor.
Note: This feature is only supported on Windows, macOS, and Linux.
Allows muting or unmuting audio input or output devices as needed.
For related APIs, please refer to MuteAudioDevice, IsAudioDeviceMuted.
Note: This feature is only supported on Windows and macOS.
By calling the [GetCurrentAudioDevice] interface, you can get information about the currently used audio device, including the device ID and device name, reducing the development workload for developers.
For related APIs, please refer to GetCurrentAudioDevice.
When the camera is turned off, supports continuously pushing static images in JPEG/JPG, BMP, and HEIF formats. For example, when a host goes to the background and turns off the camera, the audience needs to display an image indicating that the host is temporarily away.
After initializing the SDK, set the path of the static image to be pushed through the [SetDummyCaptureImagePath] interface before turning off the camera. After starting normal streaming, calling the [EnableCamera] interface to turn off the camera will start pushing the static image, and calling the [EnableCamera] interface to turn on the camera will stop pushing the static image.
For related APIs, please refer to SetDummyCaptureImagePath.
For related APIs, please refer to OnPublisherDummyCaptureImagePathError.
Supports caching network resources locally, so that when playing the same network resource, cached data will be used first to improve user experience.
For related APIs, please refer to EnableLocalCache.
Note: If a stream is set to be subject to review, it will not be reviewed if the developer does not initiate a review task.
When calling the review interface, it will review all streams in the room by default. If the client wants to control that a certain stream cannot be reviewed, they can set the review flag parameter [streamCensorFlag] to 1 (not allowed) when calling the [StartPublishingStream] interface to start streaming.
For related APIs, please refer to StartPublishingStream, ZegoPublisherConfig > StreamCensorFlag.
Note: Please contact ZEGO technical support if you need to use this feature.
Controls the compatibility range of client encoding to all streaming users or all users in the room. When there are users in the specified range who do not support H.265, the client encoding will dynamically fallback.
For related APIs, please refer to LoginRoom, StartPublishingStream, ZegoPublisherConfig > codecNegotiationType, ZegoRoomConfig > capabilityNegotiationTypes.
Improvements
ZEGO has provided a brand new Basic Face Beautification feature, which presents users with good skin conditions and creates a natural Face Beautification effect. Developers need to call the [StartEffectsEnv] interface to initialize the Face Beautification environment before streaming, and then call the [EnableEffectsBeauty] interface to enable the Face Beautification feature. The [SetEffectsBeautyParam] interface can be used to adjust the degree of Skin Tone Enhancement, Skin Smoothing, Image Sharpening, and Cheek Blusher as needed, achieving the capabilities of Basic Face Beautification.
This feature is commonly used in video calls, live broadcasting, and other scenarios.
For related APIs, please refer to StartEffectsEnv, StopEffectsEnv, EnableEffectsBeauty, SetEffectsBeautyParam.
On the Android platform, SurfaceTexture Rendering is prioritized for video rendering.
Release date: 2024-05-07
New Features
Note: Starting with this release, iOS 11.0 and earlier versions are no longer supported.
Starting from 2024-04-29, all apps on the App Store must support iOS 17.0 version. For details, please refer to Apple Developer Website Official Instructions.
Release date: 2024-01-18
New Features
Note:
Please contact ZEGOCLOUD technical support if you need to use this feature.
The plugin cannot be used alone and must be used with Express SDK.
Support for copyright-music function pluginization, when the developer's business scenario only needs to update the copyright-music related, you can independently integrate the plugin without updating the Express SDK, which can smoothly migrate.
Bug Fixes
Release date: 2024-01-08
Bug Fixes
Release date: 2024-01-04
Bug Fixes
Release date: 2023-12-13
New Features
This function is often used in scenes that require mixed stream alignment, such as KTV. When playing at the streaming end, use the [SetPlayStreamsAlignmentProperty] interface to control whether the real-time audio and video streams need to be accurately aligned. If necessary, all the streams that contain precise alignment parameters will be aligned; if not, all streams are not aligned.
For related API, please refer to SetPlayStreamsAlignmentProperty
For various cameras and other devices that capture images, if the colors appear grayish or have low saturation, we support enhancing the colors while preserving the natural skin tones. This will make the images more vibrant and brighter, creating a more realistic visual experience for the human eye.
For related API, please refer to EnableColorEnhancement
Note: This feature only supports pre-processing of screenshots and does not support other processing such as rotation or watermarking.
When the video format output by the capture device is MJPEG, hardware decoding acceleration is enabled by default to prevent issues such as insufficient frame rate due to insufficient device performance.
This feature is suitable for use on capture devices with a 4K resolution mainly.
Newly added support for using live streams as input streams for mixing; the URL of the live input stream supports both RTMP and HTTP-FLV protocols. This feature is suitable for mixing the RTC video streams of hosts' interactive broadcasting with cloud sports live streams, game live streams, etc., to achieve scenarios such as game or sports commentary in live broadcasting.
Enhancements
Optimize server-side mix streaming and single-stream transcoding capabilities to improve encoding efficiency and achieve a 5% or more increase in subjective and objective video quality at the same bitrate.
After the user successfully logs in on device A, device A loses network connection. Then, the user logs in successfully on device B using the same userID. If the network connection on device A is restored and a reconnection is attempted, it will fail and throw error code 1002086, indicating that the userID is already logged in another device.
Bug Fixes
Release date: 2023-11-20
Bug Fixes
Release date: 2023-11-09
Bug Fixes
Release date: 2023-08-17
New Features
Note: If you need to use this function, please contact ZEGOCLOUD technical support.
After the developer sets the Smart Cloud Proxy mode, when publishing streams from RTC or L3, it will give priority to using the direct network mode to try. If the direct connection network is unavailable and it is currently a cellular network, continue to stay in the direct connection mode and try again; if the direct connection network is not available and it is currently a non-cellular network, then switch to the cloud proxy mode.
The custom video pre-processing function supports dual output, which supports the output of memory data and 2D texture data. Developers can use these data to implement third-party beautification functions, and perform face detection and beautification with higher performance.
For related API, please refer to OnCapturedUnprocessedRawData, ZegoVideoBufferTypeGLTexture2DAndRawData
The mediaplayer supports setting the Http Headers of network resources. Based on this configuration, developers can customize and limit the access methods of network resources to strengthen the security protection of resources.
For related API, please refer to SetHttpHeader
For a variety of interactive scenarios of audio and video sources such as online KTV, watching movies together, watching competitions, video conferences, and online education, multi-source acquisition provides flexible and easy-to-use audio and video acquisition sources and channel management capabilities, greatly reducing developers' development and maintenance costs.
Multi source acquisition capability shortens, optimizes and normalizes the implementation path of common capabilities such as screen sharing and mixing. After version 3.8.0, you can no longer implement the above complex capabilities through custom acquisition.
The main capabilities and characteristics are as follows.
Streaming channel supports setting or switching multiple audio and video sources.
Common capabilities such as screen sharing and mixing are supported.
Enhancements
Release date: 2023-07-18
New Features
Note:
Before using this function, you need to call the SetVideoConfig interface to specify the video codecID as ZegoVideoCodecIDH264DualStream.
The ratio of setting the resolution for the big stream and the small stream needs to be consistent, otherwise it will cause errors when calling the interface.
When specifying the codecID as ZegoVideoCodecIDH264DualStream, you can separately set the resolution, frame rate, and bitrate for the big stream and the small stream.
For related API, please refer to ZegoExpressEngine > SetVideoConfig, SetPublishDualStreamConfig
Add SetAudioDeviceMode to dynamically modify the audio mode of the device. This configuration determines the volume mode, preprocessing mode and Mic occupation logic of the device. You can choose according to specific scenarios.
For related API, please refer to SetAudioDeviceMode
In the scenarios of large-scale audio-video, game voice, it supports setting the attenuation range [min, max] of 3D sound effect distance. When the distance is less than min, the volume will not decrease with the increase of distance; when the distance is greater than max, the sound of the other party will not be audible.
For related API, please refer to SetReceiveRange, SetAudioReceiveRange
The Unity project running in the WebGL environment has added some functions and interfaces that support the use of ZEGO RTC services, including audio and video calls, device management and other capabilities.
Enhancements
For related API, please refer to SubmitLog
Release date: 2023-04-25
New Features
Note: When the frame rate set by SetVideoConfig is lower than EnableCameraAdaptiveFPS expected frame rate minimum value, the frame rate value set by SetVideoConfig will be used. Due to the different hardware and algorithm strategies of different mobile phone manufacturers, the effect of this interface is different on different models or on the Camera of the same model.
When the frame rate set by the publish streams user is high, and the environment where the light is low and the subject cannot be displayed or recognized normally, the EnableCameraAdaptiveFPS interface can be called to automatically reduce the frame rate within a certain range. Increase the exposure time to increase the brightness of the Video image. This function is often used in live broadcast scenes that require high exposure. EnableCameraAdaptiveFPS interface needs to be called after CreateEngine interface is called to initialize the engine and before starting the Camera.
For related APIs, please refer to EnableCameraAdaptiveFPS
Note: After calling the CreateEngine interface to create an engine, call the SetLowlightEnhancement interface.
When the surrounding environment of the publish streams user is dark, or the frame rate of the Camera is set high, resulting in a dark live broadcast image that cannot be displayed or recognized normally, the SetLowlightEnhancement interface can be called to set low illumination Enhance, increase the brightness of the Video screen. The low-light enhancement function includes three modes: 1: Disable low-light enhancement (default), 2: Enable low-light enhancement, 3: Automatically switch low-light enhancement.
Developers can choose different low-light enhancement modes according to business scenarios: when they want to judge whether low-light enhancement is needed, they can Controller by switching between mode 1 and mode 2; when they want SDK to automatically enhance, they can use mode 3, SDK It will automatically judge the lighting environment the user is in, and turn on or off the low-light enhancement.
For related APIs, please refer to SetLowlightEnhancement
After the sound card capture is enabled, the sound played by the system can be mixed into the publish streams, such as the sound played by the browser, the sound played by third-party player software, etc., and supports setting the collection Volume through SetMixSystemPlayoutVolume.
For related APIs, please refer to EnableMixSystemPlayout, SetMixSystemPlayoutVolume
Bug Fixes
Deleted
For details, please refer to App Store submission requirement starts April 25 and Xcode 14 Release Notes.
For details, please refer to Xcode 14 Release Notes.
Release date: 2023-03-24
New Features
StandardVoiceCall
for scene-based Voice Calling and Video configuration. Add StandardVoiceCall
for scene-based Voice Calling and Video configuration. It is suitable for 1v1 pure Voice Calling scenarios.For related APIs, please refer to SetRoomScenario
Added SetMinVideoFpsForTrafficControl and SetMinVideoResolutionForTrafficControl interfaces. When the user network is poor and Flow Control is enabled, the minimum FPS and resolution can be set by calling the interface to help users Comprehensively Controller the display effect of the Video.
For related APIs, please refer to SetMinVideoFpsForTrafficControl, SetMinVideoResolutionForTrafficControl
Release date: 2023-02-01
Enhancements
Note: The default size of the custom signaling configuration is 1KB, if it needs to be extended to 4KB, please contact ZEGO technical support for processing.
Bug Fixes
Release date: 2022-12-13
New Features
Note: If you need to use this function, please contact ZEGO technical support.
In the virtual scene, due to the different map size, audio and Video interactive gameplay and scale of each scene, it is necessary to customize the configuration for each scene. After version 3.1.0, "Audio and Video for 10,000 people" and "Real-time status synchronization for multiple people" support the SDK interface and use the template ID to specify the scene. The configuration item corresponding to the template ID can only be configured through the server API.
For related APIs, please refer to templateID
Note: If you need to use this function, please contact ZEGO technical support.
When the user logs in to the scene, he can bring the Token parameter to verify the legitimacy.
For related APIs, please refer to ZegoSceneParam > token, ZegoRangeScene > RenewToken
Note: If you need to use this function, please contact ZEGO technical support.
By setting the cloud proxy interface of the SDK, all traffic corresponding to the SDK will be transferred through the proxy server in the cloud to realize communication with the RTC.
For related APIs, please refer to SetCloudProxyConfig
Release date: 2022-11-29
New Features
Express Unity3D SDK now supports Linux x86_64 architecture. For development environment requirements, please refer to the Integration SDK document.
Bug Fixes
Release date: 2022.11.01
This version contains breaking changes, please refer to v3.0.0 Upgrade Guide for details.
New Features
After each time the remote Camera is turned on, the SDK play streams and renders the first frame of the remote Camera Video data to call back. Developers can use this callback to count the time-consuming of the first frame, or update the UI components of the playback stream.
For related APIs, please refer to OnPlayerRenderCameraVideoFirstFrame
Since the SDK supports feature tailoring, some features may have been trimmed; you can use this function to quickly determine whether the current SDK supports the specified features.
For related APIs, please refer to IsFeatureSupported
In order to facilitate quick access for developers and lower the threshold for developers to access, the SDK provides a variety of Preset scenarios. The developer can select the corresponding room mode ZegoScenario according to the required scene, and the SDK will automatically apply the audio and Encoding & Decoding, audio and Video parameters, flow control strategy and other configurations suitable for the scene, so as to quickly realize the The best effect in the scene.
Currently supported scenarios include Live Video Streaming, KTV, standard 1v1 audio and Video Calling, high-definition 1v1 audio and Video Calling, standard voice Voice Chatroom, and high-quality voice Voice Chatroom.
For related APIs, please refer to SetRoomScenario
Note: This function is only used in the development stage, please do not enable this function in the online version.
Added the EnableDebugAssistant interface. The developer calls this interface to enable the debugging assistant function. The SDK will print the log to the ZEGO Admin Console. When an exception occurs in the calls of other interfaces of the SDK, the UI will pop up an error message.
For related APIs, please refer to EnableDebugAssistant
Bug Fixes
Deleted
The three scenarios [General], [Communication], and [Live] in the ZegoScenario scenario enumeration are discarded.
Release date: 2022.09.13
Bug fixes
Release date: 2022.08.02
New Features
Note: In Unity, texture2D coordinates start from the lower left corner, and picture coordinates start from the upper left corner, so you can see that the Y-axis of the default rendering of Texture2D is flipped.
In the parent class IVideoSurface of ZegoExpressEngine, a new interface GetNativeTexture2D is added, which is used to copy a Texture2D of the currently rendered image by the SDK for external use.
Release date: 2022.07.15
New Features
When calling the Stream Mixing interface to mix streams, the developer can set the "cornerRadius" (the radius of the Video screen corner) through the "ZegoMixerInput" type parameter, and set the Video border to rounded corners. The unit of "cornerRadius" is px, and the value cannot exceed half of the shorter of the width and height of the Video screen.
For related APIs, please refer to StartMixerTask
Note: If you want to Controller the play streams mode from the cloud through more dimensions such as region and user, please contact ZEGO technical support for related configuration.
The play streams interface adds the play streams resource mode of CDN_PLUS (ZegoStreamResourceMode), and developers can enable and use CDN_PLUS to play streams according to the stream dimension. CDN Plus play streams is a cost-effective play streams method with higher quality than CDN play streams , but the price is close to CDN.
For related APIs, please refer to StartPlayingStream
Bug Fixes
Release date: 2022.07.01
New Features
When you need audio data of remote users or use the data collected by the local microphone for other purposes (such as audio recording, third-party audio monitoring, real-time audio analysis), you can use the StartAudioDataObserver API to enable real-time audio data monitoring.
For related APIs, please refer to StartAudioDataObserver, StopAudioDataObserver, OnCapturedAudioData, OnPlayerAudioData, OnPlaybackAudioData, OnMixedAudioData
Release date: 2022.06.20
Bug fixes
Release date: 2022-06-13
New Features
Note: To use this function, please contact ZEGO technical support to activate the background service.
When calling the StartPublishingStream API to start streaming, you can set the ZegoStreamCensorshipMode parameter to conduct automatic audio and video censorship at the stream level, and automatically identify sensitive content, thus reducing the integration difficulty and business maintenance costs.
For related API, please refer to StartPublishingStream
Enhancements
Call the StartPublishingStream interface and set the [forceSynchronousNetworkTime] in ZegoPublisherConfig as 1, the SDK will wait until the OnNetworkTimeSynchronized callback notifies the NTP network time synchronization is completed before publishing the stream, and then call the SetStreamAlignmentProperty interface to enable the precise alignment of mixed streams.
For related APIs, please refer to StartPublishingStream, SetStreamAlignmentProperty, OnNetworkTimeSynchronized
Bug Fixes
The relevant APIs are as follows: LoadResourceFromMediaData, LoadResourceWithPosition, LoadCopyrightedMusicResourceWithPosition
Release date: 2022-05-18
New Features
The [loginRoom] interface adds the "callback" parameter, which supports returning the login room result from "callback".
The [logoutRoom] interface has added a "callback" parameter, which supports returning the result of exiting the room from "callback".
For related APIs, please refer to LoginRoom, LogoutRoom
When the connection state of the room changes, the [onRoomStateChanged] callback will be triggered, and the "ZegoRoomStateChangedReason" parameter will provide more detailed connection state and the reason for the state change.
For related APIs, please refer to OnRoomStateChanged
When developers monitor the sound wave callback, they usually only pay attention to the vocal part. They can call the StartSoundLevelMonitor interface and pass in "ZegoSoundLevelConfig" to enable VAD vocal detection.
The SDK also adds a parameter for whether to include human voice detection in the local sound capture callback OnCapturedSoundLevelInfoUpdate and the remote Audio sound callback OnRemoteSoundLevelInfoUpdate].
For related APIs, please refer to StartSoundLevelMonitor, OnCapturedSoundLevelInfoUpdate, OnRemoteSoundLevelInfoUpdate
Added the callback for the uplink and downlink network quality of local and remote users OnNetworkQuality, the default is to call back the network status of local and remote users every two seconds (including unknown, excellent, good, medium) , poor, network disconnection). This function can be used when developers want to analyze the network conditions on the link, or want to know the network conditions of local and remote users.
For related APIs, please refer to OnNetworkQuality
After enabling the Flow Control of the specified push channel through the EnableTrafficControl interface, you can use the SetTrafficControlFocusOn interface to Controller whether to enable Flow Control due to poor remote network conditions.
For related APIs, please refer to SetTrafficControlFocusOn
When Direct publishing to CDN , the SDK play streams from the customer's CDN source site, distributes the audio and Video content to the audience through L3, and Controller the source site resources through ZegoResourceType without changing the publish streams method. This function is often used in live broadcast scenarios.
For related APIs, please refer to StartPlayingStream
Bug Fixes
Release date: 2022-04-19
New Features
The Media Player component provides the ability to play audio and video media files, and supports publish the audio and video data of the played media files.
For related APIs, please refer to CreateMediaPlayer, DestroyMediaPlayer
You can specify a room, and all the audio streams in the room will be mixed (currently only supports mixing audio streams), which is often used in voice chat scenarios.
You can call the StartAutoMixerTask to enable automatic stream mixing, and call the StopAutoMixerTask to disable automatic stream mixing.
For related APIs, please refer to StartAutoMixerTask, StopAutoMixerTask
Call the GetNetworkTimeInfo to get the current network time (NTP), including the timestamp and maximum error of the current network time. When performing multi-terminal behavior synchronization, it is necessary to obtain the synchronization network time to calibrate the current time.
For related APIs, please refer to GetNetworkTimeInfo
Calling the SetStreamAlignmentProperty can enable or disable the precise Stream Mixing alignment function, which is often used in KTV and other scenarios that require Stream Mixing alignment.
For related APIs, please refer to SetStreamAlignmentProperty
Bug Fixes
Release date: 2022-03-30
Bug Fixes
Changed the iOS platform SDK library format to Plugins compatible framework format.
Release date: 2022-03-18
Enhancements
For versions 2.17.0 and above, pass the AppSign blank or not when creating the engine, and the Token must be passed in when logging in to the room. After the authentication is passed, the voice and video call functions can be used.
Versions prior to 2.17.0, pass in AppSign when creating the engine, and use the voice and video call function after the authentication is passed.
For related APIs, please refer to CreateEngine, LoginRoom
Bug Fixes
Fixed a crash when calling the SwitchRoom interface after turning on the In-game Voice Chat.
Release date: 2022-02-25
New Features
User permission Controller means that when the user logs in to the room, or performs push/ play streams operations in the room, the ZEGO server determines whether the user has the corresponding permission according to the Token parameter carried by the user when logging in, so as to avoid the lack of permission Controller or the Risks caused by improper operation. Currently, it only supports the verification of two permissions, namely, the user's login room and the user's room publish streams.
For related APIs, please refer to LoginRoom, RenewToken, onRoomTokenWillExpire
When the publisher sets the "codecID" to "SVC" through [SetVideoConfig] (it can be set before and after the play streams), the player can dynamically set and select different stream types (the small resolution is the half of the standard layer) one). When the network is weak or the rendered UI form is small, you can choose to use the Video with small resolution to save bandwidth.
For related APIs, please refer to SetPlayStreamVideoType
Through the advanced Reverb parameters, you can adjust the finer Reverb effect according to your needs, and add studio, KTV, rock, concert and other effects to the original Preset Reverb, and add magnetic male and female to the Preset Voice Changer. The fresh female AudioEffect increase the real-time voice interest and can adapt to more scenes.
For related API, please refer to SetVoiceChangerParam, SetReverbPreset, SetVoiceChangerPreset SetVoiceChangerParam
Users can set the Reverb Echo parameters according to their needs, allowing up to 7 echoes (delay) to be set, and support to individually set the delay, attenuation of each echo, and the overall input and output gain value. It can also be matched with Voice Changer and Reverb to achieve a variety of custom sound effects.
For related APIs, please refer to SetReverbEchoParam
Spatial Audio is able to perceive the 360° position of sound in space. Developers can use the spatial Audio function to create a more realistic "seat" effect in the audio and Video room. Users can perceive the source direction of the sound through spatial Audio and restore the offline scene. It is suitable for scenarios such as Voice Chatroom, script killings and online meetings.
For related APIs, please refer to EnablePlayStreamVirtualStereo
Added support for omnidirectional Virtual Stereo, which simulates stereoscopic sound through algorithm processing of monophonic sound. This function is often used in KTV scenes to make the singing sound more three-dimensional.
When the [EnableVirtualStereo] interface is called and the angle parameter is set to -1, it means the stereo effect is omnidirectional stereo.
For related APIs, please refer to EnableVirtualStereo
When developers need to prioritize the quality of a stream, they can use the [SetPlayStreamFocusOn] interface. For example, in a class scenario, where students pull multiple streams, you can set a high priority for teacher streams.
For related APIs, please refer to SetPlayStreamFocusOn
Audio routing refers to the Audio output device used by the App when playing Audio . Common Audio routing includes: speakers, earpieces, headphones, Bluetooth devices, etc. Developers can call the [GetAudioRouteType] interface to get the current Audio route.
For related APIs, please refer to GetAudioRouteType
By changing the user's pitch, the output sound is sensory different from the original sound, and various effects such as male voice changing to female voice can be realized.
For related API, please refer to SetVoiceChangerParam
After successfully Co-hosting with the remote user, when the state of the remote speaker device changes, such as turning the speaker on/off, it can be monitored through the [OnRemoteSpeakerStateUpdate] callback.
For related APIs, please refer to OnRemoteSpeakerStateUpdate
This callback is thrown when there is a change in Audio routing such as headphone plugging and unplugging, speaker and earpiece switching, etc.
For related APIs, please refer to OnAudioRouteChange
Through the [OnLocalDeviceExceptionOccurred] callback, you can set the device type to be detected, such as Camera, speaker, Microphone, etc., and the developer can handle the error callback according to different device types.
For related APIs, please refer to OnLocalDeviceExceptionOccurred
Through [SetAudioRouteToSpeaker], you can set the Audio route to the speaker. When you choose not to use the built-in speaker to play the sound, that is, when it is set to "false", the SDK will select the current Audio output device with the highest priority to play the sound according to the system scheduling.
For related APIs, please refer to SetAudioRouteToSpeaker
This function is used to specify the interval range for the adaptive adjustment of the playback cache, and the developer can set it according to the scene.
For related APIs, please refer to SetPlayStreamBufferIntervalRange
This function can be used when the Audio or Video streams of all remote users need to be closed at one time when play streams .
For related APIs, please refer to MuteAllPlayStreamAudio, MuteAllPlayStreamVideo
It supports taking Snapshot of the screen during the push-pull streaming process, which can be used for scenes such as yellow identification.
For related APIs, please refer to TakePublishStreamSnapshot, OnPublisherTakeSnapshotResult, TakePlayStreamSnapshot, OnPlayerTakeSnapshotResult
After the first frame of Video data is rendered, the [OnPublisherRenderVideoFirstFrame] callback will be received.
For related API, please refer to OnPublisherRenderVideoFirstFrame
The local user can Controller the playback Volume of all Audio streams through the [SetAllPlayStreamVolume] interface.
For related APIs, please refer to SetAllPlayStreamVolume
For related APIs, please refer to OnApiCalledResult
Deleted
The old Beautify function is relatively simple and does not meet the developer's expectations, so the [EnableBeautify] and [SetBeautifyOption] interfaces are deprecated in version 2.16.0 and above.
For related APIs, please refer to EnableBeautify, SetBeautifyOption
Due to the naming convention, the [SetBuiltInSpeakerOn] interface is deprecated in version 2.16.0 and above, please use [SetAudioRouteToSpeaker] to implement the original function.
For related APIs, please refer to SetAudioRouteToSpeaker, SetAudioRouteToSpeaker
In order to let developers intuitively understand the type of abnormal device and the specific abnormal situation, the [OnDeviceError] callback is deprecated in version 2.16.0 and above, please use the [OnLocalDeviceExceptionOccurred] callback instead.
For related APIs, please refer to OnDeviceError, OnLocalDeviceExceptionOccurred
Release date: 2022-02-18
New Features
[ZegoRangeAudioMode] Enumerates a new secret team SecretTeam. Local users can set the secret team mode through the [SetRangeAudioMode] interface after initializing the In-game Voice Chat[CreateRangeAudio] according to their needs. In this squad mode, squad members can receive the voice of the world mode user.
For related APIs, please refer to CreateRangeAudio, SetRangeAudioMode
Release Date: 2022-01-05
New Features
Newly added [CallExperimentalAPI] interface, ZEGO provides some technical Preview or special customized functions in RTC business through this API, you need to obtain the use of the function or the details, please consult ZEGO technical support. Added [onRecvExperimentalAPI] callback delegate for receiving experimental API JSON content.
For related APIs, please refer to CallExperimentalAPI, onRecvExperimentalAPI
Release Date: 2021-12-24
New Features
[MuteUser] interface is added to the In-game Voice Chat module. Local users can set whether to receive the Audio data of the specified remote user through the [MuteUser] interface after initializing the In-game Voice Chat [CreateRangeAudio] according to their needs. When not receiving, the hardware and network overhead can be reduced.
This function can be used when developers need to quickly close or restore remote Audio.
For related API, please refer to MuteUser
Bug Fixes
Fixed the problem that the "advancedConfig" configuration in the [SetEngineConfig] interface did not take effect.
Release Date: 2021-12-17
New Features
Added a new In-game Voice Chat function module, which can provide functions such as range voice, 3D AudioEffect, and team voice. It is suitable for eating chicken games and meta-universe scenes.
Range of voice: The listener in the room has a range limit on the Audio receiving distance. If the distance between the speaker and himself exceeds this range, he cannot hear the sound. To ensure a clear voice, when there are more than 20 people nearby, you can only hear the 20 speakers closest to you.
3D AudioEffect: The sound has a sense of 3D space and is attenuated by distance.
Squad Voice: Players can choose to join a squad, and support free switching between "World" mode and "Squad only" mode in the room.
For related APIs, please refer to CreateRangeAudio, DestroyRangeAudio, SetAudioReceiveRange, UpdateSelfPosition, UpdateAudioSource, EnableSpatializer, EnableMicrophone, EnableSpeaker, SetRangeAudioMode, SetTeamID
Enhancements
The [SetAudioConfig] interface has been optimized, and the optional parameter "ZegoPublishChannel" has been added to specify the channel number for Audio configuration.
For related API, please refer to SetAudioConfig
[onPlayerQualityUpdate] The mos parameter is added to the callback to indicate the current Audio quality.
For related API, please refer to onPlayerQualityUpdate
Bug Fixes
Release Date: 2021-11-29
Bug Fixes