Luxar Viewer API Documentation - v2026.9.22
    Preparing search index...

    Interface SoundSourceDescriptor

    What the data layer hands the audio layer for one sound node: the raw attrs, the optional (K, ndim) positions rows and a lazy clip reader bound to the scene's store. Built by data/scene-loader/nodes/load-sound-node.ts, stashed on the node's placeholder as userData.sound, consumed by the engine.

    interface SoundSourceDescriptor {
        path: string;
        name: string;
        rawAttrs: Record<string, unknown>;
        positions: Float32Array<ArrayBufferLike> | null;
        nPositions: number;
        ndim: number;
        readClip(): Promise<Uint8Array<ArrayBufferLike> | undefined>;
    }
    Index
    path: string

    Scene-graph path (/sounds/hum).

    name: string

    Last path segment — the name playSound(name) accepts.

    rawAttrs: Record<string, unknown>

    Raw zarr attrs; defaults are filled by the engine (it knows the scene scale).

    positions: Float32Array<ArrayBufferLike> | null

    Row-major (K, ndim) positions, or null for a clip live everywhere.

    nPositions: number
    ndim: number
    • Read the encoded clip bytes from the store (undefined when the key is missing).

      Returns Promise<Uint8Array<ArrayBufferLike> | undefined>