Av1SampleDependencyParser


@UnstableApi
class Av1SampleDependencyParser


An AV1 bitstream parser that identifies frames that are not depended on.

Summary

Public constructors

Public functions

Unit

Updates the parser state with the next sample data.

Unit

Resets the parser state.

Int
sampleLimitAfterSkippingNonReferenceFrame(
    sample: ByteBuffer!,
    skipFrameHeaders: Boolean
)

Returns the new sample limit after deleting any frames that are not used as reference.

Public constructors

Av1SampleDependencyParser

Av1SampleDependencyParser()

Public functions

queueInputBuffer

fun queueInputBuffer(sample: ByteBuffer!): Unit

Updates the parser state with the next sample data.

reset

fun reset(): Unit

Resets the parser state.

sampleLimitAfterSkippingNonReferenceFrame

fun sampleLimitAfterSkippingNonReferenceFrame(
    sample: ByteBuffer!,
    skipFrameHeaders: Boolean
): Int

Returns the new sample limit after deleting any frames that are not used as reference.

Each AV1 temporal unit must have exactly one shown frame. Other frames in the temporal unit that aren't shown are used as reference, but the shown frame may not be used as reference. Frequently, the shown frame is the last frame in the temporal unit.

If the last frame in the temporal unit is a non-reference OBU_FRAME or OBU_FRAME_HEADER, this method returns a new limit value that would leave only the frames used as reference in the input sample.

See Ordering of OBUs.

Parameters
sample: ByteBuffer!

The sample data for one AV1 temporal unit.

skipFrameHeaders: Boolean

Whether to skip OBU_FRAME_HEADER.