DirectX Audio做的不仅仅只是简单地对声音的回放。它提供了一个完整的系统,能够利用硬件加速的功能动态地操纵控制音轨和声道(soundtrack)。
如果你想在你的程序中使用DirectMusic和DirectSound,你就能够获得以下功能:
l 读入且播放例如MIDI, WAVE, 以及DirectMusic Producer run time等格式的声音文件。
l 同时对多个声音资源进行混音播放。
l 对播放的声轨进行高精度时间控制。
l 可以动态地变更播放节拍与节奏,甚至即时地动态控制一些MIDI事件。
l 使用DLS合成器(DAudio自带的波表合成器),你的程序就可以确保在不同的计算机上听到相同的MIDI声音。你的 程序能够播放不受类别限制,各试各样乐器的声音,使用DAudio,你甚至还能够创造出独一无二的乐器声音类别并将它发布。
l 把声音做3D定位,创造出3D的环境声响。
l 可以非常容易地实现例如变调,回响,以及别的声音特效。
l 能使用数量超过16个的MIDI音轨。DirectAudio突破了从前只能使用16个MIDI音轨的限制,它把同时回放大数量的音轨变成为了可能,而这个数量仅仅只是受到了你的声音硬件合成器能力的限制。
l 播放位于不同的Audiopaths(可以通过各种方式管理声音数据)上播放声音段(segments),效果就可以独各实现在每一段声音里。
l 实现在不同的端口(port)之间捕捉MIDI数据及流("thru")。
l 从话筒或者别的输入设备中捕捉声音数据。
如果使用DirectMusic Producer或类似程序中的源文件,你还能够做到:
l 在声音的回放期间能够做更多的控制,例如动态选择不同的音效变化器(variations)或切换不同的和旋级数。
l 精确地定时重放音乐。
l 利用变化器(variations)播放声音(wave)
l Audiopaths利用Map performance channels可以使相同的声音段(segment)在channel的不同部分产生完全不同的播放效果。
l 动态地创造出全新的音乐片段,这不需要专门算法库而仅仅需要你的作曲能力。
l 动态地将存在的音乐片段进行组合过渡。
l 在声音回放时端,程序可以获得存在于特殊节拍点的各类声音特效的信息。
这些功能适用于常常只使用主声音流(mainstream)的程序。如果程序只要实现一些基本简单的功能,开发者将DirectX
Audio设计得非常方便使用,它对于一些想入门的程序员显得非常友好。DirectX
Audio也是可扩展的。好的程式可以利用虚函数(virtual)继承设计出新的类,例如:
l 支持新的声音格式文件。
l 音轨可以包含各类数据。
l 处理信息的工具 - 比方说,可以截取记录实现变换,或者将要显示的歌词置入声音片段(segment)文件。
l 自定义的音序器(sequencer)。
l 自定义的合成器(synthesizer)。
l 效果过滤器。(Effects filters)。
DirectX Audio的每一个部件都是DirectMusic
Producer,我们可以采集DLS,和旋图(chordmaps),风格(styles),以及片段(segments) --
让你能够充分地利用DirectMusic强大的功能与优势。DirectMusic Producer
甚至也能够实现创建可播放的包含多节拍声音的片段(segments)。这里所指的声音是可以在播放时段(run
time)以压缩格式存在与播放流中或者内存中。
DirectX Audio 被 Microsoft Windows95, Microsoft Windows98, Microsoft
Windows2000所支持。只是对硬件波表合成器的支持只有 Windows 2000 和 Windows 98 Second Edition。
没有评论:
发表评论