기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
세션 변수 사용
구성하려면 AWS Elemental MediaTailor 세션 데이터를 광고 의사 결정 서버 (ADS) 로 보내려면 ADS URL 템플릿에서 이 섹션에 나열된 변수 중 하나 이상을 지정합니다. 개별 변수를 사용할 수 있으며 여러 변수를 연결하여 단일 값을 만들 수 있습니다. MediaTailor 일부 값을 생성하고 나머지는 매니페스트와 플레이어의 세션 초기화 요청과 같은 소스에서 가져옵니다.
다음 표에는 템플릿 ADS 요청 구성에 사용할 수 있는 세션 데이터 변수가 설명되어 있습니다. URL 표에 나열된 섹션 번호는 케이블 통신 엔지니어 협회 (SCTE) -35 사양의 2019a 버전에 해당합니다. 케이블용 디지털 프로그램 삽입 큐 메시지
명칭 | 광고 프리페치에 사용할 수 있습니다. | SCTE-35 사양 섹션 | Description |
---|---|---|---|
[avail.index] |
예 | 지수 내 광고 게재 순위를 나타내는 숫자입니다. 재생 세션 시작 시 매니페스트의 모든 광고 가용성에 대한 색인을 MediaTailor 만들고 세션의 나머지 부분에 대한 색인을 저장합니다. 에 광고 게재를 MediaTailor 요청하면 광고 사용 가능 색인 번호가 포함됩니다. ADS 이 매개변수를 사용하면 경쟁업체 제외 및 게재빈도 제한과 같은 기능을 사용하여 광고 선택을 개선할 수 있습니다. ADS | |
[avail.random] |
예 | 에 대한 각 요청마다 MediaTailor 생성되는 0에서 10,000,000,000 사이의 임의의 숫자 (긴 숫자). ADS 일부 광고 서버는 이 파라미터를 사용하여 광고를 경쟁사와 분리하는 것과 같은 기능을 활성화합니다. | |
[scte.archive_allowed_flag] |
예 | 10.3.3.1 | 선택적 부울 값입니다. 이 값이 0이면 세그먼트에 기록 제한이 설정됩니다. 이 값이 1이면 세그먼트에 녹화 제한이 설정되지 않습니다. |
[scte.avail_num] |
예 | 9.7.2.1 | SCTE-35 필드에서 파싱된 MediaTailor 값이며avail_num , 긴 숫자로 표시됩니다. MediaTailor 이 값을 사용하여 선형 광고 가용 숫자를 지정할 수 있습니다. |
[scte.avails_expected] |
예 | 9,7.2.1 | 현재 이벤트 내의 예상 가용성 횟수를 제공하는 선택적 long 값입니다. |
[scte.delivery_not_restricted_flag] |
예 | 10.3.3.1 | 선택적 부울 값입니다. 이 값이 0이면 다음 5비트가 예약됩니다. 이 값이 1인 경우 다음 5비트는 SCTE -35 사양에 설명된 대로 의미를 갖습니다. |
[scte.device_restrictions] |
예 | 10.3.3.1 | 사전 정의된 독립 및 비계층적 장치 그룹 3개를 나타내는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 -35 사양의 segments_예상 설명을 참조하십시오. SCTE |
[scte.event_id] |
예 | 9.1 및 9.7.2.1 | SCTE-35 필드에서 splice_event_id 구문 분석된 MediaTailor 값입니다 (긴 숫자). MediaTailor 이 값을 사용하여 선형 광고 가용 숫자를 지정하거나 광고 창 위치와 같은 광고 서버 쿼리 문자열을 채웁니다. |
[scte.no_regional_blackout_flag] |
예 | 10.3.3.1 | 선택적 부울 값입니다. 이 값이 0이면 해당 세그먼트에 지역별 블랙아웃 제한이 적용됩니다. 이 값이 1인 경우 해당 세그먼트에는 지역별 블랙아웃 제한이 적용되지 않습니다. |
[scte.segment_num] |
예 | 10.3.3.1 | 세그먼트 컬렉션 내의 세그먼트에 번호를 매기는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 -35 사양의 segment_num 설명을 참조하십시오. SCTE |
[scte.segmentation_event_id]
|
예 | 10.3.3.1 | MediaTailor 이 변수를 로 노출합니다. scte.event_id |
[scte.segmentation_type_id] |
예 | 10.3.3.1 | 세그멘테이션 유형을 지정하는 선택적 8비트 정수 값입니다. 이 변수에 대한 자세한 내용은 -35 사양의 segmentation_type_id 설명을 참조하십시오. SCTE |
[scte.segmentation_upid] |
|
세그멘테이션_upid: 10.3.3.1 매니지드 프라이빗: 10.3.3.3 UPID |
SCTE MediaTailor 다음
|
[scte.segmentation_upid.assetId] |
예 | 팟버스터 워크플로를 위한 매니지드 프라이빗 UPID (0xC) 과 함께 사용됩니다. segmentation_ upid_type MediaTailor의 구조에 있는 파라미터에서 이 값을 도출합니다. assetId MPU private_data JSON 자세한 내용은 Managed Private UPID JSON structure for a podbuster workflow 단원을 참조하십시오. |
|
[scte.segmentation_upid.cueData.key] |
예 | 팟버스터 워크플로를 위한 매니지드 프라이빗 UPID (0xC) segmentation_ upid_type 과 함께 사용됩니다. MediaTailor의 구조에 있는 파라미터에서 이 값을 도출합니다. cueData.key MPU private_data JSON 자세한 내용은 Managed Private UPID JSON structure for a podbuster workflow 단원을 참조하십시오. |
|
[scte.segmentation_upid.cueData.value] |
예 | 팟버스터 워크플로를 위한 매니지드 프라이빗 UPID (0xC) segmentation_ upid_type 과 함께 사용됩니다. MediaTailor의 구조에 있는 파라미터에서 이 값을 도출합니다. cueData.key MPU private_data JSON 자세한 내용은 Managed Private UPID JSON structure for a podbuster workflow 단원을 참조하십시오. |
|
[scte.segments_expected] |
예 | 10.3.3.1 | 세그먼트 컬렉션 내 개별 세그먼트의 예상 개수를 제공하는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 -35 사양의 segments_ected 설명을 참조하십시오. SCTE |
[scte.sub_segment_num] |
예 | 10.3.3.1 | 하위 세그먼트 컬렉션 내에서 특정 하위 세그먼트를 식별하는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 -35 사양의 sub_segment_num 설명을 참조하십시오. SCTE |
[scte.sub_segments_expected] |
예 | 10.3.3.1 | 하위 세그먼트 컬렉션 내 개별 하위 세그먼트의 예상 개수를 제공하는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 -35 사양의 sub_segments_예상 설명을 참조하십시오. SCTE |
[scte.unique_program_id] |
예 | 9.7.2.1 | -35 MediaTailor 필드에서 파싱된 정수 값입니다. SCTE splice_insert unique_program_id 는 고유한 프로그램 ID (UPID) 를 ADS 사용하여 실시간 선형 스트림에 대한 프로그램 수준의 광고 타겟팅을 제공합니다. SCTE-35 명령이 스플라이스 삽입이 아닌 경우 이 값을 빈 값으로 MediaTailor 설정합니다. |
[session.avail_duration_ms] |
예 |
광고 가용성 슬롯의 기간 (밀리초). 기본값은 300,000밀리초입니다. AWS Elemental MediaTailor 다음과 같이 입력 매니페스트에서 지속 시간 값을 가져옵니다.
|
|
[session.avail_duration_secs] |
예 | 광고 가용성 슬롯 (광고 이용 가능 슬롯) 의 지속 시간 (초) 을 가장 가까운 초 단위로 반올림했습니다. MediaTailor 결정된 것과 같은 방식으로 이 값을 결정합니다[session.avail_duration_ms] . |
|
[session.client_ip] |
아니요 | MediaTailor 요청을 보낸 원격 IP 주소. X-forwarded-for 헤더가 설정된 경우 해당 값이 에 MediaTailor 사용됩니다client_ip . |
|
[session.id] |
아니요 | 현재 재생 세션의 고유한 숫자 식별자입니다. 플레이어가 세션에 대해 보내는 모든 요청은 동일한 ID를 가지므로 단일 시청 요청의 상관 관계를 파악하기 위한 ADS 필드에 ID를 사용할 수 있습니다. | |
[session.referer] |
아니요 | 일반적으로 동영상 플레이어를 URL 호스팅하는 페이지의 페이지입니다. MediaTailor 이 변수를 플레이어가 요청 시 사용한 Referer 헤더 값으로 설정합니다 MediaTailor. 플레이어가 이 헤더를 제공하지 않는 경우 헤더를 [session.referer] 비워 MediaTailor 둡니다. 매니페스트 엔드포인트 앞에 콘텐츠 전송 네트워크 (CDN) 또는 프록시를 사용하고 이 변수를 표시하려면 플레이어의 올바른 헤더를 여기로 프록시하십시오. |
|
[session.user_agent] |
아니요 | 플레이어의 세션 초기화 요청에서 MediaTailor 수신한 User-Agent 헤더입니다. 매니페스트 엔드포인트 앞에서 CDN 또는 프록시를 사용하는 경우 플레이어의 올바른 헤더를 여기로 프록시해야 합니다. |
|
[session.uuid] |
아니요 |
의 대안.
|
고유한 세션 식별자와 함께 deviceSession
전달되도록 이름이 지정된 쿼리 매개 변수가 ADS 필요한 ADS URL 경우 템플릿은 AWS Elemental MediaTailor
다음과 같이 보일 수 있습니다.
https://my.ads.server.com/path?deviceSession=[session.id]
AWS Elemental MediaTailor 각 스트림의 고유 식별자를 자동으로 생성하고 대신 식별자를 입력합니다session.id
. 식별자가 1234567
인 경우 에 보내는 MediaTailor 최종 요청은 다음과 ADS 같습니다.
https://my.ads.server.com/path?deviceSession=1234567
여러 쿼리 매개 변수를 전달해야 하는 ADS URL 경우 템플릿은 ADS AWS Elemental MediaTailor 다음과 같이 보일 수 있습니다.
https://my.ads.server.com/sample?e=[scte.avails_expected]&f=[scte.segment_num]&g=[scte.segments_expected]&h=[scte.sub_segment_num]&j=[scte.sub_segments_expected]&k=[scte.segmentation_type_id]
다음 DASH 마커 예제 XML 프래그먼트는 사용 scte35:SpliceInsert
방법을 보여줍니다.
<Period start="PT444806.040S" id="123456" duration="PT15.000S"> <EventStream timescale="90000" schemeIdUri="urn:scte:scte35:2013:xml"> <Event duration="1350000"> <scte35:SpliceInfoSection protocolVersion="0" ptsAdjustment="180832" tier="4095"> <scte35:SpliceInsert spliceEventId="1234567890" spliceEventCancelIndicator="false" outOfNetworkIndicator="true" spliceImmediateFlag="false" uniqueProgramId="1" availNum="1" availsExpected="1"> <scte35:Program><scte35:SpliceTime ptsTime="5672624400"/></scte35:Program> <scte35:BreakDuration autoReturn="true" duration="1350000"/> </scte35:SpliceInsert> </scte35:SpliceInfoSection>
다음 DASH 마커 예제 XML 프래그먼트는 사용 방법을 보여줍니다. scte35:TimeSignal
<Period start="PT346530.250S" id="123456" duration="PT61.561S"> <EventStream timescale="90000" schemeIdUri="urn:scte:scte35:2013:xml"> <Event duration="5310000"> <scte35:SpliceInfoSection protocolVersion="0" ptsAdjustment="183003" tier="4095"> <scte35:TimeSignal> <scte35:SpliceTime ptsTime="3442857000"/> </scte35:TimeSignal> <scte35:SegmentationDescriptor segmentationEventId="1234567" segmentationEventCancelIndicator="false" segmentationDuration="8100000" segmentationTypeId="52" segmentNum="0" segmentsExpected="0"> <scte35:DeliveryRestrictions webDeliveryAllowedFlag="false" noRegionalBlackoutFlag="false" archiveAllowedFlag="false" deviceRestrictions="3"/> <scte35:SegmentationUpid segmentationUpidType="12" segmentationUpidLength="2">0100</scte35:SegmentationUpid> </scte35:SegmentationDescriptor> </scte35:SpliceInfoSection> </Event>
다음 DASH 마커 예제 XML 프래그먼트는 사용 방법을 보여줍니다. scte35:Binary
<Period start="PT444806.040S" id="123456" duration="PT15.000S"> <EventStream schemeIdUri="urn:scte:scte35:2014:xml+bin" timescale="1"> <Event presentationTime="1541436240" duration="24" id="29"> <scte35:Signal xmlns="http://www.scte.org/schemas/35/2016"> <scte35:Binary>/DAhAAAAAAAAAP/wEAUAAAHAf+9/fgAg9YDAAAAAAAA25aoh</Binary> </scte35:Signal> </Event> <Event presentationTime="1541436360" duration="24" id="30"> <scte35:Signal xmlns="http://www.scte.org/schemas/35/2016"> <scte35:Binary>QW5vdGhlciB0ZXN0IHN0cmluZyBmb3IgZW5jb2RpbmcgdG8gQmFzZTY0IGVuY29kZWQgYmluYXJ5Lg==</Binary> </scte35:Signal> </Event>
다음 HLS 태그 예제는 사용 EXT-X-DATERANGE
방법을 보여줍니다.
#EXT-X-DATERANGE:ID="splice-6FFFFFF0",START-DATE="2014-03-05T11: 15:00Z",PLANNED-DURATION=59.993,SCTE35-OUT=0xFC002F0000000000FF0 00014056FFFFFF000E011622DCAFF000052636200000000000A0008029896F50 000008700000000
다음 HLS 태그 예제는 사용 방법을 보여줍니다EXT-X-CUE-OUT
.
#EXT-OATCLS-SCTE35:/DA0AAAAAAAAAAAABQb+ADAQ6QAeAhxDVUVJQAAAO3/PAAEUrEoICAAAAAAg+2UBNAAANvrtoQ== #EXT-X-ASSET:CAID=0x0000000020FB6501 #EXT-X-CUE-OUT:201.467
다음 HLS 태그 예제는 사용 방법을 보여줍니다EXT-X-SPLICEPOINT-SCTE35
.
#EXT-X-SPLICEPOINT-SCTE35:/DA9AAAAAAAAAP/wBQb+uYbZqwAnAiVDVUVJAAAKqX//AAEjW4AMEU1EU05CMDAxMTMyMjE5M19ONAAAmXz5JA==
다음 예제는 scte35:Binary
디코딩을 사용하는 방법을 보여줍니다.
{ "table_id": 252, "section_syntax_indicator": false, "private_indicator": false, "section_length": 33, "protocol_version": 0, "encrypted_packet": false, "encryption_algorithm": 0, "pts_adjustment": 0, "cw_index": 0, "tier": "0xFFF", "splice_command_length": 16, "splice_command_type": 5, "splice_command": { "splice_event_id": 448, "splice_event_cancel_indicator": false, "out_of_network_indicator": true, "program_splice_flag": true, "duration_flag": true, "splice_immediate_flag": false, "utc_splice_time": { "time_specified_flag": false, "pts_time": null }, "component_count": 0, "components": null, "break_duration": { "auto_return": false, "duration": { "pts_time": 2160000, "wall_clock_seconds": 24.0, "wall_clock_time": "00:00:24:00000" } }, "unique_program_id": 49152, "avail_num": 0, "avails_expected": 0 "segment_num": 0, "segments_expected": 0, "sub_segment_num": 0, "sub_segments_expected": 0 }, "splice_descriptor_loop_length": 0, "splice_descriptors": null, "Scte35Exception": { "parse_status": "SCTE-35 cue parsing completed with 0 errors.", "error_messages": [], "table_id": 252, "splice_command_type": 5 } }