2015-06-29 133 views
2

是否有可能檢查攝像頭和麥克風是否被其他PC應用程序(如Skype)使用?WebRTC檢查攝像頭和麥克風是否在Chrome上使用

問題是,我能夠獲取流對象並啓動兩臺計算機之間的連接,但沒有視頻也沒有聲音,因爲設備正在被Skype使用。我需要的是一種方法來檢測設備是否忙碌,以告訴用戶關閉正在使用相機和麥克風的應用程序

我知道有可能檢查PC上是否有任何設備存在MediaStreamTrack.getSources(),但它不提供有關設備狀態的任何信息。

回答

2

testrtc項目有一個試驗,結果從麥克風here如果返回的音軌是無聲的,可能是在確定有用的,類似video test檢測冷凍或黑幀檢測沉默。

+0

當視頻測試失敗時我設法檢測到,但是即使在Skype通話期間,麥克風測試總是成功的 – foobars

+0

大家好!顯然,如果多個應用程序正在使用它,話筒不會忙碌。 – foobars

1

沒有直接的方法,但是getUserMedia應該在檢查設備是否存在時拋出錯誤和/或返回的音頻/視頻軌道比您期望的要少。

可以從MediaStreamTrack.getSources或(最好)符合規範的navigator.mediaDevices.enumerateDevices檢測到設備。

+0

您的解決方案僅檢測設備是否被禁用,權限未被授予或沒有設備存在。我需要的是一種檢測設備是否忙碌的方法 – foobars

相關問題