网络音频卷积在firefox中不起作用
Webaudio convolution not working in firefox
我目前正在通过示例学习webaudioapi,偶然发现了一支小笔:
http://codepen.io/andremichelle/pen/NPPEPY
我注意到的是,直到我将滑块向左转动,音频才会在firefox中播放。这意味着卷积不起作用,因为提供的格式是wav?在规范中,它表示支持。不过我尝试了一些东西,我没有提供wav文件,而是尝试了mp3,它一直有效到。然而,这并非没有副作用,因为这一次,我一移动滑块就没有任何声音。
那么firefox到底发生了什么?
奖励积分:我将在两天内创建一个奖励,因此任何能够发现问题的人都将获得额外的250分:)
这里有一些代码:
var context = new AudioContext();
var audioElement = document.getElementById('player');
var carrier = context.createMediaElementSource(audioElement);
var convolver = context.createConvolver();
var dry = context.createGain();
var wet = context.createGain();
carrier.connect( convolver );
convolver.connect(wet);
carrier.connect(dry);
dry.connect( context.destination );
wet.connect( context.destination );
var mix = function( value ) {
dry.gain.value = ( 1.0 - value );
wet.gain.value = value;
}
var loadImpulse = function ( fileName )
{
var url = "http://files.andre-michelle.com/impulse/" + fileName;
var request = new XMLHttpRequest();
request.open( "GET", url, true );
request.responseType = "arraybuffer";
request.onload = function ()
{
context.decodeAudioData( request.response, function ( buffer ) {
convolver.buffer = buffer;
}, function ( e ) { console.log( e ); } );
};request.onerror = function ( e )
{
console.log( e );
};
request.send();
};
loadImpulse(document.getElementById('impulse').value);
mix(1.0);
function changeValue(string,type)
{
var value = parseFloat(string) / 100.0;
switch(type)
{
case 'mix':
mix(value);
break;
}
}
使用firebug控制台,我看到firefox给出错误
Blocked loading mixed active content "http://files.andre-michelle.com/impulse/factory.hall.wav"
所以脉冲响应实际上并没有加载。因此,干燥和潮湿的声音是一样的。
相关文章:
- 为什么javascript:void(0)在Firefox中不起作用
- jpm的默认Firefox路径没有'不起作用
- 设置 CSS 背景在 Firefox 中不起作用
- document.getElementById 在 Firefox 中不起作用
- firefox中的CSS动画不起作用
- event.stopPropagation()在firefox javascript中不起作用
- 复选框.onClick在firefox中不起作用
- window.close();在Chrome和Firefox中不起作用
- JQuery在Chrome中不起作用,但Firefox很好
- 选择“行在 Chrome 和 Firefox 中不起作用(生成的代码)”
- Javascript 按键事件在 Firefox 中不起作用
- window.dispatchEvent 在 Firefox、Safari 或 IE 中不起作用
- 更改 Angular 2 中选择的事件在 Firefox 和 Edge 中不起作用
- jQuery SlideToggle() 在 FireFox 中不起作用,在 Chrome 中工作
- 动态关键帧插入在 IE 或 Firefox 上不起作用
- 使用 nameProp 的 JQuery 图像滚动更新在 Firefox 和 Chrome 中不起作用
- Javascript键码在Firefox中不起作用,但在chrome中运行良好
- HTML5<视频>元素在Firefox、Opera和Safari中不起作用
- 输入类型的图像在Internet Explorer中不起作用,但在Chrome和Firefox中起作用
- Ajax 提交表单不起作用 Firefox