#[non_exhaustive]pub struct Builder { /* private fields */ }
Expand description
A builder for DashFragmentSelector
Implementations
sourceimpl Builder
impl Builder
sourcepub fn fragment_selector_type(self, input: DashFragmentSelectorType) -> Self
pub fn fragment_selector_type(self, input: DashFragmentSelectorType) -> Self
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 set_fragment_selector_type(
self,
input: Option<DashFragmentSelectorType>
) -> Self
pub fn set_fragment_selector_type(
self,
input: Option<DashFragmentSelectorType>
) -> Self
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, input: DashTimestampRange) -> Self
pub fn timestamp_range(self, input: DashTimestampRange) -> Self
The start and end of the timestamp range for the requested media.
This value should not be present if PlaybackType
is LIVE
.
sourcepub fn set_timestamp_range(self, input: Option<DashTimestampRange>) -> Self
pub fn set_timestamp_range(self, input: Option<DashTimestampRange>) -> Self
The start and end of the timestamp range for the requested media.
This value should not be present if PlaybackType
is LIVE
.
sourcepub fn build(self) -> DashFragmentSelector
pub fn build(self) -> DashFragmentSelector
Consumes the builder and constructs a DashFragmentSelector
Trait Implementations
impl StructuralPartialEq for Builder
Auto Trait Implementations
impl RefUnwindSafe for Builder
impl Send for Builder
impl Sync for Builder
impl Unpin for Builder
impl UnwindSafe for Builder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub 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> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
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