#[non_exhaustive]pub struct DashFragmentSelector {
pub fragment_selector_type: Option<DashFragmentSelectorType>,
pub timestamp_range: Option<DashTimestampRange>,
}
Expand description
Contains the range of timestamps for the requested media, and the source of the timestamps.
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.fragment_selector_type: Option<DashFragmentSelectorType>
The source of the timestamps for the requested media.
When FragmentSelectorType
is set to PRODUCER_TIMESTAMP
and GetDASHStreamingSessionURLInput$PlaybackMode
is ON_DEMAND
or LIVE_REPLAY
, the first fragment ingested with a producer timestamp within the specified FragmentSelector$TimestampRange
is included in the media playlist. In addition, the fragments with producer timestamps within the TimestampRange
ingested immediately following the first fragment (up to the GetDASHStreamingSessionURLInput$MaxManifestFragmentResults
value) are included.
Fragments that have duplicate producer timestamps are deduplicated. This means that if producers are producing a stream of fragments with producer timestamps that are approximately equal to the true clock time, the MPEG-DASH manifest will contain all of the fragments within the requested timestamp range. If some fragments are ingested within the same time range and very different points in time, only the oldest ingested collection of fragments are returned.
When FragmentSelectorType
is set to PRODUCER_TIMESTAMP
and GetDASHStreamingSessionURLInput$PlaybackMode
is LIVE
, the producer timestamps are used in the MP4 fragments and for deduplication. But the most recently ingested fragments based on server timestamps are included in the MPEG-DASH manifest. This means that even if fragments ingested in the past have producer timestamps with values now, they are not included in the HLS media playlist.
The default is SERVER_TIMESTAMP
.
timestamp_range: Option<DashTimestampRange>
The start and end of the timestamp range for the requested media.
This value should not be present if PlaybackType
is LIVE
.
Implementations
sourceimpl DashFragmentSelector
impl DashFragmentSelector
sourcepub fn fragment_selector_type(&self) -> Option<&DashFragmentSelectorType>
pub fn fragment_selector_type(&self) -> Option<&DashFragmentSelectorType>
The source of the timestamps for the requested media.
When FragmentSelectorType
is set to PRODUCER_TIMESTAMP
and GetDASHStreamingSessionURLInput$PlaybackMode
is ON_DEMAND
or LIVE_REPLAY
, the first fragment ingested with a producer timestamp within the specified FragmentSelector$TimestampRange
is included in the media playlist. In addition, the fragments with producer timestamps within the TimestampRange
ingested immediately following the first fragment (up to the GetDASHStreamingSessionURLInput$MaxManifestFragmentResults
value) are included.
Fragments that have duplicate producer timestamps are deduplicated. This means that if producers are producing a stream of fragments with producer timestamps that are approximately equal to the true clock time, the MPEG-DASH manifest will contain all of the fragments within the requested timestamp range. If some fragments are ingested within the same time range and very different points in time, only the oldest ingested collection of fragments are returned.
When FragmentSelectorType
is set to PRODUCER_TIMESTAMP
and GetDASHStreamingSessionURLInput$PlaybackMode
is LIVE
, the producer timestamps are used in the MP4 fragments and for deduplication. But the most recently ingested fragments based on server timestamps are included in the MPEG-DASH manifest. This means that even if fragments ingested in the past have producer timestamps with values now, they are not included in the HLS media playlist.
The default is SERVER_TIMESTAMP
.
sourcepub fn timestamp_range(&self) -> Option<&DashTimestampRange>
pub fn timestamp_range(&self) -> Option<&DashTimestampRange>
The start and end of the timestamp range for the requested media.
This value should not be present if PlaybackType
is LIVE
.
sourceimpl DashFragmentSelector
impl DashFragmentSelector
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture DashFragmentSelector
Trait Implementations
sourceimpl Clone for DashFragmentSelector
impl Clone for DashFragmentSelector
sourcefn clone(&self) -> DashFragmentSelector
fn clone(&self) -> DashFragmentSelector
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for DashFragmentSelector
impl Debug for DashFragmentSelector
sourceimpl PartialEq<DashFragmentSelector> for DashFragmentSelector
impl PartialEq<DashFragmentSelector> for DashFragmentSelector
sourcefn eq(&self, other: &DashFragmentSelector) -> bool
fn eq(&self, other: &DashFragmentSelector) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &DashFragmentSelector) -> bool
fn ne(&self, other: &DashFragmentSelector) -> bool
This method tests for !=
.
impl StructuralPartialEq for DashFragmentSelector
Auto Trait Implementations
impl RefUnwindSafe for DashFragmentSelector
impl Send for DashFragmentSelector
impl Sync for DashFragmentSelector
impl Unpin for DashFragmentSelector
impl UnwindSafe for DashFragmentSelector
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more