Início rápido para uma stream em direto MPEG-DASH
Esta página mostra-lhe como criar uma tarefa de stream em direto MPEG-DASH básica
usando as predefinições da API Live Stream e curl
, o PowerShell ou as
bibliotecas de cliente.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Live Stream API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.gcloud services enable livestream.googleapis.com
-
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/livestream.editor, roles/storage.admin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Replace the following:
PROJECT_ID
: your project ID.USER_IDENTIFIER
: the identifier for your user account—for example,myemail@example.com
.ROLE
: the IAM role that you grant to your user account.
-
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Live Stream API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.gcloud services enable livestream.googleapis.com
-
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/livestream.editor, roles/storage.admin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Replace the following:
PROJECT_ID
: your project ID.USER_IDENTIFIER
: the identifier for your user account—for example,myemail@example.com
.ROLE
: the IAM role that you grant to your user account.
-
Create a Cloud Storage bucket:
Replacegcloud storage buckets create gs://BUCKET_NAME
BUCKET_NAME
with a bucket name that meets the bucket naming requirements.Instale um codificador
Para usar a API, precisa de um codificador para gerar streams de entrada que a API processa.
Instale o
ffmpeg
, uma vez que esta página aborda a forma de usar offmpeg
para gerar streams de entrada. Pode instalá-lo no Cloud Shell através do seguinte comando.sudo apt install ffmpeg
Crie um ponto final de entrada
Para iniciar uma stream em direto, tem de usar primeiro o método
projects.locations.inputs.create
para criar um ponto final de entrada. Envia o fluxo de entrada para este ponto final.REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização na qual criar o ponto final de entrada; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
INPUT_ID
: um identificador definido pelo utilizador para o novo ponto final de entrada a criar (para o qual envia a sua stream de entrada). Este valor tem de ter entre 1 e 63 carateres, começar e terminar com[a-z0-9]
e pode conter travessões (-) entre carateres. Por exemplo,my-input
.
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
C#
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API C# API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Go API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Java API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Node.js API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API PHP API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Python API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Ruby API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Copie o OPERATION_ID devolvido para usar na secção seguinte.
Verifique o resultado
Use o método
projects.locations.operations.get
para verificar se o ponto final de entrada foi criado. Se a resposta contiver"done: false"
, repita o comando até que a resposta contenha"done: true"
. A criação do primeiro ponto final de entrada numa região pode demorar até 10 minutos.Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização onde o seu ponto final de entrada está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
OPERATION_ID
: o identificador da operação
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "endTime": END_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.Input", "name": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "type": "RTMP_PUSH", "uri": INPUT_STREAM_URI, # For example, "rtmp://1.2.3.4/live/b8ebdd94-c8d9-4d88-a16e-b963c43a953b", "tier": "HD" } }
Encontre o campo
uri
e copie o INPUT_STREAM_URI devolvido para usar mais tarde na secção Envie o fluxo de entrada.Crie um canal
Para transcodificar a stream de entrada numa stream de saída, tem de criar um recurso de canal.
Para criar um canal, use o método
projects.locations.channels.create
. O exemplo seguinte cria um canal que gera uma stream em direto MPEG-DASH que consiste numa única renderização de alta definição (1280 x 720).Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização na qual criar o canal; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
CHANNEL_ID
: um identificador definido pelo utilizador para o canal a criar; este valor tem de ter entre 1 e 63 carateres, começar e terminar com[a-z0-9]
e pode conter traços (-) entre carateresINPUT_ID
: o identificador definido pelo utilizador para o ponto final de entradaBUCKET_NAME
: o nome do contentor do Cloud Storage que criou para conter o manifesto da stream em direto e os ficheiros de segmentos
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Aceda ao canal
Pode verificar o resultado da operação de criação do canal através do novo ID da operação.
Depois de criar o canal, use o método
projects.locations.channels.get
para consultar o estado do canal.REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização onde o seu canal está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
CHANNEL_ID
: um identificador definido pelo utilizador para o canal
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "inputAttachments": [ { "key": "INPUT_ID", "input": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID" } ], "activeInput": "INPUT_ID", "output": { "uri": "gs://BUCKET_NAME" }, "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 30, "bitrateBps": 3000000, "gopDuration": "2s", "vbvSizeBits": 3000000, "vbvFullnessBits": 2700000, "entropyCoder": "cabac", "profile": "high" } }, "key": "es_video" }, { "audioStream": { "codec": "aac", "bitrateBps": 160000, "channelCount": 2, "channelLayout": ["fl", "fr"], "sampleRateHertz": 48000 }, "key": "es_audio" } ], "muxStreams": [ { "key": "mux_video", "container": "fmp4", "elementaryStreams": ["es_video"], "segmentSettings": { "segmentDuration": "2s" } }, { "key": "mux_audio", "container": "fmp4", "elementaryStreams": ["es_audio"], "segmentSettings": { "segmentDuration": "2s" } } ], "manifests": [ { "key": "manifest_dash", "fileName": "main.mpd", "type": "DASH", "muxStreams": [ "mux_video", "mux_audio" ], "maxSegmentCount": 5, "segmentKeepDuration": "60s" } ], "streamingState": "STOPPED" }
C#
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API C# API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Go API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Java API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Node.js API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API PHP API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Python API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Ruby API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
A resposta completa contém o seguinte campo. (Alguns dos exemplos de código acima apenas devolvem determinados campos na resposta, mas podem ser modificados para devolver a resposta completa.)
{ ... "streamingState": "STOPPED" ... }
Esta resposta indica que já pode iniciar o canal.
Inicie o canal
Use o método
projects.locations.channels.start
para iniciar o canal. Tem de iniciar um canal antes de poder aceitar streams de entrada ou gerar uma stream de saída.O início do primeiro canal numa região demora cerca de 10 minutos.
REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização onde o seu canal está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
CHANNEL_ID
: um identificador definido pelo utilizador para o canal
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID", "verb": "start", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
C#
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API C# API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Go API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Java API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Node.js API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API PHP API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Python API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Ruby API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Envie a stream de entrada
Para determinar se o canal foi iniciado, aceda às informações do canal como fez anteriormente. A resposta deve conter o seguinte:
{ ... "streamingState": "AWAITING_INPUT" ... }
Agora que o canal está pronto, envie uma stream de entrada de teste para o ponto final de entrada para gerar a stream em direto.
Abra uma nova janela de terminal. Execute o seguinte comando, usando o INPUT_STREAM_URI da secção Verifique o resultado:
ffmpeg -re -f lavfi -i "testsrc=size=1280x720 [out0]; sine=frequency=500 [out1]" \ -acodec aac -vcodec h264 -f flv INPUT_STREAM_URI
Verifique se o canal está em streaming
Para verificar o estado da operação de streaming em direto, obtenha as informações do canal, como fez anteriormente. A resposta deve conter o seguinte:
{ ... "streamingState": "STREAMING" ... }
Valide o conteúdo no contentor do Cloud Storage
Abra o contentor do Cloud Storage. Verifique se contém os seguintes ficheiros e diretórios:
main.mpd
mux_audio/
- Vários ficheiros
segment-segment-number.m4s
- Um único ficheiro
segment-initialization_segment_0000000000.m4s
- Vários ficheiros
mux_video/
- Vários ficheiros
segment-segment-number.m4s
- Um único ficheiro
segment-initialization_segment_0000000000.m4s
- Vários ficheiros
Veja a stream em direto gerada
Para reproduzir o ficheiro multimédia gerado no Shaka Player, conclua os seguintes passos:
- Torne o contentor do Cloud Storage que criou publicamente legível.
- Para ativar a partilha de recursos de origem cruzada (CORS) num contentor do Cloud Storage, faça o seguinte:
- Crie um ficheiro JSON que contenha o seguinte:
[ { "origin": ["https://shaka-player-demo.appspot.com/"], "responseHeader": ["Content-Type", "Range"], "method": ["GET", "HEAD"], "maxAgeSeconds": 3600 } ]
-
Execute o seguinte comando depois de substituir
JSON_FILE_NAME
pelo nome do ficheiro JSON que criou no passo anterior:gcloud storage buckets update gs://BUCKET_NAME --cors-file=JSON_FILE_NAME.json
- Crie um ficheiro JSON que contenha o seguinte:
- No contentor do Cloud Storage, encontre o ficheiro gerado.
main.mpd
Clique em Copiar URL na coluna Acesso público do ficheiro. - Navegue para Shaka Player, um leitor de streams em direto online.
- Clique em Conteúdo personalizado na barra de navegação superior.
- Clique no botão +.
Cole o URL público do ficheiro na caixa URL do manifesto.
Introduza um nome na caixa Nome.
Clique em Guardar.
Clique em Jogar.
Deve ver um padrão de teste a ser reproduzido como stream em direto.
Adicione um marcador de pausa para anúncios à stream em direto
Use o método
projects.locations.channels.events.create
para adicionar um marcador de pausa para anúncios à stream em direto.REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização onde o seu canal está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
CHANNEL_ID
: um identificador definido pelo utilizador para o canalEVENT_ID
: um identificador definido pelo utilizador para o evento
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/events/EVENT_ID", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "adBreak": { "duration": "100s" }, "executeNow": true, "state": "PENDING" }
C#
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API C# API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Go API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Java API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Node.js API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API PHP API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Python API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Ruby API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Verifique se o marcador de pausa para anúncio existe
Quando o marcador de anúncio é inserido na stream em direto, aparece um evento etiquetado como<SpliceInfoSection>
no manifesto DASH para a duração do anúncio especificada (100 s).Execute o seguinte comando para ver o conteúdo do manifesto DASH gerado:
gcloud storage cat gs://BUCKET_NAME/main.mpd
Pode ter de executar o comando
gcloud storage cat
várias vezes até aparecer a secção<SpliceInfoSection>
:<EventStream timescale="10000000" schemeIdUri="urn:scte:scte35:2013:xml"> <Event duration="100000000" id="809"> <SpliceInfoSection xmlns="urn:scte:scte35:2013:xml"> <SpliceInsert outOfNetworkIndicator="true" spliceImmediateFlag="true"> <BreakDuration autoReturn="true" duration="100000000"/> </SpliceInsert> </SpliceInfoSection> </Event> </EventStream>
Limpar
Para evitar incorrer em custos na sua Google Cloud conta pelos recursos usados nesta página, elimine o Google Cloud projeto com os recursos.
Pare o canal
Use o método
projects.locations.channels.stop
para parar o canal. Tem de parar o canal antes de o poder eliminar.REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização onde o seu canal está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
CHANNEL_ID
: um identificador definido pelo utilizador para o canal
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID", "verb": "stop", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
C#
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API C# API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Go API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Java API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Node.js API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API PHP API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Python API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Ruby API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Use o comando OPERATION_ID para verificar o estado da operação até receber
"done":true
no resultado.Pare a stream de entrada
Se usou
ffmpeg
para enviar a stream de entrada, a ligação é automaticamente interrompida depois de parar o canal.Se usou outros codificadores com mecanismos de repetição, pode ter de parar manualmente a stream de entrada.
Elimine o evento
Use o método
projects.locations.channels.events.delete
para eliminar o evento de pausa para anúncios. Tem de eliminar os eventos do canal antes de poder eliminar o canal.REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização onde o seu canal está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
CHANNEL_ID
: um identificador definido pelo utilizador para o canalEVENT_ID
: um identificador definido pelo utilizador para o evento
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{}
C#
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API C# API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Go API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Java API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Node.js API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API PHP API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Python API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Ruby API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Eliminar o canal
Use o método
projects.locations.channels.delete
para eliminar o canal. Tem de eliminar o canal antes de poder eliminar o ponto final de entrada usado pelo canal.REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização onde o seu canal está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
CHANNEL_ID
: um identificador definido pelo utilizador para o canal
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
C#
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API C# API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Go API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Java API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Node.js API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API PHP API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Python API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Ruby API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Use o comando OPERATION_ID para verificar o estado da operação até receber
"done":true
no resultado.Elimine o ponto final de entrada
Use o método
projects.locations.inputs.delete
para eliminar o ponto final de entrada.REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_NUMBER
: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAMLOCATION
: a localização onde o seu ponto final de entrada está localizado; use uma das regiões suportadasMostrar localizaçõesus-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-south1
asia-northeast1
asia-southeast1
australia-southeast1
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
INPUT_ID
: o identificador definido pelo utilizador para o ponto final de entrada
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
C#
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API C# API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Go API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Java API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Node.js API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API PHP API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Python API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca cliente da API Live Stream, consulte o artigo Bibliotecas cliente da API Live Stream. Para mais informações, consulte a documentação de referência da API Ruby API Live Stream.
Para se autenticar na API Live Stream, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Elimine o contentor do Cloud Storage
Tenha em atenção que todos os ficheiros e pastas no contentor gerado pela API Live Stream são eliminados quando para o canal.
Na Google Cloud consola, aceda à página do navegador do Cloud Storage.
Selecione a caixa de verificação junto ao grupo criado.
Clique em Eliminar.
Na janela de pop-up apresentada, clique em Eliminar para eliminar permanentemente o contentor e o respetivo conteúdo.
Revogue as suas credenciais
-
Optional: Revoke the authentication credentials that you created, and delete the local credential file.
gcloud auth application-default revoke
-
Optional: Revoke credentials from the gcloud CLI.
gcloud auth revoke
O que se segue?
- Experimente as instruções de início rápido para uma stream em direto HLS.
- Saiba como configurar uma stream de entrada alternativa.
Crie um contentor do Cloud Storage
Crie um contentor do Cloud Storage para armazenar o manifesto e os ficheiros de segmentos da stream em direto.