Package com.google.android.exoplayer2.decoder

## Class OutputBuffer

- java.lang.Object
- - com.google.android.exoplayer2.decoder.Buffer
  - - com.google.android.exoplayer2.decoder.OutputBuffer

- Direct Known Subclasses:
    `SimpleOutputBuffer`, `SubtitleOutputBuffer`, `VideoDecoderOutputBuffer`

      public abstract class OutputBuffer
      extends Buffer

  Output buffer decoded by a `Decoder`.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static interface` | `OutputBuffer.Owner<S extends OutputBuffer>` | Buffer owner.

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `int` | `skippedOutputBufferCount` | The number of buffers immediately prior to this one that were skipped in the `Decoder`.
    `long` | `timeUs` | The presentation timestamp for the buffer, in microseconds.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `OutputBuffer()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract void` | `release()` | Releases the output buffer for reuse.

    - ### Methods inherited from class com.google.android.exoplayer2.decoder.Buffer

      `addFlag, clear, clearFlag, getFlag, hasSupplementalData, isDecodeOnly, isEndOfStream, isKeyFrame, setFlags`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### timeUs

          public long timeUs

      The presentation timestamp for the buffer, in microseconds.

    - #### skippedOutputBufferCount

          public int skippedOutputBufferCount

      The number of buffers immediately prior to this one that were skipped in the `Decoder`.

  - ### Constructor Detail

    - #### OutputBuffer

          public OutputBuffer()

  - ### Method Detail

    - #### release

          public abstract void release()

      Releases the output buffer for reuse. Must be called when the buffer is no longer needed.