com.amazonaws.services.elastictranscoder.model

## Class PlayReadyDrm

- java.lang.Object
- - com.amazonaws.services.elastictranscoder.model.PlayReadyDrm

All Implemented Interfaces:
  Serializable, Cloneable

    public class PlayReadyDrm
    extends Object
    implements Serializable, Cloneable

The PlayReady DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

PlayReady DRM encrypts your media files using `AES-CTR` encryption.

If you use DRM for an `HLSv3` playlist, your outputs must have a master playlist.

See Also:
  Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`PlayReadyDrm()`

### Method Summary

All Methods Instance Methods Concrete Methods
`PlayReadyDrm` `clone()`
`boolean` `equals(Object obj)`
`String` `getFormat()` The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
`String` `getInitializationVector()` The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files.
`String` `getKey()` The DRM key for your file, provided by your DRM license provider.
`String` `getKeyId()` The ID for your DRM key, so that your DRM license provider knows which key to provide.
`String` `getKeyMd5()` The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit.
`String` `getLicenseAcquisitionUrl()` The location of the license key required to play DRM content.
`int` `hashCode()`
`void` `setFormat(String format)` The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
`void` `setInitializationVector(String initializationVector)` The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files.
`void` `setKey(String key)` The DRM key for your file, provided by your DRM license provider.
`void` `setKeyId(String keyId)` The ID for your DRM key, so that your DRM license provider knows which key to provide.
`void` `setKeyMd5(String keyMd5)` The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit.
`void` `setLicenseAcquisitionUrl(String licenseAcquisitionUrl)` The location of the license key required to play DRM content.
`String` `toString()` Returns a string representation of this object; useful for testing and debugging.
`PlayReadyDrm` `withFormat(String format)` The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
`PlayReadyDrm` `withInitializationVector(String initializationVector)` The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files.
`PlayReadyDrm` `withKey(String key)` The DRM key for your file, provided by your DRM license provider.
`PlayReadyDrm` `withKeyId(String keyId)` The ID for your DRM key, so that your DRM license provider knows which key to provide.
`PlayReadyDrm` `withKeyMd5(String keyMd5)` The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit.
`PlayReadyDrm` `withLicenseAcquisitionUrl(String licenseAcquisitionUrl)` The location of the license key required to play DRM content.

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

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### PlayReadyDrm

    public PlayReadyDrm()

### Method Detail

#### setFormat

    public void setFormat(String format)

The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Parameters:
  `format` - The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

#### getFormat

    public String getFormat()

The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Returns:
  The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

#### withFormat

    public PlayReadyDrm withFormat(String format)

The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Parameters:
  `format` - The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setKey

    public void setKey(String key)

The DRM key for your file, provided by your DRM license provider. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

`128`, `192`, or `256`.

The key must also be encrypted by using AWS KMS.

Parameters:
  `key` - The DRM key for your file, provided by your DRM license provider. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

  `128`, `192`, or `256`.

  The key must also be encrypted by using AWS KMS.

#### getKey

    public String getKey()

The DRM key for your file, provided by your DRM license provider. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

`128`, `192`, or `256`.

The key must also be encrypted by using AWS KMS.

Returns:
  The DRM key for your file, provided by your DRM license provider. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

  `128`, `192`, or `256`.

  The key must also be encrypted by using AWS KMS.

#### withKey

    public PlayReadyDrm withKey(String key)

The DRM key for your file, provided by your DRM license provider. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

`128`, `192`, or `256`.

The key must also be encrypted by using AWS KMS.

Parameters:
  `key` - The DRM key for your file, provided by your DRM license provider. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

  `128`, `192`, or `256`.

  The key must also be encrypted by using AWS KMS.

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setKeyMd5

    public void setKeyMd5(String keyMd5)

The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

Parameters:
  `keyMd5` - The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

#### getKeyMd5

    public String getKeyMd5()

The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

Returns:
  The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

#### withKeyMd5

    public PlayReadyDrm withKeyMd5(String keyMd5)

The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

Parameters:
  `keyMd5` - The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setKeyId

    public void setKeyId(String keyId)

The ID for your DRM key, so that your DRM license provider knows which key to provide.

The key ID must be provided in big endian, and Elastic Transcoder converts it to little endian before inserting it into the PlayReady DRM headers. If you are unsure whether your license server provides your key ID in big or little endian, check with your DRM provider.

Parameters:
  `keyId` - The ID for your DRM key, so that your DRM license provider knows which key to provide.

  The key ID must be provided in big endian, and Elastic Transcoder converts it to little endian before inserting it into the PlayReady DRM headers. If you are unsure whether your license server provides your key ID in big or little endian, check with your DRM provider.

#### getKeyId

    public String getKeyId()

The ID for your DRM key, so that your DRM license provider knows which key to provide.

The key ID must be provided in big endian, and Elastic Transcoder converts it to little endian before inserting it into the PlayReady DRM headers. If you are unsure whether your license server provides your key ID in big or little endian, check with your DRM provider.

Returns:
  The ID for your DRM key, so that your DRM license provider knows which key to provide.

  The key ID must be provided in big endian, and Elastic Transcoder converts it to little endian before inserting it into the PlayReady DRM headers. If you are unsure whether your license server provides your key ID in big or little endian, check with your DRM provider.

#### withKeyId

    public PlayReadyDrm withKeyId(String keyId)

The ID for your DRM key, so that your DRM license provider knows which key to provide.

The key ID must be provided in big endian, and Elastic Transcoder converts it to little endian before inserting it into the PlayReady DRM headers. If you are unsure whether your license server provides your key ID in big or little endian, check with your DRM provider.

Parameters:
  `keyId` - The ID for your DRM key, so that your DRM license provider knows which key to provide.

  The key ID must be provided in big endian, and Elastic Transcoder converts it to little endian before inserting it into the PlayReady DRM headers. If you are unsure whether your license server provides your key ID in big or little endian, check with your DRM provider.

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setInitializationVector

    public void setInitializationVector(String initializationVector)

The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files. The initialization vector must be base64-encoded, and it must be exactly 8 bytes long before being base64-encoded. If no initialization vector is provided, Elastic Transcoder generates one for you.

Parameters:
  `initializationVector` - The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files. The initialization vector must be base64-encoded, and it must be exactly 8 bytes long before being base64-encoded. If no initialization vector is provided, Elastic Transcoder generates one for you.

#### getInitializationVector

    public String getInitializationVector()

The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files. The initialization vector must be base64-encoded, and it must be exactly 8 bytes long before being base64-encoded. If no initialization vector is provided, Elastic Transcoder generates one for you.

Returns:
  The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files. The initialization vector must be base64-encoded, and it must be exactly 8 bytes long before being base64-encoded. If no initialization vector is provided, Elastic Transcoder generates one for you.

#### withInitializationVector

    public PlayReadyDrm withInitializationVector(String initializationVector)

The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files. The initialization vector must be base64-encoded, and it must be exactly 8 bytes long before being base64-encoded. If no initialization vector is provided, Elastic Transcoder generates one for you.

Parameters:
  `initializationVector` - The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files. The initialization vector must be base64-encoded, and it must be exactly 8 bytes long before being base64-encoded. If no initialization vector is provided, Elastic Transcoder generates one for you.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setLicenseAcquisitionUrl

    public void setLicenseAcquisitionUrl(String licenseAcquisitionUrl)

The location of the license key required to play DRM content. The URL must be an absolute path, and is referenced by the PlayReady header. The PlayReady header is referenced in the protection header of the client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example URL looks like this: `https://www.example.com/exampleKey/`

Parameters:
  `licenseAcquisitionUrl` - The location of the license key required to play DRM content. The URL must be an absolute path, and is referenced by the PlayReady header. The PlayReady header is referenced in the protection header of the client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example URL looks like this: `https://www.example.com/exampleKey/`

#### getLicenseAcquisitionUrl

    public String getLicenseAcquisitionUrl()

The location of the license key required to play DRM content. The URL must be an absolute path, and is referenced by the PlayReady header. The PlayReady header is referenced in the protection header of the client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example URL looks like this: `https://www.example.com/exampleKey/`

Returns:
  The location of the license key required to play DRM content. The URL must be an absolute path, and is referenced by the PlayReady header. The PlayReady header is referenced in the protection header of the client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example URL looks like this: `https://www.example.com/exampleKey/`

#### withLicenseAcquisitionUrl

    public PlayReadyDrm withLicenseAcquisitionUrl(String licenseAcquisitionUrl)

The location of the license key required to play DRM content. The URL must be an absolute path, and is referenced by the PlayReady header. The PlayReady header is referenced in the protection header of the client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example URL looks like this: `https://www.example.com/exampleKey/`

Parameters:
  `licenseAcquisitionUrl` - The location of the license key required to play DRM content. The URL must be an absolute path, and is referenced by the PlayReady header. The PlayReady header is referenced in the protection header of the client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example URL looks like this: `https://www.example.com/exampleKey/`
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### toString

    public String toString()

Returns a string representation of this object; useful for testing and debugging.

Overrides:
  `toString` in class `Object`
Returns:
  A string representation of this object.
See Also:
  `Object.toString()`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### clone

    public PlayReadyDrm clone()

Overrides:
  `clone` in class `Object`