【发布时间】:2019-08-19 14:46:54
【问题描述】:
我的问题类似于this 在 SO 上提出的问题,但由于最新的答案已有一年多的历史,并且 API 发生了很大变化,所以再次提出问题。 (我相信)
我正在运行long_running_recognize 操作,想知道它的进度。
from google.cloud import speech_v1 as speech
from google.cloud.speech_v1 import enums
from google.cloud.speech_v1 import types
gcs_uri = 'gs://my-new-videos/a49e0bf49a2e4d95b322bbf802e09d0e.wav'
client = speech.SpeechClient()
audio = types.RecognitionAudio(uri=gcs_uri)
config = types.RecognitionConfig(
encoding=enums.RecognitionConfig.AudioEncoding.LINEAR16,
sample_rate_hertz=44100,
language_code='en-US',
audio_channel_count=2,
enable_separate_recognition_per_channel=False,
model='video',
enable_word_time_offsets=False)
# ideally a way to get some sort of progress bar to know how long to wait.
operation = client.long_running_recognize(config, audio)
print('Waiting for operation to complete...')
response = operation.result(timeout=90)
显然可以运行operation.running() 和operation.done() 来获取operation 的状态,但我无法弄清楚如何使用它来告诉我需要等待多长时间或已经等待了多少完毕。任何帮助将不胜感激。
【问题讨论】:
标签: python speech-to-text google-speech-api google-cloud-speech