Com a API Video Stitcher, você cria uma sessão ao vivo toda vez que inicia a reprodução de uma transmissão ao vivo 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 ativa.
Neste documento, descrevemos como criar uma sessão ao vivo. Para ver 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 ativa, os campos abaixo são opcionais:
adTagMacros
manifestOptions
O parâmetro adTagMacros
é uma lista de pares de chave-valor para a substituição da macro da tag de anúncio. Para mais detalhes, consulte a seção de macros de tag de anúncio.
O parâmetro manifestOptions
especifica quais renderizações de vídeo são geradas
no manifesto de vídeo integrado. Ele também oferece suporte à ordenação das
renderizações no manifesto de vídeo integrado. Para mais informações, consulte a
documentação das opções de 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 na página Configurações do IAM.LOCATION
: 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 saber mais, consulte a documentação de referência da API C# da API Video Stitcher.
Para autenticar a 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 do Go no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para saber mais, consulte a documentação de referência da API Go da API Video Stitcher.
Para autenticar a 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 do Java no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para saber mais, consulte a documentação de referência da API Java da API Video Stitcher.
Para autenticar a 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 do Node.js no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para saber mais, consulte a documentação de referência da API Node.js da API Video Stitcher.
Para autenticar a 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 do PHP no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para saber mais, consulte a documentação de referência da API PHP da API Video Stitcher.
Para autenticar a 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 saber mais, consulte a documentação de referência da API Python da API Video Stitcher.
Para autenticar a 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 do Ruby no Guia de início rápido da API Video Stitcher usando bibliotecas de cliente. Para saber mais, consulte a documentação de referência da API Ruby da API Video Stitcher.
Para autenticar a 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 exclusivo para cada solicitação. Uma
sessão expira quando o playUri
não é solicitado nos últimos 5 minutos.
Um anúncio precisa ser codificado antes de ser incluído em uma sessão ao vivo. Quando você cria uma sessão para um vídeo com anúncios, a API Video Stitcher determina se o anúncio já foi codificado em uma sessão anterior. A API procura apenas anúncios codificados criados pelas 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 de sessão ativa. O
playUri
é o URL que o dispositivo cliente usa para reproduzir o stream agrupado com anúncios para
essa sessão ao vivo.
Se você estiver gerando uma sessão em nome dos dispositivos dos seus clientes, poderá definir 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 vai usar o
endereço IP do cliente nas solicitações de metadados do anúncio. O endereço IP do cliente pode não corresponder ao IP dos dispositivos dos clientes se as sessões forem geradas em nome desses dispositivos.
Macros de tags de anúncio
Uma tag de anúncio pode conter macros, que produzem 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 ao vivo.
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
, será necessário fornecer 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
Acessar 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 na página Configurações do IAM.LOCATION
: 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 saber mais, consulte a documentação de referência da API C# da API Video Stitcher.
Para autenticar a 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 saber mais, consulte a documentação de referência da API Go da API Video Stitcher.
Para autenticar a 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 saber mais, consulte a documentação de referência da API Java da API Video Stitcher.
Para autenticar a 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 saber mais, consulte a documentação de referência da API Node.js da API Video Stitcher.
Para autenticar a 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 saber mais, consulte a documentação de referência da API PHP da API Video Stitcher.
Para autenticar a 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 saber mais, consulte a documentação de referência da API Python da API Video Stitcher.
Para autenticar a 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 saber mais, consulte a documentação de referência da API Ruby da API Video Stitcher.
Para autenticar a 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 agrupada por anúncios
Confira a seguir um exemplo de playlist ao vivo de origem antes da união do anúncio:
#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 a união do anúncio:
#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