public interface

AssetLoader.Listener

 androidx.media3.transformer.AssetLoader.Listener

Overview

A listener of AssetLoader events.

Summary

Methods
public voidonDurationUs(long durationUs)

Called when the duration of the input media is known.

public voidonError(ExportException exportException)

Called if an error occurs in the asset loader.

public SampleConsumeronOutputFormat(Format format)

Called when the Format of samples that will be output by the AssetLoader is known.

public booleanonTrackAdded(Format inputFormat, int supportedOutputTypes)

Called when the information on a track is known.

public voidonTrackCount(int trackCount)

Called when the number of tracks being output is known.

Methods

public void onDurationUs(long durationUs)

Called when the duration of the input media is known.

Can be called from any thread.

public void onTrackCount(int trackCount)

Called when the number of tracks being output is known.

Can be called from any thread.

public boolean onTrackAdded(Format inputFormat, int supportedOutputTypes)

Called when the information on a track is known.

Must be called after the duration and the track count have been reported.

Must be called once per declared track.

Must be called from the thread that will be used to call AssetLoader.Listener.onOutputFormat(Format).

Parameters:

inputFormat: The Format of samples that will be input to the AssetLoader (prior to video slow motion flattening or to decoding).
supportedOutputTypes: The output types supported by this AssetLoader for the track added. At least one output type must be supported.

Returns:

Whether the AssetLoader needs to provide decoded data to the SampleConsumer.

public SampleConsumer onOutputFormat(Format format)

Called when the Format of samples that will be output by the AssetLoader is known.

Must be called after the corresponding track has been added.

For each added track, this method must be called regularly until the returned SampleConsumer is non-null.

Must be called from the thread that will be used to call the returned SampleConsumer's methods. This thread must be the same for all formats output, and is generally different from the one used to access the AssetLoader methods.

Parameters:

format: The Format of samples that will be output.

Returns:

The SampleConsumer of samples of the given Format, or null if it could not be retrieved yet.

public void onError(ExportException exportException)

Called if an error occurs in the asset loader. In this case, the asset loader will be released automatically.

Can be called from any thread.