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:
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
    boolean
     
    The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
    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 DRM key for your file, provided by your DRM license provider.
    The ID for your DRM key, so that your DRM license provider knows which key to provide.
    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 location of the license key required to play DRM content.
    int
     
    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
    The DRM key for your file, provided by your DRM license provider.
    void
    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.
    Returns a string representation of this object; useful for testing and debugging.
    The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
    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 DRM key for your file, provided by your DRM license provider.
    The ID for your DRM key, so that your DRM license provider knows which key to provide.
    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.
    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 Details

    • PlayReadyDrm

      public PlayReadyDrm()
  • Method Details

    • 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 will convert 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 will convert 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 will convert 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 will convert 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 will convert 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 will convert 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:
    • 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