Class VpxDecoder
- java.lang.Object
-
- com.google.android.exoplayer2.decoder.SimpleDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>
-
- com.google.android.exoplayer2.ext.vp9.VpxDecoder
-
- All Implemented Interfaces:
Decoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>
@Deprecated public final class VpxDecoder extends SimpleDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>
Deprecated.com.google.android.exoplayer2 is deprecated. Please migrate to androidx.media3 (which contains the same ExoPlayer code). See the migration guide for more details, including a script to help with the migration.Vpx decoder.
-
-
Constructor Summary
Constructors Constructor Description VpxDecoder(int numInputBuffers, int numOutputBuffers, int initialInputBufferSize, CryptoConfig cryptoConfig, int threads)Deprecated.Creates a VP9 decoder.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected DecoderInputBuffercreateInputBuffer()Deprecated.Creates a new input buffer.protected VideoDecoderOutputBuffercreateOutputBuffer()Deprecated.Creates a new output buffer.protected VpxDecoderExceptioncreateUnexpectedDecodeException(Throwable error)Deprecated.Creates an exception to propagate for an unexpected decode error.protected VpxDecoderExceptiondecode(DecoderInputBuffer inputBuffer, VideoDecoderOutputBuffer outputBuffer, boolean reset)Deprecated.Decodes theinputBufferand stores any decoded output inoutputBuffer.StringgetName()Deprecated.Returns the name of the decoder.voidrelease()Deprecated.Releases the decoder.protected voidreleaseOutputBuffer(VideoDecoderOutputBuffer outputBuffer)Deprecated.Releases an output buffer back to the decoder.voidrenderToSurface(VideoDecoderOutputBuffer outputBuffer, Surface surface)Deprecated.Renders the outputBuffer to the surface.voidsetOutputMode(@com.google.android.exoplayer2.C.VideoOutputMode int outputMode)Deprecated.Sets the output mode for frames rendered by the decoder.-
Methods inherited from class com.google.android.exoplayer2.decoder.SimpleDecoder
dequeueInputBuffer, dequeueOutputBuffer, flush, queueInputBuffer, setInitialInputBufferSize
-
-
-
-
Constructor Detail
-
VpxDecoder
public VpxDecoder(int numInputBuffers, int numOutputBuffers, int initialInputBufferSize, @Nullable CryptoConfig cryptoConfig, int threads) throws VpxDecoderExceptionDeprecated.Creates a VP9 decoder.- Parameters:
numInputBuffers- The number of input buffers.numOutputBuffers- The number of output buffers.initialInputBufferSize- The initial size of each input buffer.cryptoConfig- TheCryptoConfigobject required for decoding encrypted content. May be null and can be ignored if decoder does not handle encrypted content.threads- Number of threads libvpx will use to decode.- Throws:
VpxDecoderException- Thrown if an exception occurs when initializing the decoder.
-
-
Method Detail
-
getName
public String getName()
Deprecated.Description copied from interface:DecoderReturns the name of the decoder.- Returns:
- The name of the decoder.
-
createInputBuffer
protected DecoderInputBuffer createInputBuffer()
Deprecated.Description copied from class:SimpleDecoderCreates a new input buffer.- Specified by:
createInputBufferin classSimpleDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>
-
createOutputBuffer
protected VideoDecoderOutputBuffer createOutputBuffer()
Deprecated.Description copied from class:SimpleDecoderCreates a new output buffer.- Specified by:
createOutputBufferin classSimpleDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>
-
releaseOutputBuffer
protected void releaseOutputBuffer(VideoDecoderOutputBuffer outputBuffer)
Deprecated.Description copied from class:SimpleDecoderReleases an output buffer back to the decoder.- Overrides:
releaseOutputBufferin classSimpleDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>- Parameters:
outputBuffer- The output buffer being released.
-
createUnexpectedDecodeException
protected VpxDecoderException createUnexpectedDecodeException(Throwable error)
Deprecated.Description copied from class:SimpleDecoderCreates an exception to propagate for an unexpected decode error.- Specified by:
createUnexpectedDecodeExceptionin classSimpleDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>- Parameters:
error- The unexpected decode error.- Returns:
- The exception to propagate.
-
decode
@Nullable protected VpxDecoderException decode(DecoderInputBuffer inputBuffer, VideoDecoderOutputBuffer outputBuffer, boolean reset)
Deprecated.Description copied from class:SimpleDecoderDecodes theinputBufferand stores any decoded output inoutputBuffer.- Specified by:
decodein classSimpleDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>- Parameters:
inputBuffer- The buffer to decode.outputBuffer- The output buffer to store decoded data. The flagC.BUFFER_FLAG_DECODE_ONLYwill be set if the same flag is set oninputBuffer, but may be set/unset as required. If the flag is set when the call returns then the output buffer will not be made available to dequeue. The output buffer may not have been populated in this case.reset- Whether the decoder must be reset before decoding.- Returns:
- A decoder exception if an error occurred, or null if decoding was successful.
-
release
public void release()
Deprecated.Description copied from interface:DecoderReleases the decoder. Must be called when the decoder is no longer needed.- Specified by:
releasein interfaceDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>- Overrides:
releasein classSimpleDecoder<DecoderInputBuffer,VideoDecoderOutputBuffer,VpxDecoderException>
-
setOutputMode
public void setOutputMode(@com.google.android.exoplayer2.C.VideoOutputMode int outputMode)
Deprecated.Sets the output mode for frames rendered by the decoder.- Parameters:
outputMode- The output mode.
-
renderToSurface
public void renderToSurface(VideoDecoderOutputBuffer outputBuffer, Surface surface) throws VpxDecoderException
Deprecated.Renders the outputBuffer to the surface. Used with OUTPUT_MODE_SURFACE_YUV only.- Throws:
VpxDecoderException
-
-