Vista 不能以單聲道錄音嗎?用 waveInOpen 以 8K 16bit 單聲道錄音,總是提示 32 錯誤呢?

QSmile 2008-08-22 02:20:48
Vista 下用 waveInOpen 以 8K 16bit 單聲道錄音,總是提示 32 錯誤呢?

代碼如下:
Fmt.wFormatTag = WAVE_FORMAT_PCM;
Fmt.nChannels = 1; // <--- 單聲道
Fmt.nSamplesPerSec = 8000;
Fmt.wBitsPerSample = 16;
Fmt.cbSize = SizeOf(TWaveFormatEx);
Fmt.nBlockAlign = 4;
Fmt.nAvgBytesPerSec = Fmt.nChannels * Fmt.nSamplesPerSec * Fmt.wBitsPerSample /8;


-----------------
但同樣的方法,我只要把 nChannels 設為 2 (雙聲道) 就沒問題。

但這樣與我之前的版本不兼容。

難道Vista 不能以單聲道錄音嗎?
...全文
72 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wgah2005 2009-02-18
  • 打赏
  • 举报
回复
Fmt.wFormatTag = WAVE_FORMAT_PCM;
Fmt.nChannels = 1; // <--- 單聲道
Fmt.nSamplesPerSec = 8000;
Fmt.wBitsPerSample = 16;
Fmt.cbSize = SizeOf(TWaveFormatEx);
Fmt.nBlockAlign = 2;
Fmt.nAvgBytesPerSec = Fmt.nChannels * Fmt.nSamplesPerSec * Fmt.wBitsPerSample /8;

试试这个

18,363

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧