Com a API Video Stitcher, você cria uma sessão ao vivo sempre que inicia a reprodução de uma transmissão em que os anúncios são agrupados dinamicamente durante os intervalos. A resposta especifica o URL de reprodução e a configuração da sessão ao vivo.
Este documento descreve como criar uma sessão ao vivo. Para mais detalhes, consulte a documentação da REST.
Antes de começar
Definir uma sessão ao vivo
Quando você define uma sessão ao vivo, o seguinte campo é obrigatório:
liveConfig
Ao definir uma sessão ao vivo, os seguintes campos são opcionais:
adTagMacros
manifestOptions
O parâmetro adTagMacros
é uma lista de pares de chave-valor para substituição de macros de tags de anúncio. Para mais detalhes, consulte a seção de macros da tag de anúncio.
O parâmetro manifestOptions
especifica quais execuções de vídeo são geradas
no manifesto do vídeo agrupado. Ele também aceita a ordem das
renderizações no manifesto de vídeo agrupado. Para saber mais, consulte a
documentação das opções do manifesto.
Criar uma sessão ao vivo
Para criar uma sessão ao vivo, use o
método
projects.locations.liveSessions.create
.
REST
Antes de usar os dados da solicitação, faça as substituições a seguir:
PROJECT_NUMBER
: o número do projeto do Google Cloud localizado no campo Número do projeto da página Configurações do IAMLOCATION
: o local em que a sessão será criada. Use uma das regiões com suporte.Mostrar locaisus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
LIVE_CONFIG_ID
: o identificador definido pelo usuário para a configuração ativa
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "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 testar esta amostra, siga as instruções de configuração de C# no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API C# da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Go
Antes de testar esta amostra, siga as instruções de configuração de Go no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Go da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Antes de testar esta amostra, siga as instruções de configuração de Java no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Java da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Antes de testar esta amostra, siga as instruções de configuração de Node.js no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Node.js da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
PHP
Antes de testar esta amostra, siga as instruções de configuração de PHP no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API PHP da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Antes de testar esta amostra, siga as instruções de configuração de Python no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Python da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Ruby
Antes de testar esta amostra, siga as instruções de configuração de Ruby no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Ruby da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
A API Video Stitcher gera um ID de sessão único para cada solicitação. A
sessão expira quando o playUri
não é solicitado nos últimos cinco minutos.
O anúncio precisa ser codificado antes de ser unido a uma sessão ao vivo. Quando você cria uma sessão para um vídeo com anúncios em vídeo, a API Video Stitcher determina se o anúncio já foi codificado em uma sessão anterior. A API só procura anúncios codificados criados por sessões associadas ao seu projeto do Google Cloud. Para mais informações sobre esse processo, consulte a Visão geral.
A resposta é um objeto da sessão ao vivo. O
playUri
é o URL que o dispositivo cliente usa para reproduzir o stream combinado do anúncio para
essa sessão ao vivo.
Se você estiver gerando uma sessão em nome dos dispositivos dos seus clientes, defina os seguintes parâmetros usando cabeçalhos HTTP:
Parâmetro | Cabeçalho HTTP |
---|---|
CLIENT_IP | x-forwarded-for |
REFERRER_URL | referer |
USER_AGENT | user-agent |
É possível adicionar os seguintes cabeçalhos à solicitação curl
anterior:
-H "x-forwarded-for: CLIENT_IP" \ -H "referer: REFERRER_URL" \ -H "user-agent: USER_AGENT" \
Se o cabeçalho x-forwarded-for
não for fornecido, a API Video Stitcher usará o
endereço IP do cliente em solicitações de metadados do anúncio. O endereço IP do cliente pode não corresponder ao IP dos dispositivos dos seus clientes se as sessões forem geradas em nome dos dispositivos deles.
Macros da tag de anúncio
Uma tag de anúncio pode conter macros, que podem produzir uma tag de anúncio diferente para cada sessão. As macros são indicadas por colchetes na tag de anúncio, conforme ilustrado pelo exemplo a seguir:
AD_TAG_URI¯o=[value]
O adTagUri
é definido na
configuração em tempo real.
Para substituir o valor na macro da tag de anúncio, forneça um mapeamento no campo adTagMacros
. Por exemplo, se você quiser substituir a macro [value]
pela string bar
, forneça o seguinte:
{ ... "adTagMacros": { "value": "bar" }, ... }
Quando a API Video Stitcher solicita os metadados do anúncio, ela usa a seguinte tag de anúncio:
AD_TAG_URI¯o=bar
Receber uma sessão
Para acessar a sessão ao vivo, use o
método
projects.locations.liveSessions.get
.
REST
Antes de usar os dados da solicitação, faça as substituições a seguir:
PROJECT_NUMBER
: o número do projeto do Google Cloud localizado no campo Número do projeto da página Configurações do IAMLOCATION
: o local em que a sessão será criada. Use uma das regiões com suporte.Mostrar locaisus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
SESSION_ID
: o identificador da sessão ao vivo.
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "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 testar esta amostra, siga as instruções de configuração de C# no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API C# da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Go
Antes de testar esta amostra, siga as instruções de configuração de Go no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Go da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Antes de testar esta amostra, siga as instruções de configuração de Java no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Java da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Antes de testar esta amostra, siga as instruções de configuração de Node.js no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Node.js da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
PHP
Antes de testar esta amostra, siga as instruções de configuração de PHP no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API PHP da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Antes de testar esta amostra, siga as instruções de configuração de Python no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Python da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Ruby
Antes de testar esta amostra, siga as instruções de configuração de Ruby no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para ver mais informações, consulte a documentação de referência da API Ruby da API Video Stitcher.
Para autenticar na API Video Stitcher, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Exemplo de playlist com anúncios
Confira a seguir um exemplo de playlist ao vivo de origem antes do agrupamento de anúncios:
#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
Confira a seguir um exemplo de playlist ao vivo de origem após o agrupamento de anúncios:
#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