Hiyve Components - v1.0.0
    Preparing search index...

    Interface Participant

    Participant information with media streams.

    Represents a remote participant in a video conference room. Each participant has separate audio and video streams that can be attached to media elements. The audioOnly flag indicates if the participant joined without video.

    Rendering a participant's video:

    function ParticipantVideo({ participant }: { participant: Participant }) {
    const videoRef = useRef<HTMLVideoElement>(null);

    useEffect(() => {
    if (videoRef.current && participant.videoStream) {
    videoRef.current.srcObject = participant.videoStream;
    }
    }, [participant.videoStream]);

    return (
    <video
    ref={videoRef}
    autoPlay
    playsInline
    muted={participant.isVideoMuted}
    />
    );
    }
    interface Participant {
        audioOnly: boolean;
        audioStream: MediaStream | null;
        externalUserId?: string;
        isAudioMuted: boolean;
        isOutputMuted?: boolean;
        isVideoMuted: boolean;
        userId: string;
        userName?: string;
        videoStream: MediaStream | null;
    }
    Index

    Properties

    audioOnly: boolean

    Whether participant joined in audio-only mode (no camera)

    audioStream: MediaStream | null

    Audio MediaStream, null if no audio or audio stopped

    externalUserId?: string

    External user ID (e.g., from your auth system)

    isAudioMuted: boolean

    Whether participant's microphone is muted

    isOutputMuted?: boolean

    Whether this participant's audio output is muted locally (you can't hear them)

    isVideoMuted: boolean

    Whether participant's camera is muted/off

    userId: string

    Unique identifier for the participant (internal ID)

    userName?: string

    Display name for the participant

    videoStream: MediaStream | null

    Video MediaStream, null if no video or video stopped