

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
<a name="dash-ad-markers"></a>

MediaTailor 

AWS Elemental MediaTailor usa marcadores de saída SCTE-35 para identificar anúncios no manifesto DASH usando a seguinte lógica: 
+ **DASH de vários períodos**: MediaTailor insere anúncios para o primeiro `Event` em cada um `Period` que contém marcadores `SpliceInsert` ou `TimeSignal` marcadores destacados. MediaTailorignora `Event` marcadores adicionais no. `Period`
+ **DASH de período único**: MediaTailor insere anúncios `Period` que contêm `Event` marcadores `SpliceInsert` ou `TimeSignal` marcadores destacados.

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](configurations-create.md).

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 de XML do manifesto de origem do DASH
<a name="dash-ad-markers-examples"></a>

Os marcadores de anúncios nos manifestos do 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.

### `SpliceInsert`em XML claro
<a name="dash-splice-xml"></a>

`SpliceInsert`os marcadores de anúncios em XML claro devem conter o seguinte:
+ `EventStream`deve ter o seguinte atributo: `schemeIdUri=urn:scte:scte35:2013:xml`
+ `Event`deve aguentar `scte35:SpliceInfoSection` 
+ `scte35:SpliceInfoSection`deve aguentar `scte35:SpliceInsert` 
+ `scte35:SpliceInsert`deve ter o seguinte atributo: `outOfNetworkIndicator="true"`

**Example `SpliceInsert`em 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>
```

### `TimeSignal`em XML claro
<a name="dash-signal-xml"></a>

`TimeSignal`os marcadores de anúncios em XML claro devem conter o seguinte:
+ `EventStream`deve ter o seguinte atributo: `schemeIdUri=urn:scte:scte35:2013:xml`
+ `Event`deve aguentar `scte35:SpliceInfoSection`
+ `scte35:SpliceInfoSection`deve aguentar `scte35:TimeSignal`
+ `scte35:SpliceInfoSection`também deve segurar `scte35:SegmentationDescriptor`
+ `scte35:SegmentationDescriptor`deve ter o seguinte atributo, em que o valor é válido[Números de recorte](#dash-signal-xml-values): `segmentationTypeId="{{xx}}"`
+ `scte35:SegmentationDescriptor`deve aguentar `scte35:SegmentationUpid` 
<a name="dash-signal-xml-values"></a>
**Números de recorte**  
A seguir estão os números de sinalizaçã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 distribuidor | 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 | 

**Example `TimeSignal`em 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
<a name="dash-base64"></a>

Os marcadores de anúncios nos manifestos do 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 binário codificado em base64.

Ambos `TimeSignal` e os marcadores de `SpliceInsert` anúncios em manifestos codificados em base64 devem conter o seguinte:
+ `EventStream`deve ter o seguinte atributo: `urn:scte:scte35:2014:xml+bin`
+ `Event`deve aguentar `scte35:Signal`
+ `scte35:Signal`deve conter um `scte35:Binary` binário codificado em base64. 

O binário decodificado deve fornecer a `splice_info_section` com as mesmas informações necessárias para marcadores de anúncios em XML claros.
+ O tipo de comando deve ser `splice_insert()` ou `time_signal()`
+ As configurações adicionais devem estar em conformidade com as descritas em [`TimeSignal`em XML claro](#dash-signal-xml) [`SpliceInsert`em XML claro](#dash-splice-xml) e.

 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
        }
      }
```