Guia de início rápido

Nesta página, mostramos como fazer uma solicitação à API Cloud Video Intelligence com curl.

Você pode seguir as etapas nesta página ou usar este início rápido como um laboratório do Google Cloud Training.

Use-o com um laboratório

Antes de começar

  1. Faça login na sua Conta do Google.

    Se você ainda não tiver uma, inscreva-se.

  2. Selecione ou crie um projeto do GCP.

    Acessar a página Gerenciar recursos

  3. Verifique se o faturamento foi ativado para o projeto.

    Saiba como ativar o faturamento

  4. Ativar Cloud Video Intelligence API.

    Ativar a a API

  5. Configurar autenticação:
    1. Acesse a página Criar chave da conta de serviço no Console do GCP.

      Acessar a página "Criar chave da conta de serviço"
    2. Na lista suspensa Conta de serviço, selecione Nova conta de serviço.
    3. Insira um nome no campo Nome da conta de serviço.
    4. Não selecione um valor na lista suspensa Papel. Não é necessário ter um papel para acessar esse serviço.
    5. Clique em Criar. Uma nota aparecerá informando que esta conta de serviço não tem papel.
    6. Clique em Criar sem papel. O download de um arquivo JSON que contém sua chave é feito no seu computador.
  6. Defina a variável de ambiente GOOGLE_APPLICATION_CREDENTIALS para o caminho do arquivo JSON que contém a chave da sua conta de serviço.

  7. Instale e inicialize o SDK do Cloud.

Criar uma solicitação de anotação de vídeo

COMANDO GCLOUD

Use a ferramenta de linha de comando gcloud para chamar o comando detect-labels no caminho do vídeo a ser analisado.

gcloud ml video detect-labels gs://cloud-ml-sandbox/video/chicago.mp4

Linha de comando

  1. Use o curl para fazer uma solicitação POST para o método videos:annotate, usando o comando gcloud auth application-default print-access-token para colar um token de acesso à sua conta de serviço:

    curl -X POST \
      -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
      -H "Content-Type: application/json; charset=utf-8" \      --data "{
         'inputUri':'gs://cloud-ml-sandbox/video/chicago.mp4',
         'features': [
           'LABEL_DETECTION'
        ]
      }" "https://videointelligence.googleapis.com/v1/videos:annotate"
    
  2. A API Video Intelligence cria uma operação para processar a solicitação. A resposta inclui o nome da operação:

    {
      "name": "us-west1.18358601230245040268"
    }
    
  3. É possível solicitar informações sobre a operação chamando o endpoint v1.operations e substituindo operation-name no exemplo abaixo pelo nome retornado na etapa anterior:

     curl -X GET \
       -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
       https://videointelligence.googleapis.com/v1/operations/operation-name
    
  4. Você verá as informações relativas à operação. Se a operação foi concluída, o campo done é incluído e definido como true:

    {
      "name": "us-west1.104032612573769453",
      "metadata": {
      "@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoProgress",
        "annotationProgress": [
          {
            "inputUri": "/cloud-ml-sandbox/video/chicago.mp4",
            "progressPercent": 100,
            "startTime": "2018-11-01T22:13:17.978847Z",
            "updateTime": "2018-11-01T22:13:29.576004Z"
          }
        ]
      },
      "done": true,
     ...
    }
    

Em geral, depois de aproximadamente um minuto, a mesma solicitação retorna resultados da anotação:

{
  "name": "us-west1.104032612573769453",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoProgress",
    "annotationProgress": [
      {
        "inputUri": "/cloud-ml-sandbox/video/chicago.mp4",
        "progressPercent": 100,
        "startTime": "2018-11-01T22:13:17.978847Z",
        "updateTime": "2018-11-01T22:13:29.576004Z"
      }
    ]
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoResponse",
    "annotationResults": [
      {
        "inputUri": "/cloud-ml-sandbox/video/chicago.mp4",
        "segmentLabelAnnotations": [
          {
            "entity": {
              "entityId": "/m/07bsy",
              "description": "transport",
              "languageCode": "en-US"
            },
            "segments": [
              {
                "segment": {
                  "startTimeOffset": "0s",
                  "endTimeOffset": "38.757872s"
                },
                "confidence": 0.81231534
              }
            ]
          },
         {
          "entity": {
              "entityId": "/m/01n32",
              "description": "city",
              "languageCode": "en-US"
            },
            "categoryEntities": [
              {
                "entityId": "/m/043rvww",
                "description": "geographical feature",
                "languageCode": "en-US"
              }
            ],
            "segments": [
              {
                "segment": {
                  "startTimeOffset": "0s",
                  "endTimeOffset": "38.757872s"
                },
                "confidence": 0.3942462
              }
            ]
          },
          ...
          {
            "entity": {
              "entityId": "/m/06gfj",
              "description": "road",
              "languageCode": "en-US"
            },
            "segments": [
              {
                "segment": {
                  "startTimeOffset": "0s",
                  "endTimeOffset": "38.757872s"
                },
                "confidence": 0.86698604
              }
            ]
          }
        ]
      }
    ]
  }
}
   

Parabéns! Você enviou sua primeira solicitação para a Cloud Video Intelligence API.

Limpar

Para evitar cobranças desnecessárias do Google Cloud Platform, use o Console do GCP para excluir seu projeto se ele não for necessário.

Próximas etapas

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação da API Cloud Video Intelligence