Select your cookie preferences

We use essential cookies and similar tools that are necessary to provide our site and services. We use performance cookies to collect anonymous statistics, so we can understand how customers use our site and make improvements. Essential cookies cannot be deactivated, but you can choose “Customize” or “Decline” to decline performance cookies.

If you agree, AWS and approved third parties will also use cookies to provide useful site features, remember your preferences, and display relevant content, including relevant advertising. To accept or decline all non-essential cookies, choose “Accept” or “Decline.” To make more detailed choices, choose “Customize.”

Working with VOD sources

Focus mode
Working with VOD sources - AWS Elemental MediaTailor

A VOD source represents a single piece of content, such as a video or an episode of a podcast, that you add to your source location. You add one or more VOD sources to your source location, and then associate each VOD source with a program after you create your channel.

Each VOD source must have at least one package configuration. A package configuration specifies a package format, manifest location, and source group for your VOD source. When you create your channel, you use the package configuration's source groups to create the corresponding outputs on your channel. For example, if your source is packaged in two different formats—HLS and DASH—then you'd create two package configurations, one for DASH and one for HLS. Then, you would create two channel outputs, one for each package configuration. Each channel output provides an endpoint that's used for playback requests. So, using the preceding example, the channel would provide an endpoint for HLS playback requests and an endpoint for DASH playback requests.

If you would like the offsets of ad markers in your manifest to be detected automatically, each ad marker must appear at the same offset across all package configurations and have a duration of zero. For HLS, MediaTailor will detect DATERANGE and EXT-X-CUE-OUT tags. For DASH, HLS will detect the first Event tag within each EventStream tag.

In the following example, an ad break opportunity will be detected at an offset of 12000ms because of the DATERANGE tag with a duration of 0.0. The first DATERANGE tag at an offset of 0ms will not be detected because it has a duration of 10.0.

#EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:6 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-DATERANGE:ID="1001",START-DATE="2021-09-16T23:51:05.249Z",DURATION=10.0,SCTE35-OUT=0xFC302500000003289800FFF01405000003E97FEFFE1D381BD8FE000DBBA00001010100000FD2B275 #EXTINF:6.000, ../../../719f911124e0495cbb067c91c1d6c298/1785a16ca14d4c2884781f25333f6766/index_1_0.ts #EXTINF:6.000, ../../../719f911124e0495cbb067c91c1d6c298/1785a16ca14d4c2884781f25333f6766/index_1_1.ts #EXT-X-DATERANGE:ID="1001",START-DATE="2021-09-16T23:51:05.249Z",DURATION=0.0,SCTE35-OUT=0xFC302500000003289800FFF01405000003E97FEFFE1D381BD8FE000DBBA00001010100000FD2B275 #EXTINF:6.000, ../../../719f911124e0495cbb067c91c1d6c298/1785a16ca14d4c2884781f25333f6766/index_1_2.ts

In the following example, an ad break opportunity will be detected at an offset of 0ms because the EXT-X-CUE-OUT tag has a duration of 0 and is followed immediately by an EXT-X-CUE-IN tag. The second EXT-X-CUE-OUT/EXT-X-CUE-IN pair will not be detected because it has a duration of 10.

#EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:6 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-CUE-OUT:0 #EXT-X-CUE-IN #EXTINF:6.000, ../../../719f911124e0495cbb067c91c1d6c298/1785a16ca14d4c2884781f25333f6766/index_1_0.ts #EXTINF:6.000, ../../../719f911124e0495cbb067c91c1d6c298/1785a16ca14d4c2884781f25333f6766/index_1_1.ts #EXT-X-CUE-OUT:10 ... #EXT-X-CUE-IN #EXTINF:6.000, ../../../719f911124e0495cbb067c91c1d6c298/1785a16ca14d4c2884781f25333f6766/index_1_2.ts

In the following example, an ad break opportunity will be detected at an offset of 0ms because the first Event in the EventStream occurs in the period starting at PT0.000S. The second Event in the EventStream will not be detected.

<Period start="PT0.000S" id="9912561" duration="PT29.433S"> <EventStream timescale="90000" schemeIdUri="urn:scte:scte35:2013:xml"> <Event duration="0"> <scte35:SpliceInfoSection protocolVersion="0" ptsAdjustment="1241950593" tier="4095"> <scte35:SpliceInsert spliceEventId="99" spliceEventCancelIndicator="false" outOfNetworkIndicator="true" spliceImmediateFlag="false" uniqueProgramId="1" availNum="1" availsExpected="1"> <scte35:Program><scte35:SpliceTime ptsTime="3552273000"/></scte35:Program> <scte35:BreakDuration autoReturn="true" duration="2700000"/> </scte35:SpliceInsert> </scte35:SpliceInfoSection> </Event> <Event duration="0"> <scte35:SpliceInfoSection protocolVersion="0" ptsAdjustment="1241950593" tier="4095"> <scte35:SpliceInsert spliceEventId="99" spliceEventCancelIndicator="false" outOfNetworkIndicator="true" spliceImmediateFlag="false" uniqueProgramId="1" availNum="1" availsExpected="1"> <scte35:Program><scte35:SpliceTime ptsTime="3552273000"/></scte35:Program> <scte35:BreakDuration autoReturn="true" duration="2700000"/> </scte35:SpliceInsert> </scte35:SpliceInfoSection> </Event> </EventStream> ... </Period>
PrivacySite termsCookie preferences
© 2025, Amazon Web Services, Inc. or its affiliates. All rights reserved.