我用 Python 3.6 編寫了一個程序,它使用了 IBM Watson 的 Speech to Text 庫。當(dāng)程序搜索文件夾并.wav單獨讀取每個文件時,它應(yīng)該檢查文件的頻率并以不同的方式標(biāo)記我的 IBM Watson 集成。然后,它獲取響應(yīng)并將其映射到列表。通過存根測試,主要的有問題的代碼在這里: speech_to_text.set_detailed_response(True) # Narrowband if rate < 16000: x = json.loads( json.dumps(speech_to_text.recognize(audio_file, content_type='audio/basic', timestamps=True, max_alternatives=0).get_result(), indent=2), object_hook=lambda d: namedtuple('X', d.keys())(*d.values()) ) # Broadband else: x = json.loads( json.dumps(speech_to_text.recognize(audio_file, content_type='audio/wav', timestamps=True, max_alternatives=0).get_result(), indent=2), object_hook=lambda d: namedtuple('X', d.keys())(*d.values()) )當(dāng)我向它提供超過 16 kbps 的文件時,該程序是完全可用的。但是,比這少的任何事情,我都會收到此錯誤: File "echo_cli.py", line 64, in <module> json.dumps(speech_to_text.recognize(audio_file, content_type='audio/basic', timestamps=True, max_alternatives=0).get_result(), File "C:\Python37\lib\site-packages\watson_developer_cloud\speech_to_text_v1.py", line 373, in recognize accept_json=True) File "C:\Python37\lib\site-packages\watson_developer_cloud\watson_service.py", line 479, in request info=error_info, httpResponse=response)watson_developer_cloud.watson_service.WatsonApiException: Error: This 8000hz audio input requires a narrow band model. See https://<STT_API_ENDPOINT>/v1/models for a list of available models., Code: 400 , Information: {'code_description': 'Bad Request'} , X-dp-watson-tran-id: stream01-167902601 , X-global-transaction-id: f257b1145ba417780a01fd89請注意,我使用的文件是通過網(wǎng)絡(luò)驅(qū)動器傳輸?shù)摹5?,?dāng)我將它們復(fù)制到我的本地驅(qū)動器時,我遇到了同樣的錯誤,所以我認(rèn)為這是一個無關(guān)的問題。我把這段文字包括在內(nèi),以防它敲響我不知道的任何鈴鐺。根據(jù)此文檔,我應(yīng)該能夠接受窄帶文件audio/basic,并且根據(jù)我使用的打印命令,當(dāng)我加載窄帶文件時.wav,我的程序正在執(zhí)行正確的代碼。我究竟做錯了什么?
IBM Watson Speech to Text Audio/Basic 不接受窄帶 .WAV
ibeautiful
2021-06-16 21:14:54