pub struct ContentProtection {Show 13 fields
pub robustness: Option<String>,
pub ref: Option<String>,
pub refId: Option<String>,
pub schemeIdUri: Option<String>,
pub cenc_pssh: Vec<CencPssh>,
pub default_KID: Option<String>,
pub laurl: Option<Laurl>,
pub clearkey_laurl: Option<Laurl>,
pub msprpro: Option<MsprPro>,
pub mspr_is_encrypted: Option<MsprIsEncrypted>,
pub mspr_iv_size: Option<MsprIVSize>,
pub mspr_kid: Option<MsprKid>,
pub value: Option<String>,
}
Expand description
Contains information on DRM (rights management / encryption) mechanisms used in the stream.
If this node is not present, no content protection (such as Widevine and Playready) is applied by the source.
Fields§
§robustness: Option<String>
The robustness level required for this content protection scheme.
ref: Option<String>
An xs:IDREF that references an identifier in this MPD.
refId: Option<String>
References an identifier in this MPD.
schemeIdUri: Option<String>
§cenc_pssh: Vec<CencPssh>
The DRM initialization data (Protection System Specific Header).
default_KID: Option<String>
The DRM key identifier.
laurl: Option<Laurl>
License acquisition URL.
clearkey_laurl: Option<Laurl>
License acquisition URL. The name clearkey:Laurl is obsolete and replaced by dashif:laurl. Some manifests in the wild include both, and the parser does not allow for duplicate fields, so we need to allow for this field using a distinct name.
msprpro: Option<MsprPro>
Content specific to initialization data using Microsoft PlayReady DRM.
mspr_is_encrypted: Option<MsprIsEncrypted>
§mspr_iv_size: Option<MsprIVSize>
§mspr_kid: Option<MsprKid>
§value: Option<String>
Trait Implementations§
Source§impl Clone for ContentProtection
impl Clone for ContentProtection
Source§fn clone(&self) -> ContentProtection
fn clone(&self) -> ContentProtection
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ContentProtection
impl Debug for ContentProtection
Source§impl Default for ContentProtection
impl Default for ContentProtection
Source§fn default() -> ContentProtection
fn default() -> ContentProtection
Source§impl<'de> Deserialize<'de> for ContentProtectionwhere
ContentProtection: Default,
impl<'de> Deserialize<'de> for ContentProtectionwhere
ContentProtection: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Hash for ContentProtection
impl Hash for ContentProtection
Source§impl PartialEq for ContentProtection
impl PartialEq for ContentProtection
Source§impl Serialize for ContentProtection
impl Serialize for ContentProtection
impl StructuralPartialEq for ContentProtection
Auto Trait Implementations§
impl Freeze for ContentProtection
impl RefUnwindSafe for ContentProtection
impl Send for ContentProtection
impl Sync for ContentProtection
impl Unpin for ContentProtection
impl UnwindSafe for ContentProtection
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§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