Воспроизведение тестовых тонов в аудиоприложении Javascript для Интернета

Для небольшого веб-приложения, которое я делаю, мне нужно вывести синусоидальные тестовые тоны для воспроизведения звука на стороне клиента.

Дело в том, что я не могу найти способ сделать это в javascript без загрузки и зацикливания предварительно обработанных файлов WAV.

Существует ли метод вывода тестовых сигналов, соответствующий стандартам? Или я должен создать тестовые звуки самостоятельно и использовать что-то вроде этого для воспроизведения файлов. ?

(Я бы предпочел генерировать тестовые тоны в режиме реального времени, чтобы иметь возможность генерировать ряд частот за пределами ограниченной гаммы частот, доступных мне, с помощью набора образцов WAV-файлов.)


person Dany Joumaa    schedule 05.08.2011    source источник
comment
Для этого лучше использовать Java-апплет. Это нелегко сделать в Javascript, за исключением некоторых действительно хакерских методов (ajaxian.com/archives/generating-and-playing-sound-in-javascript).   -  person Brad    schedule 05.08.2011
comment
На самом деле, @Brad, это именно то, что я ищу. Схема data: URI, похоже, поддерживается во всех основных браузерах ровно настолько, чтобы оправдать то, что я делаю. Кроме того, если я реализую эту технику с помощью ‹a href=schillmania.com/projects/soundmanager2/› SoundManager 2‹/a› (который, по сути, является запасным вариантом для аудио HTML5 на основе Flash), он теоретически должен работать нормально. Если вы хотите опубликовать свой ответ в качестве предлагаемого решения этого вопроса, я могу поставить ему зеленую галочку.   -  person Dany Joumaa    schedule 05.08.2011


Ответы (1)


Это можно сделать с помощью схемы URI данных, но это немного взлома и, вероятно, не очень эффективен. Вы также должны помнить об ограничениях длины для URI данных.

См. http://ajaxian.com/archives/generating-and-playing-sound-in-javascript и http://softwareas.com/offline-sound-no-flash-no-file.

person Brad    schedule 05.08.2011