有关录音的问题!!(急!急!急!) 我用陈经韬讲的“如何用Delphi制作录音程序”中的方法用Mediaplayer控件进行录音,可是在每次录音完成之后的新文件的开始几秒总是有一些杂音?每个文件都是这样,只有两三秒的时间请问如何把噪音去除呢??? 请高手或者用这个方法做过的人指教!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 分不够的话绝对可以再加!!! 我单独进行录音时能录音,但是出现了上面的情况,当我把录音的这个功能加到我现在的程序中时却出现了编译无法通过的事情!具体是用上面所说的方法先定义一个录音头文件,进行录音,如下错误出现在程序的倒数第五行中的打开文件语句上:typeTWavHeader=record rId:longint; rlen:longint; wId:longint; fId:longint; fLen:longint; wFormatTag:word; nChannels:word; nSamplesPerSec:longint; nAvgBytesPerSec:longint; nBlockAlign:word; wBitsPerSample:word; dId:longint; wSampleLength:longint;end; TForm1= class(TForm) . . . implementationprocedure TForm_Main.CreateWav(channels:word;resolution:word; rate:longint;fn:string);var wf:file of TWavHeader; wh:TWavHeader;begin wh.rId:=$46464952; wh.rLen := 36; wh.wId := $45564157; wh.fId := $20746d66; wh.fLen := 16; wh.wFormatTag := 1; wh.nChannels := channels; wh.nSamplesPerSec := rate; wh.nAvgBytesPerSec := channels*rate*(resolution div 8); wh.nBlockAlign := channels*(resolution div 8); wh.wBitsPerSample := resolution; wh.dId := $61746164; wh.wSampleLength := 0; assignfile(wf,fn); {打开对应文件 } rewrite(wf); {移动指针到文件头} write(wf,wh); {写进文件头 } closefile(wf); {关闭文件 }end; 中的那个assignfile(wf,fn);语句编译不通过并出现了下面的错误提示: "There is no overloaded version of 'AssignFile' that can be called with these arguments" 请教各位高手如何解决,分不够可以再加,直到大家满意! 问题找到了,主要是那条assignfile(wf,fn);语句和我用的一个串口控件Turbopower Async Professional发生了冲突,当我把那个控件删除之后就没事了,请教这种情况怎么解决!!!! 请大家出主意了!!! 将那个assignfile(wf,fn)改成system.assignfile()就可以! RP爆发了,参加“虚拟社区研究调查”得了30元充值卡,散分了! 请问这样的界面效果如何实现?应该是有点难度。顶者有分! xml文件中的大文本应该怎么读取 delphi7如何实现与vc中的如此功能??? 比较少见的问题 开源!神迹脱机外挂源代码,DELPHI版 有两个窗口,请问如何实现拖动其中一个窗口,另外那个窗口的也跟着移动? 小问题!散分 帮忙看看这句SQL语句有什么错 月末结帐:以下贴子将在本月了结:) 如何复制某一文件夹内所有的word文档到两一目录中? 熟悉Formula One 的高手请进!!!
我单独进行录音时能录音,但是出现了上面的情况,当我把录音的这个功能加到我现在的程序中时却出现了编译无法通过的事情!
具体是用上面所说的方法先定义一个录音头文件,进行录音,如下错误出现在程序的倒数第五行中的打开文件语句上:
type
TWavHeader=record
rId:longint;
rlen:longint;
wId:longint;
fId:longint;
fLen:longint;
wFormatTag:word;
nChannels:word;
nSamplesPerSec:longint;
nAvgBytesPerSec:longint;
nBlockAlign:word;
wBitsPerSample:word;
dId:longint;
wSampleLength:longint;
end;
TForm1= class(TForm)
.
.
.
implementationprocedure TForm_Main.CreateWav(channels:word;resolution:word;
rate:longint;fn:string);
var
wf:file of TWavHeader;
wh:TWavHeader;
begin
wh.rId:=$46464952;
wh.rLen := 36;
wh.wId := $45564157;
wh.fId := $20746d66;
wh.fLen := 16;
wh.wFormatTag := 1;
wh.nChannels := channels;
wh.nSamplesPerSec := rate;
wh.nAvgBytesPerSec := channels*rate*(resolution div 8);
wh.nBlockAlign := channels*(resolution div 8);
wh.wBitsPerSample := resolution;
wh.dId := $61746164;
wh.wSampleLength := 0;
assignfile(wf,fn); {打开对应文件 }
rewrite(wf); {移动指针到文件头}
write(wf,wh); {写进文件头 }
closefile(wf); {关闭文件 }
end;
中的那个assignfile(wf,fn);语句编译不通过并出现了下面的错误提示: "There is no overloaded version of 'AssignFile' that can be called with these arguments" 请教各位高手如何解决,分不够可以再加,直到大家满意!
请大家出主意了!!!