当前位置: 首页 > 知识库问答 >
问题:

ServiceUnavailable:在尝试识别音频时,503未能连接到所有地址

唐博文
2023-03-14

我试图运行以下代码来识别音频文件。该代码只是从不同的官方示例汇编而来。但它不起作用。

import os
from google.cloud import speech
from google.cloud.speech import enums
from google.cloud.speech import types
from google.oauth2 import service_account
import io

def transcribe_file(speech_file):
    client = speech.SpeechClient(credentials=credentials)

    with io.open(speech_file, 'rb') as audio_file:
        content = audio_file.read()

    audio = types.RecognitionAudio(content=content)
    config = types.RecognitionConfig(
        encoding=enums.RecognitionConfig.AudioEncoding.LINEAR16,
        sample_rate_hertz=16000,
        language_code='ru-RU')

    response = client.long_running_recognize(config, audio)
    for result in response.results:
        print(u'Transcript: {}'.format(result.alternatives[0].transcript))

audio_folder_path = 'data_wav'
all_audios = os.listdir(audio_folder_path)

file_name = os.path.join(audio_folder_path, all_audios[0])

credentials = service_account.Credentials.from_service_account_file("google_aut.json")

transcribe_file(file_name)

我使用Anaconda 4.7.12作为Windows 10下的Python 3.7、google cloud speech v1.2.0和google auth v1.6.3

我每次得到的错误是

_会合追踪(最近一次调用上次)~\AppData\Local\Continuum\anaconda3\lib\site packages\google\api\u core\grpc\u helpers。py出错\u重新映射\u可调用(*args,**kwargs)56尝试:---

~\AppData\本地\连续\anaconda3\lib\site包\grpc_channel.py调用(自我,请求,超时,元数据,凭据,wait_for_ready,压缩)564wait_for_ready,压缩)-

~\AppData\本地\连续\anaconda3\lib\site包\grpc_channel.py在_end_unary_response_blocking(状态,调用,with_call,截止日期)466其他:-

_Rendezvous:

上述例外是以下例外的直接原因:

中的ServiceUnavailable Traceback(最近一次通话)----

在transcribe_文件(speech_文件)20 21#[START speech_python_migration_sync_response]---

~\AppData\Local\Continuum\anaconda3\lib\site packages\google\cloud\speech\u v1\gapic\speech\u客户端。py in long_running_recognize(self,config,audio,retry,timeout,metadata)339)340 operation=self_内部api调用[“长时间运行”](--

~\AppData\Local\Continuum\anaconda3\lib\site packages\google\api\u core\gapic\u v1\method。py in call(self,*args,**kwargs)141 kwargs[“元数据”]=元数据142--

~\AppData\Local\Continuum\anaconda3\lib\site packages\google\api\u core\retry。py in retry_wrapped_func(*args,**kwargs)271 sleep_生成器,272 self_截止日期--

####################################################################################################################################

~\AppData\Local\Continuum\anaconda3\lib\site packages\google\api\u core\timeout。py in func_,带有_timeout(*args,**kwargs)212''的包装函数,用于添加超时“213 kwargs[“timeout”]=下一个(超时)--

~\AppData\Local\Continuum\anaconda3\lib\site packages\google\api\u core\grpc\u helpers。py错误_重新映射_可调用(*args,**kwargs)57返回可调用(*args,**kwargs)58,grpc除外。RpcError作为exc:---

~\AppData\Local\Continuum\anaconda3\lib\site packages\six。py在raise_from中(值,from_值)

ServiceUnavailable:503无法连接到所有地址

我该怎么修?

共有1个答案

万坚壁
2023-03-14

这可能是由于凭据失败。让我们尝试几件事:

>

  • 确保你的服务号是正确的,你应该有这样的东西:

    来自谷歌。oauth2导入服务_账户

    凭证=服务帐户。资格证书来自_service _account _文件('service _account _key.json'))

    讲话。SpeechClient(凭证=凭证)

    或者

    语音=语音v1。SpeechClient(凭证=凭证)

    使用范围:

    凭证=服务帐户。资格证书来自_服务_账户_文件(凭证_json,作用域=['https://www.googleapis.com/auth/cloud-platform'])

    更多信息请点击这里。

    在这个线程中,通过使用会话客户端对象的单个实例来解决多个请求。

    这可能是达斯汀所说的网络问题。更多信息这里503服务不可用

    请让我们知道,如果你设法解决这个错误。

  •  类似资料:
    • 问题内容: 我有一把吉他,我需要我的电脑能够分辨出正在演奏的音符,并识别出音调。可以在python中做到吗,也可以在pygame中做到吗?能够在pygame中做到这一点将非常有帮助。 问题答案: 要识别音频信号的频率,可以使用FFT(快速傅立叶变换)算法。据我所知,PyGame无法记录音频,也不支持FFT转换。 首先,您需要从声卡捕获原始采样数据。这种数据称为PCM(脉冲编码调制)。在Python

    • 尝试制作一个简单的音乐机器人,只播放一个链接,但它不连接到语音通道,因此不会出现任何错误,所以我只能放入所有代码。这是我的主要内容。js公司 这是我的音乐机器人命令,我认为它是正确的,因为我已经在这里请求了一些人的帮助。

    • 我正在制作一个使用语音识别的应用程序。它与Android KitKat 4.4.4(API 19)完美配合。但是当我在Nouget 7.0(API 24)或Lollipop语音识别对话框上尝试时,会显示网络未连接。 我有internet连接,并且在清单中添加了权限。可能是什么问题? 这是我的清单: 根据要求,我的主要活动:

    • 我正在尝试使用连接两个剪辑,但输出视频中没有音频。我可以在视频连接时看到临时音频文件。 终端提供此输出, 我也尝试过这个答案,但它不能解决问题。你知道为什么会这样吗?

    • 我想开发一个模块,它将使用Android中的语音到文本支持。我发现了许多与RecogenerIntent等相关的文档和演示。但我发现所有这些演示都只是在10秒左右的时间里播放声音。但我想让我的演示运行5-10分钟以上。如果不是离线运行,我不会有任何问题,因为我的应用程序总是在线运行。 我也看过Android上的Pocketsphinx,但效果不太好。此外,它只支持Android Studio,而不

    • 小能sdk有语音识别功能,即可以将语音转为文字发送出去,SDK的语音识别功能使用的是科大讯飞的包,因此针对具体情况提供以下方案,请根据自己的需求选择方案: 一、不需要该功能,SDK集成不需要做任何的操作,可以在PC端客服端设置下该功能的开关:设置—>访客客服设置—>访客聊窗—>SDK—>访客端功能进行开关控制,如果您不需要该功能可以不勾选该选项。 二、需要该功能,又分为以下具体情况: (1)如果您