Struct hls_m3u8::tags::ExtXDateRange[][src]

pub struct ExtXDateRange<'a> {
    pub duration: Option<Duration>,
    pub planned_duration: Option<Duration>,
    pub end_on_next: bool,
    pub client_attributes: BTreeMap<Cow<'a, str>, Value<'a>>,
    // some fields omitted
}
Expand description

The ExtXDateRange tag associates a date range (i.e., a range of time defined by a starting and ending date) with a set of attribute/value pairs.

Fields

duration: Option<Duration>

The duration of the ExtXDateRange. A single instant in time (e.g., crossing a finish line) should be represented with a duration of 0.

Note

This field is optional.

planned_duration: Option<Duration>

This field indicates the expected duration of an ExtXDateRange, whose actual duration is not yet known.

Note

This field is optional.

end_on_next: bool

This field indicates that the ExtXDateRange::end_date is equal to the ExtXDateRange::start_date of the following range.

The following range is the ExtXDateRange with the same class, that has the earliest start date after the start date of the range in question.

Note

This field is optional.

client_attributes: BTreeMap<Cow<'a, str>, Value<'a>>

The "X-" prefix defines a namespace reserved for client-defined attributes.

A client-attribute can only consist of uppercase characters (A-Z), numbers (0-9) and -.

Clients should use a reverse-dns naming scheme, when defining their own attribute names to avoid collisions.

An example of a client-defined attribute is X-COM-EXAMPLE-AD-ID="XYZ123".

Note

This field is optional.

Implementations

A string that uniquely identifies an ExtXDateRange in the playlist.

Note

This field is required.

A string that uniquely identifies an ExtXDateRange in the playlist.

Note

This field is required.

A client-defined string that specifies some set of attributes and their associated value semantics. All ExtXDateRanges with the same class attribute value must adhere to these semantics.

Note

This field is optional.

A client-defined string that specifies some set of attributes and their associated value semantics. All ExtXDateRanges with the same class attribute value must adhere to these semantics.

Note

This field is optional.

The date at which the ExtXDateRange begins.

Note

This field is required by the spec wording, but optional in examples elsewhere in the same document. Some implementations omit it in practise (e.g. for SCTE ‘explicit-IN’ markers) so it is optional here.

The date at which the ExtXDateRange begins.

Note

This field is required by the spec wording, but optional in examples elsewhere in the same document. Some implementations omit it in practise (e.g. for SCTE ‘explicit-IN’ markers) so it is optional here.

The date at which the ExtXDateRange ends. It must be equal to or later than the value of the start-date field.

Note

This field is optional.

The date at which the ExtXDateRange ends. It must be equal to or later than the value of the start-date field.

Note

This field is optional.

SCTE-35 (ANSI/SCTE 35 2013) is a joint ANSI/Society of Cable and Telecommunications Engineers standard that describes the inline insertion of cue tones in mpeg-ts streams.

SCTE-35 was originally used in the US to signal a local ad insertion opportunity in the transport streams, and in Europe to insert local TV programs (e.g. local news transmissions). It is now used to signal all kinds of program and ad events in linear transport streams and in newer ABR delivery formats such as HLS and DASH.

https://en.wikipedia.org/wiki/SCTE-35

Note

This field is optional.

SCTE-35 (ANSI/SCTE 35 2013) is a joint ANSI/Society of Cable and Telecommunications Engineers standard that describes the inline insertion of cue tones in mpeg-ts streams.

SCTE-35 was originally used in the US to signal a local ad insertion opportunity in the transport streams, and in Europe to insert local TV programs (e.g. local news transmissions). It is now used to signal all kinds of program and ad events in linear transport streams and in newer ABR delivery formats such as HLS and DASH.

https://en.wikipedia.org/wiki/SCTE-35

Note

This field is optional.

SCTE-35 (ANSI/SCTE 35 2013) is a joint ANSI/Society of Cable and Telecommunications Engineers standard that describes the inline insertion of cue tones in mpeg-ts streams.

SCTE-35 was originally used in the US to signal a local ad insertion opportunity in the transport streams, and in Europe to insert local TV programs (e.g. local news transmissions). It is now used to signal all kinds of program and ad events in linear transport streams and in newer ABR delivery formats such as HLS and DASH.

https://en.wikipedia.org/wiki/SCTE-35

Note

This field is optional.

SCTE-35 (ANSI/SCTE 35 2013) is a joint ANSI/Society of Cable and Telecommunications Engineers standard that describes the inline insertion of cue tones in mpeg-ts streams.

SCTE-35 was originally used in the US to signal a local ad insertion opportunity in the transport streams, and in Europe to insert local TV programs (e.g. local news transmissions). It is now used to signal all kinds of program and ad events in linear transport streams and in newer ABR delivery formats such as HLS and DASH.

https://en.wikipedia.org/wiki/SCTE-35

Note

This field is optional.

SCTE-35 (ANSI/SCTE 35 2013) is a joint ANSI/Society of Cable and Telecommunications Engineers standard that describes the inline insertion of cue tones in mpeg-ts streams.

SCTE-35 was originally used in the US to signal a local ad insertion opportunity in the transport streams, and in Europe to insert local TV programs (e.g. local news transmissions). It is now used to signal all kinds of program and ad events in linear transport streams and in newer ABR delivery formats such as HLS and DASH.

https://en.wikipedia.org/wiki/SCTE-35

Note

This field is optional.

SCTE-35 (ANSI/SCTE 35 2013) is a joint ANSI/Society of Cable and Telecommunications Engineers standard that describes the inline insertion of cue tones in mpeg-ts streams.

SCTE-35 was originally used in the US to signal a local ad insertion opportunity in the transport streams, and in Europe to insert local TV programs (e.g. local news transmissions). It is now used to signal all kinds of program and ad events in linear transport streams and in newer ABR delivery formats such as HLS and DASH.

https://en.wikipedia.org/wiki/SCTE-35

Note

This field is optional.

The "X-" prefix defines a namespace reserved for client-defined attributes.

A client-attribute can only consist of uppercase characters (A-Z), numbers (0-9) and -.

Clients should use a reverse-dns naming scheme, when defining their own attribute names to avoid collisions.

An example of a client-defined attribute is X-COM-EXAMPLE-AD-ID="XYZ123".

Note

This field is optional.

Makes a new ExtXDateRange tag.

Example

let date_range = ExtXDateRange::new("id", "2010-02-19T14:54:23.031+08:00");

Returns a builder for ExtXDateRange.

Example

use std::time::Duration;
use hls_m3u8::types::Float;

let date_range = ExtXDateRange::builder()
    .id("test_id")
    .class("test_class")
    .start_date("2014-03-05T11:15:00Z")
    .end_date("2014-03-05T11:16:00Z")
    .duration(Duration::from_secs_f64(60.1))
    .planned_duration(Duration::from_secs_f64(59.993))
    .insert_client_attribute("X-CUSTOM", Float::new(45.3))
    .scte35_cmd("0xFC002F0000000000FF2")
    .scte35_out("0xFC002F0000000000FF0")
    .scte35_in("0xFC002F0000000000FF1")
    .end_on_next(true)
    .build()?;

Makes the struct independent of its lifetime, by taking ownership of all internal Cows.

Note

This is a relatively expensive operation.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method returns an Ordering between self and other. Read more

Compares and returns the maximum of two values. Read more

Compares and returns the minimum of two values. Read more

Restrict a value to a certain interval. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

The type returned in the event of a conversion error.

Performs the conversion.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

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

Converts the given value to a String. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.