

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.

# Especificar marcadores de SCTE-35 con XML de ESAM
<a name="specifying-scte-35-markers-using-esam-xml"></a>

Si el vídeo de entrada no contiene marcadores SCTE-35, pero necesita especificar puntos de inserción de anuncios en los resultados, puede proporcionar documentos XML de señalización y gestión de eventos (ESAM) en la configuración de su trabajo. AWS Elemental MediaConvert Cuando lo haga, MediaConvert condicione las salidas con fotogramas IDR (Instantaneous Decoder Refresh) en los puntos de inserción que especifique en el documento. En las salidas que también están envueltas en contenedores MPEG2 -TS y HLS, MediaConvert inserta los mensajes time\$1signal del SCTE-35 en esos puntos. 

Para los grupos de salidas **Apple HLS**, también puedes proporcionar un documento XML de ajuste del manifiesto HLS. A continuación, puedes configurar su tarea para acondicionar los manifiestos de sus salidas HLS en consecuencia.

**nota**  
**Para colocar marcadores SCTE-35 en las salidas MPEG2 -TS, además de suministrar los documentos XML de ESAM, también debe habilitar el SCTE-35 de ESAM en cada salida.** Para obtener más información, consulta el procedimiento de la consola tras esta información general.

**Acerca de los códigos temporales en los documentos ESAM**  
Especifique los puntos de inserción en sus documentos XML en relación con el tiempo de la salida final, después de cortar e insertar entradas. Comience su calendario desde 00:00:00:00, independientemente de su código temporal. Usa el siguiente formato de 24 horas con un número de fotograma: HH:MM:SS:FF.

Por ejemplo, un tarea tiene las siguientes tres entradas: un preprocesamiento de cinco minutos, una película de una hora y un posprocesamiento de cinco minutos. Puede utilizar el recorte de entrada para recortar solo los últimos 20 minutos de su entrada de una hora. Por lo tanto, la salida con preprocesamiento y posprocesamiento es de 30 minutos de duración. Si quiere que el primer punto de inserción aparezca tres minutos después del contenido principal, debe especificarlo a los ocho minutos, es decir, tres minutos después de los cinco minutos de grabación previa. 

**Para incluir documentos XML de ESAM en su configuración de tarea (consola)**

1.  MediaConvert [Abra https://console.aws.amazon.com la consola en /mediaconvert.](https://console.aws.amazon.com/mediaconvert)

1. Elige **Crear nuevo tarea**.

1. Configura la entrada, grupos de salidas y salidas para vídeo y audio, tal como se describe en [Tutorial: configuración de los ajustes de la tarea](setting-up-a-job.md) y [Creación de salidas](output-settings.md).

1. En el panel de navegación **Trabajo** de la izquierda, debajo de **Configuración de tarea**, elige **Configuración**.

1. En la sección **Señalización de anuncios**, habilita **Mensajería y señalización de eventos (ESAM)**.

1. En **XML de notificación de procesamiento de señal**, introduzca el documento XML de señalización de ESAM como texto. Para ver un ejemplo, consulta [Ejemplo de notificación de procesamiento de señales de ESAM XML](example-esam-xml.md).
**nota**  
De forma predeterminada, MediaConvert añade una vista previa de cuatro segundos a la carga útil del ESAM. Esto podría provocar que el mensaje del SCTE-35 se MediaConvert coloque un segmento antes que el marcador de referencia designado en el manifiesto HLS. Para eliminar la grabación previa, establezca `responseSignalPreroll` en cero. Esta configuración es un elemento secundario de [EsamSettings](https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs-id.html#jobs-id-model-esamsettings).

1. Si desea incluir información sobre sus marcadores SCTE-35 en los manifiestos del HLS, en el XML de **notificación de condición de confirmación del manifiesto, introduzca el documento XML** condicional del manifiesto de ESAM como texto. MediaConvert no incluye información sobre sus marcadores SCTE-35 en sus manifiestos de DASH.

   Para insertar marcadores de SCTE-35 en el flujo de transporte y en el manifiesto, establezca el atributo `dataPassThrough` en su documento MCC en `"true"`. Si no quiere marcadores en el flujo de transporte, elimine los atributos `dataPassThrough`. 

   Para ver un ejemplo, consulta [Ejemplo: notificación de condición de confirmación del manifiesto de ESAM XML](example-esam-xml-manifest-conditioning.md). 

1. Para cada salida MPEG2 -TS en la que desee utilizar marcadores SCTE-35, active los marcadores:

   1. En el panel de la izquierda **Trabajo**, bajo **Grupos de salidas**, **Grupo de archivos**, elige la salida.

   1. Confirme que es una MPEG2 salida -TS. En la sección **Configuración de salida**, asegúrese de que **Contenedor** está establecido en **Secuencia de transporte MPEG-2**.

   1. Elige **Configuración del contenedor** y desplácese hasta encontrar la sección **Controles PID**.

   1. En **SCTE-35 de ESAM** elige **Habilitado**.

   1. En **Origen de SCTE-3**, mantenga el valor predeterminado **Ninguno**.

1. Realice este paso solo para los grupos de salidas **Apple HLS** de su tarea.

   Si quieres acondicionar el manifiesto HLS con puntos de inserción ESAM, siga el procedimiento que se describe en [Incluir información de SCTE-35 en su manifiesto de HLS](including-scte-35-information-in-your-hls-manifest.md). De lo contrario, siga los pasos que se indican a continuación para confirmar que las siguientes opciones de configuración siguen manteniendo su estado predeterminado:

   1. Asegúrate de que **XML de notificación de acondicionamiento de confirmación de manifiesto**, como se describió en el paso anterior, está vacío.

   1. Para cada grupo de salidas **Apple HLS** de su tarea, confirme que ha mantenido los **Marcadores de anuncios** sin marcar.

      1. En el panel izquierdo **Trabajo**, en **Grupos de salidas**, elige **Apple HLS**.

      1. En la sección **Configuración del grupo Apple HLS**, elige **Avanzada**.

      1. En la sección **Marcadores de anuncios**, quite las marcas de **Básico** y **SCTE-35 mejorado**.

   1. Para cada salida en sus grupos de salidas **Apple HLS**, confirme que el **Origen de SCTE-35** es **Ninguno**:

      1. En el panel izquierdo **Trabajo**, en **Grupos de salidas**, elige **Apple HLS**, elige una salida.

      1. En la sección **Configuración de salida**, elige **Configuración de secuencia de transporte**.

      1. En **Origen de SCTE-35**, elige **Ninguno**.

**Para incluir documentos XML de ESAM en la configuración de sus trabajos (API, SDK) AWS CLI**

1. Incluya la propiedad [https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-jobsettings-esam](https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-jobsettings-esam) y sus elementos secundarios en la raíz de la configuración del tarea en su especificación de tarea de JSON. Estas propiedades se muestran en el siguiente ejemplo.

   1.  Incluya su especificación XML de procesamiento de señal de ESAM como una cadena en la configuración `sccXml`. 

   1. Opcionalmente, incluya un documento de notificación XML de acondicionamiento de confirmación de manifiesto como una cadena en la configuración `mccXml`:

   ```
     "esam": {
       "responseSignalPreroll": 4000,
       "signalProcessingNotification": {
         "sccXml": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<SignalProcessingNotification ..."
       },
       "manifestConfirmConditionNotification": {
         "mccXml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\n<ns2:ManifestConfirmConditionNotification ... " 
       }
   ```

1. Para cada salida M2TS (MPEG2 Transport Stream) de su trabajo, defina la especificación de su trabajo en JSON, tal y como se muestra en el siguiente ejemplo. Incluya la propiedad [https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-m2tssettings-scte35esam](https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-m2tssettings-scte35esam). Establece [https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-m2tssettings-scte35source](https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-m2tssettings-scte35source) en `NONE`.

   ```
     "outputs": [
           {
             "extension": "m2ts",
             "containerSettings": {
               "container": "M2TS",
               "m2tsSettings": {
                 ...
   
                 "scte35Esam": {
                   "scte35EsamPid": 508
                 },
                 ...
                 "scte35Source": "NONE"
               }
   ```

1. Si quieres acondicionar sus manifiestos HLS con información de SCTE-35, para cada grupo de salida HLS de Apple en su tarea, incluya lo siguiente. Esta configuración se muestra en el ejemplo al final de este paso:
   +  Establece [https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-m3u8settings-scte35source](https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-m3u8settings-scte35source) en `PASSTHROUGH`.
   + Incluya [https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-hlsgroupsettings-admarkers](https://docs.aws.amazon.com/mediaconvert/latest/apireference/jobs.html#jobs-prop-hlsgroupsettings-admarkers) y enumere uno o ambos `ELEMENTAL_SCTE35` o `ELEMENTAL` en una matriz.

     Para manifiestos de muestra creados con cada configuración seleccionada, consulta [Manifiesto de muestra: marcadores de anuncios básicos](sample-manifest-elemental-ad-markers.md) y [Manifiesto de muestra: marcadores de anuncios SCTE-35 mejorados](sample-manifest-scte-35-enhanced-ad-markers.md).

   Si no desea acondicionar manifiestos HLS con información de SCTE-35, mantenga el valor predeterminado `NONE` para `scte35Source` y no incluya `adMarkers`:

   ```
     "outputGroups": [
       {
         "customName": "apple_hls",
         "outputGroupSettings": {
           "type": "HLS_GROUP_SETTINGS",
           "hlsGroupSettings": {
             "adMarkers": [
               "ELEMENTAL_SCTE35"
             ],
             ...
   
           }
         },
         "outputs": [
           {
             "extension": "m3u8",
             "nameModifier": "high",
             "outputSettings": {
               "hlsSettings": {
                 ...
               }
             },
             "containerSettings": {
               "container": "M3U8",
               "m3u8Settings": {
                 ...
                 "scte35Source": "PASSTHROUGH"
               }
   ```

1. Envíe el tarea como de costumbre. 

   Para obtener información sobre el envío de AWS Elemental MediaConvert trabajos mediante programación, consulte [Cómo empezar a AWS Elemental MediaConvert usar la AWS SDKs o la API AWS CLI](https://docs.aws.amazon.com/mediaconvert/latest/apireference/custom-endpoints.html) y [Cómo empezar a AWS Elemental MediaConvert usar](https://docs.aws.amazon.com/mediaconvert/latest/apireference/getting-started.html) la API.

# Ejemplo de notificación de procesamiento de señales de ESAM XML
<a name="example-esam-xml"></a>

Este bloque de ESAM XML genera dos cortes publicitarios de 30 segundos, uno en el segundo 10 y otro en el segundo 75.

```
<?xml version="1.0" encoding="UTF-8"?>
<SignalProcessingNotification xmlns="urn:cablelabs:iptvservices:esam:xsd:signal:1" xmlns:sig="urn:cablelabs:md:xsd:signaling:3.0" xmlns:common="urn:cablelabs:iptvservices:esam:xsd:common:1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" acquisitionPointIdentity="ExampleESAM">

    <common:BatchInfo batchId="1">
      <common:Source xsi:type="content:MovieType" />
    </common:BatchInfo>

    <ResponseSignal acquisitionPointIdentity="ExampleESAM" acquisitionSignalID="1" signalPointID="10.00" action="create">
      <sig:NPTPoint nptPoint="10.00"/>
      <sig:SCTE35PointDescriptor spliceCommandType="06">
        <sig:SegmentationDescriptorInfo segmentEventId="1" segmentTypeId="52" upidType="9" upid="1" duration="PT30S" segmentNumber="1" segmentsExpected="1"/>
      </sig:SCTE35PointDescriptor>
    </ResponseSignal>
    <ConditioningInfo acquisitionSignalIDRef="1" startOffset="PT10S" duration="PT30S"/>

    <ResponseSignal acquisitionPointIdentity="ExampleESAM" acquisitionSignalID="2" signalPointID="40.00" action="create">
      <sig:NPTPoint nptPoint="40.00" />
      <sig:SCTE35PointDescriptor spliceCommandType="06">
        <sig:SegmentationDescriptorInfo segmentEventId="1" segmentTypeId="53" upidType="9" upid="2"/>
      </sig:SCTE35PointDescriptor>
    </ResponseSignal>

    <ResponseSignal acquisitionPointIdentity="ExampleESAM" acquisitionSignalID="3" signalPointID="75.00" action="create">
      <sig:NPTPoint nptPoint="75.00"/>
      <sig:SCTE35PointDescriptor spliceCommandType="06">
        <sig:SegmentationDescriptorInfo segmentEventId="2" segmentTypeId="52" upidType="9" upid="3" duration="PT30S" segmentNumber="2" segmentsExpected="1"/>
      </sig:SCTE35PointDescriptor>
    </ResponseSignal>
    <ConditioningInfo acquisitionSignalIDRef="3" startOffset="PT75S" duration="PT30S"/>
    
    <ResponseSignal acquisitionPointIdentity="ExampleESAM" acquisitionSignalID="4" signalPointID="105.00" action="create">
      <sig:NPTPoint nptPoint="105.00" />
      <sig:SCTE35PointDescriptor spliceCommandType="06">
        <sig:SegmentationDescriptorInfo segmentEventId="2" segmentTypeId="53" upidType="9" upid="4"/>
      </sig:SCTE35PointDescriptor>
    </ResponseSignal>

</SignalProcessingNotification>
```

# Ejemplo: notificación de condición de confirmación del manifiesto de ESAM XML
<a name="example-esam-xml-manifest-conditioning"></a>

Este documento XML con la condición de confirmación del manifiesto (MCC) de ESAM genera etiquetas de referencia del manifiesto de HLS para dos pausas publicitarias de 30 segundos. La primera comienza a los 10 segundos; la segunda comienza a los 75 segundos. Estas etiquetas de manifiesto de referencia también contienen datos que un cliente intermedio puedes utilizar para sustituir e insertar anuncios. Los resultados generados con este documento MCC contienen un mensaje de SCTE-35 incrustado en el archivo de flujo de transporte durante la primera pausa publicitaria, pero no en la segunda.

Note el atributo `dataPassThrough` en la primera pausa publicitaria. Cuando este atributo está presente y establecido en`"true"`, MediaConvert inserta los marcadores SCTE-35 en el flujo de transporte además del manifiesto. En las pausas publicitarias que quiera marcar solo en el manifiesto, omita el atributo `dataPassThrough`.

MediaConvert solo admite el acondicionamiento de manifiestos con ESAM en paquetes HLS.

```
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<ns2:ManifestConfirmConditionNotification xmlns:ns2="http://www.cablelabs.com/namespaces/metadata/xsd/confirmation/2" xmlns="http://www.cablelabs.com/namespaces/metadata/xsd/core/2" xmlns:ns3="http://www.cablelabs.com/namespaces/metadata/xsd/signaling/2">
  <ns2:ManifestResponse acquisitionPointIdentity="ExampleESAM" acquisitionSignalID="1" duration="PT30S" dataPassThrough="true"> 
  <ns2:SegmentModify>
      <ns2:FirstSegment>
        <ns2:Tag value="#EXT-X-CUE-OUT:4,SpliceType=VOD_DAI,Action=REPLACE, PAID=amazon.com/TEST2014020500000346,Acds=BA" />
      </ns2:FirstSegment>
      <ns2:SpanSegment>
        <ns2:Tag value="#EXT-X-CUE-OUT-CONT:${secondsFromSignal}/4, SpliceType=VOD_DAI,Action=REPLACE,PAID=amazon.com/TEST2014020500000346,Acds=BA" adapt="true" />
      </ns2:SpanSegment>
      <ns2:LastSegment>
        <ns2:Tag value="#EXT-X-CUE-IN:4,SpliceType=VOD_DAI" locality="after" adapt="true" />
      </ns2:LastSegment>
    </ns2:SegmentModify>
	</ns2:ManifestResponse>
  <ns2:ManifestResponse acquisitionPointIdentity="ExampleESAM" acquisitionSignalID="2"></ns2:ManifestResponse>
  <ns2:ManifestResponse acquisitionPointIdentity="ExampleESAM" acquisitionSignalID="3" duration="PT30S">  
  <ns2:SegmentModify>
      <ns2:FirstSegment>
        <ns2:Tag value="#EXT-X-OUT:4,SpliceType=VOD_DAI,Action=REPLACE, PAID=amazon.com/TEST2014020500000347,Acds=BA" />
      </ns2:FirstSegment>
      <ns2:SpanSegment>
        <ns2:Tag value="#EXT-X-OUT-CONT:${secondsFromSignal}/4, SpliceType=VOD_DAI,Action=REPLACE,PAID=amazon.com/TEST2014020500000346,Acds=BA" adapt="true" />
      </ns2:SpanSegment>
      <ns2:LastSegment>
        <ns2:Tag value="#EXT-X-CUE-IN:4,SpliceType=VOD_DAI" locality="after" adapt="true" />
      </ns2:LastSegment>
    </ns2:SegmentModify>
	</ns2:ManifestResponse>
	<ns2:ManifestResponse acquisitionPointIdentity="ExampleESAM" acquisitionSignalID="4"></ns2:ManifestResponse>
</ns2:ManifestConfirmConditionNotification>
```