매니페스트 업데이트 시간 모니터링 - AWS Elemental MediaPackage

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

매니페스트 업데이트 시간 모니터링

AWS Elemental MediaPackage재생 응답에는 비동적 광고 삽입 워크플로에서 매니페스트를 MediaPackage 마지막으로 수정한 시기를 나타내는 다음과 같은 맞춤 헤더가 포함됩니다. 이러한 헤더는 기한 경과 매니페스트와 관련된 문제를 해결할 때 유용합니다.

MediaPackageX- -매니페스트-라스트 시퀀스

매니페스트에서 가장 높은 세그먼트 시퀀스 번호입니다.

  • DASH의 경우 이 번호는 매니페스트의 최저 변환에서 가장 높은 세그먼트 번호입니다.

  • HLS 및 CMAF의 경우 이 번호는 미디어 재생 목록에서 가장 높은 세그먼트 번호입니다.

  • MSS의 경우 이 번호는 매니페스트에서 가장 높은 세그먼트 번호입니다.

매니페스트 예에 대해서는 다음 단원을 참조하십시오.

X MediaPackage - - 매니페스트 - 최종 업데이트

에서 참조한 세그먼트를 생성할 때의 에포크 타임스탬프 (밀리초) MediaPackage X-MediaPackage-Manifest-Last-Sequence

매니페스트 예

DASH 매니페스트 예

컴팩트 및 풀 DASH 매니페스트 모두에 대해 매니페스트의 최저 X-MediaPackage-Manifest-Last-Sequence 변환에서 가장 높은 세그먼트 번호에서 값을 MediaPackage 결정합니다. 서비스는 X-MediaPackage-Manifest-Last-Sequence에서 참조된 세그먼트를 생성하는 시간을 기준으로 X-MediaPackage-Manifest-Last-Updated 값을 계산합니다.

다음은 지속 시간 템플릿과 함께 숫자를 사용하는 소형 DASH 매니페스트의 예입니다. MediaPackage 매니페스트의 최저 변환에서 가장 높은 세그먼트 번호에서 X-MediaPackage-Manifest-Last-Sequence 값을 결정합니다. 예를 들어, 다음 매니페스트에서 가장 높은 세그먼트 번호는 index_video_5_0_175232.mp4이므로 X-MediaPackage-Manifest-Last-Sequence의 값은 175232입니다. 시퀀스 MediaPackage 값을 계산하는 방법에 SegmentTemplate의 duration 속성 대한 자세한 내용은 을 참조하십시오. $Number$X-MediaPackage-Manifest-Last-Updated 값은 에서 참조한 세그먼트를 MediaPackage 생성할 때의 에포크 타임스탬프 (밀리초) 입니다. X-MediaPackage-Manifest-Last-Sequence

<?xml version="1.0" encoding="utf-8"?> <MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd" id="201" type="dynamic" publishTime="2021-09-08T21:01:38" minimumUpdatePeriod="PT0S" availabilityStartTime="2018-11-16T19:08:30Z+00:00" minBufferTime="PT0S" suggestedPresentationDelay="PT0.000S" timeShiftBufferDepth="PT116.533S" profiles="urn:mpeg:dash:profile:isoff-live:2011"> <Period start="PT0.000S" id="1"> <AdaptationSet mimeType="video/mp4" segmentAlignment="true" subsegmentAlignment="true" startWithSAP="1" subsegmentStartsWithSAP="1" bitstreamSwitching="true"> <SegmentTemplate timescale="30000" media="index_video_$RepresentationID$_0_$Number$.mp4?m=1543947824" initialization="index_video_$RepresentationID$_0_init.mp4?m=1543947824" startNumber="175032" duration="90000"/> <Representation id="1" width="640" height="360" frameRate="30/1" bandwidth="749952" codecs="avc1.640029"/> <Representation id="2" width="854" height="480" frameRate="30/1" bandwidth="1000000" codecs="avc1.640029"/> <Representation id="3" width="1280" height="720" frameRate="30/1" bandwidth="2499968" codecs="avc1.640029"/> </AdaptationSet> </Period> </MPD>

다음은 타임라인 템플릿과 함께 숫자를 사용하는 간단한 DASH 매니페스트의 예입니다. MediaPackage 매니페스트의 최저 변환에서 가장 높은 세그먼트 번호에서 X-MediaPackage-Manifest-Last-Sequence 값을 결정합니다. 예를 들어, 다음 매니페스트에서 가장 높은 세그먼트 번호는 index_video_1_0_7.mp4이므로 X-MediaPackage-Manifest-Last-Sequence의 값은 7입니다. 의 X-MediaPackage-Manifest-Last-Updated 값은 에서 참조한 세그먼트를 MediaPackage 생성할 때의 에포크 타임스탬프 (밀리초) 입니다. X-MediaPackage-Manifest-Last-Sequence

<?xml version="1.0" encoding="utf-8"?> <MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd" id="201" type="static" mediaPresentationDuration="PT72.458S" minBufferTime="PT0S" profiles="urn:mpeg:dash:profile:isoff-main:2011"> <Period start="PT0.000S" id="1" duration="PT74.758S"> <AdaptationSet mimeType="video/mp4" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1" bitstreamSwitching="true"> <SegmentTemplate timescale="48000" media="index_video_$RepresentationID$_0_$Number$.mp4?m=1621616401" initialization="index_video_$RepresentationID$_0_init.mp4?m=1621616401" startNumber="1" presentationTimeOffset="108800"> <SegmentTimeline> <S t="110400" d="540000" r="5"/> <S t="3350400" d="238000"/> </SegmentTimeline> </SegmentTemplate> <Representation id="1" width="640" height="480" frameRate="24/1" bandwidth="5000000" codecs="avc1.4D401E"/> </AdaptationSet> <AdaptationSet mimeType="audio/mp4" segmentAlignment="0" lang="eng"> <Label>eng</Label> <SegmentTemplate timescale="48000" media="index_audio_$RepresentationID$_0_$Number$.mp4?m=1621616401" initialization="index_audio_$RepresentationID$_0_init.mp4?m=1621616401" startNumber="1" presentationTimeOffset="108800"> <SegmentTimeline> <S t="108800" d="541696"/> <S t="650496" d="540672"/> <S t="1191168" d="539648" r="1"/> <S t="2270464" d="540672"/> <S t="2811136" d="539648"/> <S t="3350784" d="236544"/> </SegmentTimeline> </SegmentTemplate> <Representation id="2" bandwidth="192000" audioSamplingRate="48000" codecs="mp4a.40.2"> <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></AudioChannelConfiguration> </Representation> </AdaptationSet> <SupplementalProperty schemeIdUri="urn:scte:dash:utc-time" value="2021-05-21T16:59:47.450Z"></SupplementalProperty> </Period> </MPD>

다음은 지속 시간 템플릿과 함께 숫자를 사용하는 간단한 DASH 매니페스트의 예입니다. MediaPackage 매니페스트의 최저 변환에서 가장 높은 세그먼트 번호에서 X-MediaPackage-Manifest-Last-Sequence 값을 결정합니다. 예를 들어, 다음 매니페스트에서 가장 높은 세그먼트 번호는 index_video_1_0_1675200.mp4이므로 X-MediaPackage-Manifest-Last-Sequence의 값은 1675200입니다. 시퀀스 번호 MediaPackage 계산 방법에 SegmentTemplate의 media 속성 대한 자세한 내용은 을 참조하십시오. 의 X-MediaPackage-Manifest-Last-Updated 값은 에서 참조한 세그먼트를 MediaPackage 생성할 때의 에포크 타임스탬프 (밀리초) 입니다. X-MediaPackage-Manifest-Last-Sequence

<?xml version="1.0" encoding="utf-8"?> <MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd" id="201" type="static" mediaPresentationDuration="PT72.458S" minBufferTime="PT0S" profiles="urn:mpeg:dash:profile:isoff-main:2011"> <Period start="PT0.000S" id="1" duration="PT74.758S"> <AdaptationSet mimeType="video/mp4" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1" bitstreamSwitching="true"> <SegmentTemplate timescale="48000" media="index_video_$RepresentationID$_0_$Time$.mp4?m=1621616401" initialization="index_video_$RepresentationID$_0_init.mp4?m=1621616401" startNumber="1" presentationTimeOffset="108800"> <SegmentTimeline> <S t="55200" d="270000" r="5"/> <S t="1675200" d="119000"/> </SegmentTimeline> </SegmentTemplate> <Representation id="1" width="640" height="480" frameRate="24/1" bandwidth="5000000" codecs="avc1.4D401E"/> </AdaptationSet> <AdaptationSet mimeType="audio/mp4" segmentAlignment="0" lang="eng"> <Label>eng</Label> <SegmentTemplate timescale="48000" media="index_audio_$RepresentationID$_0_$Time$.mp4?m=1621616401" initialization="index_audio_$RepresentationID$_0_init.mp4?m=1621616401" startNumber="1" presentationTimeOffset="108800"> <SegmentTimeline> <S t="108800" d="541696"/> <S t="650496" d="540672"/> <S t="1191168" d="539648" r="1"/> <S t="2270464" d="540672"/> <S t="2811136" d="539648"/> <S t="3350784" d="236544"/> </SegmentTimeline> </SegmentTemplate> <Representation id="2" bandwidth="192000" audioSamplingRate="48000" codecs="mp4a.40.2"> <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></AudioChannelConfiguration> </Representation> </AdaptationSet> <SupplementalProperty schemeIdUri="urn:scte:dash:utc-time" value="2021-05-21T16:59:47.450Z"></SupplementalProperty> </Period> </MPD>

HLS 매니페스트

MediaPackage 매니페스트의 마지막 세그먼트에서 X-MediaPackage-Manifest-Last-Sequence 값을 결정합니다. 예를 들어, 다음 매니페스트에서 index_1_3.ts가 가장 높은 세그먼트 번호이므로 X-MediaPackage-Manifest-Last-Sequence의 값은 3입니다. 의 값은 X-MediaPackage-Manifest-Last-Updated 매니페스트에서 마지막 세그먼트를 MediaPackage 생성할 때의 에포크 타임스탬프 (밀리초) 에 해당합니다.

#EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:8 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:7.500, index_1_0.ts?m=1583172400 #EXTINF:7.500, index_1_1.ts?m=1583172400 #EXTINF:7.500, index_1_2.ts?m=1583172400 #EXTINF:7.500, index_1_3.ts?m=1583172400 #EXT-X-ENDLIST

CMAF 매니페스트

HLS와 마찬가지로, MediaPackage 매니페스트의 마지막 X-MediaPackage-Manifest-Last-Sequence 세그먼트에서 값을 결정합니다. 예를 들어, 다음 매니페스트에서 ../cmafseg_video_1_10.mp4?m=1621616399가 가장 높은 세그먼트 번호이므로 X-MediaPackage-Manifest-Last-Sequence의 값은 10입니다. 의 값은 X-MediaPackage-Manifest-Last-Updated 매니페스트에서 마지막 세그먼트를 MediaPackage 생성할 때의 에포크 타임스탬프 (밀리초) 에 해당합니다.

#EXTM3U #EXT-X-VERSION:6 #EXT-X-INDEPENDENT-SEGMENTS #EXT-X-TARGETDURATION:12 #EXT-X-MEDIA-SEQUENCE:1 #EXT-X-MAP:URI="../cmafseg_video_1_track_1098178399_csid_aaa_2_init.mp4" #EXTINF:11.250, ../cmafseg_video_1_1.mp4?m=1621616399 #EXTINF:11.250, ../cmafseg_video_1_2.mp4?m=1621616399 #EXTINF:11.250, ../cmafseg_video_1_3.mp4?m=1621616399 #EXTINF:11.250, ../cmafseg_video_1_4.mp4?m=1621616399 #EXTINF:11.250, ../cmafseg_video_1_5.mp4?m=1621616399 #EXTINF:11.250, ../cmafseg_video_1_6.mp4?m=1621616399 #EXTINF:11.250, ../cmafseg_video_1_7.mp4?m=1621616399 #EXTINF:11.250, ../cmafseg_video_1_8.mp4?m=1621616399 #EXTINF:11.250, ../cmafseg_video_1_9.mp4?m=1621616399 #EXTINF:0.542, ../cmafseg_video_1_10.mp4?m=1621616399 #EXT-X-ENDLIST

MSS 매니페스트

MediaPackage 에 표시된 대로 매니페스트에서 가장 높은 세그먼트에서 X-MediaPackage-Manifest-Last-Sequence 값을 결정합니다. Fragments(a_2_0={start time}) 예를 들어, 다음 매니페스트에서 Fragments(a_2_0=380533333)이 가장 높은 시퀀스 번호이므로 X-MediaPackage-Manifest-Last-Sequence의 값은 380333333입니다. 의 값은 X-MediaPackage-Manifest-Last-Updated 매니페스트에서 마지막 세그먼트를 MediaPackage 생성할 때의 에포크 타임스탬프 (밀리초) 에 해당합니다.

<SmoothStreamingMedia MajorVersion="2" MinorVersion="2" TimeScale="10000000" CanSeek="TRUE" CanPause="TRUE" IsLive="TRUE" LookAheadFragmentCount="2" DVRWindowLength="3000000000" Duration="0"> <CustomAttributes> <Attribute Name="ProducerReferenceTime" Value="2017-06-14T22:07:01.967Z"/> </CustomAttributes> <StreamIndex Type="video" Name="video" Subtype="" Chunks="3" TimeScale="10000000" Url="Events(203_0)/QualityLevels({bitrate})/Fragments(v={start time})" QualityLevels="1"> <QualityLevel Index="0" Bitrate="4000000" CodecPrivateData="00000001274D401F924602802DD80880000003008000001E7220007A120000895477BDC07C22114E0000000128FEBC80" FourCC="H264" MaxWidth="1280" MaxHeight="720"/> <c d="120000000" t="20333333"/> <c d="120000000"/> <c d="120000000"/> </StreamIndex> <StreamIndex Type="audio" Name="fra_1" Language="fra" Subtype="" Chunks="3" TimeScale="10000000" Url="Events(203_0)/QualityLevels({bitrate})/Fragments(a_2_0={start time})"> <QualityLevel Index="0" Bitrate="128460" CodecPrivateData="1190" FourCC="AACL" AudioTag="255" Channels="2" SamplingRate="48000" BitsPerSample="16" PacketSize="4"/> <c d="120533333" t="20000000"/> <c d="119893333"/> <c d="120106667"/> </StreamIndex> </SmoothStreamingMedia>