LiveKit C++ SDK
Real-time audio/video SDK for C++
Loading...
Searching...
No Matches
livekit::E2EEManager Class Reference

#include <e2ee.h>

Classes

class  FrameCryptor
 
class  KeyProvider
 

Public Member Functions

 E2EEManager (const E2EEManager &)=delete
 
E2EEManageroperator= (const E2EEManager &)=delete
 
 E2EEManager (E2EEManager &&) noexcept=delete
 
E2EEManageroperator= (E2EEManager &&) noexcept=delete
 
bool enabled () const
 Returns whether E2EE is currently enabled for this room at runtime.
 
void setEnabled (bool enabled)
 
KeyProviderkeyProvider ()
 
const KeyProviderkeyProvider () const
 
std::vector< E2EEManager::FrameCryptorframeCryptors () const
 Retrieves the current list of frame cryptors from the underlying runtime.
 

Protected Member Functions

 E2EEManager (std::uint64_t room_handle, const E2EEOptions &options)
 Internal constructor used by Room when E2EEOptions are provided.
 

Friends

class Room
 

Detailed Description

E2EE manager for a connected room.

Lifetime:

Enablement model:

  • If the Room was created with RoomOptions.e2ee set, the room will expose a non-null E2EEManager via Room::E2eeManager().
  • If the Room was created without E2EE options, Room::E2eeManager() may be null.

Key model:

  • Keys are managed via KeyProvider (shared-key or per-participant).
  • Providing a shared key up-front is convenient for shared-key E2EE, but is not required by the API shape (keys may be supplied later).

Member Function Documentation

◆ keyProvider()

KeyProvider * livekit::E2EEManager::keyProvider ( )

Returns the key provider if E2EE was configured for the room; otherwise nullptr.

◆ setEnabled()

void livekit::E2EEManager::setEnabled ( bool  enabled)

Enable or disable E2EE at runtime.

NOTE:

  • Enabling E2EE without having compatible keys set across participants will result in undecodable media (black video / silent audio).

The documentation for this class was generated from the following file: