2015-11-05 133 views
2

說明

規格:Chrome版本44,45,46雙贏,Mac和Linux。的WebRTC Chrome的麥克風不工作

操作製成:

  1. 第一源:攝像頭和麥克風經由getUserMedia授予
  2. 秒源:麥克風僅經由getUserMedia授予
  3. 兩個源存儲在JS對象
  4. 音量電平使用WebAudio進行檢查(獲得峯值5秒以上)3)WebRTC調用
  5. 在第一個源內建立

症狀:

  1. 音量電平被檢測爲0
  2. 中的WebRTC呼叫一個用戶
  3. 沒有聽到的Chrome用戶

預期的行爲:

  1. 音量電平在檢測到的WebRTC高於0
  2. 調用兩個用戶聽到對方01​​

嚴重性:經常,但不總是這樣。似乎沒有被綁定到特定的用戶,它發生在每一天與任何用戶。

(!)可以有時通過徹底重新啓動Chrome臨時修復。

有時是暫時固定在Mac(直到重新啓動)(!):

  1. 轉到Mac應用程序>工具>終端
  2. 複製並粘貼此命令,然後按Enter鍵:須藤killall VDCAssistant
  3. 鍵入您的計算機的密碼,然後按Enter
  4. 重新啓動Chrome,

(!)即使只有一個源請求發生。

幫助

這似乎是一個巨大的問題在很久以前給谷歌,但還是沒有解決。有沒有人遇到過它?有沒有什麼方法可以解決這個問題在JavaScript或任何其他?

編輯1

也正是在https://apprtc.appspot.com/和任何其他的WebRTC網站重複性。

編輯2

好像它的WebRTC錯誤:

+0

您是否嘗試過沒有webaudio?您仍然可以使用音頻/視頻元素控制播放音量。哪個是默認輸入音頻設備? –

+0

我沒有嘗試沒有webaudio。由於我無法訪問客戶的計算機,因此很難說哪一個是默認設置。通常它是「內置的」。我可以控制播放,但是我可以像這樣控制麥克風輸出音量嗎? – igorpavlov

+0

在Mac和Windows中都可以輕鬆找出哪個是默認的。如果沒有webaudio,您無法控制麥克風電平,而且還有更多的收益。我個人認爲從UX的角度來看,遠程方應該能夠自己控制音量水平。 –

回答

1

這裏是一個腳本,我在我的.profile,這將解決這個問題:

alias fixcam="sudo kill -9 `pgrep VDCAssistant`; sudo killall coreaudiod" 

然後我只從終端運行fixcam。如果您將上述命令添加到.profile,則需要打開新的終端窗口或運行source ~/.profile以重新加載配置。

它看起來像bug已被隔離到coreaudiod進入一個壞的狀態。我還沒有測試過只重新啓動coreaudiod,但它可能也會起作用。

+0

vdcassistant是爲「我的相機不工作了」案例 –

+0

@PhilippHancke雖然這是相機,我也有它修復麥克風(主要是在Skype沒有正確釋放控制) –