簡體   English   中英

Stream 音頻從視頻會議到 azure 語音翻譯使用 python

[英]Stream audio from videoconference to azure speech translate using python

I am using a Mac and am trying to capture Zoom audio output as input for Azure speech-to-translation model using python and Blackhole.

我已將縮放設置為在此處輸入圖像描述

並將 Azure translation_recognizer object 設置為“多輸出設備”

在此處輸入圖像描述

但是,當我將 AutoConfig 的 device_name 設置為虛擬設備時,我遇到了一個我不理解的運行時錯誤,並且似乎無法在任何地方找到建議。

堆棧跟蹤:

/usr/local/bin/python3.9 /Users/sethhammock/Scripts/translate_speech_continuous.py 
SESSION STARTED: SessionEventArgs(session_id=116958757375422f9b8f5c6a31aed3c9)
Traceback (most recent call last):
  File "/Users/sethhammock/Scripts/translate_speech_continuous.py", line 48, in <module>
    translation_recognizer.start_continuous_recognition()
  File "/usr/local/lib/python3.9/site-packages/azure/cognitiveservices/speech/speech.py", line 664, in start_continuous_recognition
    return self._impl.start_continuous_recognition_async().get()
  File "/usr/local/lib/python3.9/site-packages/azure/cognitiveservices/speech/speech_py_impl.py", line 1978, in get
    return _speech_py_impl.VoidFuture_get(self)
RuntimeError: Exception with an error code: 0x15 (SPXERR_MIC_ERROR)
[CALL STACK BEGIN]

3   libMicrosoft.CognitiveServices.Spee 0x00000001093c464e GetModuleObject + 716126
4   libMicrosoft.CognitiveServices.Spee 0x00000001094322fe GetModuleObject + 1165838
5   libMicrosoft.CognitiveServices.Spee 0x0000000109442c41 GetModuleObject + 1233745
6   libMicrosoft.CognitiveServices.Spee 0x000000010943cabc GetModuleObject + 1208780
7   libMicrosoft.CognitiveServices.Spee 0x000000010943c3c2 GetModuleObject + 1206994
8   libMicrosoft.CognitiveServices.Spee 0x0000000109439941 GetModuleObject + 1196113
9   libMicrosoft.CognitiveServices.Spee 0x0000000109546d1a _ZN13FileBlobWrite11WriteToFileEPviPKc + 671994
10  libMicrosoft.CognitiveServices.Spee 0x0000000109543e52 _ZN13FileBlobWrite11WriteToFileEPviPKc + 660018
11  libMicrosoft.CognitiveServices.Spee 0x00000001094b2f5f _ZN13FileBlobWrite11WriteToFileEPviPKc + 66367
12  libMicrosoft.CognitiveServices.Spee 0x00000001094b08c2 _ZN13FileBlobWrite11WriteToFileEPviPKc + 56482
13  libMicrosoft.CognitiveServices.Spee 0x00000001094cefb6 _ZN13FileBlobWrite11WriteToFileEPviPKc + 181142
14  libMicrosoft.CognitiveServices.Spee 0x0000000109329fc6 GetModuleObject + 83670
15  libMicrosoft.CognitiveServices.Spee 0x0000000109329f59 GetModuleObject + 83561
16  libMicrosoft.CognitiveServices.Spee 0x000000010932be2b GetModuleObject + 91451
17  libMicrosoft.CognitiveServices.Spee 0x000000010932a113 GetModuleObject + 84003
18  libMicrosoft.CognitiveServices.Spee 0x000000010932d4f8 GetModuleObject + 97288
19  libsystem_pthread.dylib             0x00007ff8035464e1 _pthread_start + 125
[CALL STACK END]



Process finished with exit code 1

我認為運行時錯誤是由於 16Hz 的采樣率造成的,但使用 Blackhole,使用簡單的 GUI 很容易配置。

我發現 AudioConfig 需要攜帶 ALSA 樣式的 device_name=device_name,但是,我認為它不會在 Mac OS 上運行,因為嘗試在 cmd 行上安裝 alsa-lib 說,“......這個需要Linux”。

ALSA 風格的設備名稱類似於 hw:X,Y 如果我理解正確,其中 X 是設備,Y 是卡號。 ALSA 顯然適用於 Debian,但不適用於 BSD,這是 Mac OS 的基礎,所以我是在浪費時間嘗試這個嗎?

任何人都可以幫助我了解如何設置speechsdk.audio.AudioConfig(device_name="Blackhole 16ch") or speechsdk.audio.AudioConfig(device_name="hw:0,2")或者我是否缺少有關設備的內容我想要實現的命名約定?

我嘗試使用文件讀取,效果很好。 它只是讀取我的音頻文件並返回翻譯結果。

因此,由於沒有 ALSA 樣式命名約定,命名設備無法正常工作,是否會將音頻 stream 寫入文件,並讓 Azure 在工作中讀取它?

任何想法都非常感謝!

我使用這些工具來檢查https://github.com/jimbobbennett/AudioIds

我編譯代碼以獲取我的 blackhoide 設備名稱

2022-09-26 14:39:03.339591+0800 AudioIds[5533:2695040] {
    deviceName = "BlackHole 16ch";
    deviceUID = "BlackHole16ch_UID";
}

我和你有同樣的申請。 我使用該設置,它可以與我一起轉錄。

audio_config = speechsdk.audio.AudioConfig(device_name="BlackHole16ch_UID")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM