Package-level declarations
Types
The AES-GCM variants the default manager supports. Determines the required key length.
A state change reported by StreamEncryptionManager, most usefully a decryption failure for a specific participant. Encryption problems are otherwise silent — media simply arrives undecodable — so this is the main signal for surfacing "you are on a different key" in a UI.
Receives E2EEEvents from StreamEncryptionManager. Invoked on a WebRTC internal thread.
A snapshot of the keys the manager currently holds. See StreamEncryptionManager.requestKeyState.
Attaches end-to-end encryption to the media that flows through a call.
A key held for every participant. isActive marks the index used for outgoing frames.
Crypto cost for one track, reported while StreamEncryptionManager.enablePerformanceReporting is on.
The kind of track being encrypted or decrypted, passed to E2EEManager so implementations can key or tag frames per media type.
A key held for one participant. fingerprint is a digest, not the key material, and is safe to log — it is there so two devices can confirm they agree without exchanging keys.
The SDK's default E2EEManager, backed by WebRTC's framed AES-GCM encryption. Frames are encrypted before they leave the device and decrypted after they arrive, so the SFU forwards media it cannot read.