FrameExtractor
@UnstableApi
class FrameExtractor : AutoCloseable
Extracts decoded frames from MediaItem.
Frame extractor instances must be accessed from a single application thread.
This class may produce incorrect or washed out colors, or images that have too high contrast for inputs not covered by testDecodeGlAccuracyRGB CTS test. That is:
- Inputs of BT.601 limited range are likely to produce accurate output with either
softwareorhardwaredecoders across a wide range of devices. - Other inputs are likely to produce accurate output when using
hardwaredecoders on devices that are launched with API 33 or later. - HDR inputs will produce a
BitmapwithBT2020_HLG. There are no guarantees that an HLGBitmapdisplayed inImageViewand an HLG video displayed inSurfaceViewwill look the same. - Depending on the device and input video, color inaccuracies can be mitigated with an appropriate
RgbMatrixeffect.
Summary
Nested types |
|---|
class FrameExtractor.BuilderA builder for |
class FrameExtractor.FrameStores an extracted and decoded video frame. |
Public functions |
|
|---|---|
Unit |
close()Releases the underlying resources. |
ListenableFuture<FrameExtractor.Frame!>! |
Extracts a representative |
ListenableFuture<FrameExtractor.Frame!>! |
Public functions
close
fun close(): Unit
Releases the underlying resources. This method must be called when the frame extractor is no longer required. The frame extractor must not be used after calling this method.
getFrame
fun getFrame(positionMs: Long): ListenableFuture<FrameExtractor.Frame!>!
Extracts a representative Frame for the specified video position.
| Parameters | |
|---|---|
positionMs: Long |
The time position in the |
| Returns | |
|---|---|
ListenableFuture<FrameExtractor.Frame!>! |
A |