MediaCodecEncoder

The MediaCodec encoder implementation.

Parameters

encoderConfig

the encoder configuration

encoderExecutor

the executor to run the encoder. Must be a single thread executor. Is only visible for testing.

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
open override var bitrate: Int

Gets/sets encoder bitrate.

Link copied to clipboard
open override val config: CodecConfig

The encoder configuration

Link copied to clipboard
open override val info: EncoderInfo

The encoder info like the supported resolutions, bitrates, etc.

Link copied to clipboard

The encoder input.

Link copied to clipboard
open override val mimeType: String

The encoder mime type

Link copied to clipboard
open override val startBitrate: Int

The bitrate at which the encoder will start (ie the one in the configuration)

Functions

Link copied to clipboard
open override fun configure()

Configure the encoder

Link copied to clipboard
open override fun release()

Closes and releases resources

Link copied to clipboard
open override fun requestKeyFrame()

Force the encoder to generate a key frame.

Link copied to clipboard
open override fun reset()

Reset the encoder

Link copied to clipboard
open override fun setListener(listener: IEncoderInternal.IListener, listenerExecutor: Executor)

Set the encoder listener

Link copied to clipboard
open suspend override fun startStream()

Starts frames or data stream generation Throws an exception if not ready for live stream

Link copied to clipboard
open suspend override fun stopStream()

Stops frames or data stream generation