Skip to main content
Version: 0.1.x

Camera Controls - React

Whenever any participant wants to start/stop broadcasting their video to other participant in a meeting, they can simply do it with VideoSDK Meeting.

This guide will provide an overview of how to implement enable, disable and switch webcam features in a meeting.

  1. Enable Camera - By using enableWebcam() function, a participant can publish camera stream to other participants.

  2. Disable Camera - By using disableWebcam() function, a participant can stop publishing camera stream to other participants.

  3. Switch Camera - By using changeWebcam() function, a participant can stream from front / rear camera during the meeting.This function is only applicable for Mobile devices.

  4. Toggle Camera - By using toggleWebcam() function, a participant start or stop publishing the video during the meeting.

Enable, Disable And Switch Webcam​

import { useMeeting } from "@videosdk.live/react-sdk";

const MeetingView = () => {
const {
enableWebcam,
disableWebcam,
getWebcams,
changeWebcam,
toggleWebcam,
} = useMeeting();

const onPress = async () => {
// Enable Webcam in Meeting
enableWebcam();

// Disable Webcam in Meeting
disableWebcam();

// Toggle Webcam in Meeting
toggleWebcam();

// Change Webcam in Meeting
const webcams = await getWebcams(); // returns all webcams

const { deviceId, label } = webcams[0];

changeWebcam(deviceId);
};

return <>...</>;
};
note

To get a better control over the Video Quality, we recommend you to use the custom video tracks. You can check out how to use custom video tracks here.

Events​

Event associated with enableWebcam():

Event associated with disableWebcam():

import { useParticipant } from "@videosdk.live/react-sdk";

function onStreamEnabled(stream) {
if(stream.kind === 'video'){
console.log("Video Stream On: onStreamEnabled", stream);
}
}

function onStreamDisabled(stream) {
if(stream.kind === 'video'){
console.log("Video Stream Off: onStreamDisabled", stream);
}
}

const {
displayName
...
} = useParticipant(participantId,{
onStreamEnabled,
onStreamDisabled,
...
});

Got a Question? Ask us on discord