Video SDK for MacOS API Reference
Loading...
Searching...
No Matches
ZMVideoSDK.h
Go to the documentation of this file.
1
8
9#import <Foundation/Foundation.h>
10#import <ZMVideoSDK/ZMVideoSDKDelegate.h>
11#import <ZMVideoSDK/ZMVideoSDKAudioHelper.h>
12#import <ZMVideoSDK/ZMVideoSDKVideoHelper.h>
13#import <ZMVideoSDK/ZMVideoSDKUserHelper.h>
14#import <ZMVideoSDK/ZMVideoSDKShareHelper.h>
15#import <ZMVideoSDK/ZMVideoSDKLiveStreamHelper.h>
16#import <ZMVideoSDK/ZMVideoSDKChatHelper.h>
17#import <ZMVideoSDK/ZMVideoSDKSession.h>
18#import <ZMVideoSDK/ZMVideoSDKVideoSourceHelper.h>
19#import <ZMVideoSDK/ZMVideoSDKAudioSendRawdata.h>
20#import <ZMVideoSDK/ZMVideoSDKChatMessage.h>
21#import <ZMVideoSDK/ZMVideoSDKPasswordHandler.h>
22#import <ZMVideoSDK/ZMVideoSDKRecordingHelper.h>
23#import <ZMVideoSDK/ZMVideoSDKPhoneHelper.h>
24#import <ZMVideoSDK/ZMVideoSDKCmdChannel.h>
25#import <ZMVideoSDK/ZMVideoSDKAudioSettingHelper.h>
26#import <ZMVideoSDK/ZMVideoSDKNetworkConnectionHelper.h>
27#import <ZMVideoSDK/ZMVideoSDKRecordingConsentHandler.h>
28#import <ZMVideoSDK/ZMVideoSDKVideoSettingHelper.h>
29#import <ZMVideoSDK/ZMVideoSDKShareSettingHelper.h>
30#import <ZMVideoSDK/ZMVideoSDKVideoCanvas.h>
31#import <ZMVideoSDK/ZMVideoSDKCRCHelper.h>
32#import <ZMVideoSDK/ZMVideoSDKAnnotationHelper.h>
33#import <ZMVideoSDK/ZMVideoSDKLiveTranscriptionHelper.h>
34#import <ZMVideoSDK/ZMVideoSDKVoiceInterpretationHelper.h>
35#import <ZMVideoSDK/ZMVideoSDKSubSessionHelper.h>
36#import <ZMVideoSDK/ZMVideoSDKBroadcastStreamingController.h>
37#import <ZMVideoSDK/ZMVideoSDKBroadcastStreamingViewer.h>
38#import <ZMVideoSDK/ZMVideoSDKEmojiReactionHelper.h>
39#import <ZMVideoSDK/ZMVideoSDKRTMSHelper.h>
40
41NS_ASSUME_NONNULL_BEGIN
43
48@interface ZMVideoSDKInitParams : NSObject
52@property (nonatomic, retain, readwrite, nullable) NSString* domain;
53
57@property (nonatomic, retain, readwrite, nullable) NSString* logFilePrefix;
58
62@property (nonatomic, assign, readwrite) BOOL enableLog;
63
67@property (nonatomic, assign, readwrite) ZMVideoSDKRawDataMemoryMode audioRawDataMemoryMode;
68
72@property (nonatomic, assign, readwrite) ZMVideoSDKRawDataMemoryMode videoRawDataMemoryMode;
73
77@property (nonatomic, assign, readwrite) ZMVideoSDKRawDataMemoryMode shareRawDataMemoryMode;
78
82@property (retain, nonatomic, nullable) ZMVideoSDKExtendParams *extendParams;
83@end
84
89@interface ZMVideoSDKExtendParams : NSObject
94@property (nonatomic, copy, nullable) NSString *speakerTestFilePath;
95
99@property (nonatomic, assign, readwrite) int wrapperType;
100
104@property (nonatomic, assign, readwrite) ZMVideoSDKPreferVideoResolution preferVideoResolution;
105
109@property (nonatomic, assign, readwrite) BOOL disableKeychainAccess;
110@end
111
112
117@interface ZMVideoSDKVideoOption : NSObject
121@property (nonatomic, assign, readwrite) BOOL localVideoOn;
122@end
123
128@interface ZMVideoSDKAudioOption : NSObject
132@property (nonatomic, assign, readwrite) BOOL connect;
133
137@property (nonatomic, assign, readwrite) BOOL mute;
138
142@property (nonatomic, assign, readwrite) BOOL isMyVoiceInMix;
143
147@property (nonatomic, assign, readwrite) BOOL autoAdjustSpeakerVolume;
148
149@end
150
155@interface ZMVideoSDKSessionContext : NSObject
156
160@property (nonatomic, retain, readwrite, nullable) NSString* sessionName;
161
165@property (nonatomic, retain, readwrite, nullable) NSString* sessionPassword;
166
170@property (nonatomic, retain, readwrite, nullable) NSString* userName;
171
175@property (nonatomic, retain, readwrite, nullable) NSString* token;
176
180@property (nonatomic, retain, readwrite, nullable) ZMVideoSDKVideoOption* videoOption;
181
185@property (nonatomic, retain, readwrite, nullable) ZMVideoSDKAudioOption* audioOption;
186
190@property (nonatomic, assign, readwrite) id<ZMVideoSDKVideoSourcePreProcessor> preProcessor;
194@property (nonatomic, assign, readwrite) id<ZMVideoSDKVideoSource> externalVideoSource;
198@property (nonatomic, assign, readwrite) id<ZMVideoSDKVirtualAudioMic> virtualAudioMic;
202@property (nonatomic, assign, readwrite) id<ZMVideoSDKVirtualAudioSpeaker> virtualAudioSpeaker;
208@property (nonatomic, assign, readwrite) unsigned int sessionIdleTimeoutMins;
212@property (nonatomic, assign, readwrite) BOOL autoLoadMutliStream;
217@property (nonatomic, assign, readwrite) ZMVideoSDKFrameDataFormat externalVideoSourceDataFormat;
218@end
219
225@interface ZMVideoSDKPreJoinParam : NSObject
229@property (nonatomic, assign) NSUInteger timeoutInterval;
230@end
231
232
237@interface ZMVideoSDK : NSObject
238
244
251
259
264- (void)addListener:(id <ZMVideoSDKDelegate>)listener;
265
270- (void)removeListener:(id <ZMVideoSDKDelegate>)listener;
271
277- (ZMVideoSDKSession* _Nullable)joinSession:(ZMVideoSDKSessionContext*)params;
278
286- (ZMVideoSDKSession* _Nullable)prepareJoin:(ZMVideoSDKSessionContext*)params preJoinParam:(ZMVideoSDKPreJoinParam*)preJoinParam;
287
294
300
306- (ZMVideoSDKErrors)leaveSession:(BOOL)end;
307
313
319
324- (NSString* _Nullable)getSDKVersion;
325
330- (NSString* _Nullable)exportLog;
331
337
343
349
355
361
367
373
379
385
391
397
403
409
415
421
427
433
439
445
452
458
464
470
476@end
477NS_ASSUME_NONNULL_END
ZMVideoSDKRawDataMemoryMode
Enumeration of memory modes for raw data handling.
ZMVideoSDKErrors
Enumerates all errors in the VideoSDK.
ZMVideoSDKFrameDataFormat
Enumeration of raw data formats. Defines the color space format and color range for video frames.
ZMVideoSDKPreferVideoResolution
Enumeration of preferred video resolution in Zoom Video SDK.
Interface for testing audio input and output devices.
Provides methods for managing audio in Zoom Video SDK sessions.
Audio configuration options for joining a session.
Definition ZMVideoSDK.h:129
BOOL autoAdjustSpeakerVolume
Whether to automatically adjust the speaker's volume or not. If YES, this automaticallies adjust the ...
Definition ZMVideoSDK.h:147
BOOL connect
Whether to connect local audio or not.
Definition ZMVideoSDK.h:132
BOOL isMyVoiceInMix
Determines whether my voice is in the mixed audio raw data or not. YES to include....
Definition ZMVideoSDK.h:142
BOOL mute
Whether to mute audio or not.
Definition ZMVideoSDK.h:137
Interface for managing audio settings in Zoom Video SDK.
Helper interface for Cloud Room Connector (CRC) features.
Chat helper interface.
The command channel allows users to send commands or data (such as plain text or a binary encoded int...
Emoji reaction helper interface for sending emoji reactions in a session.
Extended configuration parameters for Zoom Video SDK.
Definition ZMVideoSDK.h:90
ZMVideoSDKPreferVideoResolution preferVideoResolution
Prefer video resolution.
Definition ZMVideoSDK.h:104
NSString * speakerTestFilePath
Specify a file path for speaker test.
Definition ZMVideoSDK.h:94
BOOL disableKeychainAccess
Disable access keychain.
Definition ZMVideoSDK.h:109
int wrapperType
Wrapper type.
Definition ZMVideoSDK.h:99
Zoom Video SDK API manager. Main singleton object that controls the video session creation,...
Definition ZMVideoSDK.h:238
ZMVideoSDKShareSettingHelper * getShareSettingHelper()
Gets share setting helper object.
ZMVideoSDKErrors cleanUp()
Clean up the Zoom Video SDK.
ZMVideoSDKAudioDeviceTestHelper * getAudioDeviceTestHelper()
Returns an instance to manage audio device test during or before a video SDK session.
ZMVideoSDKNetworkConnectionHelper * getNetworkConnectionHelper()
Returns an instance to manage network connection during or before a video SDK session.
NSString *_Nullable getSDKVersion()
Returns Zoom SDK internal version.
ZMVideoSDKRTMSHelper *_Nullable getRealTimeMediaStreamsHelper()
Returns an instance to manage RTMS (Real-Time Media Streams) during a video SDK session.
ZMVideoSDKErrors cleanAllExportedLogs()
Cleans all exported logs.
ZMVideoSDKEmojiReactionHelper *_Nullable getEmojiReactionHelper()
Gets the emoji reaction helper object.
ZMVideoSDKCRCHelper * getCRCHelper()
Gets crc helper object.
BOOL isInSession()
Checks if there is an active session between participants.
ZMVideoSDKUserHelper * getUserHelper()
Returns an instance to manage users present in a video SDK session.
ZMVideoSDKVideoSettingHelper * getVideoSettingHelper()
Gets video setting helper object.
ZMVideoSDKChatHelper * getChatHelper()
Returns an instance to send and receive chat messages within video SDK session participants.
ZMVideoSDKSession *_Nullable getSessionInfo()
Returns the current session information.
NSString *_Nullable exportLog()
Exports a log file to local disk.
ZMVideoSDKLiveTranscriptionHelper * getLiveTranscriptionHelper()
Gets live transcription helper object.
ZMVideoSDKSubSessionHelper *_Nullable getSubSessionHelper()
Gets the subsession helper object.
ZMVideoSDKBroadcastStreamingViewer *_Nullable getBroadcastStreamingViewer()
Gets the broadcast streaming viewer object.
ZMVideoSDK * sharedVideoSDK()
Returns ZMVideoSDK instance.
ZMVideoSDKAudioSettingHelper * getAudioSettingHelper()
Returns an instance to manage audio setting during or before a video SDK session.
ZMVideoSDKRecordingHelper * getRecordingHelper()
Returns an instance to manage cloud recordings during a video SDK session.
ZMVideoSDKVideoHelper * getVideoHelper()
Returns an instance to manage cameras and video during a video SDK session.
ZMVideoSDKPhoneHelper * getPhoneHelper()
Returns an instance to manage phone invitations during a video SDK session.
ZMVideoSDKVoiceInterpretationHelper * getVoiceInterpretationHelper()
Gets voice interpretation helper object.
ZMVideoSDKErrors commitJoin()
Confirms the join after prepareJoin:preJoinParam:. Valid in the two-step join flow.
ZMVideoSDKShareHelper * getShareHelper()
Returns an instance to manage screen sharing during a video SDK session.
ZMVideoSDKAudioHelper * getAudioHelper()
Returns an instance to manage audio controls related to the current video SDK session.
ZMVideoSDKIncomingLiveStreamHelper * getIncomingLiveStreamHelper()
Gets incoming live stream helper object.
ZMVideoSDKLiveStreamHelper * getLiveStreamHelper()
Returns an instance to manage live streaming during a video SDK session.
ZMVideoSDKBroadcastStreamingController *_Nullable getBroadcastStreamingController()
Gets the broadcast streaming controller object.
ZMVideoSDKCmdChannel * getCmdChannel()
Returns an instance to use command channel features during a video SDK session.
ZMVideoSDKErrors cancelPrepareJoin()
Cancels the prepare join. Valid in the two-step join flow.
Interface for managing incoming live streams.
Initialization parameters for Zoom Video SDK.
Definition ZMVideoSDK.h:49
ZMVideoSDKExtendParams * extendParams
Extended parameters.
Definition ZMVideoSDK.h:82
NSString * logFilePrefix
Prefix of log file name.
Definition ZMVideoSDK.h:57
ZMVideoSDKRawDataMemoryMode shareRawDataMemoryMode
Sets share raw data memory mode.
Definition ZMVideoSDK.h:77
BOOL enableLog
Sets whether to enable default log of which the capacity is less than 5M.
Definition ZMVideoSDK.h:62
ZMVideoSDKRawDataMemoryMode audioRawDataMemoryMode
Sets audio raw data memory mode.
Definition ZMVideoSDK.h:67
ZMVideoSDKRawDataMemoryMode videoRawDataMemoryMode
Sets video raw data memory mode.
Definition ZMVideoSDK.h:72
NSString * domain
Sets client domain of ZOOM Video SDK.
Definition ZMVideoSDK.h:52
Helper class for managing outgoing live stream.
Provides methods for controlling and interacting with live transcription.
A helper class for configuring proxy settings for SDK network connections.
Provides methods for managing phone-related session features such as dial-in and phone invites.
Pre-join parameters for the two-step join flow.
Definition ZMVideoSDK.h:226
NSUInteger timeoutInterval
The prepare join wait time in seconds. 0 uses the SDK default.
Definition ZMVideoSDK.h:229
Helper class for managing real-time media streams.
Helper class for using cloud recording in the session.
Session context information for a Zoom Video SDK session.
Definition ZMVideoSDK.h:156
id< ZMVideoSDKVideoSourcePreProcessor > preProcessor
Sets delegate. (optional).
Definition ZMVideoSDK.h:190
ZMVideoSDKVideoOption * videoOption
Video option.
Definition ZMVideoSDK.h:180
id< ZMVideoSDKVirtualAudioMic > virtualAudioMic
Sets virtual audio delegate (optional).
Definition ZMVideoSDK.h:198
NSString * userName
User name(required).
Definition ZMVideoSDK.h:170
NSString * sessionName
Session name.
Definition ZMVideoSDK.h:160
id< ZMVideoSDKVideoSource > externalVideoSource
Sets delegate (optional).
Definition ZMVideoSDK.h:194
NSString * sessionPassword
Session password (optional).
Definition ZMVideoSDK.h:165
NSString * token
JWT token to join session.
Definition ZMVideoSDK.h:175
ZMVideoSDKFrameDataFormat externalVideoSourceDataFormat
[Optional] The frame data format used for external video source initialization.
Definition ZMVideoSDK.h:217
unsigned int sessionIdleTimeoutMins
[Optional] The amount of time in minutes after which an idle session ends.
Definition ZMVideoSDK.h:208
id< ZMVideoSDKVirtualAudioSpeaker > virtualAudioSpeaker
Sets virtual audio speaker delegate (optional).
Definition ZMVideoSDK.h:202
ZMVideoSDKAudioOption * audioOption
Audio option.
Definition ZMVideoSDK.h:185
BOOL autoLoadMutliStream
Whether to automatically load multi streams when entering a session, default value is YES,...
Definition ZMVideoSDK.h:212
Provides access to session-level information and operations.
Main helper class managing sharing.
Helper class to manage share-related settings.
Helper class for managing subsessions.
User control interface.
An interface to control video and manage cameras during a video session.
Video configuration options for joining a session.
Definition ZMVideoSDK.h:118
BOOL localVideoOn
Sets local video on or off.
Definition ZMVideoSDK.h:121
Provides settings-related functions to configure video enhancement options.
Provides methods for controlling and interacting with voice interpretation.