/** * MSE Intercept — Patches MediaSource to transparently transcode HEVC → H.264. * * Creates a proxy SourceBuffer that: * 1. Reports updating=true while transcoding is in progress (blocks dash.js) * 2. Fires proper updatestart/update/updateend events after transcoding * 3. Passes audio and other non-HEVC tracks through untouched */ import type { LogLevel } from "./log.js"; import type { SegmentTranscoderConfig } from "./segment-transcoder.js"; export interface MSEInterceptConfig extends SegmentTranscoderConfig { /** URL to the transcode worker script. When provided, transcoding runs off main thread. */ workerUrl?: string; /** Called when video transcoding starts — use to pause player buffering. */ onTranscodeStart?: () => void; /** Called when video transcoding ends — use to resume player buffering. */ onTranscodeEnd?: () => void; /** Log verbosity: 'debug' | 'info' | 'warn' (default) | 'error' | 'silent'. */ logLevel?: LogLevel; } /** * Install the MSE intercept. Call before dash.js initializes. */ export declare function installMSEIntercept(config?: MSEInterceptConfig): void; /** * Remove the MSE intercept and restore original methods. */ export declare function uninstallMSEIntercept(): void; //# sourceMappingURL=mse-intercept.d.ts.map