谷歌云语音转文字API存在的问题

3

我希望将一份德语播客转录成文字,并且我已经将其存储在我的计算机和Google Storage存储桶中。我正在使用 这个教程 作为参考。

这是我的代码:

frame_rate, channels = frame_rate_channel('pod.wav')
gcs_uri = 'gs://callsaudiofiles21/pod.wav'

client = speech.SpeechClient()
audio = types.RecognitionAudio(uri=gcs_uri)

config = types.RecognitionConfig(
encoding=enums.RecognitionConfig.AudioEncoding.LINEAR16,
sample_rate_hertz=frame_rate,
language_code='de-DE')

transcript = ''

operation = client.long_running_recognize(config, audio)
response = operation.result(timeout=10000)

for result in response.results:
    transcript += result.alternatives[0].transcript

但它停在了operation这一行,输出TypeError: long_running_recognize() takes from 1 to 2 positional arguments but 3 were given。该教程是一年前发布的,因此 API 中必定有所更改。不过我不确定需要修改什么。

2个回答

7

看起来你正在使用旧的库版本。

根据Google异步识别示例,这两个选项似乎是等效的:

    operation = client.long_running_recognize(
        request={"config": config, "audio": audio}
    )



    operation = client.long_running_recognize(config=config, audio=audio)

顺便提一下 - 也可以查看官方的Google语音转文本教程 - 它们总是有最新的例子。


1
你尝试过这个吗:

operation = client.long_running_recognize(
        request={"config": config, "audio": audio}
    )

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接