Создание тона с использованием чистого javascript с Chromium WebAudio API
Как я могу создать тон (чистая синусоидальная волна, например), используя только javascript и API WebAudio Chromium?
Я хотел бы выполнить что-то вроде эквивалент Firefox.
демонстрации Chromium WebAudio здесь кажется, все используют предварительно записанные <audio>
элементы.
спасибо!
3 ответов
вероятно, это не лучший способ, но я использовал dsp.js для генерации различных типов синусоидов, а затем передал их веб-аудио API в этой демонстрации:http://www.htmlfivewow.com/demos/waveform-generator/index.html
веб-аудио API имеет то, что известно как интерфейс осциллятора для генерации тонов, о которых вы говорите. Они довольно прямолинейны, чтобы идти...
var context = new webkitAudioContext(),
//Call function on context
oscillator = context.createOscillator(); // Oscillator defaults to sine wave
oscillator.connect(context.destination);
oscillator.start();
вы можете изменить тип волны делать:
oscillator.type = 1; // Change to square wave.
или же:
oscillator.type = oscillator.SQUARE;
Я написал статьи об этой самой теме более подробно, так что это может быть вам полезно!
для генерации звука я думаю, что эта ссылка будет весьма полезна. http://0xfe.blogspot.ca/2011/08/generating-tones-with-web-audio-api.html