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