Captures the canvas stream and handles the transport connection for screen sharing.
const canvasElement = document.querySelector('#canvas') as HTMLCanvasElement;const options = { parameters: { canvasWhiteboard: canvasElement, updateCanvasStream: (stream) => console.log("Canvas Stream Updated:", stream), updateScreenProducer: (producer) => console.log("Screen Producer Updated:", producer), updateLocalScreenProducer: (localProducer) => console.log("Local Screen Producer Updated:", localProducer), createSendTransport: async (params) => console.log("Transport created with", params), connectSendTransportScreen: async (options) => console.log("Transport connected with", options), disconnectSendTransportScreen: async (params) => console.log("Transport disconnected with", params), sleep: ({ ms }) => new Promise(resolve => setTimeout(resolve, ms)), }, start: true,};await captureCanvasStream(options); Copy
const canvasElement = document.querySelector('#canvas') as HTMLCanvasElement;const options = { parameters: { canvasWhiteboard: canvasElement, updateCanvasStream: (stream) => console.log("Canvas Stream Updated:", stream), updateScreenProducer: (producer) => console.log("Screen Producer Updated:", producer), updateLocalScreenProducer: (localProducer) => console.log("Local Screen Producer Updated:", localProducer), createSendTransport: async (params) => console.log("Transport created with", params), connectSendTransportScreen: async (options) => console.log("Transport connected with", options), disconnectSendTransportScreen: async (params) => console.log("Transport disconnected with", params), sleep: ({ ms }) => new Promise(resolve => setTimeout(resolve, ms)), }, start: true,};await captureCanvasStream(options);
A promise that resolves when the operation is complete.
Captures the canvas stream and handles the transport connection for screen sharing.
Example