C#利用winmm.dll中的mciSendString方法录音

来源:互联网 发布:小米数据分析师面试题 编辑:程序博客网 时间:2024/06/06 00:17

mciSendString是用来播放多媒体文件的API指令,可以播放MPEG,AVI,WAV,MP3,等等

该函数有四个参数:
第一个参数:要发送的命令字符串。字符串结构是:[命令][设备别名][命令参数].
第二个参数:返回信息的缓冲区,为一指定了大小的字符串变量.
第三个参数:缓冲区的大小,就是字符变量的长度.
第四个参数:回调方式,一般设为零
返回值:函数执行成功返回零,否则返回错误代码

 

 

首先在代码中引入这个API函数

 


        [DllImport("winmm.dll", EntryPoint = "mciSendString", CharSet = CharSet.Auto)]
        
public static extern int mciSendString(
         
string lpstrCommand,
         
string lpstrReturnString,
         
int uReturnLength,
         
int hwndCallback
        );

 

然后启动录音

 


                mciSendString("close movie"""00);
                mciSendString(
"open new type WAVEAudio alias movie"""00);
                mciSendString(
"record movie"""00);

 

录音完成后关闭并保存到一个文件,比如c:/1.wav

 


                mciSendString("stop movie"""00);
                mciSendString(
"save movie j://1.wav"""00);
                mciSendString(
"close movie"""00);

 

原创粉丝点击