Member Junction
    Preparing search index...

    What a RoomVideoWatcher needs from the room client that owns it.

    interface RoomVideoWatcherOptions {
        Encoder?: IRoomVideoFrameEncoder;
        ListParticipants: () => RtcParticipant[];
        Now?: () => number;
        OnFrame: (frame: NativeRoomVideoFrame) => void;
        OnSourceEnded: (source: NativeRoomVideoSourceEnd) => void;
        Rtc: RtcNodeModule;
        Timer?: RoomVideoWatcherTimer;
        Video: NativeRoomVideoOptions;
    }
    Index

    Properties

    Where sampled frames are encoded. Default: an InProcessVideoFrameEncoder on the thread that hosts the room, timed with Now.

    ListParticipants: () => RtcParticipant[]

    The room's remote participants, in join order.

    Now?: () => number

    Monotonic millisecond clock for pacing, the hold, the encode round trip and the default encoder's timing. Default performance.now().

    OnFrame: (frame: NativeRoomVideoFrame) => void

    Receives each sampled, encoded frame.

    OnSourceEnded: (source: NativeRoomVideoSourceEnd) => void

    Receives each source that stopped after sending at least one frame.

    The loaded @livekit/rtc-node module: VideoStream and the enum constants.

    Schedules the ranking a delayed switch needs, on the Now clock. Default: an unref'd setTimeout.

    What the agent may read (from the bridge: the session's stream count and rate, the provider's flags).