Added

  1. SDK sample app.

  2. Apple M1 support.

  3. Ability to send raw audio data and the support for virtual microphone and virtual speaker. Added NZoomVideoSDKAudioSendRawdata.h

Note: When using the virtual speaker, the audio share will be disabled while screen sharing and only the video will be shared. After receiving the audio raw data in SDK, doing heavy/complex/time-consuming work in the callback thread is not recommended.

  1. Ability to share device audio when sharing the screen in NZoomVideoSDKShareHelper.h:

- (NZoomVideoSDKErrors)enableShareDeviceAudio:(BOOL)enable;
- (BOOL)isShareDeviceAudioEnabled;

  5. New interface to get a list of all other users in the session:
- (NSArray<NZoomVideoSDKUser *>*)getRemoteUsers;

  1. New callback to receive the raw audio data from screen sharing:
    virtual void onSharedAudioRawDataReceived(AudioRawData* data_) = 0;` in `zoom_video_sdk_delegate_interface.h

  2. New interfaces to optimize the frame rate of screen sharing. In`NZoomVideoSDKShareHelper.h`:

- (NZoomVideoSDKErrors)enableOptimizeForSharedVideo:(BOOL)enable;
- (BOOL)isOptimizeForSharedVideoEnabled;

Changed & Fixed

  1. Renamed the SDK from ZoomInstantSDK to ZoomVideoSDK.

  2. Upgraded OpenSSL to 1.1.1k.

  3. Modified the following interfaces to support and to optimize share screen with audio:
    Modified - (InstantSDKErrors)startShareView:(CGWindowID)windowID to
    - (NZoomVideoSDKErrors)startShareView:(CGWindowID)windowID shareOption:(NZoomVideoSDKShareOption*)option.
    Modified - (InstantSDKErrors)startShareScreen:(CGDirectDisplayID)monitorID to - (NZoomVideoSDKErrors)startShareScreen:(CGDirectDisplayID)monitorID shareOption:(NZoomVideoSDKShareOption*)option.

Deprecated

  1. - (NSArray<InstantSDKUser *>*)getAllUsers;

  2. - (InstantSDKUser*)getUser:(NSString*)userID;

  3. - (InstantSDKYUVRawDataI420*)convertToYUV;

  4. - (InstantSDKYUVRawDataI420*)convertToYUVViaExternalBuffer:(char*)buffer size:(int)size;

  5. - (void)fillToPixelBuffer:(char*)ybuffer ybufferPreRowBytes:(int)ybuffer_pre_row_bytes uvbuffer:(char*)uvbuffer uvbufferPreRowBytes:(int)uvbuffer_pre_row_bytes width:(int)width height:(int)height;