Dynamic Audio Generation Actionscript 3 - PullRequest
       22

Dynamic Audio Generation Actionscript 3

8 голосов
/ 20 сентября 2009

Я изучаю создание приложения для теории музыки, где вы можете увидеть графическую связь между понятиями теории музыки. Мне бы хотелось, чтобы это было доступно в Интернете, поэтому на ум приходят Flash и Silverlight.

Но я бы хотел динамически генерировать тоны, аккорды и т. Д. Из пользовательского ввода. Я знаю, что это очень слаборазвитая область в Flash Player. Итак, мой вопрос: каково текущее состояние функций динамической генерации звука на проигрывателях Flash и Silverlight?

Ответы [ 4 ]

3 голосов
/ 20 сентября 2009

Начиная с Flash Player 10 и выше, вам не нужно делать какие-либо хакерские вещи. Существует API для динамического генерирования звука.

Это сообщение в блоге содержит краткое введение . Его код читает сэмплы из mp3, но вы можете писать сэмплы так, как хотите.

Как всегда документы также содержат много информации, наряду с этим примером кода, который должен довольно быстро помочь вам.

var mySound:Sound = new Sound();
function sineWaveGenerator(event:SampleDataEvent):void {
    for ( var c:int=0; c<8192; c++ ) {
        event.data.writeFloat(Math.sin((Number(c+event.position)/Math.PI/2))*0.25);
        event.data.writeFloat(Math.sin((Number(c+event.position)/Math.PI/2))*0.25);
    }
}

mySound.addEventListener(SampleDataEvent.SAMPLE_DATA,sineWaveGenerator);
mySound.play();
2 голосов
/ 20 сентября 2009

Вы можете попробовать Synthesis ToolKit в AS3 , который я портировал из C ++:)

Это отличается от стоячей волны и popforge , STK в AS3 предоставляет вам реальные инструменты, такие как флейта и кларнет, для которых вы не можете использовать первые два.

1 голос
/ 20 сентября 2009

Есть способы сделать это, которые включают немало взлома. Я не помню точную механику, но вы могли бы взглянуть (или использовать) существующие потоковые библиотеки, такие как StandingWave: http://code.google.com/p/standingwave/ или вещи в Popforge: http://code.google.com/p/popforge/

Можно надеяться, что он даст больше информации, чем я могу прямо здесь. :)

0 голосов
/ 01 октября 2009

Похоже, что из Silverlight и Flash эта Flash превосходит Silverlight по функциям генерации динамического звука (что меня удивило, если учесть, как базовая поддержка звука во Flash). Похоже, что Silverlight вообще не может генерировать динамическое аудио, а Flash может делать это только официально, начиная с версии 10 проигрывателя.

Я могу найти очень мало информации о будущем динамического звука на обеих платформах, но Flash сейчас наиболее активно обсуждается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...