2013-02-07 42 views
9

這是問題,有沒有辦法爲網頁上的音頻選擇輸出設備?

我正在建設的webapp有音頻通知和視頻會議選項,所以用戶通常會有揚聲器和耳機連接到PC,我的客戶希望音頻通知將在主揚聲器中播放,而視頻會議可以使用耳機完成。

現在我正在使用所有的html5音頻和webrtc視頻會議,我找不到任何有關如何做到這一點的信息。可以用閃光但不能找到這個。

在此先感謝

+4

瀏覽器不知道音頻設備。它們被控制在操作系統級別。 –

+0

但是,如果他們讓你這樣會很好。我使用多個聲音輸出,並希望能夠在不使用瀏覽器中的醜陋插件的情況下對其進行一些控制。 – cambraca

+2

您可能需要檢查[Web Audio API](https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html)。我不知道你是否可以改變音頻上下文的目的地,但這可能是一條出路。 – jpatiaga

回答

7

此空間中的解決方案正在通過使用WebRTC。你可以在https://webrtc.github.io/samples/src/content/devices/input-output/

看到一個工作解決方案的樣本,但是現在瀏覽器對此的支持是有限的。

+0

已經有一個應用程序來做到這一點。請參閱https://chrome.google.com/webstore/detail/audiopick/gfhcppdamigjkficnjnhmnljljhagaha – Joniale

0

其實聲音輸出只在Oslevel上...您可能需要閱讀chrome.audio API,它仍處於實驗級別...... 「chrome.audio API提供了允許用戶獲取有關「

我thnik這將有助於,如果它是可用的所有操作系統,所以你可以重定向聲音使用這個API ... 作爲例子我可以列出這個API的一些方法:

getInfo − chrome.audio.getInfo(function callback) 

其中retu RN的所有音頻輸出和輸入設備

setActiveDevices − chrome.audio.setActiveDevices(array of string ids, function callback) 

它設置有源器件由指定的設備| IDS |

問題是Chrome.audio API僅適用於Chrome OS及聲音信號的輸出被其他操作系統控制的......這是它的兩條平行線..

1

只要做到這一點在JavaScript代碼。

audioElement.setSinkId(deviceId); 
0

現在有一個HTML5音頻設備重定向器Chrome擴展名爲AudioPick。該網站是在這裏:https://rain-fighters.github.io/AudioPick/

這是在GNU公共許可證的開源,用Github repo

正如主頁上顯示的那樣,存在一些限制(沒有Flash來源,並且也找不到某些類型的HTML5來源)。

相關問題