Draft Standard
VideoML
A declarative standard for programmable video
VideoML is a proposed XML-based standard that describes scenes, timing, and media behavior in a portable, tool-agnostic way.
Why VideoML
Video workflows are fragmented across timelines, templates, and code. VideoML proposes a shared language for describing scenes, cues, and render intent so tools can interoperate.
The goal is a stable, readable specification that supports generation, playback, and long-term archival.
What it describes
- Scenes and timelines
- Audio, music, and effects cues
- Declarative layout and timing rules
- Composable components and metadata
Example: a minimal scene
This is a tiny example of VideoML-style structure.
<vml id="intro" fps="30" width="1920" height="1080">
<scene id="opening" title="Hello">
<cue id="voice">
<voice>Welcome to VideoML.</voice>
<pause seconds="0.4s" />
<voice>Declarative video, finally.</voice>
</cue>
</scene>
</vml>Spec first, tooling second
The spec is designed to be implementation-agnostic. A reference player will demonstrate the runtime model while other tools can target the same schema.
Next step: We are drafting the core spec and shipping reference implementations you can embed today. Start with docs, browse packages, or install @videoml/player.