6#import <Foundation/Foundation.h>
7#import <ZMVideoSDK/ZMVideoSDKDef.h>
8#import <ZMVideoSDK/ZMVideoSDKVideoCanvas.h>
12NS_ASSUME_NONNULL_BEGIN
27@property (nonatomic, assign, readonly) BOOL
isOn;
44@property (nonatomic, assign, readonly) BOOL
isMuted;
49@property (nonatomic, assign, readonly) BOOL
isTalking;
67@property (nonatomic, assign, readonly) NSInteger
timestamp;
72@property (nonatomic, copy, readonly) NSString * _Nullable
codecName;
77@property (nonatomic, assign, readonly) NSInteger
rtt;
82@property (nonatomic, assign, readonly) NSInteger
jitter;
87@property (nonatomic, assign, readonly) NSInteger
width;
92@property (nonatomic, assign, readonly) NSInteger
height;
97@property (nonatomic, assign, readonly) NSInteger
fps;
102@property (nonatomic, assign, readonly) NSInteger
bps;
132@property (nonatomic, assign, readonly) NSInteger
avg_loss;
137@property (nonatomic, assign, readonly) NSInteger
max_loss;
142@property (nonatomic, assign, readonly) NSInteger
bandwidth;
171@property (nonatomic, assign, readonly) NSInteger
bytesSent;
249@property (nonatomic, assign, readonly)
int bpf DEPRECATED_MSG_ATTRIBUTE(
"Use bps instead");
268@property (nonatomic, assign, readonly)
int bpf DEPRECATED_MSG_ATTRIBUTE(
"Use bps instead");
286@property (nonatomic, assign, readonly)
char* _Nullable
yBuffer;
291@property (nonatomic, assign, readonly)
char* _Nullable
uBuffer;
296@property (nonatomic, assign, readonly)
char* _Nullable
vBuffer;
301@property (nonatomic, assign, readonly)
char* _Nullable
buffer;
306@property (nonatomic, assign, readonly, nullable)
char*
alphaBuffer;
311@property (nonatomic, assign, readonly)
unsigned int bufferLen;
336@property (nonatomic, assign, readonly)
unsigned int rotation;
341@property (nonatomic, assign, readonly)
unsigned int resourceID;
346@property (nonatomic, assign, readonly)
long long timeStamp;
377@property (nonatomic, assign, readonly)
unsigned int sourceID;
382@property (nonatomic, assign, readonly)
int x;
387@property (nonatomic, assign, readonly)
int y;
394@protocol ZMVideoSDKRawDataPipeDelegate <NSObject>
664- (BOOL)setUserVolume:(
float)volume isSharingAudio:(BOOL)isSharingAudio DEPRECATED_MSG_ATTRIBUTE("Use -setUserPlaybackVolume:isSharingAudio: instead");
673- (BOOL)getUserVolume:(
float*)volume isSharingAudio:(BOOL)isSharingAudio DEPRECATED_MSG_ATTRIBUTE("Use -getUserPlaybackVolume:isSharingAudio: instead");
681- (BOOL)canSetUserVolume:(BOOL)isShareAudio DEPRECATED_MSG_ATTRIBUTE("Use -canSetUserPlaybackVolume: instead");
689- (BOOL)setUserPlaybackVolume:(
float)volume isSharingAudio:(BOOL)isSharingAudio;
697- (BOOL)getUserPlaybackVolume:(
float*)volume isSharingAudio:(BOOL)isSharingAudio;
704- (BOOL)canSetUserPlaybackVolume:(BOOL)isShareAudio;
ZMVideoSDKResolution
Enumeration of render resolution.
ZMVideoSDKRawDataType
Enumeration of raw data types.
ZMVideoSDKDataType
Enumeration of the data type for network quality monitoring.
ZMVideoSDKShareCapturePauseReason
Enumeration of reasons why screen sharing capture is paused in the Zoom Video SDK.
ZMVideoSDKShareType
Enumerates the types of content available for sharing in a session.
ZMVideoSDKStatisticsDirection
Direction of media statistics (send or receive).
ZMVideoSDKErrors
Enumerates all errors in the VideoSDK.
ZMVideoSDKWhiteboardStatus
Enumeration of the status of whiteboard sharing.
ZMVideoSDKRawDataStatus
Enumeration the statuses of raw data.
ZMVideoSDKNetworkStatus
Enumerates the network statuses.
ZMVideoSDKShareStatus
Enumerates the status of sharing.
ZMVideoSDKAudioType
Enumerates the types of audio.
BOOL isTalking
Determines whether the user is talking.
BOOL isMuted
Determines whether the audio is muted.
ZMVideoSDKAudioType audioType
Gets audio type: VOIP (Voice over IP), Telephony, or None.
Camera control request handler object interface.
ZMVideoSDKErrors approve()
Approve the remote camera control request.
ZMVideoSDKErrors decline()
Decline the remote camera control request.
QOS statistics for inbound media stream (receiving).
NSInteger jitterBufferEmittedCount
Gets the number of samples emitted from jitter buffer (receive only).
NSInteger totalDecodeTime
Gets the total time spent decoding in milliseconds (receive only).
NSInteger estimatedPlayoutTimestamp
Gets the estimated playout timestamp (receive only).
NSInteger packetsReceived
Gets the total number of packets received (receive only).
NSInteger bytesReceived
Gets the total bytes received (receive only).
NSInteger framesDecoded
Gets the total number of frames decoded (receive only).
NSInteger jitterBufferDelay
Gets the jitter buffer delay in milliseconds (receive only).
QOS statistics for outbound media stream (sending).
NSInteger totalEncodeTime
Gets the total time spent encoding in milliseconds (send only).
NSInteger frameHeightInput
Gets the height of the input frame (send only).
NSInteger packetsSent
Gets the total number of packets sent.
NSInteger totalPacketSendDelay
Gets the total packet send delay in milliseconds (send only).
NSInteger frameRateInput
Gets the frame rate of input (send only).
NSInteger framesEncoded
Gets the total number of frames encoded (send only).
NSInteger bytesSent
Gets the total bytes sent.
NSInteger frameWidthInput
Gets the width of the input frame (send only).
Base QOS statistics for media streams (Audio, Video, Share).
NSInteger jitter
Gets the jitter in milliseconds.
NSInteger rtt
Gets the round-trip time in milliseconds.
NSString *_Nullable codecName
Gets the name of the codec. For video/share: "h264", "av1". For audio: "silk", "opus",...
NSInteger bps
Gets the bits per second.
NSInteger timestamp
Gets the timestamp of the statistics.
NSInteger height
Frame height (sent or received per direction).
ZMVideoSDKStatisticsDirection direction
Gets the direction of statistics (send or receive).
NSInteger fps
Frame rate in FPS (sent or received per direction).
ZMVideoSDKNetworkStatus networkLevel
Gets the network quality level.
ZMVideoSDKDataType statisticsType
Gets the statistics type (Audio, Video, or Share).
NSInteger max_loss
Gets the maximum packet loss ratio in per thousand (e.g. 100 means 10%).
NSInteger packetsLost
Gets the number of packets lost during transmission.
NSInteger packetsTransferred
Gets the total number of packets transferred (sent or received per direction).
NSInteger bytesTransferred
Gets the total bytes transferred (sent or received per direction).
NSInteger width
Frame width (sent or received per direction).
NSInteger avg_loss
Gets the average packet loss ratio in per thousand (e.g. 100 means 10%).
NSInteger bandwidth
Gets the estimated bandwidth in bps.
Video or share raw data pipe interface.
ZMVideoSDKRawDataType getRawdataType()
Gets the raw data data type.
ZMVideoSDKVideoStatisticInfo *_Nullable getVideoStatisticInfo()
Gets video statistic information.
ZMVideoSDKShareType getShareType()
Gets share type.
ZMVideoSDKVideoStatus *_Nullable getVideoStatus()
Gets video status.
ZMVideoSDKShareCapturePauseReason getShareCapturePauseReason()
Gets the reason why the share capture is paused.
NSString *_Nullable getVideoDeviceName()
Gets video device name.
ZMVideoSDKShareStatus getShareStatus()
Gets share status.
Remote camera control helper object interface.
ZMVideoSDKErrors requestControlRemoteCamera()
Requests to control remote camera.
ZMVideoSDKErrors giveUpControlRemoteCamera()
Give up control of the remote camera.
Represents the state and control interfaces of a share action in a Zoom session.
Represents the cursor position data during screen sharing.
unsigned int sourceID
The source id of the share cursor.
int y
The y value of the coordinate.
int x
The x value of the coordinate.
Share statistic information. Inherits QOS fields (width, height, fps, bps, direction,...
int bpf
Gets share bits per frame. Same as bps.
ZMVideoSDKNetworkStatus shareNetworkStatus
Gets share network status. Same as networkLevel.
BOOL reclaimHost()
Reclaim host permission. Allow the user whose role_type = 1 to reclaim the host role.
Zoom Video SDK user information.
unsigned int getAudioLevel()
Gets the current audio level of a remote user.
BOOL isIncomingLiveStreamUser()
Determines whether the user is incoming live stream user.
NSArray< ZMVideoSDKRawDataPipe * > *_Nullable getMultiCameraStreamList()
Gets the user's multi-camera stream list.
NSArray< ZMVideoSDKShareAction * > *_Nullable getShareActionList()
Gets the user's share-action list.
BOOL isInSubSession()
Determines whether the user is in a subsession.
BOOL isHost()
Determines whether the user is the host.
ZMVideoSDKWhiteboardStatus getWhiteboardStatus()
Gets the user's whiteboard sharing status.
BOOL isManager()
Determines whether the user is the manager.
NSString *_Nullable getUserKey()
Gets the user's key.
NSString *_Nullable getUserReference()
Gets the user's reference.
ZMVideoSDKRemoteCameraControlHelper *_Nullable getRemoteCameraControlHelper()
Gets the helper class instance to access the remote camera control.
ZMVideoSDKShareStatisticInfo *_Nullable getShareStatisticInfo()
Gets the user's share statistic information.
ZMVideoSDKVideoCanvas *_Nullable getVideoCanvas()
Gets the user's video canvas.
ZMVideoSDKVideoStatisticInfo *_Nullable getVideoStatisticInfo()
Gets the user's video statistic information.
NSString *_Nullable getCustomIdentity()
Gets the user's custom identity.
BOOL hasIndividualRecordingConsent()
Determines whether I agree to individual video recording.
NSString *_Nullable getUserName()
Gets the user's name in the session.
NSString *_Nullable getUserID()
Gets the user's ID.
ZMVideoSDKAudioStatus *_Nullable getAudioStatus()
Gets the user's audio status.
ZMVideoSDKRawDataPipe *_Nullable getVideoPipe()
Gets the user's video pipe.
ZMVideoSDKNetworkStatus getOverallNetworkLevel()
Gets the user's overall network quality level.
BOOL isVideoSpotLighted()
Check if user is spotlighted.
Manages the rendering of video or screen share content in the Zoom Video SDK.
Video statistic information. Inherits QOS fields (width, height, fps, bps, direction,...
int bpf
Gets video bits per frame. Same as bps.
ZMVideoSDKNetworkStatus videoNetworkStatus
Gets video network status. Same as networkLevel.
ZMVideoSDKVideoStatus provides information on the user's video device (the detected compatible video ...
BOOL isHasVideoDevice
Query if the user's device has a compatible camera. YES : compatible camera detected,...
BOOL isOn
Query if the camera is turned on. YES : camera turned on, NO : camera turned off.
YUV raw data 420 infomation interface.
BOOL canAddRef()
Determines if adding a reference to the raw data buffer is supported.
char *_Nullable yBuffer
Gets the YUVI420 Y buffer. The Y component represents the luma or brightness values.
unsigned int bufferLen
The buffer length of this data.
unsigned int resourceID
Gets the source_id of current YUV raw data.
char *_Nullable vBuffer
Gets the YUVI420 V buffer. The V component represents the chroma values.
BOOL isLimitedI420
Gets if this data is limited I420 format.
char *_Nullable buffer
The buffer data.
unsigned int streamWidth
Query stream width.
char *_Nullable uBuffer
Gets the YUVI420 U buffer. The U component represents the chroma values.
unsigned int rotation
Query the video raw data rotation.
unsigned int streamHeight
Gets the stream height.
unsigned int alphaBufferLen
Gets the alpha buffer length.
BOOL addRef()
Increase reference count by 1. Adding a reference ensures that the raw data buffer nots be released.
char * alphaBuffer
Gets video alpha mask data buffer.
int releaseRef()
Decrease reference count by 1. When finished using the raw data buffer, call releaseRef.
long long timeStamp
Millisecond timestamp.