/** * CanvasRenderer - Renders VideoFrames to canvas with frame-perfect timing * Uses a frame queue and presentation loop for smooth 60Hz playback */ import type { SubtitleCue } from "../types"; /** * What the renderer can draw. The WebCodecs path hands over decoded * VideoFrames; the MSE wrappers (Shaka/hls.js/DASH) hand over their