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);