FrameExtractor.Builder


public final class FrameExtractor.Builder


A builder for FrameExtractor instances.

Summary

Public constructors

Builder(Context context, MediaItem mediaItem)

Creates a new instance.

Public methods

FrameExtractor

Builds a new FrameExtractor instance.

FrameExtractor.Builder

Sets the Effects to apply to the extracted video frames.

FrameExtractor.Builder
@CanIgnoreReturnValue
@RequiresApi(value = 34)
setExtractHdrFrames(boolean extractHdrFrames)

Sets whether HDR bitmap should be extracted from HDR videos.

FrameExtractor.Builder

Sets the GlObjectsProvider to be used by the effect processing pipeline.

FrameExtractor.Builder

Sets the selector of MediaCodec instances.

FrameExtractor.Builder

Sets the parameters that control how seek operations are performed.

Public constructors

Builder

public Builder(Context context, MediaItem mediaItem)

Creates a new instance.

Parameters
Context context

The Context.

MediaItem mediaItem

The MediaItem from which to extract frames.

Public methods

build

public FrameExtractor build()

Builds a new FrameExtractor instance.

setEffects

@CanIgnoreReturnValue
public FrameExtractor.Builder setEffects(List<Effect> effects)

Sets the Effects to apply to the extracted video frames.

Parameters
List<Effect> effects

The List of video effects.

Returns
FrameExtractor.Builder

This builder.

setExtractHdrFrames

@CanIgnoreReturnValue
@RequiresApi(value = 34)
public FrameExtractor.Builder setExtractHdrFrames(boolean extractHdrFrames)

Sets whether HDR bitmap should be extracted from HDR videos.

When set to false, extracted HDR frames will be tone-mapped to BT709.

When set to true, extracted HDR frames will have a high bit depth Bitmap.Config and BT2020_HLG. Extracting HDR frames is only supported on API 34+.

This flag has no effect when the input is SDR.

Defaults to false.

Parameters
boolean extractHdrFrames

Whether HDR frames should be returned.

Returns
FrameExtractor.Builder

This builder.

setGlObjectsProvider

@CanIgnoreReturnValue
public FrameExtractor.Builder setGlObjectsProvider(GlObjectsProvider glObjectsProvider)

Sets the GlObjectsProvider to be used by the effect processing pipeline.

By default, a DefaultGlObjectsProvider is used.

Parameters
GlObjectsProvider glObjectsProvider

The GlObjectsProvider.

Returns
FrameExtractor.Builder

This builder.

setMediaCodecSelector

@CanIgnoreReturnValue
public FrameExtractor.Builder setMediaCodecSelector(MediaCodecSelector mediaCodecSelector)

Sets the selector of MediaCodec instances. Defaults to PREFER_SOFTWARE.

Parameters
MediaCodecSelector mediaCodecSelector

The MediaCodecSelector.

Returns
FrameExtractor.Builder

This builder.

setSeekParameters

@CanIgnoreReturnValue
public FrameExtractor.Builder setSeekParameters(SeekParameters seekParameters)

Sets the parameters that control how seek operations are performed. Defaults to DEFAULT.

Parameters
SeekParameters seekParameters

The SeekParameters.

Returns
FrameExtractor.Builder

This builder.