Changelog: Video SDK - Flutter - 2.5.0

Released: 2026-04-16 Updated: 2026-04-20

Visit Changelog

Summary: Breaking change - dropping support for the x86 architecture on the iOS simulator. New takeSnapshot method in ZoomVideoSdkVideoHelper to capture video frames. New ZoomVideoSdkVideoSettingHelper class offering face-beauty control APIs. Added new error constants and deprecated older ones. Refactored whiteboard functionality to use a direct WhiteboardView widget, simplifying integration and aligning it with other platform views.

Breaking Change

  • As of version 2.5.0, the Video SDK no longer supports x86 architecture for the iOS simulator.

Added

  • Added takeSnapshot to ZoomVideoSdkVideoHelper. Returns the current video frame of a user as Uint8List (PNG format).

    Uint8List? snapshot = await ZoomVideoSdk().videoHelper.takeSnapshot(userId);
    
    // For a screen share view
    Uint8List? snapshot = await ZoomVideoSdk().videoHelper.takeSnapshot(userId, sharing: true);
    
  • Added a new ZoomVideoSdkVideoSettingHelper class accessible via ZoomVideoSdk().videoSettingHelper. Provides 4 face beauty
    APIs:

    await ZoomVideoSdk().videoSettingHelper.enableFaceBeautyEffect(true);
    bool enabled = await ZoomVideoSdk().videoSettingHelper.isFaceBeautyEffectEnabled();
    
    await ZoomVideoSdk().videoSettingHelper.setFaceBeautyStrengthValue(50); // 0–100
    int strength = await ZoomVideoSdk().videoSettingHelper.getFaceBeautyStrengthValue();
    
  • Added new error constants to the Errors class and deprecated outdated ones.

    • New constants:
    Errors.SessionClientIncompatible
    Errors.SessionAccountFreeMinutesExceeded
    Errors.SessionAccountFreeCreditExceeded
    Errors.SessionAudioNoSpeaker
    Errors.SessionBluetoothSCOConnectionFailed
    Errors.RecordingIsConnecting
    Errors.SetVirtualBackgroundFail
    Errors.RawdataInvalidSharePreprocessingDataObject
    Errors.RawdataSharePreprocessingIsStopped
    Errors.SessionShareCameraVideoNotStart
    Errors.SessionShareCameraConflictWithVideoEffects
    Errors.SessionShareConflictWithWhiteboard
    Errors.SessionFiletransferUnknownError
    Errors.SessionFiletransferFileTypeBlocked
    Errors.SessionFiletransferFileSizelimited
    Errors.SpotlightNotEnoughUsers
    Errors.SpotlightToMuchSpotlightedUsers
    Errors.SpotlightUserCannotBeSpotlighted
    Errors.SpotlightUserWithoutVideo
    Errors.SpotlightUserNotSpotlighted
    Errors.RemoveFolderFail
    Errors.SessionYouHaveNoShare
    

Changed

  • Refactored the whiteboard implementation. Removed subscribeWhiteboard and unSubscribeWhiteboard method channel calls. Use the new WhiteboardView widget directly in their widget tree. No coordinate passing required.

    // Before (removed)
    await ZoomVideoSdk().whiteboardHelper.subscribeWhiteboard(...);
    
    // After
    WhiteboardView()
    
    • The whiteboard is now rendered via a Flutter platform view (AndroidView / UiKitView), consistent with how video views work.

Deprecated

  • Deprecated constants:
    Errors.AuthWrongKeyorSecret
    Errors.AuthDoesNotSupportSDK
    Errors.AuthDisableSDK
    Errors.DontSupportMultiStreamVideoUser
    Errors.FailAssignUserPrivilege
    Errors.NoRecordingInProcess
    Errors.SessionShareModuleNotReady
    Errors.SessionShareTypeIsNotSupport
    Errors.SessionShareInternalError