mcut
@mcut/timeline

ElementAudioSource

Generated TypeScript API reference for the public mcut SDK.

mcut SDK


mcut SDK / timeline/src / ElementAudioSource

Interface: ElementAudioSource

Defined in: packages/timeline/src/audio-source.ts:14

Normalized answer to "what source audio does this timeline element play?" UI and agent surfaces can use this before passing bytes to a transcription provider, waveform analyzer, or any other media-only primitive.

Properties

asset

asset: object;

Defined in: packages/timeline/src/audio-source.ts:18

durationMs?

optional durationMs?: number;

hash?

optional hash?: string;

Content hash of the media file (stable identity across reloads/moves).

height?

optional height?: number;

id

id: `a-${string}` = assetIdSchema;

kind

kind: "video" | "audio" | "image";

mimeType?

optional mimeType?: string;

name?

optional name?: string;

nativePreview?

optional nativePreview?: boolean;

True when the browser's native media elements can preview this asset. Containers such as Matroska may import/export through Mediabunny while still needing decoded-frame fallback for interactive canvas preview.

src

src: string;

Object URL, data URL, or remote URL. Projects stay JSON-serializable — but treat this as a RUNTIME BINDING, not identity: object URLs are dead after a reload, so persistence layers re-resolve src on load (e.g. from OPFS via hash) and relink UIs match on hash/name.

width?

optional width?: number;

assetId

assetId: `a-${string}`;

Defined in: packages/timeline/src/audio-source.ts:17


elementId

elementId: `e-${string}`;

Defined in: packages/timeline/src/audio-source.ts:15


elementType

elementType: ElementAudioSourceType;

Defined in: packages/timeline/src/audio-source.ts:16


multicamSourceKey?

optional multicamSourceKey?: string;

Defined in: packages/timeline/src/audio-source.ts:26


reversed

reversed: boolean;

Defined in: packages/timeline/src/audio-source.ts:25


sourceEndMs

sourceEndMs: number;

Defined in: packages/timeline/src/audio-source.ts:22


sourceSpanMs

sourceSpanMs: number;

Defined in: packages/timeline/src/audio-source.ts:23


sourceStartMs

sourceStartMs: number;

Defined in: packages/timeline/src/audio-source.ts:21


timelineDurationMs

timelineDurationMs: number;

Defined in: packages/timeline/src/audio-source.ts:20


timelineStartMs

timelineStartMs: number;

Defined in: packages/timeline/src/audio-source.ts:19


timeMap?

optional timeMap?: object[];

Defined in: packages/timeline/src/audio-source.ts:24

easing?

optional easing?:
  | "linear"
  | "hold"
  | "easeIn"
  | "easeOut"
  | "easeInOut"
  | {
  cubicBezier: [number, number, number, number];
};

Outgoing interpolation; default linear.

timeMs

timeMs: number;

Element-local ms (relative to startMs): moving a clip moves its animation.

value

value: number;

On this page