AudioElement与AudioElement一起使用,而audioElement使用不同的输出设备

AudioElement与AudioElement一起使用,而audioElement使用不同的输出设备

问题描述:

我有一个用例,用于在选择不同的输出设备时可视化单个音频文件的音频输出级别。我采用AudioEtext和audioElement的方法,但是我意识到我不能简单地在audioElement中设置不同的sinkIds,而与AudioContext相关联。我试过的代码如下。AudioElement与AudioElement一起使用,而audioElement使用不同的输出设备

` 
var audioContext = this.audioContext = new $window.AudioContext(); 
var source = this.source = audioContext.createMediaElementSource(audioElement); 
var analyser = this.analyser = audioContext.createAnalyser(); 
var javascriptNode = this.javascriptNode = audioContext.createScriptProcessor(1024, 1, 1); 
analyser.fftSize = audioContextModelConstants.FFT_SIZE; 
analyser.smoothingTimeConstant = audioContextModelConstants.SMOOTHING_TIME; 

source.connect(analyser); 
var gainNode = audioContext.createGain(); 
source.connect(gainNode); 
gainNode.connect(audioContext.destination);` 

你目前无法达到你想要的。一旦音频元素连接到音频上下文,所有音频都将通过上下文进行路由。并且音频上下文不支持此时选择音频输出设备。