VideoSDK class
VideoSDK Class is a core class of SDK that provides methods to create and configure VideoSDK Room.
Properties
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Static Properties
- e2eeType ↔ String?
-
Indicates the type of end-to-end encryption currently in use.
getter/setter pair
- keyProvider ↔ BaseKeyProvider?
-
The active key provider used for end-to-end encryption (E2EE).
getter/setter pair
- logLevel → LogLevel
-
no setter
-
mediaDevices
→ Map<
MediaDeviceType, List< MediaDeviceInfo> > -
Stores the available media devices grouped by their type.
final
Static Methods
-
applyVideoProcessor(
{required String videoProcessorName}) → void - Applies a registered video processor to the video stream.
-
checkBluetoothPermission(
) → Future< bool> - Checks whether the application has Bluetooth permission.
-
checkPermissions(
{Permissions? permissions, SpanScope? parentSpan}) → Future< Map< String, bool> > - Checks the permission status for camera and microphone access.
-
createCameraVideoTrack(
{String? cameraId, CustomVideoTrackConfig encoderConfig = CustomVideoTrackConfig.h720p_w1280p, FacingMode facingMode = FacingMode.user, bool multiStream = true, BitrateMode bitrateMode = BitrateMode.BALANCED, int maxLayer = 3}) → dynamic - Creates a camera-based video track with customizable capture and encoding configurations.
-
createMicrophoneAudioTrack(
{String? microphoneId, CustomAudioTrackConfig encoderConfig = CustomAudioTrackConfig.speech_standard, Map< String, bool> noiseConfig = const {}}) → dynamic - Creates a microphone-based audio track with customizable encoding and noise-cancellation settings.
-
createRoom(
{required String roomId, required String displayName, required String token, bool micEnabled = true, bool camEnabled = true, String participantId = '', String maxResolution = 'sd', int defaultCameraIndex = 0, bool multiStream = true, CustomTrack? customCameraVideoTrack, CustomTrack? customMicrophoneAudioTrack, NotificationInfo notification = const NotificationInfo(title: "Video SDK", message: "Video SDK is sharing screen in the meeting", icon: "notification_share"), Mode mode = Mode.SEND_AND_RECV, Map< String, dynamic> metaData = const {}, String signalingBaseUrl = '', PreferredProtocol preferredProtocol = PreferredProtocol.UDP_OVER_TCP, bool debugMode = true, String? translationLanguage, String? speakingLanguage, bool autoConsume = true}) → Room - Creates and initializes a new room instance.
-
getAudioDevices(
) → Future< List< AudioDeviceInfo> ?> - Retrieves the list of available audio devices on the system.
-
getDevices(
) → Future< List< DeviceInfo> ?> - Retrieves all available media input and output devices.
-
getVideoDevices(
) → Future< List< VideoDeviceInfo> ?> - Retrieves the list of available video input devices.
-
off(
Events event, Function handler) → dynamic -
It is used to stop listening to
VideoSDKrelated events. -
on(
Events event, Function handler) → dynamic -
It is used to listen to
VideoSDKrelated events and perform actions based on those events. -
removeVideoProcessor(
) → void -
This method removes a previously applied video processor from the video stream. This allows users to disable specific effects or revert to the original video state.
The
removeVideoProcessormethod will remove the effect of the currently active video processor. -
requestBluetoothPermission(
) → Future< bool> - Requests Bluetooth permission from the device.
-
requestPermissions(
[Permissions? permissions]) → Future< Map< String, bool> > - Prompts the user for permission to access camera and microphone devices.
-
setKeyProvider(
BaseKeyProvider provider) → void - Sets the encryption key provider for end-to-end encryption (E2EE).
-
setLogLevel(
[LogLevel? level = LogLevel.info]) → void - Configures the logging level for SDK.