#[non_exhaustive]
pub struct HlsManifestBuilder { /* private fields */ }
Expand description

A builder for HlsManifest.

Implementations§

source§

impl HlsManifestBuilder

source

pub fn ad_markers(self, input: AdMarkers) -> Self

This setting controls how ad markers are included in the packaged OriginEndpoint. “NONE” will omit all SCTE-35 ad markers from the output. “PASSTHROUGH” causes the manifest to contain a copy of the SCTE-35 ad markers (comments) taken directly from the input HTTP Live Streaming (HLS) manifest. “SCTE35_ENHANCED” generates ad markers and blackout tags based on SCTE-35 messages in the input source. “DATERANGE” inserts EXT-X-DATERANGE tags to signal ad and program transition events in HLS and CMAF manifests. For this option, you must set a programDateTimeIntervalSeconds value that is greater than 0.

source

pub fn set_ad_markers(self, input: Option<AdMarkers>) -> Self

This setting controls how ad markers are included in the packaged OriginEndpoint. “NONE” will omit all SCTE-35 ad markers from the output. “PASSTHROUGH” causes the manifest to contain a copy of the SCTE-35 ad markers (comments) taken directly from the input HTTP Live Streaming (HLS) manifest. “SCTE35_ENHANCED” generates ad markers and blackout tags based on SCTE-35 messages in the input source. “DATERANGE” inserts EXT-X-DATERANGE tags to signal ad and program transition events in HLS and CMAF manifests. For this option, you must set a programDateTimeIntervalSeconds value that is greater than 0.

source

pub fn get_ad_markers(&self) -> &Option<AdMarkers>

This setting controls how ad markers are included in the packaged OriginEndpoint. “NONE” will omit all SCTE-35 ad markers from the output. “PASSTHROUGH” causes the manifest to contain a copy of the SCTE-35 ad markers (comments) taken directly from the input HTTP Live Streaming (HLS) manifest. “SCTE35_ENHANCED” generates ad markers and blackout tags based on SCTE-35 messages in the input source. “DATERANGE” inserts EXT-X-DATERANGE tags to signal ad and program transition events in HLS and CMAF manifests. For this option, you must set a programDateTimeIntervalSeconds value that is greater than 0.

source

pub fn id(self, input: impl Into<String>) -> Self

The ID of the manifest. The ID must be unique within the OriginEndpoint and it cannot be changed after it is created. This field is required.

source

pub fn set_id(self, input: Option<String>) -> Self

The ID of the manifest. The ID must be unique within the OriginEndpoint and it cannot be changed after it is created.

source

pub fn get_id(&self) -> &Option<String>

The ID of the manifest. The ID must be unique within the OriginEndpoint and it cannot be changed after it is created.

source

pub fn include_iframe_only_stream(self, input: bool) -> Self

When enabled, an I-Frame only stream will be included in the output.

source

pub fn set_include_iframe_only_stream(self, input: Option<bool>) -> Self

When enabled, an I-Frame only stream will be included in the output.

source

pub fn get_include_iframe_only_stream(&self) -> &Option<bool>

When enabled, an I-Frame only stream will be included in the output.

source

pub fn manifest_name(self, input: impl Into<String>) -> Self

An optional short string appended to the end of the OriginEndpoint URL. If not specified, defaults to the manifestName for the OriginEndpoint.

source

pub fn set_manifest_name(self, input: Option<String>) -> Self

An optional short string appended to the end of the OriginEndpoint URL. If not specified, defaults to the manifestName for the OriginEndpoint.

source

pub fn get_manifest_name(&self) -> &Option<String>

An optional short string appended to the end of the OriginEndpoint URL. If not specified, defaults to the manifestName for the OriginEndpoint.

source

pub fn playlist_type(self, input: PlaylistType) -> Self

The HTTP Live Streaming (HLS) playlist type. When either “EVENT” or “VOD” is specified, a corresponding EXT-X-PLAYLIST-TYPE entry will be included in the media playlist.

source

pub fn set_playlist_type(self, input: Option<PlaylistType>) -> Self

The HTTP Live Streaming (HLS) playlist type. When either “EVENT” or “VOD” is specified, a corresponding EXT-X-PLAYLIST-TYPE entry will be included in the media playlist.

source

pub fn get_playlist_type(&self) -> &Option<PlaylistType>

The HTTP Live Streaming (HLS) playlist type. When either “EVENT” or “VOD” is specified, a corresponding EXT-X-PLAYLIST-TYPE entry will be included in the media playlist.

source

pub fn playlist_window_seconds(self, input: i32) -> Self

Time window (in seconds) contained in each parent manifest.

source

pub fn set_playlist_window_seconds(self, input: Option<i32>) -> Self

Time window (in seconds) contained in each parent manifest.

source

pub fn get_playlist_window_seconds(&self) -> &Option<i32>

Time window (in seconds) contained in each parent manifest.

source

pub fn program_date_time_interval_seconds(self, input: i32) -> Self

The interval (in seconds) between each EXT-X-PROGRAM-DATE-TIME tag inserted into manifests. Additionally, when an interval is specified ID3Timed Metadata messages will be generated every 5 seconds using the ingest time of the content. If the interval is not specified, or set to 0, then no EXT-X-PROGRAM-DATE-TIME tags will be inserted into manifests and no ID3Timed Metadata messages will be generated. Note that irrespective of this parameter, if any ID3 Timed Metadata is found in HTTP Live Streaming (HLS) input, it will be passed through to HLS output.

source

pub fn set_program_date_time_interval_seconds(self, input: Option<i32>) -> Self

The interval (in seconds) between each EXT-X-PROGRAM-DATE-TIME tag inserted into manifests. Additionally, when an interval is specified ID3Timed Metadata messages will be generated every 5 seconds using the ingest time of the content. If the interval is not specified, or set to 0, then no EXT-X-PROGRAM-DATE-TIME tags will be inserted into manifests and no ID3Timed Metadata messages will be generated. Note that irrespective of this parameter, if any ID3 Timed Metadata is found in HTTP Live Streaming (HLS) input, it will be passed through to HLS output.

source

pub fn get_program_date_time_interval_seconds(&self) -> &Option<i32>

The interval (in seconds) between each EXT-X-PROGRAM-DATE-TIME tag inserted into manifests. Additionally, when an interval is specified ID3Timed Metadata messages will be generated every 5 seconds using the ingest time of the content. If the interval is not specified, or set to 0, then no EXT-X-PROGRAM-DATE-TIME tags will be inserted into manifests and no ID3Timed Metadata messages will be generated. Note that irrespective of this parameter, if any ID3 Timed Metadata is found in HTTP Live Streaming (HLS) input, it will be passed through to HLS output.

source

pub fn url(self, input: impl Into<String>) -> Self

The URL of the packaged OriginEndpoint for consumption.

source

pub fn set_url(self, input: Option<String>) -> Self

The URL of the packaged OriginEndpoint for consumption.

source

pub fn get_url(&self) -> &Option<String>

The URL of the packaged OriginEndpoint for consumption.

source

pub fn ad_triggers(self, input: AdTriggersElement) -> Self

Appends an item to ad_triggers.

To override the contents of this collection use set_ad_triggers.

A list of SCTE-35 message types that are treated as ad markers in the output. If empty, no ad markers are output. Specify multiple items to create ad markers for all of the included message types.

source

pub fn set_ad_triggers(self, input: Option<Vec<AdTriggersElement>>) -> Self

A list of SCTE-35 message types that are treated as ad markers in the output. If empty, no ad markers are output. Specify multiple items to create ad markers for all of the included message types.

source

pub fn get_ad_triggers(&self) -> &Option<Vec<AdTriggersElement>>

A list of SCTE-35 message types that are treated as ad markers in the output. If empty, no ad markers are output. Specify multiple items to create ad markers for all of the included message types.

source

pub fn ads_on_delivery_restrictions( self, input: AdsOnDeliveryRestrictions ) -> Self

This setting allows the delivery restriction flags on SCTE-35 segmentation descriptors to determine whether a message signals an ad. Choosing “NONE” means no SCTE-35 messages become ads. Choosing “RESTRICTED” means SCTE-35 messages of the types specified in AdTriggers that contain delivery restrictions will be treated as ads. Choosing “UNRESTRICTED” means SCTE-35 messages of the types specified in AdTriggers that do not contain delivery restrictions will be treated as ads. Choosing “BOTH” means all SCTE-35 messages of the types specified in AdTriggers will be treated as ads. Note that Splice Insert messages do not have these flags and are always treated as ads if specified in AdTriggers.

source

pub fn set_ads_on_delivery_restrictions( self, input: Option<AdsOnDeliveryRestrictions> ) -> Self

This setting allows the delivery restriction flags on SCTE-35 segmentation descriptors to determine whether a message signals an ad. Choosing “NONE” means no SCTE-35 messages become ads. Choosing “RESTRICTED” means SCTE-35 messages of the types specified in AdTriggers that contain delivery restrictions will be treated as ads. Choosing “UNRESTRICTED” means SCTE-35 messages of the types specified in AdTriggers that do not contain delivery restrictions will be treated as ads. Choosing “BOTH” means all SCTE-35 messages of the types specified in AdTriggers will be treated as ads. Note that Splice Insert messages do not have these flags and are always treated as ads if specified in AdTriggers.

source

pub fn get_ads_on_delivery_restrictions( &self ) -> &Option<AdsOnDeliveryRestrictions>

This setting allows the delivery restriction flags on SCTE-35 segmentation descriptors to determine whether a message signals an ad. Choosing “NONE” means no SCTE-35 messages become ads. Choosing “RESTRICTED” means SCTE-35 messages of the types specified in AdTriggers that contain delivery restrictions will be treated as ads. Choosing “UNRESTRICTED” means SCTE-35 messages of the types specified in AdTriggers that do not contain delivery restrictions will be treated as ads. Choosing “BOTH” means all SCTE-35 messages of the types specified in AdTriggers will be treated as ads. Note that Splice Insert messages do not have these flags and are always treated as ads if specified in AdTriggers.

source

pub fn build(self) -> HlsManifest

Consumes the builder and constructs a HlsManifest.

Trait Implementations§

source§

impl Clone for HlsManifestBuilder

source§

fn clone(&self) -> HlsManifestBuilder

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for HlsManifestBuilder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for HlsManifestBuilder

source§

fn default() -> HlsManifestBuilder

Returns the “default value” for a type. Read more
source§

impl PartialEq for HlsManifestBuilder

source§

fn eq(&self, other: &HlsManifestBuilder) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for HlsManifestBuilder

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more