Struct aws_sdk_elastictranscoder::types::PlayReadyDrm
source · #[non_exhaustive]pub struct PlayReadyDrm {
pub format: Option<String>,
pub key: Option<String>,
pub key_md5: Option<String>,
pub key_id: Option<String>,
pub initialization_vector: Option<String>,
pub license_acquisition_url: Option<String>,
}
Expand description
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.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.format: Option<String>
The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
key: Option<String>
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.
key_md5: Option<String>
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.
key_id: Option<String>
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.
initialization_vector: Option<String>
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.
license_acquisition_url: Option<String>
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/
Implementations§
source§impl PlayReadyDrm
impl PlayReadyDrm
sourcepub fn format(&self) -> Option<&str>
pub fn format(&self) -> Option<&str>
The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
sourcepub fn key(&self) -> Option<&str>
pub fn key(&self) -> Option<&str>
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.
sourcepub fn key_md5(&self) -> Option<&str>
pub fn key_md5(&self) -> Option<&str>
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.
sourcepub fn key_id(&self) -> Option<&str>
pub fn key_id(&self) -> Option<&str>
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.
sourcepub fn initialization_vector(&self) -> Option<&str>
pub fn initialization_vector(&self) -> Option<&str>
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.
sourcepub fn license_acquisition_url(&self) -> Option<&str>
pub fn license_acquisition_url(&self) -> Option<&str>
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/
source§impl PlayReadyDrm
impl PlayReadyDrm
sourcepub fn builder() -> PlayReadyDrmBuilder
pub fn builder() -> PlayReadyDrmBuilder
Creates a new builder-style object to manufacture PlayReadyDrm
.
Trait Implementations§
source§impl Clone for PlayReadyDrm
impl Clone for PlayReadyDrm
source§fn clone(&self) -> PlayReadyDrm
fn clone(&self) -> PlayReadyDrm
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for PlayReadyDrm
impl Debug for PlayReadyDrm
source§impl PartialEq for PlayReadyDrm
impl PartialEq for PlayReadyDrm
source§fn eq(&self, other: &PlayReadyDrm) -> bool
fn eq(&self, other: &PlayReadyDrm) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for PlayReadyDrm
Auto Trait Implementations§
impl Freeze for PlayReadyDrm
impl RefUnwindSafe for PlayReadyDrm
impl Send for PlayReadyDrm
impl Sync for PlayReadyDrm
impl Unpin for PlayReadyDrm
impl UnwindSafe for PlayReadyDrm
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more