有没有办法从网页中选择音频的输出设备?

时间:2013-02-07 20:40:44

标签: html5 flash web-applications audio

这是问题,

我正在构建的webapp具有音频通知和视频会议选项,因此用户通常会将扬声器和耳机连接到PC,我的客户希望音频通知将在主扬声器中播放,并且可以使用耳机完成视频会议。

现在我正在使用所有html5进行音频和webrtc进行视频会议,我找不到任何有关如何执行此操作的信息。可能是闪光灯,但也找不到。

提前致谢

4 个答案:

答案 0 :(得分:7)

通过使用WebRTC,这个领域的解决方案正在兴起。您可以在https://webrtc.github.io/samples/src/content/devices/input-output/

查看工作解决方案的示例

目前,浏览器对此的支持有限。

答案 1 :(得分:1)

只需在您的javascript代码中执行此操作。

 audioElement.setSinkId(deviceId);

答案 2 :(得分:0)

实际上声音输出仅在Oslevel上...您可能必须阅读有关仍在实验级别的chrome.audio API ... “提供chrome.audio API是为了让用户能够获取有关系统附带的音频设备的信息并进行控制。此API目前仅适用于ChromeOS。”

如果它适用于所有操作系统,那么这将有所帮助,因此您可以使用此API重定向声音... 作为此API的一些方法的例子,我可以列出:

getInfo − chrome.audio.getInfo(function callback) 

返回所有音频输出和输入设备

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

将活动设备设置为| ids |

指定的设备

问题是Chrome.audio API仅适用于ChromeOS,声音输出由其他操作系统控制......这就是两条平行线..

答案 3 :(得分:0)

现在有一个名为 AudioPick 的HTML5音频设备重定向器Chrome扩展程序。该网站位于:https://rain-fighters.github.io/AudioPick/

这是GNU公共许可证下的OpenSource,Github repo

有一些限制(没有Flash源,也找不到某些类型的HTML5源),如主页上所示。