const streams = new Map(); export function rememberStream(stream: MediaStream | null | undefined): string { if (!stream) { return ''; } streams.set(stream.id, stream); return stream.id; } export function getStream(streamURL?: string): MediaStream | null { if (!streamURL) { return null; } return streams.get(streamURL) ?? null; } export function patchMediaStream() { if (typeof MediaStream === 'undefined') { return; } const proto = MediaStream.prototype as MediaStream & { toURL?: () => string }; if (typeof proto.toURL !== 'function') { proto.toURL = function toURL() { return rememberStream(this); }; } }