Создание аудио с использованием Javascript в <audio> - PullRequest
7 голосов
/ 13 августа 2010

Я не могу найти что-либо через поиск в сети, но есть ли планы по созданию API для генерации звуковых блоков, которые будут воспроизводиться в теге HTML5 <audio>?

РЕДАКТИРОВАТЬ: это пример:

PSEUDOCODE::
var music = new Song([Array of hertz levels or notes]);
var box = document.createElement('audio');
document.body.appendChild(box);
box.src = music.convert();
box.play();

Ответы [ 2 ]

5 голосов
/ 13 августа 2010

Теоретически, вы можете сделать это сейчас - установите атрибут источника аудиоэлемента в URI данных , который вы создаете на лету в своем JavaScript.Я сделал это с помощью embed элементов и MIDI-файлов, которые работают на машинах с установленным QuickTime или каким-либо другим медиа-помощником.

Конечно, подвох состоит в том, что генерация аудиоданных требует немного больших вычислительных ресурсови он занимает больше места (что может противоречить предельному размеру URL-адреса данных в определенных контекстах ... IE и Mobile Safari приходят на ум).Таким образом, вы будете ограничены небольшими клипами, и вы можете быть ограничены временем запуска / остановки для тега audio.

Mozilla имеет API аудио буфера , над которым они работают, что может принести истинно программно сгенерированное аудио в браузер.В то же время, тем не менее, это либо хаки Data URI, либо что-то типа плагина, например Flash (который получил программный аудио-буфер в версии 10) или Java.

Еще одно замечание: я создал группу Google Audio JavaScript несколько месяцев назад.Там пока не много дискуссий, но я бы хотел, чтобы достаточно людей, которые интересовались музыкой / аудио / звуком в контексте браузера, зарегистрировались, чтобы мы могли достичь критической массы и начать иметьреальные разговоры по темам, как это.

3 голосов
/ 12 октября 2010

Mozilla выпустила API аудиоданных, который работает в Firefox 4 бета-версиях и ночных вечеринках Minefield:

https://wiki.mozilla.org/Audio_Data_API

http://vocamus.net/dave/?p=1148

Насколько я понимаю,Существует также аналогичный проект WebKit.

Была сформирована группа W3C Audio Incubator Group - их миссия состоит в том, чтобы "изучить возможность запуска одной или нескольких спецификаций, касающихся различных аспектов расширенных функциональных возможностей аудио, включая чтение изапись необработанных аудиоданных и синтезирование звука или речи ».

http://www.w3.org/2005/Incubator/audio/

...