remotion-dev/remotion · error · Error
Expected CueTime
Error message
Expected CueTime
What it means
A CuePoint element in the Cues table has no CueTime child. formatCues requires CueTime to compute the cue's timestamp, so its absence means the cue entry is incomplete and unusable for seeking.
Source
Thrown at packages/media-parser/src/containers/webm/seek/format-cues.ts:23
timeInTimescale: number;
clusterPositionInSegment: number;
relativePosition: number;
};
export const formatCues = (cues: PossibleEbml[]) => {
const matroskaCues: MatroskaCue[] = [];
for (const cue of cues) {
if (cue.type === 'Crc32') {
continue;
}
if (cue.type !== 'CuePoint') {
throw new Error('Expected CuePoint');
}
const cueTime = cue.value.find((_cue) => _cue.type === 'CueTime');
if (!cueTime) {
throw new Error('Expected CueTime');
}
const cueTrackPositions = cue.value.find(
(c) => c.type === 'CueTrackPositions',
);
if (!cueTrackPositions) {
throw new Error('Expected CueTrackPositions');
}
const cueTimeValue = cueTime.value.value;
const cueTrack = cueTrackPositions.value.find(
(_c) => _c.type === 'CueTrack',
);
if (!cueTrack) {
throw new Error('Expected CueTrack');
}
const cueClusterPosition = cueTrackPositions.value.find(View on GitHub (pinned to 78fe4bb3fd)
Solutions
- Re-mux the file to regenerate a complete Cues table.
- Ensure the source file is fully written before parsing.
- Use a different source.
- Try Mediabunny.
Defensive patterns
Strategy: try-catch
Try / catch
try {
await parseMedia({src: 'in.mkv', fields: {durationInSeconds: true}});
} catch (err) {
if (err instanceof Error && /Expected CueTime/.test(err.message)) {
throw new Error('Incomplete Cues entries; re-mux the file.', {cause: err});
}
throw err;
} Prevention
- Re-mux to regenerate complete Cues entries.
- Finalize live recordings before parsing.
- Use a fallback source on Cues errors.
When it happens
Trigger: Parsing the Cues section of a file whose CuePoint entries omit CueTime - typically a partially written or corrupted seek table.
Common situations: Live muxers that emit incomplete Cues, files truncated during the Cues section, or binary corruption of element IDs.
Related errors
- Expected CuePoint
- Expected CueTrackPositions
- Expected CueTrack
- Expected CueClusterPosition
- Could not find sample rate or number of channels
AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12).
Data as JSON: /api/errors/67834e87047c69c7.
Report an issue: GitHub.