Con la API de Video Stitcher, puedes crear una sesión en vivo cada vez que inicies la reproducción de una transmisión en vivo en la que los anuncios se unen de forma dinámica durante las pausas publicitarias. La respuesta especifica la URL de reproducción y la configuración de la sesión en vivo.
En este documento, se describe cómo crear una sesión en vivo. Para obtener más detalles, consulta la documentación de REST.
Antes de comenzar
Cómo definir una sesión en vivo
Cuando defines una sesión en vivo, es obligatorio completar el siguiente campo:
liveConfig
Cuando defines una sesión en vivo, los siguientes campos son opcionales:
adTagMacros
manifestOptions
El parámetro adTagMacros
es una lista de pares clave-valor para reemplazar las macros de etiquetas de anuncios. Para obtener más detalles, consulta la sección de macros de etiquetas de anuncios.
El parámetro manifestOptions
especifica qué formatos de video se generan en el manifiesto de video unido. También admite el orden de las renderizaciones en el manifiesto de video unido. Para obtener más información, consulta la documentación sobre opciones del manifiesto.
Cómo crear una sesión en vivo
Para crear una sesión en vivo, usa el método projects.locations.liveSessions.create
.
REST
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
PROJECT_NUMBER
: El número de proyecto de Google Cloud ubicado en el campo Número de proyecto de la página Configuración de IAMLOCATION
: Es la ubicación en la que se creará la sesión. Usa una de las regiones compatibles.Mostrar ubicacionesus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
LIVE_CONFIG_ID
: Es el identificador definido por el usuario para la configuración activa.
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/liveSessions/SESSION_ID", "playUri": "PLAY_URI", "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", }
C#
Antes de probar esta muestra, sigue las instrucciones de configuración de C# que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de C# de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Antes de probar esta muestra, sigue las instrucciones de configuración de Go que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Go de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Antes de probar esta muestra, sigue las instrucciones de configuración de Java que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Java de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Antes de probar esta muestra, sigue las instrucciones de configuración de Node.js que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Node.js de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Antes de probar esta muestra, sigue las instrucciones de configuración de PHP que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de PHP de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Antes de probar esta muestra, sigue las instrucciones de configuración de Python que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Python de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Antes de probar esta muestra, sigue las instrucciones de configuración de Ruby que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Ruby de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
La API de Video Stitcher genera un ID de sesión único para cada solicitud. Una sesión vence si no se solicitó playUri
en los últimos 5 minutos.
Un anuncio debe estar codificado antes de que se pueda unir a una sesión en vivo. Cuando creas una sesión para un video unido con anuncios, la API de Video Stitcher determina si el anuncio ya se codificó en una sesión anterior. La API solo busca anuncios codificados creados por sesiones asociadas a tu proyecto de Google Cloud. Para obtener más información sobre este proceso, consulta la Descripción general.
La respuesta es un objeto de sesión en vivo. El playUri
es la URL que el dispositivo cliente usa para reproducir la transmisión unida con anuncios de esta sesión en vivo.
Si generas una sesión en nombre de los dispositivos de tus clientes, puedes configurar los siguientes parámetros mediante encabezados HTTP:
Parámetro | Encabezado HTTP |
---|---|
CLIENT_IP | x-forwarded-for |
REFERRER_URL | referer |
USER_AGENT | user-agent |
Puedes agregar los siguientes encabezados a la solicitud curl
anterior:
-H "x-forwarded-for: CLIENT_IP" \ -H "referer: REFERRER_URL" \ -H "user-agent: USER_AGENT" \
Si no se proporciona el encabezado x-forwarded-for
, la API de Video Stitcher usa la dirección IP del cliente en las solicitudes de metadatos de anuncios. Ten en cuenta que es posible que la dirección IP del cliente no coincida con la IP de los dispositivos de tus clientes si las sesiones se generan en nombre de sus dispositivos.
Macros de etiqueta de anuncio
Una etiqueta de anuncio puede contener macros, que pueden producir una etiqueta de anuncio diferente para cada sesión. Las macros se indican con corchetes en la etiqueta del anuncio, como se muestra en el siguiente ejemplo:
AD_TAG_URI¯o=[value]
El adTagUri
se define en la configuración activa.
Para sustituir el valor en la macro de la etiqueta de anuncio, proporciona una asignación en el campo adTagMacros
. Por ejemplo, si deseas reemplazar la macro [value] por la string bar
, debes proporcionar lo siguiente:
{ ... "adTagMacros": { "value": "bar" }, ... }
Cuando la API de Video Stitcher solicita los metadatos del anuncio, usa la siguiente etiqueta de anuncio:
AD_TAG_URI¯o=bar
Obtener una sesión
Para obtener la sesión en vivo, usa el método projects.locations.liveSessions.get
.
REST
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
PROJECT_NUMBER
: El número de proyecto de Google Cloud ubicado en el campo Número de proyecto de la página Configuración de IAMLOCATION
: Es la ubicación en la que se creará la sesión. Usa una de las regiones compatibles.Mostrar ubicacionesus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
SESSION_ID
: Es el identificador de la sesión en vivo.
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/liveSessions/SESSION_ID", "playUri": "ad-stitched-live-stream-uri", "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", }
C#
Antes de probar esta muestra, sigue las instrucciones de configuración de C# que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de C# de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Antes de probar esta muestra, sigue las instrucciones de configuración de Go que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Go de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Antes de probar esta muestra, sigue las instrucciones de configuración de Java que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Java de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Antes de probar esta muestra, sigue las instrucciones de configuración de Node.js que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Node.js de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Antes de probar esta muestra, sigue las instrucciones de configuración de PHP que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de PHP de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Antes de probar esta muestra, sigue las instrucciones de configuración de Python que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Python de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Antes de probar esta muestra, sigue las instrucciones de configuración de Ruby que se encuentran en la Guía de inicio rápido de la API de Video Stitcher con bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Ruby de la API de Video Stitcher.
Para autenticarte en la API de Video Stitcher, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ejemplo de playlist unida con anuncios
A continuación, se muestra un ejemplo de una playlist en vivo de origen antes de unir anuncios:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:5
#EXTINF:10.010
segment_00005.ts
#EXTINF:10.010
segment_00006.ts
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2021-06-22T08:32:00Z",DURATION=60,SCTE35-OUT=0xF...
#EXTINF:10.010
segment_00007.ts
#EXTINF:10.010
segment_00008.ts
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2021-06-22T08:39:20Z",SCTE35-IN=0xF...
#EXTINF:10.010
segment_00009.ts
A continuación, se muestra un ejemplo de una playlist en vivo de origen después de unir los anuncios:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:5
#EXTINF:10.010
segment_00005.ts
#EXTINF:10.010
segment_00006.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://ads.us-west1.cdn.videostitcher.goog/ad-1/seg-1.ts
#EXTINF:5.000
https://ads.us-west1.cdn.videostitcher.goog/ad-1/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://ads.us-west1.cdn.videostitcher.goog/ad-2/seg-1.ts
#EXTINF:5.000
https://ads.us-west1.cdn.videostitcher.goog/ad-2/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:10.010
segment_00009.ts