

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Diseño de la ruta del destino de salida
<a name="hls-destinations-s3-design"></a>

Realice este paso si aún no diseñó la ruta o rutas de destino completas. Si ya diseñó las rutas, vaya a [Cómo completar los campos de la consola](hls-destinations-s3-specify.md).

**Diseño de la ruta**

1. Recopile los nombres de los buckets que [obtuvo anteriormente](origin-server-hls-s3.md) del usuario de Amazon S3. Por ejemplo:

   `amzn-s3-demo-bucket`

1. Diseñe las partes de las rutas de destino que siguen al bucket o buckets. Para obtener detalles, consulte la siguiente sección.

**Topics**
+ [Sintaxis de las rutas de las salidas](#hls-syntax-s3)
+ [Diseño de las carpetas y baseFilename](#hls-path-s3)
+ [Diseño de nameModifier](#hls-nameModifier-design-s3)
+ [Diseño de segmentModifier](#hls-segmentModifier-design-s3)

## Sintaxis de las rutas de las salidas
<a name="hls-syntax-s3"></a>

Una salida de HLS siempre incluye tres categorías de archivos: 
+ El manifiesto principal
+ Los manifiestos secundarios
+ Los archivos multimedia

En la siguiente tabla se describen las partes que componen las rutas de destino de estas tres categorías de archivos.

Las rutas de destino de estas tres categorías de archivos son idénticas e incluyen el *nombre del archivo base, lo* que significa que MediaLive envía todas estas categorías de archivos a la misma carpeta. Los modificadores y las extensiones de archivo son diferentes para cada categoría de archivo. Al enviar contenido a Amazon S3, debe enviar todos los archivos a la misma carpeta. Los sistemas descendentes esperan recibir todos los archivos juntos.


| Archivos | Sintaxis de la ruta | Ejemplo | 
| --- | --- | --- | 
| Archivos de manifiesto principales | protocol bucket path baseFilename extension | La ruta al manifiesto principal del bucket *sports*, con el *índice* de nombres de archivo:s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index.m3u8 | 
| Archivos del manifiesto secundario | protocol bucket path baseFilename nameModifier extension | La ruta del manifiesto secundario para las representaciones de alta resolución de la salida de curling`s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8` | 
| Archivos multimedia (segmentos) | protocol bucket path baseFilename nameModifier optionalSegmentModifier counter extension | La ruta del archivo para el segmento n.º 230 podría ser:s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high-00230.ts | 

Estas rutas de destino se crean de la siguiente manera:
+ El usuario de Amazon S3 debe proporcionarle los nombres de los buckets.
+ Debe determinar lo siguiente: 
  + Las carpetas
  + El elemento baseFilename
  + El modificador
  + El elemento segmentModifier

  Consulte las secciones siguientes.
+ MediaLive inserta el subrayado antes del contador.
+ MediaLiveautomatically genera este contador. Inicialmente, se trata de un número de cinco dígitos que comienza en 00001 y aumenta en 1. Por lo tanto, será 00001, 00002, 00003 y así sucesivamente. Después de 99999, el siguiente número es 100000 (seis dígitos), luego 100001, 100002 y así sucesivamente. A continuación, pasa de 999999 a 1000000 (siete dígitos), y así sucesivamente.
+ MediaLive inserta el punto antes de la extensión.
+ MediaLive selecciona la extensión:
  + Para los archivos de manifiesto, siempre `.m3u8`.
  + Para los archivos multimedia: .ts para los archivos de un flujo de transporte o .mp4 para los archivos de un contenedor f MP4 

## Diseño de las carpetas y baseFilename
<a name="hls-path-s3"></a>

Diseñe una ruta de carpeta y un elemento baseFilename que se adapten a sus propósitos. 

Si tiene dos destinos para cada salida, las rutas de destino deben ser diferentes entre sí de alguna manera. Siga estas instrucciones:
+ Al menos una de las partes de una ruta debe ser diferente de la otra. Todas las partes pueden ser diferentes. 

  Por lo tanto, si los buckets son *diferentes*, la ruta de la carpeta y los nombres de los archivos de los dos destinos pueden ser diferentes, aunque también pueden ser iguales. Por ejemplo:

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

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

  o

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

  `s3ssl://amzn-s3-demo-bucket1/sports/redundant/curling/index-high.m3u8`
+ Si los buckets son *iguales*, la ruta de la carpeta y los nombres de los archivos de los dos destinos deben ser diferentes entre ellos. Por ejemplo:

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

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

## Diseño de nameModifier
<a name="hls-nameModifier-design-s3"></a>

Diseñe las partes `nameModifier` del nombre del archivo. Los manifiestos secundarios y los archivos multimedia incluyen este modificador en sus nombres de archivo. El `nameModifier` distingue cada salida de las otras, por lo que debe ser único en cada salida. Siga estas instrucciones:
+ En una salida que contenga vídeo (y posiblemente otras secuencias), se suele describir el vídeo. Por ejemplo, **-high** o **-1920x1080-5500kpbs** (para describir la resolución y la velocidad de bits).
+ En una salida que contenga solo audio o solo subtítulos, se suele describir el audio o los subtítulos. Por ejemplo, **-aac** o **-webVTT**.
+ Es una buena idea que `nameModifier` comience con un delimitador, como un guion, para separar ` baseFilename` de `nameModifier`.
+ El `nameModifier` puede incluir [variables de datos](variable-data-identifiers.md).

## Diseño de segmentModifier
<a name="hls-segmentModifier-design-s3"></a>

Diseñe la parte de segmentModifiers de la ruta de destino. El elemento segmentModifier es opcional y, si lo incluye, solo los nombres de archivos multimedia lo incluyen. 

Un caso de uso típico de este modificador es utilizar una variable de datos para crear una marca temporal, para evitar que los segmentos se anulen entre sí si el canal se reinicia. Por ejemplo, suponga que incluye la marca temporal **\$1t\$1-**. El segmento 00001 puede tener el nombre `index-120028-00001`. Si la salida se reinicia unos minutos más tarde (lo que hace que el contador de segmentos se reinicie), el nuevo segmento 00001 tendrá el nombre `index-120039-00001`. El nuevo archivo no sobrescribirá el archivo del segmento 00001 original. Algunos sistemas descendentes podrían preferir este comportamiento.