

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á.

# Tipos de manifesto DASH
<a name="dash-manifest-types"></a>

O Dynamic Adaptive Streaming over HTTP (DASH) usa um manifesto Media Presentation Description (MPD) para fornecer conteúdo de streaming. Compreender a estrutura e os componentes dos manifestos do DASH é essencial para configurar e solucionar problemas de fluxos de trabalho. MediaTailor 

MPD (Descrição da apresentação de mídia)  
O MPD é o arquivo de manifesto principal no streaming do DASH que descreve a estrutura e a disponibilidade do conteúdo de mídia. Ele contém informações sobre períodos, conjuntos de adaptação, representações e segmentos que compõem o conteúdo de streaming.  
Esse tipo de manifesto também é conhecido por vários outros nomes em vários contextos:  
+ Manifesto DASH
+ DASH MOD
+ Manifesto principal (quando comparado ao HLS)
+ manifesto de apresentação
Em MediaTailor fluxos de trabalho, o MPD é o ponto de entrada para solicitações de reprodução e é onde a personalização de anúncios começa.  

**Example Exemplo de manifesto MPD**  

```
<?xml version="1.0" encoding="UTF-8"?>
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="dynamic" minBufferTime="PT5.000S" maxSegmentDuration="PT2.005S" availabilityStartTime="2020-01-01T00:00:00Z" publishTime="2020-01-01T12:30:00Z" minimumUpdatePeriod="PT2.000S" timeShiftBufferDepth="PT5M">
  <Period id="1" start="PT0.000S">
    <AdaptationSet id="1" contentType="video" segmentAlignment="true" bitstreamSwitching="true" frameRate="30000/1001" maxWidth="1920" maxHeight="1080" par="16:9">
      <Representation id="1" mimeType="video/mp4" codecs="avc1.640028" width="1920" height="1080" bandwidth="5000000">
        <SegmentTemplate timescale="90000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="180000"/>
      </Representation>
      <Representation id="2" mimeType="video/mp4" codecs="avc1.4d401f" width="1280" height="720" bandwidth="2800000">
        <SegmentTemplate timescale="90000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="180000"/>
      </Representation>
      <Representation id="3" mimeType="video/mp4" codecs="avc1.4d401e" width="640" height="360" bandwidth="1100000">
        <SegmentTemplate timescale="90000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="180000"/>
      </Representation>
    </AdaptationSet>
    <AdaptationSet id="2" contentType="audio" segmentAlignment="true" lang="eng">
      <Representation id="4" mimeType="audio/mp4" codecs="mp4a.40.2" audioSamplingRate="48000" bandwidth="128000">
        <SegmentTemplate timescale="48000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="96000"/>
      </Representation>
    </AdaptationSet>
  </Period>
</MPD>
```

Período  
Um período é uma seção temporal de uma apresentação do DASH. Cada período contém um ou mais conjuntos de adaptação e representa um período de tempo de mídia. Em fluxos de trabalho de inserção de anúncios, períodos separados são normalmente usados para delimitar entre conteúdo e anúncios.  
Esse componente também é conhecido por vários outros nomes:  
+ Segmento de conteúdo
+ Seção de cronograma
+ Segmento do programa
Nos MediaTailor fluxos de trabalho, os períodos são usados para separar o conteúdo principal do conteúdo do anúncio, com cada anúncio normalmente representado por seu próprio período.  

**Example Exemplo de período**  

```
<Period id="ad-period-1" start="PT30.000S" duration="PT15.000S">
  <AdaptationSet id="1" contentType="video" segmentAlignment="true" bitstreamSwitching="true" frameRate="30000/1001" maxWidth="1920" maxHeight="1080" par="16:9">
    <Representation id="1" mimeType="video/mp4" codecs="avc1.640028" width="1920" height="1080" bandwidth="5000000">
      <SegmentTemplate timescale="90000" initialization="ad1/init-stream$RepresentationID$.m4s" media="ad1/chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="180000"/>
    </Representation>
  </AdaptationSet>
</Period>
```

AdaptationSet  
E AdaptationSet agrupa um conjunto de versões codificadas intercambiáveis de um ou vários componentes de conteúdo de mídia. Por exemplo, um AdaptationSet pode conter vários níveis de qualidade de vídeo, enquanto outro pode conter várias opções de idioma de áudio.  
Esse componente também é conhecido como:  
+ Grupo de componentes de mídia
+ Conjunto de transmissões
+ Grupo de faixas
Nos MediaTailor fluxos de trabalho, AdaptationSets são preservados durante a inserção do anúncio para manter os tipos de mídia consistentes entre o conteúdo e os anúncios.

Representação  
Uma representação é uma versão codificada específica do conteúdo de mídia em um AdaptationSet. Cada representação normalmente difere em taxa de bits, resolução ou outros parâmetros de codificação, permitindo que os clientes selecionem a versão mais apropriada com base nas condições da rede e nos recursos do dispositivo.  
Esse componente também é conhecido como:  
+ Rendição (semelhante ao HLS)
+ Nível de qualidade
+ Variante de taxa de bits
+ Variante de transmissão
Em MediaTailor fluxos de trabalho, as Representações em Períodos de Anúncios são combinadas da forma mais próxima possível com as Representações em Períodos de Conteúdo para garantir uma experiência de visualização tranquila.

Segmento  
Um segmento é uma unidade de dados de mídia que pode ser referenciada individualmente por um URL. Os segmentos contêm o conteúdo real da mídia (vídeo, áudio etc.) e são referenciados no MPD. Há dois tipos principais de segmentos no DASH:  
+ **Segmento de inicialização**: contém informações de inicialização para uma representação, como parâmetros de codec e informações de tempo.
+ **Segmento de mídia**: contém os dados reais de mídia para um intervalo de tempo específico em uma representação.
Em MediaTailor fluxos de trabalho, os segmentos geralmente URLs são modificados para apontar para o conteúdo apropriado ou arquivos de mídia publicitária.

**nota**  
Os manifestos do DASH são arquivos baseados em XML que normalmente usam a extensão. `.mpd` A terminologia desses arquivos e seus componentes pode variar em diferentes documentações e contextos, mas a estrutura fundamental permanece a mesma na arquitetura de streaming do DASH.

Ao configurar MediaTailor, você fornece o URL para o manifesto MPD em sua origem de conteúdo. MediaTailor em seguida, gerencia a personalização do manifesto, normalmente inserindo períodos adicionais para anúncios de acordo com sua configuração.

Para obter mais informações sobre as especificações do manifesto do DASH, consulte as Diretrizes de [implementação do DASH Industry Forum](https://dashif.org/docs/DASH-IF-IOP-v4.3.pdf).

# Conceitos avançados do manifesto DASH
<a name="dash-manifest-advanced-concepts"></a>

Ao trabalhar com manifestos do DASH em MediaTailor, entender os seguintes conceitos avançados pode ajudá-lo a configurar e solucionar problemas de seus fluxos de trabalho de streaming com mais eficiência:

Cálculo da hora de início do período  
Nos manifestos do DASH, os horários de início do período são calculados com base no `availabilityStartTime` atributo do MPD e no atributo do período. `start` Para transmissões ao vivo, a hora de início é relativa à hora de início da disponibilidade, enquanto para conteúdo VOD, geralmente é relativa ao início da apresentação.  
Ao MediaTailor inserir períodos de anúncios, ele calcula cuidadosamente os horários de início para garantir transições perfeitas entre conteúdo e anúncios. Esse cálculo leva em consideração:  
+ A hora de início do Período original
+ A duração dos períodos de anúncios anteriores
+ Qualquer diferença de tempo especificada na resposta do servidor de decisão do anúncio

Cálculos de tempo de pré-lançamento  
Os anúncios pré-lançados nos manifestos do DASH exigem tratamento especial porque aparecem antes do início do conteúdo principal. MediaTailor insere anúncios pré-lançados como Períodos separados no início do manifesto com horários de início e durações apropriados.  
Para anúncios pré-cadastrados,: MediaTailor  
+ Cria um novo período para cada anúncio pré-lançado
+ Define a hora de início do primeiro período de pré-inscrição como 0
+ Ajusta a hora de início do Período do conteúdo principal para considerar a duração total de todos os anúncios pré-lançados

Live-to-VOD transições  
Os manifestos do DASH podem passar do formato ao vivo para o formato VOD (Video on Demand) quando uma transmissão ao vivo termina. Essa transição envolve a alteração do `type` atributo do MPD de `dynamic` para `static` e o ajuste de outros atributos, como e. `timeShiftBufferDepth` `minimumUpdatePeriod`  
Quando MediaTailor os processos se manifestam durante live-to-VOD as transições, ele garante que:  
+ Os marcadores de anúncios são preservados no manifesto VOD
+ Os horários de início do período são ajustados para manter o tempo adequado
+ O manifesto permanece compatível com clientes de reprodução de VOD

Manipulação de DRM  
As informações de gerenciamento de direitos digitais (DRM) nos manifestos do DASH geralmente são incluídas nos `ContentProtection` elementos ou nas representações. AdaptationSets MediaTailor preserva esses elementos durante a inserção do anúncio para garantir que a proteção do conteúdo permaneça intacta.  
Ao processar conteúdo protegido por DRM,: MediaTailor  
+ Mantém todos os ContentProtection elementos do manifesto original
+ Garante que o conteúdo do anúncio use esquemas de DRM compatíveis, se aplicável
+ Preserva todos os atributos e elementos relacionados ao DRM em todo o manifesto

Bandeiras SCC  
Os sinalizadores de Controle de Conteúdo Suplementar (SCC) nos manifestos do DASH fornecem informações adicionais sobre as características do conteúdo e os requisitos de reprodução. Esses sinalizadores são normalmente incluídos como atributos ou elementos na estrutura do MPD.  
Os sinalizadores comuns do SCC que MediaTailor processam incluem:  
+ Informações de classificação de conteúdo
+ Recursos de acessibilidade (legendas ocultas, descrições de áudio)
+ Avisos consultivos de conteúdo
+ Restrições de reprodução
MediaTailor preserva esses sinalizadores durante o processamento do manifesto para garantir que todos os metadados do conteúdo sejam mantidos no manifesto personalizado.

A compreensão desses conceitos avançados ajuda você a configurar o desempenho MediaTailor ideal e solucionar quaisquer problemas que possam surgir em seus fluxos de trabalho de streaming do DASH.