Package com.google.android.exoplayer2.extractor

## Class DummyTrackOutput

- java.lang.Object
- - com.google.android.exoplayer2.extractor.DummyTrackOutput

- All Implemented Interfaces:
    `TrackOutput`

      public final class DummyTrackOutput
      extends Object
      implements TrackOutput

  A fake `TrackOutput` implementation.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.google.android.exoplayer2.extractor.TrackOutput

      `TrackOutput.CryptoData, TrackOutput.SampleDataPart`

  - ### Field Summary

    - ### Fields inherited from interface com.google.android.exoplayer2.extractor.TrackOutput

      `SAMPLE_DATA_PART_ENCRYPTION, SAMPLE_DATA_PART_MAIN, SAMPLE_DATA_PART_SUPPLEMENTAL`

  - ### Constructor Summary

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

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `format​(Format format)` | Called when the `Format` of the track has been extracted from the stream.
    `int` | `sampleData​(DataReader input, int length, boolean allowEndOfInput, int sampleDataPart)` | Called to write sample data to the output.
    `void` | `sampleData​(ParsableByteArray data, int length, int sampleDataPart)` | Called to write sample data to the output.
    `void` | `sampleMetadata​(long timeUs, int flags, int size, int offset, TrackOutput.CryptoData cryptoData)` | Called when metadata associated with a sample has been extracted from the stream.

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

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

    - ### Methods inherited from interface com.google.android.exoplayer2.extractor.TrackOutput

      `sampleData, sampleData`

- - ### Constructor Detail

    - #### DummyTrackOutput

          public DummyTrackOutput()

  - ### Method Detail

    - #### format

          public void format​(Format format)

      Description copied from interface: `TrackOutput`
      Called when the `Format` of the track has been extracted from the stream.
      Specified by:
        `format` in interface `TrackOutput`
      Parameters:
        `format` - The extracted `Format`.

    - #### sampleData

          public int sampleData​(DataReader input,
                                int length,
                                boolean allowEndOfInput,
                                @SampleDataPart
                                int sampleDataPart)
                         throws IOException

      Description copied from interface: `TrackOutput`
      Called to write sample data to the output.
      Specified by:
        `sampleData` in interface `TrackOutput`
      Parameters:
        `input` - A `DataReader` from which to read the sample data.
        `length` - The maximum length to read from the input.
        `allowEndOfInput` - True if encountering the end of the input having read no data is allowed, and should result in `C.RESULT_END_OF_INPUT` being returned. False if it should be considered an error, causing an `EOFException` to be thrown.
        `sampleDataPart` - The part of the sample data to which this call corresponds.
      Returns:
        The number of bytes appended.
      Throws:
        `IOException` - If an error occurred reading from the input.

    - #### sampleData

          public void sampleData​(ParsableByteArray data,
                                 int length,
                                 @SampleDataPart
                                 int sampleDataPart)

      Description copied from interface: `TrackOutput`
      Called to write sample data to the output.
      Specified by:
        `sampleData` in interface `TrackOutput`
      Parameters:
        `data` - A `ParsableByteArray` from which to read the sample data.
        `length` - The number of bytes to read, starting from `data.getPosition()`.
        `sampleDataPart` - The part of the sample data to which this call corresponds.

    - #### sampleMetadata

          public void sampleMetadata​(long timeUs,
                                     @BufferFlags
                                     int flags,
                                     int size,
                                     int offset,
                                     @Nullable
                                     TrackOutput.CryptoData cryptoData)

      Description copied from interface: `TrackOutput`
      Called when metadata associated with a sample has been extracted from the stream.

      The corresponding sample data will have already been passed to the output via calls to `TrackOutput.sampleData(DataReader, int, boolean)` or `TrackOutput.sampleData(ParsableByteArray, int)`.

      Specified by:
        `sampleMetadata` in interface `TrackOutput`
      Parameters:
        `timeUs` - The media timestamp associated with the sample, in microseconds.
        `flags` - Flags associated with the sample. See `C.BUFFER_FLAG_*`.
        `size` - The size of the sample data, in bytes.
        `offset` - The number of bytes that have been passed to `TrackOutput.sampleData(DataReader, int, boolean)` or `TrackOutput.sampleData(ParsableByteArray, int)` since the last byte belonging to the sample whose metadata is being passed.
        `cryptoData` - The encryption data required to decrypt the sample. May be null.