pub struct MPD {Show 34 fields
pub id: Option<String>,
pub mpdtype: Option<String>,
pub xsi: Option<String>,
pub ext: Option<String>,
pub cenc: Option<String>,
pub xlink: Option<String>,
pub scte35: Option<String>,
pub dvb: Option<String>,
pub xmlns: Option<String>,
pub schemaLocation: Option<String>,
pub scte214: Option<String>,
pub profiles: Option<String>,
pub minBufferTime: Option<Duration>,
pub minimumUpdatePeriod: Option<Duration>,
pub timeShiftBufferDepth: Option<Duration>,
pub mediaPresentationDuration: Option<Duration>,
pub maxSegmentDuration: Option<Duration>,
pub maxSubsegmentDuration: Option<Duration>,
pub suggestedPresentationDelay: Option<Duration>,
pub publishTime: Option<XsDatetime>,
pub availabilityStartTime: Option<XsDatetime>,
pub availabilityEndTime: Option<XsDatetime>,
pub ProgramInformation: Option<ProgramInformation>,
pub base_url: Vec<BaseURL>,
pub locations: Vec<Location>,
pub PatchLocation: Vec<PatchLocation>,
pub ServiceDescription: Option<ServiceDescription>,
pub ContentProtection: Vec<ContentProtection>,
pub periods: Vec<Period>,
pub Metrics: Vec<Metrics>,
pub essential_property: Vec<EssentialProperty>,
pub supplemental_property: Vec<SupplementalProperty>,
pub UTCTiming: Vec<UTCTiming>,
pub LeapSecondInformation: Option<LeapSecondInformation>,
}Expand description
The root node of a parsed DASH MPD manifest.
Fields§
§id: Option<String>§mpdtype: Option<String>The Presentation Type, either “static” or “dynamic” (a live stream for which segments become available over time).
xsi: Option<String>The XML namespace prefix used by convention for the XML Schema Instance namespace.
ext: Option<String>§cenc: Option<String>The XML namespace prefix used by convention for the Common Encryption scheme.
xlink: Option<String>The XML namespace prefix used by convention for the XML Linking Language.
scte35: Option<String>The XML namespace prefix used by convention for the “Digital Program Insertion Cueing Message for Cable” (SCTE 35) signaling standard.
dvb: Option<String>The XML namespace prefix used by convention for DASH extensions proposed by the Digital Video Broadcasting Project, as per RFC 5328.
xmlns: Option<String>§schemaLocation: Option<String>§scte214: Option<String>§profiles: Option<String>§minBufferTime: Option<Duration>Prescribes how many seconds of buffer a client should keep to avoid stalling when streaming under ideal network conditions with bandwidth matching the @bandwidth attribute.
minimumUpdatePeriod: Option<Duration>§timeShiftBufferDepth: Option<Duration>§mediaPresentationDuration: Option<Duration>§maxSegmentDuration: Option<Duration>§maxSubsegmentDuration: Option<Duration>§suggestedPresentationDelay: Option<Duration>A suggested delay of the presentation compared to the Live edge.
publishTime: Option<XsDatetime>§availabilityStartTime: Option<XsDatetime>§availabilityEndTime: Option<XsDatetime>§ProgramInformation: Option<ProgramInformation>§base_url: Vec<BaseURL>There may be several BaseURLs, for redundancy (for example multiple CDNs)
locations: Vec<Location>§PatchLocation: Vec<PatchLocation>Specifies the location of an MPD “patch document”, a set of instructions for replacing certain parts of the MPD manifest with updated information.
ServiceDescription: Option<ServiceDescription>§ContentProtection: Vec<ContentProtection>§periods: Vec<Period>§Metrics: Vec<Metrics>§essential_property: Vec<EssentialProperty>§supplemental_property: Vec<SupplementalProperty>§UTCTiming: Vec<UTCTiming>§LeapSecondInformation: Option<LeapSecondInformation>Correction for leap seconds, used by the DASH Low Latency specification.
Trait Implementations§
source§impl<'de> Deserialize<'de> for MPD
impl<'de> Deserialize<'de> for MPD
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>,
impl StructuralPartialEq for MPD
Auto Trait Implementations§
impl Freeze for MPD
impl RefUnwindSafe for MPD
impl Send for MPD
impl Sync for MPD
impl Unpin for MPD
impl UnwindSafe for MPD
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
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