У меня возникли проблемы с тем, чтобы тэг html5 играл хорошо с помощью API Web Audio API .createMediaElementSource(). См. Ниже jsFiddle/code. Любая идея, что здесь не так, будет очень признательна.Web Audio API и <audio> тег
Я прочитал here, что это проблема в FireFox, но a) Я работаю в Chrome и b) он не работает, если .mp3 находится в той же папке, что и .html.
Конечная цель здесь - создать сайт, который будет фильтровать дорожки, поступающие из API SoundCloud, если у кого есть предложения.
ЯШ:
$(function(){
//create audio context
var context = new AudioContext();
//set variable pointing at the audiotag
var audio = document.getElementById('player');
//declare source that will become the media element source, create gain and filter, and connect them
var source;
var gain = context.createGain();
var filter = context.createBiquadFilter();
//routing
gain.connect(filter);
filter.connect(context.destination);
filter.frequency.value = 220;
//when the audio has sufficiently loaded, create media element source and connect it to the gain
audio.oncanplaythrough = function(){
source = context.createMediaElementSource(audio);
source.connect(gain);
};
});
HTML:
<audio id='player' src='http://develiot.com/eqsoundcloud/EttaAnything.mp3' controls></audio>
Ah - Я так и думал - однако, это не работает, даже если файл находится в том же домене (не уверен, как моделировать это в stackoverflow –
Когда вы говорите, что они находятся в одном домене, они оба в локальные файлы, загруженные URL-адресами «file: //». Локальные файлы никогда не работают с CORS. Все должно быть загружено через HTTP. – aldel
ahh - не понял, что - спасибо !!! –