Concept - C++
The C++ SDK provides tools and APIs for enabling real-time communication directly through native C++ applications on Linux and embedded devices (such as Raspberry Pi, NVIDIA Jetson Nano, and Arduino Uno Q). It allows users to join meetings, share and receive audio/video streams, and interact with other participants in real time.
1. Meeting / Room
Meeting or Room object in the VideoSDK provides a virtual place for participants to interact and engage in real-time audio and video sessions. The object is in charge of handling media streams and participant communication.
- To create a meeting room refer Quick Start
2. Participant
-
A participant represents a user in the meeting and can share or receive audio/video streams via the C++ SDK.
-
2.1
Local Participant:- The local participant represents the user on the device using the C++ SDK.
- The user controls their own audio and video streams and can also receive media from others in real time.
-
2.2
Remote Participant:- A remote participant is any other participant in the meeting apart from the user.
- The user can receive the audio and video streams of the remote participant.
-
Each participant is uniquely identified by a ParticipantId in the meeting.
3. Session
- A Session is the instance of an ongoing meeting/room which has one or more participants in it. A single room or meeting can have multiple sessions.
- Each session can be uniquely identified by
sessionId.

4. MediaStream
- A media stream is a continuous flow of audio or video data transmitted in real time, allowing participants to hear, see, and communicate instantly in a meeting.
- Send Stream
- The user captures audio/video (e.g., from V4L2 cameras and PulseAudio) through the device and shares it with other participants in real time.
- Receive Stream
- The user receives audio/video from other participants and plays it through the device (e.g., rendering with SDL2).
Got a Question? Ask us on discord

