A API Video Intelligence transcreve a voz em texto de arquivos de vídeo compatíveis. Há dois modelos compatíveis, "padrão" e "vídeo".
Solicitar a transcrição de fala de um vídeo
Enviar a solicitação de processo
Veja a seguir como enviar uma solicitação POST
para o método videos:annotate
.
O exemplo usa o token de acesso de uma conta de serviço configurada para o projeto
com a Google Cloud CLI. Para instruções sobre como instalar a Google Cloud CLI,
configurar um projeto com uma conta de serviço
e receber um token de acesso, consulte o
Guia de início rápido da Video Intelligence.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- INPUT_URI: um bucket do Cloud Storage que contém o arquivo que você quer anotar, incluindo o nome do arquivo. É necessário começar com
gs://
.
Exemplo:"inputUri": "gs://cloud-videointelligence-demo/assistant.mp4",
- LANGUAGE_CODE: [opcional] consulte idiomas compatíveis
- PROJECT_NUMBER: o identificador numérico do seu projeto do Google Cloud
Método HTTP e URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corpo JSON da solicitação:
{ "inputUri": "INPUT_URI ", "features": ["SPEECH_TRANSCRIPTION"], "videoContext": { "speechTranscriptionConfig": { "languageCode": "LANGUAGE_CODE ", "enableAutomaticPunctuation": true, "filterProfanity": true } } }
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_NUMBER " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://videointelligence.googleapis.com/v1/videos:annotate"
PowerShell (Windows)
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_NUMBER " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://videointelligence.googleapis.com/v1/videos:annotate" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "name": "projects/PROJECT_NUMBER /locations/LOCATION_ID /operations/OPERATION_ID " }
Se a solicitação for bem-sucedida, a Video Intelligence retornará o name
para sua operação. O exemplo acima mostra um exemplo dessa resposta, em que project-number
é o número do projeto e operation-id
é o ID da operação de longa duração criado para a solicitação.
Ver os resultados
Para receber os resultados da solicitação, envie um GET
usando o nome da operação retornado da chamada para videos:annotate
, conforme mostrado no exemplo a seguir.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- OPERATION_NAME: o nome da operação, conforme retornado pela API Video Intelligence. O nome da operação tem o formato
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
. - PROJECT_NUMBER: o identificador numérico do seu projeto do Google Cloud
Método HTTP e URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_NUMBER " \
"https://videointelligence.googleapis.com/v1/OPERATION_NAME "
PowerShell (Windows)
execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_NUMBER " }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://videointelligence.googleapis.com/v1/OPERATION_NAME " | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
Resposta
{ "name": "projects/PROJECT_NUMBER /locations/LOCATION_ID /operations/OPERATION_ID ", "metadata": { "@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoProgress", "annotationProgress": [{ "inputUri": "/bucket-name-123/sample-video-short.mp4", "progressPercent": 100, "startTime": "2018-04-09T15:19:38.919779Z", "updateTime": "2018-04-09T15:21:17.652470Z" }] }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoResponse", "annotationResults": [ { "speechTranscriptions": [ { "alternatives": [ { "transcript": "and laughing going to talk about is the video intelligence API how many of you saw it at the keynote yesterday ", "confidence": 0.8442509, "words": [ { "startTime": "0.200s", "endTime": "0.800s", "word": "and" }, { "startTime": "0.800s", "endTime": "1.100s", "word": "laughing" }, { "startTime": "1.100s", "endTime": "1.200s", "word": "going" }, ...
Fazer o download dos resultados da anotação
Copie a anotação da origem e a cole no bucket de destino: consulte Copiar arquivos e objetos
gcloud storage cp gcs_uri gs://my-bucket
Observação: se o URI de saída do GCS for fornecido pelo usuário, a anotação será armazenada nesse URI.
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
C#: Siga as Instruções de configuração do C# na página das bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para .NET.
PHP: Siga as Instruções de configuração do PHP na página das bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para PHP.
Ruby: Siga as Instruções de configuração do Ruby na página das bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para Ruby.