Member Junction
    Preparing search index...

    Runtime global injected into every composition page by the render worker preamble (§7.3).

    Motion Engineer compositions read frozen data, dimensions, and deterministic random numbers from window.MJVideo instead of external network calls or unseeded Math.random().

    interface MJVideoRuntime {
        Data: Readonly<Record<string, unknown>>;
        DurationSeconds?: number;
        Format: VideoFormat;
        Fps: number;
        Height: number;
        Seed: number;
        Width: number;
        Noise(...keys: (string | number)[]): number;
        OnFrame(cb: (timeSeconds: number) => void): void;
        Random(): number;
    }
    Index

    Properties

    Data: Readonly<Record<string, unknown>>

    Deeply frozen copy of RenderProjectBundle.DataSnapshot (or {} when omitted).

    DurationSeconds?: number

    Optional total composition duration in seconds.

    Format: VideoFormat

    Target aspect ratio format of the composition ('16:9', '9:16', or '1:1').

    Fps: number

    Target frame rate in frames per second.

    Height: number

    Composition viewport height in pixels.

    Seed: number

    Deterministic integer seed from RenderProjectBundle.Seed.

    Width: number

    Composition viewport width in pixels.

    Methods

    • Deterministic order-independent hash of (Seed, ...keys) into [0, 1).

      Parameters

      • ...keys: (string | number)[]

      Returns number

    • Registers a per-frame callback invoked with the exact seek time in seconds before each frame is captured.

      Parameters

      • cb: (timeSeconds: number) => void

      Returns void

    • Deterministic mulberry32 PRNG seeded from Seed at load and reset to hash(Seed, Math.round(t * 1000)) before each frame's OnFrame dispatch. Also replaces Math.random.

      Returns number