OBSIDIAN Engineering & Filmmaking Journal

Forged in Volcanic Fire

Deep dives into deterministic video math, WebCodecs architecture, EBU R128 broadcast audio, and agentic filmmaking.

Cinema Engine Math7 min read

Why Adobe Premiere Uses 254 Billion Ticks: The Math of Zero-Drift Video

Floating-point seconds inevitably drift over long sequences across 23.976, 24, 29.97, and 60fps. Here is how OBSIDIAN Studio and @obsidianflow/core use 254,016,000,000 ticks per second for sub-frame precision.

Agentic Architecture6 min read

Why LLMs Write HTML Instead of After Effects Scripts: The Future of Agentic Video

Foundation models have been trained on billions of lines of HTML, CSS, and SVG—not proprietary binary project files. Why declarative DOM + WebCodecs is the native tongue of AI directors.

MCP Protocol5 min read

Introducing the OBSIDIAN MCP Server: Real-Time Frame Vision for Claude & Cursor

How our dual-tier MCP architecture connects Claude Web, Cursor, and local coding agents directly to your Cloudflare R2 asset bins with Quote → Confirm → Spend protection.

Broadcast Audio8 min read

Audio Ducking & EBU R128 Loudness Normalization from Pure CSS Data Attributes

Picture follows sound. How we engineered automated 50ms attack / 350ms release sidechain ducking and -14 / -23 LUFS compliance into a browser-native NLE.

Cinema Engine Math 7 min read• October 2026

Why Adobe Premiere Uses 254 Billion Ticks: The Math of Zero-Drift Video

Floating-point seconds inevitably drift over long sequences across 23.976, 24, 29.97, and 60fps. Here is how OBSIDIAN Studio and @obsidianflow/core use 254,016,000,000 ticks per second for sub-frame precision.

In professional post-production, representing time as a IEEE-754 floating-point number (like 0.03333333333s for 30fps) causes cumulative rounding drift. Over a 45-minute timeline mixing 24fps film plates, 29.97fps broadcast stems, and 48kHz audio samples, floating-point drift causes visible lip-sync separation and dropped cut frames. Both Adobe Premiere Pro and OBSIDIAN Studio solve this by anchoring the timeline to a single integer master tick rate: 254,016,000,000 ticks per second. Why that exact number? Because 254,016,000,000 is the least common multiple capable of dividing cleanly into every standard film, NTSC, PAL, and broadcast audio sample rate (24, 25, 30, 48, 50, 60, 44100, 48000, 96000, and 1001 drop-frame divisors) with zero remainder.