2
我正在开发使用Createjs和Web Audio API的HTML5画布交互式作品。尽管Chrome和Firefox使用webkitAudioContext而不使用Safari,但我仍然设法在Chrome/Firefox/Safari中使用音频。但是,由于某些原因,过滤器无法在Safari中使用,但声音仍在播放。过滤器可以在Chrome/FF中运行。Web Audio API过滤器在Safari中不起作用
我有我的过滤器设置是这样的:
var sound = new Audio();
sound.src = './sounds/sound.mp3';
sound.autoplay = false;
sound.loop = true;
soundSource = context.createMediaElementSource(sound);
var soundFilter = context.createBiquadFilter();
soundFilter.type = "lowpass";
soundFilter.frequency.value = 500;
soundSource.connect(soundFilter);
soundFilter.connect(context.destination);
难道我在不知不觉中使用过时的术语或东西吗?在线项目可以在here找到。干杯。
UPDATE:这已被WebKit团队认为是一个真正的bug,并且会被修补。 Full details here
我想你的意思是“filter.LOWPASS”,而不是“soundFilter.LOWPASS”。我知道“filter.LOWPASS”现在已被弃用,但不幸的是使用“filter.LOWPASS”在Safari中播放没有区别。我使用的音频包装在
是的,除非我错过了什么,monkeypatch是过时的项目,并不是真正的浏览器垫片。奇怪[我找到了一个过滤器的例子](http://webaudioapi.com/samples/filter/)在Safari中工作,但我不知道为什么。 – 2015-04-01 17:14:52
你是对的,要在这种情况下使用monkeypatch,你必须使用旧的常量,并让补丁使它在新的浏览器上工作。假设“这种情况”是我认为的那样,显然这不是。 – aldel 2015-04-01 19:37:37