Back to Exoplayer

AesCipherDataSink (ExoPlayer library)

docs/doc/reference/com/google/android/exoplayer2/upstream/crypto/AesCipherDataSink.html

latest6.4 KB
Original Source

Package com.google.android.exoplayer2.upstream.crypto

Class AesCipherDataSink

  • java.lang.Object

    • com.google.android.exoplayer2.upstream.crypto.AesCipherDataSink
  • All Implemented Interfaces:DataSink


[@Deprecated](https://developer.android.com/reference/java/lang/Deprecated.html "class or interface in java.lang")public final classAesCipherDataSinkextends[Object](https://developer.android.com/reference/java/lang/Object.html "class or interface in java.lang")implements[DataSink](../DataSink.html "interface in com.google.android.exoplayer2.upstream")

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.

A wrapping DataSink that encrypts the data being consumed.

Nested Class Summary

- 

Nested classes/interfaces inherited from interface com.google.android.exoplayer2.upstream.DataSink

DataSink.Factory

Constructor Summary

Constructors | Constructor | Description | | --- | --- | | AesCipherDataSink​(byte[] secretKey, DataSink wrappedDataSink) | Deprecated.

Create an instance whose write methods have the side effect of overwriting the input data. | | AesCipherDataSink​(byte[] secretKey, DataSink wrappedDataSink, byte[] scratch) | Deprecated.

Create an instance whose write methods are free of side effects. |

Method Summary

All Methods Instance Methods Concrete Methods Deprecated Methods | Modifier and Type | Method | Description | | --- | --- | --- | | void | close() | Deprecated.

Closes the sink. | | void | open​(DataSpec dataSpec) | Deprecated.

Opens the sink to consume the specified data. | | void | write​(byte[] buffer, int offset, int length) | Deprecated.

Consumes the provided data. |

- 

Methods inherited from class java.lang.Object

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

Constructor Detail

- 

AesCipherDataSink

public AesCipherDataSink​(byte[] secretKey,[DataSink](../DataSink.html "interface in com.google.android.exoplayer2.upstream")wrappedDataSink)

Deprecated.

Create an instance whose write methods have the side effect of overwriting the input data. Use this constructor for maximum efficiency in the case that there is no requirement for the input data arrays to remain unchanged. Parameters:secretKey - The key data.wrappedDataSink - The wrapped DataSink.

- 

AesCipherDataSink

public AesCipherDataSink​(byte[] secretKey,[DataSink](../DataSink.html "interface in com.google.android.exoplayer2.upstream")wrappedDataSink,
                         @Nullable
                         byte[] scratch)

Deprecated.

Create an instance whose write methods are free of side effects. Use this constructor when the input data arrays are required to remain unchanged. Parameters:secretKey - The key data.wrappedDataSink - The wrapped DataSink.scratch - Scratch space. Data is encrypted into this array before being written to the wrapped DataSink. It should be of appropriate size for the expected writes. If a write is larger than the size of this array the write will still succeed, but multiple cipher calls will be required to complete the operation. If null then encryption will overwrite the input data.

Method Detail

- 

open

public void open​([DataSpec](../DataSpec.html "class in com.google.android.exoplayer2.upstream")dataSpec)
          throws[IOException](https://developer.android.com/reference/java/io/IOException.html "class or interface in java.io")

Deprecated.

Description copied from interface: DataSink

Opens the sink to consume the specified data.

Note: If an IOException is thrown, callers must still call DataSink.close() to ensure that any partial effects of the invocation are cleaned up.

Specified by:open in interface DataSinkParameters:dataSpec - Defines the data to be consumed.Throws:IOException - If an error occurs opening the sink.

- 

write

public void write​(byte[] buffer,
                  int offset,
                  int length)
           throws[IOException](https://developer.android.com/reference/java/io/IOException.html "class or interface in java.io")

Deprecated.

Description copied from interface: DataSink

Consumes the provided data. Specified by:write in interface DataSinkParameters:buffer - The buffer from which data should be consumed.offset - The offset of the data to consume in buffer.length - The length of the data to consume, in bytes.Throws:IOException - If an error occurs writing to the sink.

- 

close

public void close()
           throws[IOException](https://developer.android.com/reference/java/io/IOException.html "class or interface in java.io")

Deprecated.

Description copied from interface: DataSink

Closes the sink.

Note: This method must be called even if the corresponding call to DataSink.open(DataSpec) threw an IOException. See DataSink.open(DataSpec) for more details.

Specified by:close in interface DataSinkThrows:IOException - If an error occurs closing the sink.