

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

# Projetar o caminho para o destino da saída
<a name="hls-destinations-s3-design"></a>

Execute essa etapa se você ainda não tiver projetado o caminho ou os caminhos de destino completos. Se você já projetou os caminhos, vá para [Preencher os campos no console](hls-destinations-s3-specify.md).

**Para projetar o caminho**

1. Colete os nomes dos buckets que você [obteve anteriormente](origin-server-hls-s3.md) do usuário do Amazon S3. Por exemplo:

   `amzn-s3-demo-bucket`

1. Crie as partes dos caminhos de destino que seguem os buckets. Para obter detalhes, consulte a seção a seguir.

**Topics**
+ [A sintaxe dos caminhos para as saídas](#hls-syntax-s3)
+ [Projetar as pastas e baseFilename](#hls-path-s3)
+ [Projetar o nameModifier](#hls-nameModifier-design-s3)
+ [Projetar o segmentModifier](#hls-segmentModifier-design-s3)

## A sintaxe dos caminhos para as saídas
<a name="hls-syntax-s3"></a>

Uma saída HLS sempre inclui três categorias de arquivos: 
+ O manifesto principal 
+ Os manifestos filhos
+ Os arquivos de mídia

A tabela a seguir descreve as partes que compõem os caminhos de destino dessas três categorias de arquivos.

Os caminhos de destino para essas três categorias de arquivos são idênticos, incluindo o *BaseFileName*, o que significa que MediaLive envia todas essas categorias de arquivos para a mesma pasta. Os modificadores e as extensões de arquivo são diferentes para cada categoria de arquivo. Ao enviar para o Amazon S3, é necessário enviar todos os arquivos para a mesma pasta. Os sistemas downstream esperam que todos os arquivos estejam juntos.


| Arquivo | Sintaxe do caminho | Exemplo | 
| --- | --- | --- | 
| Arquivos de manifesto principais | protocol bucket path baseFilename extension | O caminho para um manifesto principal no bucket *sports* com o nome de arquivo *index*:s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index.m3u8 | 
| Arquivos de manifesto filhos | protocol bucket path baseFilename nameModifier extension | Por exemplo, o URL do manifesto filho para as representações em alta resolução da saída de curling pode ser:`s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8` | 
| Arquivos de mídia (segmentos) | protocol bucket path baseFilename nameModifier optionalSegmentModifier counter extension | Por exemplo, o URL do arquivo do 230º segmento pode ser:s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high-00230.ts | 

Esses caminhos de destino são construídos da seguinte forma:
+ O usuário do Amazon S3 deveria ter fornecido a você os nomes dos buckets.
+ Determine o seguinte: 
  + As pastas
  + O baseFilename
  + O modificador
  + O segmentModifier

  Consulte as seções a seguir.
+ MediaLive insere o sublinhado antes do contador.
+ MediaLiveautomatically gera esse contador. Inicialmente, esse é um número de cinco dígitos começando em 00001 que aumenta sempre em 1. A sequência então é 00001, 00002, 00003 e assim por diante. Depois de 99999, o próximo número é 100000 (seis dígitos), depois 100001, 100002 e assim por diante. Depois, de 999999 a 1000000 (sete dígitos) e assim por diante.
+ MediaLive insere o ponto antes da extensão.
+ MediaLive seleciona a extensão:
  + Para arquivos de manifesto: sempre `.m3u8`
  + Para arquivos de mídia — .ts para arquivos em um fluxo de transporte ou.mp4 para arquivos em um contêiner f MP4 

## Projetar as pastas e baseFilename
<a name="hls-path-s3"></a>

Crie um caminho de pasta e um baseFilename adequados às suas finalidades. 

Se você tiver dois destinos para cada saída, os caminhos de destino deverão de alguma forma ser diferentes um do outro. Siga estas diretrizes:
+ Pelo menos uma das partes de um caminho deve ser diferente da outra. É aceitável que todas as partes sejam diferentes. 

  Portanto, se os buckets forem *diferentes*, o caminho da pasta e os nomes dos arquivos dos dois destinos podem ser diferentes um do outro ou podem ser iguais. Por exemplo:

  `s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8`

  `s3ssl://amzn-s3-demo-bucket1/sports/delivery/curling/index-high.m3u8`

  or

  `s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8`

  `s3ssl://amzn-s3-demo-bucket1/sports/redundant/curling/index-high.m3u8`
+ Se os buckets forem *iguais*, o caminho da pasta e os nomes dos arquivos dos dois destinos deverão ser diferentes um do outro. Por exemplo:

  `s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8`

  `s3ssl://amzn-s3-demo-bucket/sports/redundant/curling/index-high.m3u8`

## Projetar o nameModifier
<a name="hls-nameModifier-design-s3"></a>

Projete as partes `nameModifier` do nome do arquivo. Os manifestos filhos e os arquivos de mídia incluem esse modificador em seus nomes de arquivo. Esse `nameModifier` distingue cada saída uma da outra, então ele deve ser exclusivo em cada saída. Siga estas diretrizes:
+ Para uma saída que contém vídeo (e possivelmente outros streams), você normalmente descreve o vídeo. Por exemplo, **-high** ou **-1920x1080-5500kpbs** (para descrever a resolução e a taxa de bits).
+ Para uma saída que contém apenas áudio ou apenas legendas, você normalmente descreve o áudio ou as legendas. Por exemplo, **-aac** ou **-webVTT**.
+ É uma boa ideia começar o `nameModifier` com um delimitador, como um hífen, para separar ` baseFilename` de `nameModifier`.
+ O `nameModifier` pode incluir [variáveis de dados](variable-data-identifiers.md).

## Projetar o segmentModifier
<a name="hls-segmentModifier-design-s3"></a>

Projete a parte segmentModifiers do caminho de destino. O segmentModifier é opcional e, se você incluí-lo, somente os nomes dos arquivos de mídia o incluirão. 

Um caso de uso típico para esse modificador é usar uma variável de dados para criar um time stamp, com o intuito de evitar que segmentos se substituam se o canal for reiniciado. Por exemplo, suponha que você inclua o time stamp **\$1t\$1-**. O segmento 00001 pode ter o nome `index-120028-00001`. Se a saída for reiniciada alguns minutos depois (o que faz com que o contador de segmentos seja reiniciado), o novo segmento 00001 terá o nome `index-120039-00001`. O novo arquivo não substituirá o arquivo do segmento original 00001. Alguns sistemas de downstream podem preferir esse comportamento.