- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 Google-Speech-to-Text,我可以使用默认参数转录音频剪辑。但是,我在使用 enable_speaker_diarization 标签分析音频剪辑中的各个扬声器时收到一条错误消息。谷歌记录它here这是一个很长的识别音频剪辑,因此我使用 Google 推荐的异步请求 here
我的代码 -
def transcribe_gcs(gcs_uri):
from google.cloud import speech
from google.cloud import speech_v1 as speech
from google.cloud.speech import enums
from google.cloud.speech import types
client = speech.SpeechClient()
audio = types.RecognitionAudio(uri = gcs_uri)
config = speech.types.RecognitionConfig(encoding=speech.enums.RecognitionConfig.AudioEncoding.FLAC,
sample_rate_hertz= 16000,
language_code = 'en-US',
enable_speaker_diarization=True,
diarization_speaker_count=2)
operation = client.long_running_recognize(config, audio)
print('Waiting for operation to complete...')
response = operation.result(timeout=3000)
result = response.results[-1]
words_info = result.alternatives[0].words
for word_info in words_info:
print("word: '{}', speaker_tag: {}".format(word_info.word, word_info.speaker_tag))
使用后-
transcribe_gcs('gs://bucket_name/filename.flac')
我得到了错误
ValueError: Protocol message RecognitionConfig has no "enable_speaker_diarization" field.
我确定这与库有关,我已经使用了我能找到的所有变体
from google.cloud import speech_v1p1beta1 as speech
from google.cloud import speech
但我不断收到同样的错误。注意 - 在运行此代码之前,我已经使用 JSON 文件进行了身份验证。
最佳答案
speech.types.RecognitionConfig
中的 enable_speaker_diarization=True
参数目前仅在库 speech_v1p1beta1
中可用,因此,您需要导入该库以使用该参数,而不是默认语音。我对您的代码做了一些修改,对我来说效果很好。考虑到您需要使用服务帐户来运行此代码。
def transcribe_gcs(gcs_uri):
from google.cloud import speech_v1p1beta1 as speech
from google.cloud.speech_v1p1beta1 import enums
from google.cloud.speech_v1p1beta1 import types
client = speech.SpeechClient()
audio = types.RecognitionAudio(uri = gcs_uri)
config = speech.types.RecognitionConfig( language_code = 'en-US',enable_speaker_diarization=True, diarization_speaker_count=2)
operation = client.long_running_recognize(config, audio)
print('Waiting for operation to complete...')
response = operation.result(timeout=3000)
result = response.results[-1]
words_info = result.alternatives[0].words
tag=1
speaker=""
for word_info in words_info:
if word_info.speaker_tag==tag:
speaker=speaker+" "+word_info.word
else:
print("speaker {}: {}".format(tag,speaker))
tag=word_info.speaker_tag
speaker=""+word_info.word
print("speaker {}: {}".format(tag,speaker))
结果应该是这样的:
关于python-3.x - Google Cloud Speech to Text 中的 enable_speaker_diarization 标记出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54271749/
我只是尝试使用 Microsoft.Speech.dll; 为文本转语音运行简单的 Microsoft 示例 using System; using Microsoft.Speech.Synthesi
微软似乎提供了不少语音识别产品,我想知道它们之间的区别。 有Microsoft Speech API ,或 SAPI。但不知何故Microsoft Cognitive Service Speech A
我希望编写一个应用程序,将语音到文本转换为仓库应用程序,反之亦然。主要用例是运算符(operator)将在仓库中佩戴耳机并将指令发送回服务器并从仓库软件接收指令以拣选和打包订单。我们将使用由 Wind
我正在探索 python 中的谷歌云语音 api。我正在关注这个 link .我也提到了这个 stackoverflow link .但是我对设置环境变量感到震惊。 我做过的事情: 1.安装gclou
在尝试让 Speech to Text(IBM 语音网关 IVR 应用程序)识别字母数字字符串时,我想知道我是否可以创建一个自定义语法或实体来限制 STT 仅识别单个字母和数字,不包括完全的话。例如,
是否可以将来自Web Speech API的合成语音用作Web Audio API音频上下文中的SourceNode? 最佳答案 实际上,我问过要在Web Speech邮件列表中添加此内容,并且基本上
使用 Microsoft Speech API 转录中/大型音频文件(每个文件约 6-10 分钟)的最佳方法是什么?像批处理音频文件转录这样的东西? 我使用了 https://docs.microso
我的 .wav 文件长度只有 4 秒。即使在多次重试并在云端运行后,我仍然不断收到以下错误 * upload completely sent off: 12 out of 12 bytes
我找到了一些描述如何使用 Google 语音 API 的文章 ( http://mikepultz.com/2011/03/accessing-google-speech-api-chrome-11/
我使用 google 语音转文本 API 从音频中获取字幕,但是当音频太长时,通常超过 60 分钟,重试次数过多会失败。它说:google.api_core.exceptions.GoogleAPIC
我有一些来自 System.Speech.Recognition 的简单代码可以正常工作: using (var recognizer = new SpeechRecognitionEngine(ne
Windows 10。我在“设置”中安装了日语 TTS 语音。现在,当我在 Speech API 5.4 OneCore 中使用语音枚举时(虽然不是在 5.4 中),我得到 6 个语音: 大卫 齐拉
当我提交对太长文本的综合请求时,我收到以下错误: google.api_core.exceptions.ResourceExhausted: 429 Received message larger t
我是 C# 的新手,也是 Speech.Recognition 的新手。我搜索了很长时间的教程,但没有找到那么多,我什至不确定我是否正确包含了所有内容。 我下载了: SDK Runtime Langu
我有一个奇怪的要求,即在我现有的应用程序中我有 Text2Speech 并且为此,我使用了 AVSpeechSynthesizer 来语音文本,但现在要求改变了,现在我需要将 HTML 文件数据转换为
我使用 Google Speech API 通过 Python 识别 .OGG 文件音频中的越南语语音。但它不会返回任何结果。 最佳答案 至少在英文版的Google Speech API中,需要使用F
我想从手机录制音频,然后将其发送到谷歌语音非流媒体 API。我可以使用 Capture.captureAudio() 进行录音,但是我不知道音频编码和采样率是什么,因为它们是必需的 for the a
我使用谷歌云语音到文本 API 将音频转换为文本。 对于 .raw文件它工作正常 但是对于 .wav文件它给了我类似的错误: Google::Gax::RetryError Exception: Ga
.NET 中有两个类似的用于语音识别的命名空间和程序集。我试图了解其中的差异以及何时适合使用其中之一。 程序集 System.Speech(在 System.Speech.dll 中)有 System
通过流式 API (Performing Streaming Speech Recognition on an Audio Stream) 使用 Google Cloud Speech API, 我们
我是一名优秀的程序员,十分优秀!