AccountFilterPutSchema – Media API – MediaKind

AccountFilterPutSchema

object

propertiesobject MediaFilterProperties Required

Properties for the account filter

firstQuality

object FirstQuality Optional

This parameter defines the initial quality level when playback starts. This is the first bitrate in the ladder. If a value is set that does not match the ladder, the closest value will be used. Setting a high value may increase the time it takes to start playback, but ensures that initial video quality is high.

bitrate

integerRequired

Denotes the target video bitrate to be used when starting playback of an HLS manifest. The video representation with the bitrate closest to the defined bitrate will be presented first among the available representations in the HLS manifest.

presentationTimeRange

object PresentationTimeRange Optional

This parameter is used to cut an asset into a smaller asset by specifying a start and end time.

endTimestring

Optionalformat: date-time

For live content only (including live events that have finished). Indicates the end of the presentation window, like endTimestamp but as an explicit UTC time.

endTimestampinteger

Optional>=0

For both VOD and live content. Indicates the end of the presentation window, in units of timescale. Given a timescale of "1", a value of "N" set here will constrain the video manifest to contain exactly "N" seconds of content. This value is relative to the actual start of the content, not the startTimestamp.

Examples:

In cases where the endTimestamp does not perfectly align with a segment boundary, the endTimestamp will be rounded down to the nearest segment boundary.

forceEndTimestampboolean

Optional

A validation parameter.

When set, requires that the filter endTimestamp be set. This might be useful to limit the duration of a locator associated with a long-running live event, once the live event has ended and the video manifest is closed.

liveBackoffDurationinteger

Optional

For live content only (including live events that have finished). Truncates content from the head of a live video manifest by the specified duration. In effect, setting this value creates a buffer between the client and the true live point by omitting content from the head of a manifest. This is a useful capability in cases where CDN latency and other "network realities" make it difficult to deliver a true live experience, and result in content being presented in the manifest that is not yet available in caches.

For example, if you set this value to 30 seconds, the client will see a manifest that is 30 seconds behind the true live point. This means that the client will not be able to play the first 30 seconds of content, but will be able to play the content that is 30 seconds old and newer.

The maximum live backoff duration is 300 seconds.

presentationWindowDurationinteger

Optional

For live content only (including live events that have finished). Indicates the duration of the presentation window, in units of timescale. A presentation window is the depth of content present in the live manifest. For example, if you set this value to 300 seconds, the client will see a manifest containing 300 seconds of content, even if the underlying asset is much longer. This is useful for restricting playback to the very latest content, or for restricting seek positions in content.

The minimum presentation window duration is 10 seconds.

startTimestring

Optionalformat: date-time

For live content only (including live events that have finished). Indicates the start of the presentation window, like startTimestamp but as an explicit UTC time.

startTimestampinteger

Optional>=0

For both VOD and live content. Indicates the start of the presentation window, in units of timescale. Given a timescale of "1", a value of "N" set here will clip the first "N" seconds of content from the beginning of the video manifest.

Examples: timescale=1, startTimestamp=0, endTimestamp=10: The first 10 seconds of content will be included in the output. timescale=1, startTimestamp=10, endTimestamp=70: The 60 seconds of content starting at 10 seconds will be included in the output. timescale=10000000, startTimestamp=0, endTimestamp=100000000: The first 10 seconds of content will be included in the output.

In cases where the startTimestamp does not perfectly align with a segment boundary, the endTimestamp will be rounded down to the nearest segment boundary.

timescaleinteger

Optional1 to 1000000000Defaults to 10000000

Defines the unit of time for all the values in this object. The value is expressed in ticks per second. The default value of 10,000,000 increments per second (or 10 MHz) is used if this parameter is not specified. IF you're a video engineer doing Serious Business, consider setting this to 48,000 or 90,000 representing 90Khz and 48Khz respectively. If you're a mere mortal, a value of 1 is sensible and would represent seconds.

For example, with a timescale set to "1", the startTimestamp and endTimestamp values are expressed in seconds. So a startTimestamp of 10 and an endTimestamp of 20 would represent a 10 second window of content. Segments overlapping this window would be included in the output.

tracks

list of objects FilterTrackSelection Optional

Defines the tracks to include in the output. If multiple FilterTrackSelection objects are provided, their configurations will be OR'd together.

trackSelections

list of objects FilterTrackPropertyCondition Required

Defines the tracks to include in the output. Multiple entries here will be AND'd together.

Typically, you will want to select a matching Type, such as video, and then select additional filters. For instance, to include all audio tracks that are not English, and all video tracks that are between 3 and 5 Mbps, you would provide three FilterTrackSelection objects:

[
    {"property": "Type", "operation": "Equal", "value": "Audio"},
    {"property": "Bitrate", "operation": "Equal", "value": "3000000-5000000"},
    {"property": "Language", "operation": "NotEqual", "value": "en"},
]

operation

enumRequired

Set to either 'Equal' or 'NotEqual'. Tracks matching this predicate will be included.

Examples: To include all audio tracks, set operation to 'Equal', property to 'Type', and value to 'Audio'.

property

enumRequired

The property to match against. Supported properties include: Bitrate, FourCC, Language, Name, Type, and Unknown.

valuestring

Required

The value to match against. Values are not case-sensitive.