기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
세션 변수 사용
세션 데이터를 Ad Decision Server(ADS)로 보내 AWS Elemental MediaTailor 도록 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 | MediaTailor SCTE-35 필드에서에 의해 구문 분석된 값은 긴 숫자avail_num 입니다.는이 값을 사용하여 선형 광고 가능 숫자를 지정할 MediaTailor 수 있습니다.값은 정수여야 합니다. |
[scte.avails_expected] |
예 | 9,7.2.1 | 현재 이벤트 내의 예상 가용 수를 제공하는 선택적 긴 값입니다. |
[scte.delivery_not_restricted_flag] |
예 | 10.3.3.1 | 선택적 부울 값입니다. 이 값이 0이면 다음 5비트가 예약됩니다. 이 값이 1이면 다음 5비트는 SCTE-35 사양에 설명된 의미를 따릅니다. |
[scte.device_restrictions] |
예 | 10.3.3.1 | 세 개의 사전 정의되고 독립적이며 계층적이지 않은 디바이스 그룹에 신호를 보내는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 SCTE-35 사양의 segments_expected 설명을 참조하세요. |
[scte.event_id] |
예 | 9.1 및 9.7.2.1 | MediaTailor SCTE-35 필드에서에 의해 구문 분석된 값은 숫자splice_event_id 가 깁니다.는이 값을 MediaTailor 사용하여 선형 광고 가용 번호를 지정하거나 광고 포드 위치와 같은 광고 서버 쿼리 문자열을 채웁니다.값은 정수여야 합니다. |
[scte.no_regional_blackout_flag] |
예 | 10.3.3.1 | 선택적 부울 값입니다. 이 값이 0이면 리전별 블랙아웃 제한이 세그먼트에 적용됩니다. 이 값이 1이면 리전 블랙아웃 제한이 세그먼트에 적용되지 않습니다. |
[scte.segment_num] |
예 | 10.3.3.1 | 세그먼트 모음 내에서 세그먼트에 번호를 지정하는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 SCTE-35 사양의 segment_num 설명을 참조하세요. |
[scte.segmentation_event_id]
|
예 | 10.3.3.1 | MediaTailor 는이 변수를 로 노출합니다scte.event_id. |
[scte.segmentation_type_id] |
예 | 10.3.3.1 | 분할 유형을 지정하는 선택적 8비트 정수 값입니다. 이 변수에 대한 자세한 내용은 SCTE-35 사양의 segmentation_type_id 설명을 참조하세요. |
[scte.segmentation_upid] |
|
segmentation_upid: 10.3.3.1 관리형 프라이빗 UPID: 10.3.3.3 |
SCTE-35 MediaTailor 는 다음
|
[scte.segmentation_upid.assetId] |
예 | 포드버스터 워크플로용 Managed PrivateUPID(0xC)과 함께 사용됩니다. segmentation_ upid_type MediaTailor는 MPU의 private_data JSON 구조에 있는 assetId 파라미터에서이 값을 도출합니다. 자세한 내용은 Managed Private UPID JSON structure for a podbuster workflow 단원을 참조하십시오. |
|
[scte.segmentation_upid.cueData.key] |
예 | 포드버스터 워크플로용 Managed PrivateUPID(0xC)과 함께 사용됩니다. segmentation_ upid_type MediaTailor는 MPU의 private_data JSON 구조에 있는 cueData.key 파라미터에서이 값을 도출합니다. 자세한 내용은 Managed Private UPID JSON structure for a podbuster workflow 단원을 참조하십시오. |
|
[scte.segmentation_upid.cueData.value] |
예 | 포드버스터 워크플로용 Managed PrivateUPID(0xC)과 함께 사용됩니다. segmentation_ upid_type MediaTailor는 MPU의 private_data JSON 구조에 있는 cueData.key 파라미터에서이 값을 도출합니다. 자세한 내용은 Managed Private UPID JSON structure for a podbuster workflow 단원을 참조하십시오.값은 문자열일 수 있습니다. |
|
[scte.segments_expected] |
예 | 10.3.3.1 | 세그먼트 모음 내의 개별 세그먼트의 예상 개수를 제공하는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 SCTE-35 사양의 segments_expected 설명을 참조하세요. |
[scte.sub_segment_num] |
예 | 10.3.3.1 | 하위 세그먼트 모음 내의 특정 하위 세그먼트를 식별하는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 SCTE-35 사양의 sub_segment_num 설명을 참조하세요. |
[scte.sub_segments_expected] |
예 | 10.3.3.1 | 하위 세그먼트 모음 내의 개별 하위 세그먼트의 예상 개수를 제공하는 선택적 정수 값입니다. 이 변수에 대한 자세한 내용은 SCTE-35 사양의 sub_segments_expected 설명을 참조하세요. |
[scte.unique_program_id] |
예 | 9.7.2.1 | SCTE-35 splice_insert 필드 MediaTailor 에서 구문 분석된 정수 값입니다unique_program_id . 는 고유한 프로그램 ID(UPID)를 ADS 사용하여 라이브 선형 스트림에 대한 프로그램 수준 광고 타겟팅을 제공합니다. SCTE-35 명령이 스플라이스 삽입이 아닌 경우는 이를 빈 값으로 MediaTailor 설정합니다.값은 정수여야 합니다. |
[session.avail_duration_ms] |
예 |
광고 가용성 슬롯의 밀리초 단위 기간입니다. 기본값은 300,000ms입니다.는 다음과 같이 입력 매니페스트에서 기간 값을 AWS Elemental MediaTailor 가져옵니다.
|
|
[session.avail_duration_secs] |
예 | 광고 가용성 슬롯 또는 광고 가능 시간의 초 단위 지속 시간은 가장 가까운 초로 반올림됩니다.는를 결정하는 것과 동일한 방식으로이 값을 MediaTailor 결정합니다[session.avail_duration_ms] . |
|
[session.client_ip] |
No | MediaTailor 요청이 시작된 원격 IP 주소입니다. X-forwarded-for 헤더가 설정되어 있는 경우 MediaTailor 은 client_ip 에 대해 그 값을 사용합니다. |
|
[session.id] |
No | 현재 재생 세션의 고유 숫자 식별자입니다. 플레이어가 세션에 대해 수행하는 모든 요청은 ID가 동일하므로 단일 보기에 대한 요청을 상호 연관시키기 위한 ADS 필드에 사용할 수 있습니다. | |
[session.referer] |
No | 일반적으로 비디오 플레이어를 호스팅하는 URL 페이지의 입니다.는이 변수를에 대한 요청에 플레이어가 사용한 Referer 헤더의 값으로 MediaTailor 설정합니다 MediaTailor. 플레이어가 이 헤더를 제공하지 않는 경우 MediaTailor은 [session.referer] 를 비워 둡니다. 매니페스트 엔드포인트 앞에 콘텐츠 전송 네트워크(CDN) 또는 프록시를 사용하고이 변수를 표시하려면 여기에서 플레이어의 올바른 헤더를 프록시합니다. |
|
[session.user_agent] |
No | 플레이어의 세션 초기화 요청에서 MediaTailor 받은 User-Agent 헤더입니다. 매니페스트 엔드포인트 앞에 CDN 또는 프록시를 사용하는 경우 여기에서 플레이어의 올바른 헤더를 프록시해야 합니다. |
|
[session.uuid] |
No |
의 대안입니다
|
에서 라는 ADS 쿼리 파라미터를 고유한 세션 식별자와 함께 전달deviceSession
해야 하는 경우의 템플릿 AWS Elemental MediaTailor 은 다음과 같을 ADS URL 수 있습니다.
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 하는 경우의 템플릿은 다음과 같을 ADS URL 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 } }