Original publication date: November 16, 2022
Added
-
New interface to control the waiting room configuration for the customized user interface.
-
New interfaces in
IMeetingWaitingRoomController
virtual SDKError RequestCustomWaitingRoomData() = 0;
-
New callbacks in
IMeetingWaitingRoomEvent
virtual void onCustomWaitingRoomDataUpdated(CustomWaitingRoomData&bData, IWaitingRoomDataDownloadHandler* bHandler) = 0;
-
New interfaces in
IWaitingRoomDataDownloadHandler
virtual bool Retry() = 0; virtual void Ignore() = 0;
-
New status and struct
enum WaitingRoomLayoutType { WaitingRoomLayoutType_Default, WaitingRoomLayoutType_Logo, WaitingRoomLayoutType_Video }; enum CustomWaitingRoomDataStatus { CustomWaitingRoomDataStatus_Init, CustomWaitingRoomDataStatus_Downloading, CustomWaitingRoomDataStatus_Download_OK, CustomWaitingRoomDataStatus_Download_Fail }; struct CustomWaitingRoomData { const wchar_t* title; const wchar_t* description; const wchar_t* logo_path; const wchar_t* video_path; WaitingRoomLayoutType type; WaitingRoomCustomizeDataStatus status; }CustomWaitingRoomData;
-
-
New interface to allow non-host SDK participants to manage (start or stop) live streaming.
-
New callbacks in
IMeetingLiveStreamCtrlEvent
virtual void onRawLiveStreamPrivilegeChanged(bool bHasPrivilege) = 0; virtual void onRawLiveStreamPrivilegeRequestTimeout() = 0; virtual void onUserRawLiveStreamPrivilegeChanged(unsigned int userid, bool bHasPrivilege) = 0; virtual void onRawLiveStreamPrivilegeRequested(IRequestRawLiveStreamPrivilegeHandler* handler) = 0; virtual void onUserRawLiveStreamingStatusChanged(IList<RawLiveStreamInfo>* liveStreamList) = 0;
-
New interfaces in
IMeetingLiveStreamController
virtual bool IsRawLiveStreamSupported() = 0; virtual SDKError CanStartRawLiveStream() = 0; virtual SDKError RequestRawLiveStream(const wchar_t* broadcastURL) = 0; virtual SDKError RemoveRawLiveStreamPrivilege(unsigned int userid) = 0; virtual IList<RawLiveStreamInfo>* GetRawLiveStreamingInfoList() = 0; virtual IList<unsigned int>* GetRawLiveStreamPrivilegeUserList() = 0;
-
New interfaces in
IUserInfo
virtual bool IsRawLiveStreaming() = 0; virtual bool HasRawLiveStreamPrivilege() = 0;
-
New Class and Struct
struct RawLiveStreamInfo { unsigned int userId;///<User ID. const wchar_t* broadcastUrl;///<Broadcast URL }; class IRequestRawLiveStreamPrivilegeHandler { public: virtual ~IRequestRawLiveStreamPrivilegeHandler() {}; virtual const wchar_t* GetRequestId() = 0; virtual unsigned int GetRequesterId() = 0; virtual const wchar_t* GetRequesterName() = 0; virtual const wchar_t* GetBroadcastUrl() = 0; virtual SDKError GrantRawLiveStreamPrivilege() = 0; virtual SDKError DenyRawLiveStreamPrivilege() = 0; };
-
-
New interface to support 3D avatars in Meeting SDK.
-
New interface in
ILipSyncAvatarPreviewHelper
virtual SDKError SetEvent(ILipsyncAvatarPreviewHelperEvent* pEvent) = 0; virtual SDKError SetLipSyncAvatarPreviewParentWnd(HWND hParentWnd, RECT rc =_SDK_TEST_VIDEO_INIT_RECT) = 0; virtual SDKError StartLipSyncAvatarPreview() = 0; virtual SDKError StopLipSyncAvatarPreview() = 0;
-
New interface in
I3DAvatarImageInfo
virtual bool IsSelected() = 0; virtual const wchar_t* GetImageFilePath() = 0; virtual const wchar_t* GetImageName() = 0; virtual int GetIndex() = 0;
-
New callback in
ILipSyncAvatarSettingContextEvent
virtual void onLipSyncAvatarItemThumbnailsDownloaded() = 0; virtual void onLipSyncAvatarItemDataDownloading(int index) = 0; virtual void onLipSyncAvatarItemDataDownloaded(bool bSuccess, int index) = 0;
-
New callback in
ILipSyncAvatarPreviewHelperEvent
virtual void OnNoWindowToShowLipsyncPreview() = 0;
-
New interface in
ILipSyncAvatarSettingContext
virtual SDKError SetEvent(ILipSyncAvatarSettingContextEvent* pEvent) = 0; virtual bool Is3DAvatarSupportedByDevice() = 0; virtual bool IsLipSyncAvatarEnabled() = 0; virtual IList<I3DAvatarImageInfo* >* GetLipSyncAvatarImageList() = 0; virtual SDKError SetLipsyncAvatarImage(I3DAvatarImageInfo* pImage) = 0; virtual ILipSyncAvatarPreviewHelper* GetLipSyncAvatarPreviewHelper() = 0;
-
New interface in
IVideoSettingContext
virtual bool IsSupportLipSyncAvatar() = 0; virtual SDKError EnableLipSyncAvatarWhenVideoOff(bool bEnable) = 0; virtual bool IsLipSyncAvatarWhenVideoOffEnabled() = 0; virtual ILipSyncAvatarSettingContext* GetLipSyncAvatarSettingContext() = 0;
-
New interface in
IUserInfo
virtual bool IsSignLanguageInterpreter() = 0;
-
New callback in
I3DAvatarSettingContextEvent
virtual void on3DAvatarItemThumbnailsDownloaded() = 0; virtual void on3DAvatarItemDataDownloading(int index) = 0; virtual void on3DAvatarItemDataDownloaded(bool bSuccess, int index) = 0;
-
New interface in
I3DAvatarSettingContext
virtual SDKError SetEvent(I3DAvatarSettingContextEvent* pEvent) = 0; virtual bool Is3DAvatarSupportedByDevice() = 0; virtual bool Is3DAvatarEnabled() = 0; virtual IList<I3DAvatarImageInfo* >* Get3DAvatarImageList() = 0; virtual SDKError Set3DAvatarImage(I3DAvatarImageInfo* pImage) = 0; virtual ITestVideoDeviceHelper* GetTestVideoDeviceHelper() = 0;
-
New callback in
IVideoFilterSettingContextEvent
virtual void onVideoFilterItemThumnailsDownloaded() = 0; virtual void onVideoFilterItemDataDownloading(ZoomSDKVideoEffectType type, int index) = 0; virtual void onVideoFilterItemDataDownloaded(bool bSuccess, ZoomSDKVideoEffectType type, int index) = 0;
-
-
New interfaces to allow the hardware acceleration setting for screen sharing.
-
New interfaces in
IShareSettingContext
:virtual SDKError EnableHardwareAcceleratedAnnotation(bool bEnable) = 0; virtual SDKError sAnnotationHardwareAccelerated(bool& bEnable) = 0; virtual SDKError EnableHardwareAcceleratedVideoSharing(bool bEnable) = 0; virtual SDKError IsVideoSharingHardwareAccelerated(bool& bEnable) = 0;
-
-
New interface to support features which allow for sign interpreters, such as American Sign Language (ASL) interpreters, to be defined by the host and pinned to a certain predictable location for all meeting participants.
-
New enum
enum SignInterpretationStatus { SignInterpretationStatus_Initial, ///<The initial status SignInterpretationStatus_Started, ///<sign interpretation stared. SignInterpretationStatus_Stopped, ///<sign interpretation stopped. };
-
New interface in
ISignInterpretationLanguageInfo
virtual const wchar_t* GetSignLanguageID() = 0; virtual const wchar_t* GetSignLanguageName() = 0;
-
New interface in
ISignInterpreter
virtual unsigned int GetUserID() = 0; virtual const wchar_t* GetSignLanguageID() = 0; virtual bool IsAvailable() = 0;
-
New interface in
IRequestSignInterpreterToTalkHandler
virtual SDKError Ignore() = 0; virtual SDKError Accept() = 0; virtual SDKError Cancel() = 0;
-
New interface in
IMeetingSignInterpretationController
virtual void SetEvent(IMeetingSignInterpretationControllerEvent* event) = 0; virtual bool IsSignInterpretationEnabled() = 0; virtual SignInterpretationStatus GetSignInterpretationStatus() = 0; virtual bool IsSignInterpreter() = 0; virtual ISignInterpretationLanguageInfo* GetSignInterpretationLanguageInfoByID(const wchar_t* signLanguageId) = 0; virtual IList<ISignInterpretationLanguageInfo*>* GetAvailableSignLanguageInfoList() = 0; virtual IList<ISignInterpretationLanguageInfo*>* GetAllSupportedSignLanguageInfoList() = 0; virtual IList<ISignInterpreter*>* GetSignInterpreterList() = 0; virtual SDKError AddSignInterpreter(unsigned int userID, const wchar_t* signLanguageId) = 0; virtual SDKError RemoveSignInterpreter(unsigned int userID) = 0; virtual SDKError ModifySignInterpreterLanguage(unsigned int userID, const wchar_t* signLanguageId) = 0; virtual bool CanStartSignInterpretation() = 0; virtual SDKError StartSignInterpretation() = 0; virtual SDKError StopSignInterpretation() = 0; virtual SDKError RequestSignLanuageInterpreterToTalk(unsigned int userID, bool allowToTalk) = 0; virtual SDKError CanSignLanuageInterpreterTalk(unsigned int userID, bool& canTalk) = 0; virtual const wchar_t* GetSignInterpreterAssignedLanID() = 0; virtual SDKError JoinSignLanguageChannel(const wchar_t* signLanguageId) = 0; virtual SDKError LeaveSignLanguageChannel() = 0;
-
New callback in
IMeetingSignInterpretationControllerEvent
virtual void OnSignInterpretationStatusChanged(SignInterpretationStatus status) = 0; virtual void OnSignInterpreterListChanged() = 0; virtual void OnSignInterpreterRoleChanged() = 0; virtual void OnSignInterpreterLanguageChanged() = 0; virtual void OnAvailableSignLanguageListUpdated(IList<ISignInterpretationLanguageInfo*>* pAvailableSignLanguageList) = 0; virtual void OnRequestSignInterpreterToTalk(IRequestSignInterpreterToTalkHandler* handler) = 0; virtual void OnDisallowSignInterpreterToTalk() = 0;
-
-
New interfaces for following a meeting presenter's pointer.
-
New interface in
IZMMeetingBridgeShareHelper
virtual ZMMeetingBridgeErrors IsSupportEnableFollowPresenterPointerWhenViewShare(CmmUInt32 userID, CmmBool& bSupport) = 0;
-
Fixed
-
Issues that occurred when sharing related interfaces when all screens subscribed to the same user.
-
Issue where the SDK couldn't receive
onSharingStatus
callback when callingStartSharePureComputerAudio
. -
Issue where, under customize user interface mode, the recording disclaimer didn’t make a distinction between local and cloud recording.
-
Issue where the meeting SDK breakout room behavior is different with the Zoom Client.
-
Issue that occurred on the
HideShareButtonOnMeetingU
andHideRecordItemOnMeetingUI
interfaces. -
Screen casting issue related to direct share.
-
Issue where, when calling
GetLocalRecordingStatus
, the SDK didn’t get the statusstart
when turning on automatic local recording of a meeting under the customized user interface mode. -
Issue where, when the host added themself as an interpreter and started interpreting, meeting participants did not receive callback
onInterpreterActiveLanguageChanged
in customized user interface mode.
Deprecated
-
Deprecated interfaces in
IVideoFilterSettingContextEvent
virtual void onVideoFilterItemDataDownloaded(ZoomSDKVideoEffectType type, int index) = 0; virtual void onVideoFilterItemDataNeedPrepare(ZoomSDKVideoEffectType type, int index) = 0; virtual void onVideoFilterItemDataReady(bool bSuccess, ZoomSDKVideoEffectType type, int index) = 0;
-
Removed the implementation of
GetMeetingUIType
.