#[non_exhaustive]pub struct HlsPackageBuilder { /* private fields */ }
Expand description
A builder for HlsPackage
.
Implementations§
Source§impl HlsPackageBuilder
impl HlsPackageBuilder
Sourcepub fn ad_markers(self, input: AdMarkers) -> Self
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.
Sourcepub fn set_ad_markers(self, input: Option<AdMarkers>) -> Self
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.
Sourcepub fn get_ad_markers(&self) -> &Option<AdMarkers>
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.
Sourcepub fn ad_triggers(self, input: AdTriggersElement) -> Self
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.
Sourcepub fn set_ad_triggers(self, input: Option<Vec<AdTriggersElement>>) -> Self
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.
Sourcepub fn get_ad_triggers(&self) -> &Option<Vec<AdTriggersElement>>
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.
Sourcepub fn ads_on_delivery_restrictions(
self,
input: AdsOnDeliveryRestrictions,
) -> Self
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.
Sourcepub fn set_ads_on_delivery_restrictions(
self,
input: Option<AdsOnDeliveryRestrictions>,
) -> Self
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.
Sourcepub fn get_ads_on_delivery_restrictions(
&self,
) -> &Option<AdsOnDeliveryRestrictions>
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.
Sourcepub fn encryption(self, input: HlsEncryption) -> Self
pub fn encryption(self, input: HlsEncryption) -> Self
An HTTP Live Streaming (HLS) encryption configuration.
Sourcepub fn set_encryption(self, input: Option<HlsEncryption>) -> Self
pub fn set_encryption(self, input: Option<HlsEncryption>) -> Self
An HTTP Live Streaming (HLS) encryption configuration.
Sourcepub fn get_encryption(&self) -> &Option<HlsEncryption>
pub fn get_encryption(&self) -> &Option<HlsEncryption>
An HTTP Live Streaming (HLS) encryption configuration.
Sourcepub fn include_dvb_subtitles(self, input: bool) -> Self
pub fn include_dvb_subtitles(self, input: bool) -> Self
When enabled, MediaPackage passes through digital video broadcasting (DVB) subtitles into the output.
Sourcepub fn set_include_dvb_subtitles(self, input: Option<bool>) -> Self
pub fn set_include_dvb_subtitles(self, input: Option<bool>) -> Self
When enabled, MediaPackage passes through digital video broadcasting (DVB) subtitles into the output.
Sourcepub fn get_include_dvb_subtitles(&self) -> &Option<bool>
pub fn get_include_dvb_subtitles(&self) -> &Option<bool>
When enabled, MediaPackage passes through digital video broadcasting (DVB) subtitles into the output.
Sourcepub fn include_iframe_only_stream(self, input: bool) -> Self
pub fn include_iframe_only_stream(self, input: bool) -> Self
When enabled, an I-Frame only stream will be included in the output.
Sourcepub fn set_include_iframe_only_stream(self, input: Option<bool>) -> Self
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.
Sourcepub fn get_include_iframe_only_stream(&self) -> &Option<bool>
pub fn get_include_iframe_only_stream(&self) -> &Option<bool>
When enabled, an I-Frame only stream will be included in the output.
Sourcepub fn playlist_type(self, input: PlaylistType) -> Self
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.
Sourcepub fn set_playlist_type(self, input: Option<PlaylistType>) -> Self
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.
Sourcepub fn get_playlist_type(&self) -> &Option<PlaylistType>
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.
Sourcepub fn playlist_window_seconds(self, input: i32) -> Self
pub fn playlist_window_seconds(self, input: i32) -> Self
Time window (in seconds) contained in each parent manifest.
Sourcepub fn set_playlist_window_seconds(self, input: Option<i32>) -> Self
pub fn set_playlist_window_seconds(self, input: Option<i32>) -> Self
Time window (in seconds) contained in each parent manifest.
Sourcepub fn get_playlist_window_seconds(&self) -> &Option<i32>
pub fn get_playlist_window_seconds(&self) -> &Option<i32>
Time window (in seconds) contained in each parent manifest.
Sourcepub fn program_date_time_interval_seconds(self, input: i32) -> Self
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.
Sourcepub fn set_program_date_time_interval_seconds(self, input: Option<i32>) -> Self
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.
Sourcepub fn get_program_date_time_interval_seconds(&self) -> &Option<i32>
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.
Sourcepub fn segment_duration_seconds(self, input: i32) -> Self
pub fn segment_duration_seconds(self, input: i32) -> Self
Duration (in seconds) of each fragment. Actual fragments will be rounded to the nearest multiple of the source fragment duration.
Sourcepub fn set_segment_duration_seconds(self, input: Option<i32>) -> Self
pub fn set_segment_duration_seconds(self, input: Option<i32>) -> Self
Duration (in seconds) of each fragment. Actual fragments will be rounded to the nearest multiple of the source fragment duration.
Sourcepub fn get_segment_duration_seconds(&self) -> &Option<i32>
pub fn get_segment_duration_seconds(&self) -> &Option<i32>
Duration (in seconds) of each fragment. Actual fragments will be rounded to the nearest multiple of the source fragment duration.
Sourcepub fn stream_selection(self, input: StreamSelection) -> Self
pub fn stream_selection(self, input: StreamSelection) -> Self
A StreamSelection configuration.
Sourcepub fn set_stream_selection(self, input: Option<StreamSelection>) -> Self
pub fn set_stream_selection(self, input: Option<StreamSelection>) -> Self
A StreamSelection configuration.
Sourcepub fn get_stream_selection(&self) -> &Option<StreamSelection>
pub fn get_stream_selection(&self) -> &Option<StreamSelection>
A StreamSelection configuration.
Sourcepub fn use_audio_rendition_group(self, input: bool) -> Self
pub fn use_audio_rendition_group(self, input: bool) -> Self
When enabled, audio streams will be placed in rendition groups in the output.
Sourcepub fn set_use_audio_rendition_group(self, input: Option<bool>) -> Self
pub fn set_use_audio_rendition_group(self, input: Option<bool>) -> Self
When enabled, audio streams will be placed in rendition groups in the output.
Sourcepub fn get_use_audio_rendition_group(&self) -> &Option<bool>
pub fn get_use_audio_rendition_group(&self) -> &Option<bool>
When enabled, audio streams will be placed in rendition groups in the output.
Sourcepub fn build(self) -> HlsPackage
pub fn build(self) -> HlsPackage
Consumes the builder and constructs a HlsPackage
.
Trait Implementations§
Source§impl Clone for HlsPackageBuilder
impl Clone for HlsPackageBuilder
Source§fn clone(&self) -> HlsPackageBuilder
fn clone(&self) -> HlsPackageBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for HlsPackageBuilder
impl Debug for HlsPackageBuilder
Source§impl Default for HlsPackageBuilder
impl Default for HlsPackageBuilder
Source§fn default() -> HlsPackageBuilder
fn default() -> HlsPackageBuilder
Source§impl PartialEq for HlsPackageBuilder
impl PartialEq for HlsPackageBuilder
impl StructuralPartialEq for HlsPackageBuilder
Auto Trait Implementations§
impl Freeze for HlsPackageBuilder
impl RefUnwindSafe for HlsPackageBuilder
impl Send for HlsPackageBuilder
impl Sync for HlsPackageBuilder
impl Unpin for HlsPackageBuilder
impl UnwindSafe for HlsPackageBuilder
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 moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);