Criar e gerenciar clipes do canal

Esta página mostra como criar e gerenciar clipes de canal da API Live Stream. Um clipe de canal é um subrecurso de um canal. É possível usar um clipe de canal para criar arquivos de vídeo sob demanda (VOD) de uma transmissão ao vivo. Esses arquivos VOD são salvos no Cloud Storage. Para mais informações, consulte Criar clipes de VOD de uma transmissão ao vivo.

Configurar o projeto e a autenticação do Google Cloud

Se você não criou um projeto do Google Cloud e credenciais, consulte Antes de começar.

Pré-requisitos

Você precisa criar os seguintes recursos antes de criar um clipe de canal:

  1. Criar um endpoint de entrada

  2. Crie um canal com uma configuração de retenção.

Criar um clipe do canal

Inicie o canal e comece a transmitir conteúdo para ele antes de criar um clipe.

Para criar um clipe de canal, use o método projects.locations.channels.clips.create.

Antes de usar os dados da solicitação abaixo, 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 seu canal está localizado. Use uma das regiões com suporte.
    Mostrar locais
    • us-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 usuário para o canal
  • CLIP_ID: um identificador definido pelo usuário para o clipe de VOD
  • MARK_IN_TIME: o horário da marcação da época Unix no manifesto original da transmissão ao vivo; usa um carimbo de data/hora no formato "Zulu" UTC RFC3339 (por exemplo, 2014-10-02T15:01:23Z).
  • MARK_OUT_TIME: o horário da época Unix de marcação no manifesto original da transmissão ao vivo; usa um carimbo de data/hora no formato "Zulu" UTC RFC3339 (por exemplo, 2014-10-02T15:01:23Z).
  • BUCKET_NAME: o nome do bucket do Cloud Storage criado para armazenar os arquivos de segmento e do manifesto do clipe de VOD. É possível usar o mesmo bucket criado para o manifesto da transmissão ao vivo ou um bucket diferente. Também é possível anexar um nome de diretório ao nome do bucket (por exemplo, my-bucket/vod-clip).

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "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/clips/CLIP_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Esse comando cria uma operação de longa duração (LRO, na sigla em inglês) que pode ser usada para acompanhar o andamento da solicitação. Consulte Gerenciar operações de longa duração para mais informações.

Conferir detalhes do clipe do canal

Para conferir os detalhes de um clipe de canal, use o método projects.locations.channels.clips.get.

Antes de usar os dados da solicitação abaixo, 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 seu canal está localizado. Use uma das regiões com suporte.
    Mostrar locais
    • us-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 usuário para o canal
  • CLIP_ID: um identificador definido pelo usuário para o clipe de VOD

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/clips/CLIP_ID",
  "createTime": CREATE_TIME,
  "startTime": START_TIME,
  "updateTime": UPDATE_TIME,
  "state": "SUCCEEDED",
  "outputUri": "gs://BUCKET_NAME",
  "slices": [
    {
      "timeSlice": {
        "markinTime": "MARK_IN_TIME",
        "markoutTime": "MARK_OUT_TIME"
      }
    }
  ],
  "features": {},
  "clipManifests": [
    {
      "manifestKey": "manifest_hls",
      "outputUri": "gs://BUCKET_NAME/main.m3u8"
    }
  ]
}

Apenas os 1.000 registros de jobs de clipe mais recentes por canal estão disponíveis usando o método projects.locations.channels.clips.get. Todos os registros de jobs de clipe mais antigos que o limite são removidos. É necessário gerenciar os arquivos de clipe gerados especificados pelo outputUri. A API Live Stream não exclui esses arquivos do Cloud Storage.

Listar clipes do canal

Para listar todos os clipes de canal que você criou para um canal, use o método projects.locations.channels.clips.list.

Antes de usar os dados da solicitação abaixo, 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 seu canal está localizado. Use uma das regiões com suporte.
    Mostrar locais
    • us-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 usuário para o canal

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
    "clips": [
      {
        "name": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/clips/CLIP_ID",
        "createTime": CREATE_TIME,
        "startTime": START_TIME,
        "updateTime": UPDATE_TIME,
        "state": "SUCCEEDED",
        "outputUri": "gs://BUCKET_NAME",
        "slices": [
          {
            "timeSlice": {
              "markinTime": "MARK_IN_TIME",
              "markoutTime": "MARK_OUT_TIME"
            }
          }
        ],
        "features": {},
        "clipManifests": [
          {
            "manifestKey": "manifest_hls",
            "outputUri": "gs://BUCKET_NAME/main.m3u8"
          }
        ]
      },
      {
        "name": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/clips/my-clip2",
        "createTime": CREATE_TIME,
        "startTime": START_TIME,
        "updateTime": UPDATE_TIME,
        "state": "SUCCEEDED",
        "outputUri": "gs://BUCKET_NAME",
        "slices": [
          {
            "timeSlice": {
              "markinTime": "MARK_IN_TIME",
              "markoutTime": "MARK_OUT_TIME"
            }
          }
        ],
        "features": {},
        "clipManifests": [
          {
            "manifestKey": "manifest_hls",
            "outputUri": "gs://BUCKET_NAME/main.m3u8"
          }
        ]
      }
  ]
}

Excluir um clipe de canal

Para excluir um clipe de canal, use o método projects.locations.channels.clips.delete. Esse método exclui apenas a tarefa de recorte. Os recursos VOD criados no bucket do Cloud Storage não são gerenciados pela API Live Stream e não são excluídos.

Antes de usar os dados da solicitação abaixo, 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 seu canal está localizado. Use uma das regiões com suporte.
    Mostrar locais
    • us-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 usuário para o canal
  • CLIP_ID: um identificador definido pelo usuário para o clipe de VOD

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "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/clips/CLIP_ID",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Esse comando cria uma operação de longa duração (LRO, na sigla em inglês) que pode ser usada para acompanhar o andamento da solicitação. Consulte Gerenciar operações de longa duração para mais informações.