View a markdown version of this page

Marcadores de anúncios DASH - AWS Elemental MediaTailor

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Marcadores de anúncios DASH

MediaTailor

AWS Elemental MediaTailor usa SCTE-35 marcadores de saída para identificar e aproveitar o manifesto DASH usando a seguinte lógica:

  • Multi-period DASH: MediaTailor insere anúncios para o primeiro Event em cada um Period que contenha um SpliceInsert ou mais marcadoresTimeSignal. MediaTailorignora Event marcadores adicionais no. Period

  • Single-period DASH: MediaTailor insere cada um Event dos anúncios Period que contém um SpliceInsert ou mais marcadoresTimeSignal.

Por padrão, AWS Elemental MediaTailor gerencia os manifestos do DASH como manifestos de vários períodos. Você pode alterar sua configuração para lidar com manifestos DASH de um único período no servidor de origem. Para mais informações, consulte Criando uma MediaTailor configuração de reprodução.

As seções a seguir fornecem detalhes adicionais sobre o manuseio de marcadores de anúncios DASH e fornecem manifestos decorados desde a origem.

Requisitos XML do manifesto de origem do DASH

Os marcadores de anúncios nos manifestos DASH da origem devem ser formatados adequadamente MediaTailor para identificar quebras de anúncios. Os tópicos a seguir descrevem esses requisitos de formatação em XML claro.

SpliceInsertem XML claro

SpliceInsertos marcadores de anúncio em XML claro devem conter o seguinte:

  • EventStreamdeve ter o seguinte atributo: schemeIdUri=urn:scte:scte35:2013:xml

  • Eventdeve aguentar scte35:SpliceInfoSection

  • scte35:SpliceInfoSectiondeve aguentar scte35:SpliceInsert

  • scte35:SpliceInsertdeve ter o seguinte atributo: outOfNetworkIndicator="true"

exemplo SpliceInsertem XML

No exemplo a seguir, os marcadores SCTE obrigatórios estão em negrito.

<Period start="PT444806.040S" id="123586" 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="4026531855" 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> </Event> . . . </Period>

TimeSignalem XML claro

TimeSignalos marcadores de anúncio em XML claro devem conter o seguinte:

  • EventStreamdeve ter o seguinte atributo: schemeIdUri=urn:scte:scte35:2013:xml

  • Eventdeve aguentar scte35:SpliceInfoSection

  • scte35:SpliceInfoSectiondeve aguentar scte35:TimeSignal

  • scte35:SpliceInfoSectiontambém deve conter scte35:SegmentationDescriptor

  • scte35:SegmentationDescriptordeve ter o seguinte atributo, em que o valor é válidoCue-out números: segmentationTypeId="xx"

  • scte35:SegmentationDescriptordeve aguentar scte35:SegmentationUpid

Cue-out números

A seguir estão os números de indicação suportados para o. segmentationTypeId

Mensagem de segmentação Valor do segmentationTypeId Valor hexadecimal
Fim do anúncio do distribuidor 51 0x51
Início do anúncio do distribuidor 50 0x32
Fim da oportunidade de colocação de distribuidores 55 0x37
Início da oportunidade de colocação de distribuidores 54 0x36
Intervalo final 35 0x23
Fim do anúncio do provedor 49 0x31
Início do anúncio do provedor 48 0x30
Fim da oportunidade de colocação de sobreposição de fornecedores 57 0x39
Início da oportunidade de colocação de sobreposição de fornecedores 56 0x38
Fim da oportunidade de colocação de fornecedores 53 0x35
Início da oportunidade de colocação de fornecedores 52 0x34
Comece o intervalo 34 0x22
exemplo TimeSignalem XML

No exemplo a seguir, os marcadores SCTE obrigatórios estão em negrito.

<Period start="PT346530.250S" id="178443" 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="1414668" 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> . . . </Period>

Requisitos binários codificados em base64 do manifesto de origem do DASH

Os marcadores de anúncios nos manifestos DASH da origem devem ser formatados adequadamente MediaTailor para identificar quebras de anúncios. Os tópicos a seguir descrevem esses requisitos de formatação no binário codificado em base64.

Ambos TimeSignal e os marcadores de SpliceInsert anúncios em manifestos codificados em base64 devem conter o seguinte:

  • EventStreamdeve ter o seguinte atributo: urn:scte:scte35:2014:xml+bin

  • Eventdeve aguentar scte35:Signal

  • scte35:Signaldeve conter um scte35:Binary binário codificado em base64.

O binário decodificado deve splice_info_section fornecer as mesmas informações necessárias para marcadores de anúncios XML claros.

O binário codificado deve fornecer um splice_info_section com o mesmo conjunto de informações que o XML limpo forneceria em um elemento scte35:SpliceInfoSection. O tipo de comando deve ser splice_insert() ou time_signal(), e as configurações adicionais devem estar em conformidade com as descritas anteriormente para a entrega de XML limpo.

O exemplo a seguir mostra essa opção, com os marcadores necessários em negrito.

<Period start="PT444806.040S" id="123586" 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</scte35:Binary> </scte35:Signal> </Event> <Event presentationTime="1541436360" duration="24" id="30"> <scte35:Signal xmlns="http://www.scte.org/schemas/35/2016"> <scte35:Binary>QW5vdGhlciB0ZXN0IHN0cmluZyBmb3IgZW5jb2RpbmcgdG8gQmFzZTY0IGVuY29kZWQgYmluYXJ5Lg==</scte35:Binary> </scte35:Signal> </Event> . . . </Period>

O seguinte é o binário decodificado para o primeiro evento listado no exemplo anterior. A configuração splice_command_type é 5, o que indica splice_insert.

{ "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 }, "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 } }