SegmentTemplate의 media 속성 - AWS Elemental MediaPackage

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

SegmentTemplatemedia 속성

SegmentTemplate 속성의 media 속성은 재생 디바이스가 세그먼트 요청을 보내는 URL을 정의합니다. 기본적으로 이 URL은 $Number$ 변수를 사용하여 요청한 특정 세그먼트를 식별합니다. 재생 디바이스가 세그먼트를 요청할 때 디바이스는 변수를 세그먼트의 숫자 식별자로 바꿉니다. 표현의 첫 번째 세그먼트에서는 SegmentTemplate 속성의 startNumber 값으로 이 식별자를 바꾸십시오. 세그먼트가 추가될 때마다 1씩 커집니다.

일부 플레이어는 재생이 가능할 경우 타임스탬프로 세그먼트를 식별할 때 세그먼트를 보다 원활하게 탐색합니다. 이 사용 사례를 지원하기 위해 MediaPackage에서는 media 속성의 URL에 $Number$ 속성 대신 $Time$ 변수를 사용합니다. 재생 디바이스가 세그먼트를 요청할 때 디바이스는 변수를 세그먼트의 가용성 시작 시간으로 바꿉니다. 이 시작 시간은 SegmentTimeline 객체에서 세그먼트(S) 속성의 t 값에서 식별됩니다. 예제는 작동 방식을 참조하십시오.

$Time$ 변수의 작동 방식

DASH 엔드포인트 생성에서 설명한 것처럼 DASH 엔드포인트의 Segment template format(세그먼트 템플릿 형식)을 통해 $Time$ 변수를 활성화합니다. AWS Elemental MediaPackage는 다음과 같은 조치를 취합니다.

  1. MediaPackage가 DASH 매니페스트를 생성할 때 다음 예제와 같이 SegmentTemplate 객체의 media 값에 $Time$ 변수를 사용합니다.

    <SegmentTemplate timescale="30" media="index_video_1_0_$Time$.mp4?m=1122792372" initialization="index_video_1_0_init.mp4?m=1122792372" startNumber="2937928">
  2. 재생 디바이스가 세그먼트를 요청할 때 media 속성에 정의된 URL을 사용하고, 요청된 세그먼트의 가용성 시작 시간으로 변수를 대체합니다.

    중요

    변수를 대체하는 값은 세그먼트의 t 값이어야 합니다. 요청에 임의 타임스탬프가 사용되면 MediaPackage가 가장 가까운 세그먼트를 찾지 않습니다.

    다음은 표현의 세그먼트 템플릿 예제입니다. $Time$ 변수가 사용됩니다.

    <SegmentTemplate timescale="30000" media="155_video_1_2_$Time$.mp4?m=1545421124" initialization="155_video_1_2_init.mp4?m=1545421124" startNumber="710"> <SegmentTimeline> <S t="255197799" d="360360" r="8"/> <S t="258441039" d="334334"/> </SegmentTimeline> </SegmentTemplate>

    첫 번째 세그먼트의 요청 URL은 155_video_1_2_255197799.mp4입니다. 기간이 360360인 다음 세그먼트 요청은 155_video_1_2_255558159.mp4이고 9번째 세그먼트로 계속됩니다.

    최종 세그먼트 요청은 155_video_1_2_258441039.mp4입니다.