当前位置:  开发笔记 > 前端 > 正文

如何使用Web Audio Api选择目标输出设备

如何解决《如何使用WebAudioApi选择目标输出设备》经验,为你挑选了1个好方法。

我一直在使用网络音频api,并创建了一个上下文,并使用数据填充了源缓冲区。它在默认输出设备上可以正常播放,但是我不知道如何选择目的地。在旧的w3规范中,您能够将正确的deviceId传递给音频上下文构造函数,但是我现在不知道如何在不使用media元素的情况下进行操作。有什么建议么?

source = context.createBufferSource()
source.loop = true;
source.buffer = globalAudioBuffer;
source.connect(context.destination);
context.resume();
source.start(0);

Asher.. 6

不幸的是,尚未实现设置Webaudio图表的目标音频设备,并且此API尚未最终确定。

您现在可以做的就是将网络音频图连接到HTML元素,并设置该元素的下沉符号(当前仅适用于Chrome)

这是一个简单的示例:

var ac = new AudioContext();
var audio = new Audio();
var o = ac.createOscillator();
o.start();
var dest = ac.createMediaStreamDestination();
o.connect(dest);
audio.src = URL.createObjectURL(dest.stream);
audio.play();

现在,您的振荡器将播放音频元素,并且您现在可以audio.setSinkId()使用连接的输出设备的deviceId进行调用。



1> Asher..:

不幸的是,尚未实现设置Webaudio图表的目标音频设备,并且此API尚未最终确定。

您现在可以做的就是将网络音频图连接到HTML元素,并设置该元素的下沉符号(当前仅适用于Chrome)

这是一个简单的示例:

var ac = new AudioContext();
var audio = new Audio();
var o = ac.createOscillator();
o.start();
var dest = ac.createMediaStreamDestination();
o.connect(dest);
audio.src = URL.createObjectURL(dest.stream);
audio.play();

现在,您的振荡器将播放音频元素,并且您现在可以audio.setSinkId()使用连接的输出设备的deviceId进行调用。

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有