今天打算开始翻译《The DirectX Software Development Kit》June 2008版的其中一个部分也就是如标题所示的“Capturing Waveforms”。
翻译本部分的目的:
1.为自己接下来的“directx编程:录音”这块打好基础;
2.网上搜了很久,没有找到比较好用的用来讲解Directx声音采集录制方面的资料,当然如果你找到,希望能拿出来分享哦,嘿嘿;
3.锻练下自已的英语;
声明:该系列文章由stg609翻译,由于本人水平有限,翻译不当之处欢迎大家指正。转载请注明作者与出处。
原版可以参考:http://msdn.microsoft.com/en-us/library/ms804985.aspx (2005 SDK)
标题:波形捕捉
“DirectSound” 做为另一种诸如“waveInOpen方法”的Windows多媒体操作,可以被用来捕捉声音。它除了支持AEC(回声消除)功能外,在Windows多媒体操作性能上没有什么优势。
DirectSound捕捉设备对象(对应 IDirectSoundCapture8 接口),用来查询声音捕捉设备的性能并且建立缓冲区用来存储来自输入源的声音数据。这些数据可以按照PCM脉码调制方式捕捉或者其它压缩方式捕捉。
DirectSound捕捉缓冲对象(对应 IDirectSoundCaptureBuffer8 接口),是一个用来接收从输入设备获取数据的缓冲区。就如同播放缓冲区,这个缓冲区被认为是循环的:当输入达到缓冲区末尾,自动从缓冲区起始处重新开始。
IDirectSoundCaptureBuffer8 接口的一些方法允许你获取缓冲区的属性,开始和停止声音捕捉,锁定内存的某一区域以便你可以安全的获取数据从而将其保存到一个文件中或者以全双工的方式进行播放操作。在操作系统上它们支持一些捕捉特效,这个接口还提供了一些可以获取DMOs(DirectX Media Objects)和确定特效状态的方法。
本文转自stg609博客园博客,原文链接:http://www.cnblogs.com/stg609/archive/2008/10/19/1313809.html,如需转载请自行联系原作者