IVideoSyncPipelineOutputInternal

An internal video output component for a pipeline. The provider is responsible for pushing video RawFrame to the pipeline.

Properties

Link copied to clipboard

Whether the output is streaming.

Link copied to clipboard
abstract val isStreamingFlow: StateFlow<Boolean>

Returns true if stream is running.

Link copied to clipboard
abstract val targetRotation: Int

The target rotation in Surface rotation (Surface.ROTATION_0, ...)

Link copied to clipboard
abstract val throwableFlow: StateFlow<Throwable?>

Returns the last throwable that occurred.

Link copied to clipboard
abstract val withAudio: Boolean

Whether the output has audio.

Link copied to clipboard
abstract val withVideo: Boolean

Whether the output has video.

Functions

Link copied to clipboard
abstract fun queueVideoFrame(frame: RawFrame)

Queues a video RawFrame to be encoded.

Link copied to clipboard
abstract suspend fun release()

Clean and reset the streamer.

Link copied to clipboard

Clean and reset the streamer synchronously.

fun IPipelineOutput.releaseBlocking(dispatcher: CoroutineDispatcher = Dispatchers.Default)

Clean and reset the output synchronously.

Link copied to clipboard
abstract suspend fun startStream()

Starts audio/video stream.

Link copied to clipboard
abstract suspend fun stopStream()

Stops audio/video stream.