Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Quando envia dados de áudio para a API Speech-to-Text, pode enviar os
dados diretamente (no campo
content do pedido) ou
fazer com que a API execute o reconhecimento remotamente em dados armazenados num contentor do Cloud Storage.
Só pode enviar dados diretamente no campo content para o
reconhecimento síncronose os seus dados de áudio tiverem um máximo de 60 segundos e 10 MB. Todos os dados de áudio no campo content têm de estar no formato Base64. Esta página descreve como
converter áudio de um ficheiro binário em dados codificados em base64.
Se os seus dados de áudio excederem 60 segundos ou 10 MB, têm de ser armazenados num contentor do Cloud Storage para serem enviados para reconhecimento. Pode analisá-lo
de forma assíncrona sem o converter para o formato base64. Consulte a
documentação de reconhecimento assíncrono
para ver detalhes.
Usar a linha de comandos
Num pedido gRPC, pode simplesmente escrever dados binários diretamente;
no entanto, o JSON é usado quando faz um pedido REST. O JSON é um formato de texto que não suporta diretamente dados binários, pelo que tem de converter esses dados binários em texto através da codificação Base64.
A maioria dos ambientes de programação contém um utilitário base64 nativo para codificar um ficheiro binário em dados de texto ASCII. Para codificar um ficheiro:
Linux
Codifique o ficheiro através da ferramenta de linha de comandos base64, certificando-se de que
impede a mudança de linha com a marca -w 0:
base64 INPUT_FILE -w 0 > OUTPUT_FILE
macOS
Codifique o ficheiro com a ferramenta de linha de comandos base64:
base64 -i INPUT_FILE -o OUTPUT_FILE
Windows
Codifique o ficheiro com a ferramenta Base64.exe:
Base64.exe -e INPUT_FILE > OUTPUT_FILE
PowerShell
Codifique o ficheiro através do método Convert.ToBase64String:
Incorporar dados binários em pedidos através de editores de texto não é desejável nem prático. Na prática, vai incorporar ficheiros codificados em base64 no código do cliente. Todas as linguagens de programação suportadas têm mecanismos incorporados
para codificar conteúdo em base64.
Python
Em Python, codifique ficheiros de áudio em base64 da seguinte forma:
# Import the base64 encoding library.importbase64# Pass the audio data to an encoding function.defencode_audio(audio):audio_content=audio.read()returnbase64.b64encode(audio_content)
Node.js
No Node.js, codifique os ficheiros de áudio em base64 da seguinte forma, em que audioFile
é o caminho para o ficheiro codificado em áudio.
Em Java, use o método estático encodeBase64 em org.apache.commons.codec.binary.Base64 para codificar ficheiros binários em base64:
// Import the Base64 encoding library.importorg.apache.commons.codec.binary.Base64;// Encode the speech.byte[]encodedAudio=Base64.encodeBase64(audio.getBytes());
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-20 UTC."],[],[],null,["# Base64 encoding audio content\n\nWhen you send audio data to the Speech-to-Text API you can either send the\ndata directly (within the request's\n[`content`](/speech-to-text/docs/reference/rest/v1/RecognitionAudio) field) or\nhave the API perform recognition remotely on data stored in a Cloud Storage bucket.\nYou can send data directly in the `content` field for\n[synchronous recognition](/speech-to-text/docs/sync-recognize#performing_synchronous_speech_recognition_on_a_local_file)\n**only** if your audio data is a maximum of 60 seconds and 10 MB. Any audio\ndata in the `content` field must be in base64 format. This page describes how to\nconvert audio from a binary file to base64-encoded data.\n\nIf your audio data exceeds 60 seconds or 10 MB, it must be stored in a\nCloud Storage bucket in order to be sent for recognition. You can analyze\nit asynchronously without converting it to base64 format. See the\n[asynchronous recognition documentation](/speech-to-text/docs/async-recognize)\nfor details.\n\nUsing the command line\n----------------------\n\nWithin a gRPC request, you can simply write binary data out directly;\nhowever, JSON is used when making a REST request. JSON\nis a text format that does not directly support binary data, so you will need to\nconvert such binary data into text using\n[Base64](https://en.wikipedia.org/wiki/Base64) encoding.\n\nMost development environments contain a native `base64` utility to\nencode a binary into ASCII text data. To encode a file: \n\n### Linux\n\nEncode the file using the `base64` command line tool, making sure to\nprevent line-wrapping by using the `-w 0` flag: \n\n```\nbase64 INPUT_FILE -w 0 \u003e OUTPUT_FILE\n```\n\n### macOS\n\nEncode the file using the `base64` command line tool: \n\n```\nbase64 -i INPUT_FILE -o OUTPUT_FILE\n```\n\n### Windows\n\nEncode the file using the `Base64.exe` tool: \n\n```\nBase64.exe -e INPUT_FILE \u003e OUTPUT_FILE\n```\n\n### PowerShell\n\nEncode the file using the `Convert.ToBase64String` method: \n\n```\n[Convert]::ToBase64String([IO.File]::ReadAllBytes(\"./INPUT_FILE\")) \u003e OUTPUT_FILE\n```\n\nCreate a JSON request file, inlining the base64-encoded data: \n\n### JSON\n\n\n```json\n{\n \"config\": {\n \"encoding\": \"FLAC\",\n \"sampleRateHertz\": 16000,\n \"languageCode\": \"en-US\"\n },\n \"audio\": {\n \"content\": \"ZkxhQwAAACIQABAAAAUJABtAA+gA8AB+W8FZndQvQAyjv...\"\n }\n}\n```\n\n\u003cbr /\u003e\n\nUsing client libraries\n----------------------\n\nEmbedding binary data into requests through text editors is neither\ndesirable or practical. In practice, you will be embedding base64 encoded files\nwithin client code. All supported programming languages have built-in mechanisms\nfor base64 encoding content.\n\n\n### Python\n\nIn Python, base64 encode audio files as follows: \n\n # Import the base64 encoding library.\n import base64\n\n # Pass the audio data to an encoding function.\n def encode_audio(audio):\n audio_content = audio.read()\n return base64.b64encode(audio_content)\n\n### Node.js\n\nIn Node.js, base64 encode audio files as follows, where `audioFile`\nis the path to the audio-encoded file. \n\n const fs = require('fs');\n const content = fs.readFileSync(audioFile).toString('base64');\n\n### Java\n\nIn Java, use the `encodeBase64` static method within\n`org.apache.commons.codec.binary.Base64` to base64 encode binary files: \n\n // Import the Base64 encoding library.\n import org.apache.commons.codec.binary.Base64;\n\n // Encode the speech.\n byte[] encodedAudio = Base64.encodeBase64(audio.getBytes());\n\n\u003cbr /\u003e"]]