我正在考虑制作一个音乐理论实验室应用程序,您可以在其中看到音乐理论概念之间的图形关系。我希望能够在线提供此功能,因此我想到了 Flash 和 Silverlight。

但我想根据用户输入动态生成音调和和弦等。据我所知,这是 Flash Player 中一个非常不发达的领域。所以我的问题是 Flash 和 Silverlight 播放器上动态音频生成功能的当前状态如何?

有帮助吗?

解决方案 4

因此,在 Silverlight 和 Flash 中,Flash 在动态音频生成功能上击败了 Silverlight(考虑到 Flash 中的基本音频支持程度,这让我感到惊讶)。看来Silverlight根本无法生成动态音频,而Flash从播放器版本10开始才正式可以这样做。

我在这两个平台上找不到关于动态音频未来的信息很少,但目前 Flash 的讨论最为活跃。

其他提示

从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();

你可以尝试一下 AS3 中的综合工具包 这是我从 C++ 移植的:)

它不同于 驻波波普锻造, ,AS3 中的 STK 提供了现实生活中的乐器(如长笛和单簧管)供您使用,而前两种乐器则没有。

有办法做到这一点,涉及黑客公平一点。我不记得确切机制,但你可以看看(或使用)现有的流媒体库,例如StandingWave: http://code.google.com/p/standingwave/ 或在东西Popforge: http://code.google.com/p/popforge/

它可以给希望比我可以在这里了解更多信息。 :)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top