ZMVideoSDKDef.h 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591
  1. typedef enum
  2. {
  3. ZMVideoSDKErrors_Success = 0,///<Success.
  4. ZMVideoSDKErrors_Wrong_Usage,
  5. ZMVideoSDKErrors_Internal_Error,
  6. ZMVideoSDKErrors_Uninitialize,
  7. ZMVideoSDKErrors_Memory_Error,
  8. ZMVideoSDKErrors_Load_Module_Error,
  9. ZMVideoSDKErrors_UnLoad_Module_Error,
  10. ZMVideoSDKErrors_Invalid_Parameter,
  11. ZMVideoSDKErrors_Call_Too_Frequently,
  12. ZMVideoSDKErrors_No_Impl,
  13. ZMVideoSDKErrors_Dont_Support_Feature,
  14. ZMVideoSDKErrors_Unknown,
  15. ZMVideoSDKErrors_Auth_Error = 1001,
  16. ZMVideoSDKErrors_Auth_Empty_Key_or_Secret,
  17. ZMVideoSDKErrors_Auth_Wrong_Key_or_Secret,
  18. ZMVideoSDKErrors_Auth_DoesNot_Support_SDK,
  19. ZMVideoSDKErrors_Auth_Disable_SDK,
  20. ZMVideoSDKErrors_JoinSession_NoSessionName = 1500,
  21. ZMVideoSDKErrors_JoinSession_NoSessionToken,
  22. ZMVideoSDKErrors_JoinSession_NoUserName,
  23. ZMVideoSDKErrors_JoinSession_Invalid_SessionName,
  24. ZMVideoSDKErrors_JoinSession_Invalid_Password,
  25. ZMVideoSDKErrors_JoinSession_Invalid_SessionToken,
  26. ZMVideoSDKErrors_JoinSession_SessionName_TooLong,
  27. ZMVideoSDKErrors_JoinSession_Token_MismatchedSessionName,
  28. ZMVideoSDKErrors_JoinSession_Token_NoSessionName,
  29. ZMVideoSDKErrors_JoinSession_Token_RoleType_EmptyOrWrong,
  30. ZMVideoSDKErrors_JoinSession_Token_UserIdentity_TooLong,
  31. ZMVideoSDKErrors_SessionModule_Not_Found = 2001,
  32. ZMVideoSDKErrors_SessionService_Invalid,
  33. ZMVideoSDKErrors_Session_Join_Failed,
  34. ZMVideoSDKErrors_Session_No_Rights,
  35. ZMVideoSDKErrors_Session_Already_In_Progress,
  36. ZMVideoSDKErrors_Session_Dont_Support_SessionType,
  37. ZMVideoSDKErrors_Session_Reconnecting,
  38. ZMVideoSDKErrors_Session_Disconnecting,
  39. ZMVideoSDKErrors_Session_Not_Started,
  40. ZMVideoSDKErrors_Session_Need_Password,
  41. ZMVideoSDKErrors_Session_Password_Wrong,
  42. ZMVideoSDKErrors_Session_Remote_DB_Error,
  43. ZMVideoSDKErrors_Session_Invalid_Param,
  44. ZMVideoSDKErrors_Session_Client_Incompatible,
  45. ZMVideoSDKErrors_Session_Audio_Error = 3000,
  46. ZMVideoSDKErrors_Session_Audio_No_Microphone,
  47. ZMVideoSDKErrors_Session_Audio_No_Speaker,
  48. ZMVideoSDKErrors_Session_Video_Error = 4000,
  49. ZMVideoSDKErrors_Session_Video_Device_Error,
  50. ZMVideoSDKErrors_Session_Live_Stream_Error = 5000,
  51. ZMVideoSDKErrors_Session_Phone_Error = 5500,
  52. ZMVideoSDKErrors_RAWDATA_MALLOC_FAILED = 6001,
  53. ZMVideoSDKErrors_RAWDATA_NOT_IN_Session,
  54. ZMVideoSDKErrors_RAWDATA_NO_LICENSE,
  55. ZMVideoSDKErrors_RAWDATA_VIDEO_MODULE_NOT_READY,
  56. ZMVideoSDKErrors_RAWDATA_VIDEO_MODULE_ERROR,
  57. ZMVideoSDKErrors_RAWDATA_VIDEO_DEVICE_ERROR,
  58. ZMVideoSDKErrors_RAWDATA_NO_VIDEO_DATA,
  59. ZMVideoSDKErrors_RAWDATA_SHARE_MODULE_NOT_READY,
  60. ZMVideoSDKErrors_RAWDATA_SHARE_MODULE_ERROR,
  61. ZMVideoSDKErrors_RAWDATA_NO_SHARE_DATA,
  62. ZMVideoSDKErrors_RAWDATA_AUDIO_MODULE_NOT_READY,
  63. ZMVideoSDKErrors_RAWDATA_AUDIO_MODULE_ERROR,
  64. ZMVideoSDKErrors_RAWDATA_NO_AUDIO_DATA,
  65. ZMVideoSDKErrors_RAWDATA_PREPROCESS_RAWDATA_ERROR,
  66. ZMVideoSDKErrors_RAWDATA_NO_DEVICE_RUNNING,
  67. ZMVideoSDKErrors_RAWDATA_INIT_DEVICE,
  68. ZMVideoSDKErrors_RAWDATA_VIRTUAL_DEVICE,
  69. ZMVideoSDKErrors_RAWDATA_CANNOT_CHANGE_VIRTUAL_DEVICE_IN_PREVIEW,
  70. ZMVideoSDKErrors_RAWDATA_INTERNAL_ERROR,
  71. ZMVideoSDKErrors_RAWDATA_SEND_TOO_MUCH_DATA_IN_SINGLE_TIME,
  72. ZMVideoSDKErrors_RAWDATA_SEND_TOO_FREQUENTLY,
  73. ZMVideoSDKErrors_RAWDATA_VIRTUAL_MIC_IS_TERMINATE,
  74. ZMVideoSDKErrors_Session_Share_Error = 7001,
  75. ZMVideoSDKErrors_Session_Share_Module_Not_Ready,
  76. ZMVideoSDKErrors_Session_Share_You_Are_Not_Sharing,
  77. ZMVideoSDKErrors_Session_Share_Type_Is_Not_Support,
  78. ZMVideoSDKErrors_Session_Share_Internal_Error,
  79. ZMVideoSDKErrors_Dont_Support_Multi_Stream_Video_User,
  80. ZMVideoSDKErrors_Fail_Assign_User_Privilege,
  81. ZMVideoSDKErrors_No_Recording_In_Process,
  82. ZMVideoSDKErrors_Set_Virtual_Background_Fail,
  83. ZMVideoSDKErrors_Filetransfer_UnknowError = 7500,
  84. ZMVideoSDKErrors_Filetransfer_FileTypeBlocked,
  85. ZMVideoSDKErrors_Filetransfer_FileSizelimited
  86. }ZMVideoSDKErrors;
  87. typedef enum
  88. {
  89. //No view or screen share available.
  90. ZMVideoSDKShareStatus_None,
  91. //User started sharing.
  92. ZMVideoSDKShareStatus_Start,
  93. //User paused sharing.
  94. ZMVideoSDKShareStatus_Pause,
  95. //User resumed sharing.
  96. ZMVideoSDKShareStatus_Resume,
  97. //User stopped sharing.
  98. ZMVideoSDKShareStatus_Stop,
  99. }ZMVideoSDKShareStatus;
  100. typedef enum
  101. {
  102. //The live stream status is none.
  103. ZMVideoSDKLiveStreamStatus_None,
  104. //The live stream status is in progress.
  105. ZMVideoSDKLiveStreamStatus_InProgress,
  106. //The live stream status is connecting.
  107. ZMVideoSDKLiveStreamStatus_Connecting,
  108. //The live stream status is failed.
  109. ZMVideoSDKLiveStreamStatus_FailedTimeout,
  110. //The live stream status is start failed.
  111. ZMVideoSDKLiveStreamStatus_StartFailed,
  112. //The live stream status is end.
  113. ZMVideoSDKLiveStreamStatus_Ended,
  114. }ZMVideoSDKLiveStreamStatus;
  115. typedef enum
  116. {
  117. //Raw data type is video.
  118. ZMVideoSDKRawDataType_Video = 0,
  119. //Raw data type is share.
  120. ZMVideoSDKRawDataType_Share,
  121. }ZMVideoSDKRawDataType;
  122. typedef enum
  123. {
  124. //The resolution is 90p.
  125. ZMVideoSDKResolution_90P = 0,
  126. //The resolution is 180p.
  127. ZMVideoSDKResolution_180P,
  128. //The resolution is 360p.
  129. ZMVideoSDKResolution_360P,
  130. //The resolution is 720p. Video resolution might be 1080p based on the user's network condition and device specs.
  131. ZMVideoSDKResolution_720P,
  132. //The resolution is 1080p. Video resolution might be 720p based on the user's network condition and device specs.
  133. ZMVideoSDKResolution_1080P,
  134. //The resolution is changed automatically according to the size of the view, only avaliable for video canvas.
  135. ZMVideoSDKResolution_Auto = 100,
  136. }ZMVideoSDKResolution;
  137. typedef enum
  138. {
  139. //The memory mode is srack.
  140. ZMVideoSDKRawDataMemoryMode_Stack,
  141. //The memory mode is heap.
  142. ZMVideoSDKRawDataMemoryMode_Heap,
  143. }ZMVideoSDKRawDataMemoryMode;
  144. typedef enum
  145. {
  146. //The raw data status is on.
  147. ZMVideoSDKRawData_On,
  148. //The raw data status if off.
  149. ZMVideoSDKRawData_Off,
  150. }ZMVideoSDKRawDataStatus;
  151. //Audio type
  152. typedef enum {
  153. //Audio type is voip.
  154. ZMVideoSDKAudioType_VOIP,
  155. //Audio type is telephony.
  156. ZMVideoSDKAudioType_TELEPHONY,
  157. //Audio type is none.
  158. ZMVideoSDKAudioType_None,
  159. }ZMVideoSDKAudioType;
  160. //Video Rotation
  161. typedef enum
  162. {
  163. //Video rotation is 0.
  164. ZMVideoRotation_0,
  165. //Video rotation is 90.
  166. ZMVideoRotation_90,
  167. //Video rotation is 180.
  168. ZMVideoRotation_180,
  169. //Video rotation is 270.
  170. ZMVideoRotation_270,
  171. }ZMVideoRotation;
  172. typedef enum
  173. {
  174. //Balance mode.
  175. ZMVideoSDKVideoPreferenceMode_Balance,
  176. //Sharpness mode.
  177. ZMVideoSDKVideoPreferenceMode_Sharpness,
  178. //Smoothness mode.
  179. ZMVideoSDKVideoPreferenceMode_Smoothness,
  180. //Custom mode.
  181. ZMVideoSDKVideoPreferenceMode_Custom,
  182. }ZMVideoSDKVideoPreferenceMode;
  183. typedef enum
  184. {
  185. //The recording has successfully started or successfully resumed.
  186. ZMRecording_Start,
  187. //The recording has stopped.
  188. ZMRecording_Stop,
  189. //Recording is unsuccessful due to insufficient storage space. Please try to free up storage space or purchase additional storage space.
  190. ZMRecording_DiskFull,
  191. //The recording has paused.
  192. ZMRecording_Pause,
  193. }ZMRecordingStatus;
  194. typedef enum
  195. {
  196. //Request remote camera control.
  197. ZMVideoSDKCameraControlRequestType_RequestControl = 0,
  198. //Give up remote camera control.
  199. ZMVideoSDKCameraControlRequestType_GiveUpControl,
  200. }ZMVideoSDKCameraControlRequestType;
  201. typedef enum
  202. {
  203. //For initialize.
  204. ZMPhoneStatus_None,
  205. //In process of calling out.
  206. ZMPhoneStatus_Calling,
  207. //In process of ringing.
  208. ZMPhoneStatus_Ringing,
  209. //Accept the call.
  210. ZMPhoneStatus_Accepted,
  211. //Call successful.
  212. ZMPhoneStatus_Success,
  213. //Call failed.
  214. ZMPhoneStatus_Failed,
  215. //In process of canceling the response to the previous state.
  216. ZMPhoneStatus_Canceling,
  217. //Cancel successfully.
  218. ZMPhoneStatus_Canceled,
  219. //Cancel failed.
  220. ZMPhoneStatus_Cancel_Failed,
  221. //Timeout.
  222. ZMPhoneStatus_Timeout,
  223. }ZMPhoneStatus;
  224. typedef enum
  225. {
  226. //For initialization.
  227. ZMPhoneFailedReason_None,
  228. //The telephone number is busy.
  229. ZMPhoneFailedReason_Busy,
  230. //The telephone number is out of service.
  231. ZMPhoneFailedReason_Not_Available,
  232. //The user hangs up.
  233. ZMPhoneFailedReason_User_Hangup,
  234. //Other reasons.
  235. ZMPhoneFailedReason_Other_Fail,
  236. //The user did not answer the call.
  237. ZMPhoneFailedReason_No_Answer,
  238. //The invitation by phone is blocked by the system due to an absent host.
  239. ZMPhoneFailedReason_Block_No_Host,
  240. //The call-out is blocked by the system due to the high cost.
  241. ZMPhoneFailedReason_Block_High_Rate,
  242. // To join the session, the invitee would press one on the phone.
  243. // An invitee who fails to respond will encounter a timeout.
  244. // If there are too many invitee timeouts, the call invitation feature for this session will be blocked.
  245. ZMPhoneFailedReason_Block_Too_Frequent,
  246. }ZMPhoneFailedReason;
  247. typedef enum
  248. {
  249. ZMVideoSDKSuppressBackgroundNoiseLevel_Auto = 0,
  250. ZMVideoSDKSuppressBackgroundNoiseLevel_Low,
  251. ZMVideoSDKSuppressBackgroundNoiseLevel_Medium,
  252. ZMVideoSDKSuppressBackgroundNoiseLevel_High,
  253. }ZMVideoSDKSuppressBackgroundNoiseLevel;
  254. typedef enum {
  255. ZMVideoSDKEchoCancellationLevel_Default = 0,
  256. ZMVideoSDKEchoCancellationLevel_Aggressive,
  257. }ZMVideoSDKEchoCancellationLevel;
  258. typedef enum{
  259. //Current user only. This status is received when the current user starts the attempt to use multiple cameras in the session.
  260. ZMVideoSDKMultiCameraStreamStatus_JoinStart,
  261. //Current user only. This status is received when the current user fails the attempt to use multiple cameras in the session.
  262. ZMVideoSDKMultiCameraStreamStatus_JoinFail,
  263. //Broadcasted to all users. This status is received when a new camera has been successfully added to the session as the multiple cameras.
  264. ZMVideoSDKMultiCameraStreamStatus_Joined,
  265. //Broadcasted to all users. This status is received when a camera that is being used as the multiple cameras has left the session.
  266. ZMVideoSDKMultiCameraStreamStatus_Left,
  267. }ZMVideoSDKMultiCameraStreamStatus;
  268. typedef enum{
  269. //Microphone status is can start test.
  270. ZMVideoSDKMicTestStatus_CanTest = 0,
  271. //Microphone status is recording.
  272. ZMVideoSDKMicTestStatus_Recording,
  273. //Microphone status is can be played.
  274. ZMVideoSDKMicTestStatus_CanPlay,
  275. }ZMVideoSDKMicTestStatus;
  276. typedef enum
  277. {
  278. ZMVideoSDKAudioDeviceType_Microphone = 0,
  279. ZMVideoSDKAudioDeviceType_Speaker,
  280. }ZMVideoSDKAudioDeviceType;
  281. typedef enum {
  282. ZMVideoSDKAudioDeviceStatus_Device_Error_Unknow = 0,
  283. ZMVideoSDKAudioDeviceStatus_No_Device,
  284. ZMVideoSDKAudioDeviceStatus_Device_List_Update,
  285. ZMVideoSDKAudioDeviceStatus_Audio_No_Input,
  286. ZMVideoSDKAudioDeviceStatus_Audio_Disconnect_As_Detected_Echo,
  287. }ZMVideoSDKAudioDeviceStatus;
  288. typedef enum
  289. {
  290. ZMVideoSDKShareType_None,
  291. //Application or desktop share.
  292. ZMVideoSDKShareType_Normal,
  293. //Pure computer audio share.
  294. ZMVideoSDKShareType_PureAudio,
  295. }ZMVideoSDKShareType;
  296. typedef enum
  297. {
  298. //For general usage scenarios.
  299. ZMVideoSDKVideoSourceDataMode_None = 0,
  300. //Special usage scenarios, each frame of video is organized around two images.
  301. ZMVideoSDKVideoSourceDataMode_Horizontal,
  302. //Special usage scenarios, each frame of video is two images organized up and down together.
  303. ZMVideoSDKVideoSourceDataMode_Vertical
  304. }ZMVideoSDKVideoSourceDataMode;
  305. /**
  306. * @brief Enumerations of the type for live transcription status.
  307. */
  308. typedef enum
  309. {
  310. //Live transcription status is stop.
  311. ZMVideoSDKLiveTranscription_Status_Stop = 0,
  312. //Live transcription status is start.
  313. ZMVideoSDKLiveTranscription_Status_Start = 1,
  314. }ZMVideoSDKLiveTranscriptionStatus;
  315. /**
  316. * @brief Enumerations of the type for live transcription operation type.
  317. */
  318. typedef enum
  319. {
  320. //Live transcription operation type is none.
  321. ZMVideoSDKLiveTranscription_OperationType_None = 0,
  322. //Live transcription operation type is add.
  323. ZMVideoSDKLiveTranscription_OperationType_Add,
  324. //Live transcription operation type is update.
  325. ZMVideoSDKLiveTranscription_OperationType_Update,
  326. //Live transcription operation type is delete.
  327. ZMVideoSDKLiveTranscription_OperationType_Delete,
  328. //Live transcription operation type is complete.
  329. ZMVideoSDKLiveTranscription_OperationType_Complete,
  330. //Live transcription operation type is not support.
  331. ZMVideoSDKLiveTranscription_OperationType_NotSupported,
  332. }ZMVideoSDKLiveTranscriptionOperationType;
  333. /**
  334. * @brief The chat message delete type are sent in the ZMVideoSDKDelegate#onChatMsgDeleteNotification callback.
  335. */
  336. typedef enum
  337. {
  338. //None.
  339. ZMVideoSDKChatMessageDeleteType_None = 0,
  340. //Indicates that the message was deleted by myself.
  341. ZMVideoSDKChatMessageDeleteType_BySelf,
  342. //Indicates that the message was deleted by the session host.
  343. ZMVideoSDKChatMessageDeleteType_ByHost,
  344. //Indicates that the message was deleted by Data Loss Prevention (dlp). This happens when the message goes against the host organization's compliance policies.
  345. ZMVideoSDKChatMessageDeleteType_ByDlp,
  346. }ZMVideoSDKChatMessageDeleteType;
  347. /**
  348. * @brief Enumerations of the type for virtual background.
  349. */
  350. typedef enum
  351. {
  352. ZMVideoSDKVirtualBackgroundDataType_None,
  353. ZMVideoSDKVirtualBackgroundDataType_Image,
  354. ZMVideoSDKVirtualBackgroundDataType_Blur,
  355. }ZMVideoSDKVirtualBackgroundDataType;
  356. /**
  357. * @brief Type of telephone call.
  358. */
  359. typedef enum
  360. {
  361. //For initialization.
  362. ZMVideoSDKDialInNumType_None,
  363. //Paid.
  364. ZMVideoSDKDialInNumType_Toll,
  365. //Free.
  366. ZMVideoSDKDialInNumType_TollFree,
  367. }ZMVideoSDKDialInNumType;
  368. /**
  369. * @brief Type of video network status.
  370. */
  371. typedef enum
  372. {
  373. ZMVideoSDKNetworkStatus_None,
  374. ZMVideoSDKNetworkStatus_Bad,
  375. ZMVideoSDKNetworkStatus_Normal,
  376. ZMVideoSDKNetworkStatus_Good,
  377. }ZMVideoSDKNetworkStatus;
  378. /**
  379. * @brief Cloud record agree type.
  380. */
  381. typedef enum
  382. {
  383. // Invalid type.
  384. ZMVideoSDKConsentType_Invalid,
  385. // In this case, 'accept' means agree to be recorded to gallery and speaker mode, 'decline' means leave session.
  386. ZMVideoSDKConsentType_Traditional,
  387. // In this case, 'accept' means agree to be recorded to a separate file, 'decline' means stay in session and can't be recorded.
  388. ZMVideoSDKConsentType_Individual,
  389. }ZMVideoSDKConsentType;
  390. /**
  391. * @brief Screen capture mode.
  392. */
  393. typedef enum
  394. {
  395. //Screen capture mode is automatically.
  396. ZMVideoSDKScreenCaptureMode_Auto,
  397. //Screen capture mode is previous operating systems.
  398. ZMVideoSDKScreenCaptureMode_Legacy,
  399. //Screen capture mode is capture with window filtering.
  400. ZMVideoSDKScreenCaptureMode_Filtering,
  401. //Screen capture mode is advanced copy with window filtering.
  402. ZMVideoSDKScreenCaptureMode_ADA_Filtering,
  403. //Screen capture mode is advanced copy without window filtering.
  404. ZMVideoSDKScreenCaptureMode_ADA_Without_Filtering,
  405. }ZMVideoSDKScreenCaptureMode;
  406. /**
  407. @brief An enumeration of the video aspect ratio.
  408. */
  409. typedef enum
  410. {
  411. //Original aspect ratio
  412. ZMVideoSDKVideoAspect_Original,
  413. //Full filled
  414. ZMVideoSDKVideoAspect_Full_Filled,
  415. //Letter box
  416. ZMVideoSDKVideoAspect_LetterBox,
  417. //Pan and scan
  418. ZMVideoSDKVideoAspect_PanAndScan,
  419. }ZMVideoSDKVideoAspect;
  420. /**
  421. @brief An enumeration of the video type.
  422. */
  423. typedef enum
  424. {
  425. //Video Camera data
  426. ZMVideoSDKCanvasType_VideoData = 1,
  427. //Share data
  428. ZMVideoSDKCanvasType_ShareData,
  429. }ZMVideoSDKCanvasType;
  430. /**
  431. @brief An enumeration of raw data formate.
  432. */
  433. typedef enum
  434. {
  435. ZMVideoSDKFrameDataFormat_I420_Limited,
  436. ZMVideoSDKFrameDataFormat_I420_Full,
  437. }ZMVideoSDKFrameDataFormat;
  438. /**
  439. @brief Call CRC protocol.
  440. */
  441. typedef enum
  442. {
  443. //H.323 type.
  444. ZMVideoSDKCRCProtocol_H323,
  445. //SIP type.
  446. ZMVideoSDKCRCProtocol_SIP
  447. }ZMVideoSDKCRCProtocol;
  448. /**
  449. @brief CRC call status.
  450. */
  451. typedef enum
  452. {
  453. //Call out successfully.
  454. ZMVideoSDKCRCCallStatus_Success = 0,
  455. //Bell during the call.
  456. ZMVideoSDKCRCCallStatus_Ring,
  457. //Call timeout.
  458. ZMVideoSDKCRCCallStatus_Timeout,
  459. //Busy.
  460. ZMVideoSDKCRCCallStatus_Busy,
  461. //Decline.
  462. ZMVideoSDKCRCCallStatus_Decline,
  463. //Call fails.
  464. ZMVideoSDKCRCCallStatus_Failed
  465. }ZMVideoSDKCRCCallStatus;
  466. /**
  467. * @brief Enumerations for the video subscribe failed reason.
  468. */
  469. typedef enum{
  470. ZMVideoSDKSubscribeFailReason_None = 0,
  471. ZMVideoSDKSubscribeFailReason_HasSubscribe1080POr720P,
  472. ZMVideoSDKSubscribeFailReason_HasSubscribeTwo720P,
  473. ZMVideoSDKSubscribeFailReason_HasSubscribeExceededLimit,
  474. ZMVideoSDKSubscribeFailReason_HasSubscribeTwoShare,
  475. ZMVideoSDKSubscribeFailReason_HasSubscribeVideo1080POr720PAndOneShare
  476. } ZMVideoSDKSubscribeFailReason;
  477. /**
  478. * @brief Enumerations of the type for chat privilege.
  479. */
  480. typedef enum{
  481. ZMVideoSDKChatPrivilegeType_Unknown = 0,
  482. ZMVideoSDKChatPrivilegeType_Publicly_And_Privately,
  483. ZMVideoSDKChatPrivilegeType_No_One,
  484. ZMVideoSDKChatPrivilegeType_Publicly,
  485. } ZMVideoSDKChatPrivilegeType;
  486. /**
  487. * @brief Enumerations of the type for annotation tool.
  488. */
  489. typedef enum{
  490. ZMVideoSDKAnnotationToolType_None,
  491. ZMVideoSDKAnnotationToolType_Pen,
  492. ZMVideoSDKAnnotationToolType_HighLighter,
  493. ZMVideoSDKAnnotationToolType_AutoLine,
  494. ZMVideoSDKAnnotationToolType_AutoRectangle,
  495. ZMVideoSDKAnnotationToolType_AutoEllipse,
  496. ZMVideoSDKAnnotationToolType_AutoArrow,
  497. ZMVideoSDKAnnotationToolType_AutoRectangleFill,
  498. ZMVideoSDKAnnotationToolType_AutoEllipseFill,
  499. ZMVideoSDKAnnotationToolType_SpotLight,
  500. ZMVideoSDKAnnotationToolType_Arrow,
  501. ZMVideoSDKAnnotationToolType_ERASER,
  502. ZMVideoSDKAnnotationToolType_Textbox,
  503. ZMVideoSDKAnnotationToolType_Picker,
  504. ZMVideoSDKAnnotationToolType_AutoRectangleSemiFill,
  505. ZMVideoSDKAnnotationToolType_AutoEllipseSemiFill,
  506. ZMVideoSDKAnnotationToolType_AutoDoubleArrow,
  507. ZMVideoSDKAnnotationToolType_AutoDiamond,
  508. ZMVideoSDKAnnotationToolType_AutoStampArrow,
  509. ZMVideoSDKAnnotationToolType_AutoStampCheck,
  510. ZMVideoSDKAnnotationToolType_AutoStampX,
  511. ZMVideoSDKAnnotationToolType_AutoStampStar,
  512. ZMVideoSDKAnnotationToolType_AutoStampHeart,
  513. ZMVideoSDKAnnotationToolType_AutoStampQm
  514. }ZMVideoSDKAnnotationToolType;
  515. /**
  516. * @brief Enumerations of the type for clear annotation.
  517. */
  518. typedef enum{
  519. //Clear all annotations. Hosts, managers and shared meeting owners can use.
  520. ZMVideoSDKAnnotationClearType_All,
  521. //Clear only the others' annotations. Only shared meeting owners can use.
  522. ZMVideoSDKAnnotationClearType_Others,
  523. //Clear only your own annotations. Everyone can use.
  524. ZMVideoSDKAnnotationClearType_My
  525. }ZMVideoSDKAnnotationClearType;
  526. typedef enum
  527. {
  528. // The file transfer has no state.
  529. ZMVideoSDKFileTransferStatus_None = 0,
  530. // The file transfer is ready to start.
  531. ZMVideoSDKFileTransferStatus_ReadyToTransfer,
  532. // The file transfer is in progress.
  533. ZMVideoSDKFileTransferStatus_Transfering,
  534. // The file transfer failed.
  535. ZMVideoSDKFileTransferStatus_TransferFailed,
  536. // The file transfer completed successfully.
  537. ZMVideoSDKFileTransferStatus_TransferDone,
  538. }ZMVideoSDKFileTransferStatus;
  539. typedef enum
  540. {
  541. ZMVideoSDKAudioChannel_Mono = 0,
  542. ZMVideoSDKAudioChannel_Stereo
  543. }ZMVideoSDKAudioChannel;