TimestampAdjustment


@UnstableApi
class TimestampAdjustment : GlEffect


Changes the frame timestamps using the TimestampMap.

This effect doesn't drop any frames.

This effect is not supported for effects previewing.

Summary

Nested types

Maps input timestamps to output timestamps asynchronously.

Public constructors

TimestampAdjustment(
    timestampMap: TimestampAdjustment.TimestampMap!,
    speedProvider: SpeedProvider!
)

Creates an instance.

Public functions

Long

Returns the expected duration of the output stream when the effect is applied given a input durationUs.

GlShaderProgram!
toGlShaderProgram(context: Context!, useHdr: Boolean)

Returns a GlShaderProgram that applies the effect.

Inherited functions

From androidx.media3.effect.GlEffect
Boolean
isNoOp(inputWidth: Int, inputHeight: Int)

Returns whether a GlEffect applies no change at every timestamp.

Public constructors

TimestampAdjustment

TimestampAdjustment(
    timestampMap: TimestampAdjustment.TimestampMap!,
    speedProvider: SpeedProvider!
)

Creates an instance.

Parameters
timestampMap: TimestampAdjustment.TimestampMap!

The TimestampMap

speedProvider: SpeedProvider!

The SpeedProvider specifying the approximate speed adjustments the TimestampMap should be applying.

Public functions

getDurationAfterEffectApplied

fun getDurationAfterEffectApplied(durationUs: Long): Long

Returns the expected duration of the output stream when the effect is applied given a input durationUs.

toGlShaderProgram

fun toGlShaderProgram(context: Context!, useHdr: Boolean): GlShaderProgram!

Returns a GlShaderProgram that applies the effect.

Parameters
context: Context!

A Context.

useHdr: Boolean

Whether input textures come from an HDR source. If true, colors will be in linear RGB BT.2020. If false, colors will be in linear RGB BT.709.

Throws
androidx.media3.common.VideoFrameProcessingException

If an error occurs while creating the .

Public properties

speedProvider

val speedProviderSpeedProvider!