⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_55148.htm

📁 vc
💻 HTM
字号:
<p>
序号:55148 发表者:李上奖 发表日期:2003-10-07 10:29:09
<br>主题:directsound使用ACM压缩与解压音频
<br>内容:小弟在做一个ACM压缩与解压directsound录入的音频,可是我调了很多次参数都无效不知何因<BR>pwfxSrc:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxSrc.cbSize:=SizeOf(WaveFormatEx);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxSrc.wFormatTag= WAVE_FORMAT_PCM;// 1 <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxSrc.nChannels = 1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxSrc.nSamplesPerSec = 11025;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxSrc.wBitsPerSample = 16;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxSrc.nBlockAlign = iChannels * iBITS div 8;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxSrc.nAvgBytesPerSec = pwfxSrc.nSamplesPerSec * pwfxSrc.nBlockAlign;<BR>pwfxDst:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// mmr =acmFormatChoose()可获得下面的信息 <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.wFormatTag=WAVE_FORMAT_GSM610; // 49<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.nChannels=1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.nSamplesPerSec=8000;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.nAvgBytesPerSec=1625;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.nBlockAlign=0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.wBitsPerSample=1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.cbSize=2;<BR>//没办法只好按msdn的例子写PCM-&gt;ADPCM 还是不行<BR>pwfxDst:<BR>//用MS ADPCM压缩时,刚好msdn的pcm-&gt;ADPCM有例子。按例子写还是不行,<BR>// mmr =acmFormatChoose()可获得下面的信息 <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.wFormatTag=WAVE_FORMAT_ADPCM; // 2<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.nChannels=1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.nSamplesPerSec=8000;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.nAvgBytesPerSec=4096;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.nBlockAlign=256;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.wBitsPerSample=4;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pwfxDst.cbSize=32;<BR> mmr:=acmStreamOpen(phas,null,pwfxSrc,pwfxDst,null,0,0,ACM_STREAMOPENF_NONREALTIME );<BR>//可是mmr返回的是ACMERR_NOTPOSSIBLE ,phas=null 所以后面的无法进行转换了<BR>//但是PCM-&gt;PCM却正常如(11025,16,单,WAVE_FORMAT_PCM)-&gt;(8000,8,单,1)<BR>高手们,帮帮忙,给指点指点吧!小弟不胜感激,我已搞了几天了。&nbsp;&nbsp;&nbsp;&nbsp; <BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:gzast163 回复日期:2003-10-08 17:05:30
<br>内容:例子程序原代码(DirectShow):<BR>ftp://private:private@redcode.meibu.com:2123/DSDemo.rar<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:双马会师 回复日期:2003-10-09 15:21:08
<br>内容:谢谢答复,但是我运行后有如下错误:<BR>&nbsp;&nbsp;Could not execute :Invalid directary (win32 error 267)<BR><BR>还有我须要能实时压缩的,你知道我上面的错在那里吗?因为我不相信ACM在directsound中会是这样子的。谢谢!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:gzast163 回复日期:2003-10-09 15:32:27
<br>内容:你是在VC里运行的吧?要配置好你的工程:<BR>Project--&gt;Settings--&gt;Debug--&gt;Excutable for debug session:在这里输入正确的施行文件名。<BR><BR>Project--&gt;Settings--&gt;Debug--&gt;Working Directory:在这里输入正确的工作路径。<BR><BR>我不熟悉ACM,不过如果相信我的话就把SOURCE CODE能我,我帮你调试,看看问题出在哪里,不要只给我代码片段喔。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:双马会师 回复日期:2003-10-09 15:50:14
<br>内容:当然相信,只是我手头上的是delphi7写的。如果要改写成vc的话要时间。要不给你delphi的文件吧!还有啊工程配置好了还有错:Couldn't execute program.<BR><BR>2003-10-9 16:07:43

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -