2013年3月22日星期五

DirectX Audio的强大功能

 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。

没有评论:

发表评论