6#ifndef _ZOOM_VIDEO_SDK_USER_HELPER_INTERFACE_H_
7#define _ZOOM_VIDEO_SDK_USER_HELPER_INTERFACE_H_
568#if defined ANDROID || defined __IOS__
569 ZoomVideoSDKSubscribeFailReason_HasSubscribeOneShare,
581#if !defined __linux && !defined ANDROID
719#if !defined __linux && !defined ANDROID
825#if !defined (__linux) || defined ANDROID
SDK-defined vector interface for managing collections of items.
Camera control interface.
virtual ZoomVideoSDKErrors decline()=0
Decline the remote camera control request.
virtual ~IZoomVideoSDKCameraControlRequestHandler()
virtual ZoomVideoSDKErrors approve()=0
Approve the remote camera control request.
video or share canvas interface.
virtual ZoomVideoSDKErrors setResolution(void *handle, ZoomVideoSDKResolution resolution)=0
Sets the resolution for the user's video. Once you specify the value, the resolution will not change ...
virtual ZoomVideoSDKErrors unSubscribeWithView(void *handle)=0
Unsubscribes to the user's video or share view.
virtual ZoomVideoSDKErrors subscribeWithView(void *handle, ZoomVideoSDKVideoAspect videoAspect, ZoomVideoSDKResolution resolution=ZoomVideoSDKResolution_Auto)=0
Subscribes to the user's video or share view.
virtual ZoomVideoSDKCanvasType canvasType()=0
Gets the canvas type.
virtual void * takeSnapshot(void *handle)=0
Captures a snapshot of the current video frame from the specified video view and returns it as a Bitm...
virtual ~IZoomVideoSDKCanvas()
virtual ZoomVideoSDKErrors setAspectMode(void *handle, ZoomVideoSDKVideoAspect aspect)=0
Set the render video or share aspect ratio.
Video/share raw data sink interface.
virtual void onRawDataStatusChanged(RawDataStatus status)=0
Call when subscribed data status changed.
virtual void onShareCursorDataReceived(ZoomVideoSDKShareCursorData info)=0
Call when the cursor data of share received.
virtual ~IZoomVideoSDKRawDataPipeDelegate()
virtual void onRawDataFrameReceived(YUVRawDataI420 *data_)=0
Call when subscribed data received.
Video/share raw data pipe interface.
virtual ZoomVideoSDKShareCapturePauseReason getShareCapturePauseReason()=0
Gets the reason why the share capture is paused.
virtual ZoomVideoSDKErrors subscribe(ZoomVideoSDKResolution resolution, IZoomVideoSDKRawDataPipeDelegate *listener)=0
Subscribe video/share.
virtual ZoomVideoSDKVideoStatus getVideoStatus()=0
Get video status.
virtual const zchar_t * getVideoDeviceName()=0
Get video device name.
virtual ZoomVideoSDKErrors unSubscribe(IZoomVideoSDKRawDataPipeDelegate *listener)=0
Unsubscribe video/share.
virtual ZoomVideoSDKRawDataType getRawdataType()=0
Get the raw data data type.
virtual ZoomVideoSDKVideoStatisticInfo getVideoStatisticInfo()=0
Get video statistic information.
virtual ZoomVideoSDKShareType getShareType()=0
Get share type.
virtual ZoomVideoSDKShareStatus getShareStatus()=0
Get share status.
virtual ZoomVideoSDKErrors giveUpControlRemoteCamera()=0
Give up control of the remote camera.
virtual ~IZoomVideoSDKRemoteCameraControlHelper()
virtual ZoomVideoSDKErrors requestControlRemoteCamera()=0
Request to control remote camera.
virtual ZoomVideoSDKErrors zoomIn(unsigned int range=50)=0
Zoom the camera in.
virtual ZoomVideoSDKErrors turnDown(unsigned int range=50)=0
Turn the camera down.
virtual ZoomVideoSDKErrors zoomOut(unsigned int range=50)=0
Zoom the camera out.
virtual ZoomVideoSDKErrors turnRight(unsigned int range=50)=0
Turn the camera to the right.
virtual ZoomVideoSDKErrors turnUp(unsigned int range=50)=0
Turn the camera up.
virtual ZoomVideoSDKErrors turnLeft(unsigned int range=50)=0
Turn the camera to the left.
virtual bool removeUser(IZoomVideoSDKUser *pUser)=0
Remove user from session.
virtual bool makeManager(IZoomVideoSDKUser *pUser)=0
Assign a user as the session manager.
virtual bool reclaimHost()=0
Reclaim host permission.
virtual ZoomVideoSDKErrors revokeManager(IZoomVideoSDKUser *pUser)=0
Revoke manager rights from a user.
virtual bool changeName(const zchar_t *name, IZoomVideoSDKUser *pUser)=0
Change a specific user's name.
virtual bool makeHost(IZoomVideoSDKUser *pUser)=0
Assign a user as the session host.
virtual unsigned int getAudioLevel()=0
Gets the current audio level of a remote user.
virtual IZoomVideoSDKRawDataPipe * GetVideoPipe()=0
Get the user's video raw data pipe.
virtual bool isHost()=0
Determines whether the user is the host.
virtual bool canSetUserPlaybackVolume(bool isShareAudio=false)=0
Checks whether you can set the volume for shared audio or microphone.
virtual bool canSetUserVolume(bool isShareAudio=false)=0
Determines which audio you can set, shared audio or microphone.
virtual const zchar_t * getUserKey()=0
Gets the user's key.
virtual bool isVideoSpotLighted()=0
Determines whether the user is spotLighted.
virtual ZoomVideoSDKAudioStatus getAudioStatus()=0
Get the user's audio status.
virtual bool setUserVolume(float volume, bool isShareAudio=false)=0
Set the user's local volume. This does not affect how other participants hear the user.
virtual bool isManager()=0
Determines whether the user is the manager(coHost).
virtual ZoomVideoSDKWhiteboardStatus getWhiteboardStatus()=0
Get the whiteboard sharing status of the user.
virtual bool getUserPlaybackVolume(float &volume, bool isShareAudio=false)=0
Gets the local volume.
virtual ZoomVideoSDKErrors transferFile(const zchar_t *filePath)=0
Send file to current user object.
virtual const zchar_t * getUserReference()=0
Get the user's reference info.
virtual bool isIncomingLiveStreamUser()=0
Determines whether the user is incoming live stream user.
virtual ZoomVideoSDKNetworkStatus getNetworkLevel(ZoomVideoSDKDataType type)=0
Gets the network quality level of the specified data type for the user.
virtual ~IZoomVideoSDKUser()
virtual const zchar_t * getUserID()=0
Get the user's id.
virtual ZoomVideoSDKVideoStatisticInfo getVideoStatisticInfo()=0
Get the user's video statistic information.
virtual const zchar_t * getUserName()=0
Get the user's name.
virtual IZoomVideoSDKCanvas * GetVideoCanvas()=0
Gets the user's video render canvas object.
virtual bool getUserVolume(float &volume, bool isShareAudio=false)=0
Get user volume.
virtual IVideoSDKVector< IZoomVideoSDKShareAction * > * getShareActionList()=0
Get the user's share-action list.
virtual ZoomVideoSDKNetworkStatus getOverallNetworkLevel()=0
Gets the overall network quality level of the user.
virtual IVideoSDKVector< IZoomVideoSDKRawDataPipe * > * getMultiCameraStreamList()=0
Get the user's multi-camera stream list.
virtual bool setUserPlaybackVolume(float volume, bool isShareAudio=false)=0
Sets the user's local volume. This does not affect how other participants hear the user.
virtual IZoomVideoSDKRemoteCameraControlHelper * getRemoteCameraControlHelper()=0
Get the helper class instance to access the remote camera control.
virtual bool isInSubSession()=0
Determines whether the user is in a subsession.
virtual bool hasIndividualRecordingConsent()=0
Used to determine whether I agree to individual video recording.
virtual const zchar_t * getCustomIdentity()=0
Get the user's custom id.
virtual ZoomVideoSDKShareStatisticInfo getShareStatisticInfo()=0
Get the user's share statistic information.
The YUV raw data handler interface.
Audio status information.
ZoomVideoSDKAudioType audioType
ZoomVideoSDKAudioStatus()
unsigned int jitterBufferEmittedCount
Number of samples emitted from jitter buffer (receive only).
unsigned int totalDecodeTime
Total time spent decoding in milliseconds (receive only).
unsigned int bytesReceived
Total bytes received (receive only).
unsigned int framesDecoded
Total number of frames decoded (receive only).
unsigned int estimatedPlayoutTimestamp
Estimated playout timestamp (receive only).
ZoomVideoSDKQOSRecvStatistics()
unsigned int jitterBufferDelay
Jitter buffer delay in milliseconds (receive only).
unsigned int packetsReceived
Total number of packets received (receive only).
unsigned int frameRateInput
Frame rate of input (send only).
unsigned int framesEncoded
Total number of frames encoded (send only).
unsigned int totalPacketSendDelay
Total packet send delay in milliseconds (send only).
unsigned int frameWidthInput
Width of the input frame (send only).
unsigned int packetsSent
Total number of packets sent.
ZoomVideoSDKQOSSendStatistics()
unsigned int totalEncodeTime
Total time spent encoding in milliseconds (send only).
unsigned int frameHeightInput
Height of the input frame (send only).
unsigned int bytesSent
Total bytes sent.
unsigned int fps
Frame rate in FPS (sent or received per direction).
unsigned int timestamp
Timestamp of the statistics.
const zchar_t * codecName
Name of the codec. Valid only during callback. For video/share: "h264", "av1". For audio: "silk",...
unsigned int rtt
Round-trip time in milliseconds.
unsigned int jitter
Jitter in milliseconds.
int bpf
Bits per frame. Same as bps for backward compatibility.
unsigned int packetsTransferred
Total number of packets transferred (sent or received per direction).
unsigned int avg_loss
Average packet loss ratio in per thousand (e.g. 100 means 10%).
unsigned int bandwidth
Estimated bandwidth in bps.
ZoomVideoSDKQOSStatistics()
unsigned int height
Frame height (sent or received per direction).
unsigned int bps
Bits per second.
unsigned int bytesTransferred
Total bytes transferred (sent or received per direction).
unsigned int max_loss
Maximum packet loss ratio in per thousand (e.g. 100 means 10%).
ZoomVideoSDKNetworkStatus networkLevel
Network quality level.
ZoomVideoSDKStatisticsDirection direction
Direction of statistics (send or receive).
unsigned int width
Frame width (sent or received per direction).
ZoomVideoSDKDataType statisticsType
Statistics type (Audio, Video, or Share).
unsigned int packetsLost
Number of packets lost during transmission.
Share cursor information.
ZoomVideoSDKShareCursorData()
Share statistic information. Inherits from ZoomVideoSDKQOSStatistics (width, height,...
ZoomVideoSDKNetworkStatus shareNetworkStatus
Gets the share network status. Same as ZoomVideoSDKQOSStatistics::networkLevel.
ZoomVideoSDKShareStatisticInfo()
Video statistic information. Inherits common QOS fields from ZoomVideoSDKQOSStatistics (width,...
ZoomVideoSDKVideoStatisticInfo()
ZoomVideoSDKNetworkStatus videoNetworkStatus
Gets the video network status. Same as ZoomVideoSDKQOSStatistics::networkLevel.
Video status information on the user's video device (the detected compatible video camera device),...
ZoomVideoSDKVideoStatus()
Zoom Video SDK Common Definition File.
ZoomVideoSDKDataType
Enumeration of the data type for network quality monitoring.
@ ZoomVideoSDKDataType_Unknown
ZoomVideoSDKWhiteboardStatus
Enumeration of the status of whiteboard sharing.
#define BEGIN_ZOOM_VIDEO_SDK_NAMESPACE
ZoomVideoSDKRawDataType
Enumeration of raw data types in Zoom Video SDK.
ZoomVideoSDKShareCapturePauseReason
Enumeration of reasons why screen sharing capture is paused in the Zoom Video SDK.
ZoomVideoSDKShareType
Enumeration of sharing types in Zoom Video SDK.
#define END_ZOOM_VIDEO_SDK_NAMESPACE
ZoomVideoSDKShareStatus
Enumeration of sharing status in Zoom Video SDK.
ZoomVideoSDKErrors
Enumeration of common Zoom Video SDK errors.
@ ZoomVideoSDKCanvasType_ShareData
@ ZoomVideoSDKCanvasType_VideoData
ZoomVideoSDKSubscribeFailReason
@ ZoomVideoSDKSubscribeFailReason_None
@ ZoomVideoSDKSubscribeFailReason_HasSubscribeTwo720P
@ ZoomVideoSDKSubscribeFailReason_TooFrequentCall
@ ZoomVideoSDKSubscribeFailReason_HasSubscribeTwoShare
@ ZoomVideoSDKSubscribeFailReason_HasSubscribeVideo1080POr720PAndOneShare
@ ZoomVideoSDKSubscribeFailReason_HasSubscribe1080POr720P
@ ZoomVideoSDKSubscribeFailReason_HasSubscribeExceededLimit
ZoomVideoSDKAudioType
Audio type: VOIP (Voice over IP), Telephony, or None.
@ ZoomVideoSDKAudioType_TELEPHONY
@ ZoomVideoSDKAudioType_VOIP
@ ZoomVideoSDKAudioType_None
@ ZoomVideoSDKResolution_720P
@ ZoomVideoSDKResolution_360P
@ ZoomVideoSDKResolution_Auto
@ ZoomVideoSDKResolution_90P
@ ZoomVideoSDKResolution_1080P
@ ZoomVideoSDKResolution_180P
@ ZoomVideoSDKVideoAspect_Original
@ ZoomVideoSDKVideoAspect_Full_Filled
@ ZoomVideoSDKVideoAspect_PanAndScan
@ ZoomVideoSDKVideoAspect_LetterBox
ZoomVideoSDKStatisticsDirection
Direction of media statistics (send or receive).
@ ZoomVideoSDKStatisticsDirection_Send
@ ZoomVideoSDKStatisticsDirection_Receive
ZoomVideoSDKNetworkStatus
@ ZoomVideoSDKNetwork_Good
@ ZoomVideoSDKNetwork_Normal
@ ZoomVideoSDKNetwork_None
@ ZoomVideoSDKNetwork_Bad
Vector container interface.