Transcribe a local file
Stay organized with collections
Save and categorize content based on your preferences.
Transcribe a short audio file.
Explore further
For detailed documentation that includes this code sample, see the following:
Code sample
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License
, and code samples are licensed under the Apache 2.0 License
. For details, see the Google Developers Site Policies
. Java is a registered trademark of Oracle and/or its affiliates.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],[],[],[],null,["# Transcribe a local file\n\nTranscribe a short audio file.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Send a transcription request to Cloud Speech-to-Text On-Prem](/speech-to-text/priv/docs/transcribe)\n\nCode sample\n-----------\n\n### Python\n\n\nTo learn how to install and use the client library for Speech-to-Text, see\n[Speech-to-Text client libraries](/speech-to-text/docs/client-libraries).\n\n\nFor more information, see the\n[Speech-to-Text Python API\nreference documentation](/python/docs/reference/speech/latest).\n\n\nTo authenticate to Speech-to-Text, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n def transcribe_onprem(\n local_file_path: str,\n api_endpoint: str,\n ) -\u003e speech_v1p1beta1.RecognizeResponse:\n \"\"\"\n Transcribe a short audio file using synchronous speech recognition on-prem\n\n Args:\n local_file_path: The path to local audio file, e.g. /path/audio.wav\n api_endpoint: Endpoint to call for speech recognition, e.g. 0.0.0.0:10000\n\n Returns:\n The speech recognition response\n {\n \"\"\"\n # api_endpoint = '0.0.0.0:10000'\n # local_file_path = '../resources/two_channel_16k.raw'\n\n # Create a gRPC channel to your server\n channel = grpc.insecure_channel(target=api_endpoint)\n transport = speech_v1p1beta1.services.speech.transports.SpeechGrpcTransport(\n channel=channel\n )\n\n client = speech_v1p1beta1.SpeechClient(transport=transport)\n\n # The language of the supplied audio\n language_code = \"en-US\"\n\n # Sample rate in Hertz of the audio data sent\n sample_rate_hertz = 16000\n\n # Encoding of audio data sent. This sample sets this explicitly.\n # This field is optional for FLAC and WAV audio formats.\n encoding = speech_v1p1beta1.RecognitionConfig.AudioEncoding.LINEAR16\n config = {\n \"encoding\": encoding,\n \"language_code\": language_code,\n \"sample_rate_hertz\": sample_rate_hertz,\n }\n with io.open(local_file_path, \"rb\") as f:\n content = f.read()\n audio = {\"content\": content}\n\n response = client.recognize(request={\"config\": config, \"audio\": audio})\n for result in response.results:\n # First alternative is the most probable result\n alternative = result.alternatives[0]\n print(f\"Transcript: {alternative.transcript}\")\n\n return response\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=speech)."]]