VideoEncoder

interface VideoEncoder

Interface for a video encoder that can be used with WebRTC. All calls will be made on the encoding thread. The encoder may be constructed on a different thread and changing thread after calling release is allowed.

Inheritors

Types

Link copied to clipboard
Represents bitrate allocated for an encoder to produce frames.
Link copied to clipboard
interface Callback
Link copied to clipboard
open class Capabilities
Capabilities (loss notification, etc.) passed to the encoder by WebRTC.
Link copied to clipboard
Codec specific information about the encoded frame.
Link copied to clipboard
open class EncodeInfo
Additional info for encoding.
Link copied to clipboard
open class EncoderInfo
Metadata about the Encoder.
Link copied to clipboard
Rate control parameters.
Link copied to clipboard
Bitrate limits for resolution.
Link copied to clipboard
open class ScalingSettings
Settings for WebRTC quality based scaling.
Link copied to clipboard
open class Settings
Settings passed to the encoder by WebRTC.

Functions

Link copied to clipboard
The encoder implementation backing this interface is either 1) a Java encoder (e.g., an Android platform encoder), or alternatively 2) a native encoder (e.g., a software encoder or a C++ encoder adapter).
Link copied to clipboard
Requests the encoder to encode a frame.
Link copied to clipboard
Link copied to clipboard
Should return a descriptive name for the implementation.
Link copied to clipboard
Returns the list of bitrate limits.
Link copied to clipboard
Any encoder that wants to use WebRTC provided quality scaler must implement this method.
Link copied to clipboard
Initializes the encoding process.
Link copied to clipboard
Returns true if the encoder is backed by hardware.
Link copied to clipboard
abstract fun release(): VideoCodecStatus
Releases the encoder.
Link copied to clipboard
Sets the bitrate allocation and the target framerate for the encoder.
Link copied to clipboard
Sets the bitrate allocation and the target framerate for the encoder.