MCI接口编程实验.pdf

MCI接口编程实验.pdf

ID:47994611

大小:207.35 KB

页数:3页

时间:2020-01-11

MCI接口编程实验.pdf_第1页
MCI接口编程实验.pdf_第2页
MCI接口编程实验.pdf_第3页
资源描述:

《MCI接口编程实验.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MCI接口编程实验一.实验目的熟悉Windows下声卡编程的基本过程及原理,掌握Windows下MCI编程的基本知识。二.实验原理设计多媒体程序,关键是对多种媒体设备的控制和使用,在Windows3.1和Windows95系统中,对多媒体设备进行控制主要有三种方法:第一种方法是使用微软公司窗口系统中对多媒体支持的MCI,即媒体控制接口,MCI是多媒体设备和多媒体应用软件之间进行设备无关的沟通的桥梁。在VB和VC中,MCI都得到了很好的支持。第二种方法,通过调用Windows的API(应用程序接口)多媒体相关函数实现媒体控制。第三种方法是使

2、用OLE(ObjectLinking&Embedding),即对象链接与嵌入技术,它为不同软件之间共享数据和资源提供了有力的手段。Windows多媒体系统函数在DLL中,在开发Windows多媒体应用程序时,最简单的方法是利用Windows的媒体控制接口(MCI)来实现。媒体控制接口属高层音频服务,其MCI设备驱动程序封装了操作波形设备的许多细节,因而编程量小,简单易用。(在VC5中,编制自己的多媒体程序时需要将winmm.lib库连接。有时还需要包括头文件mmsystem.h)。利用MCI高级函数编制的应用程序不能进行录入和播出数据的实

3、时处理。如果需要做较高要求的数据实时处理,则需要利用Windows的多媒体开发工具(MDK)所提供的与设备无关低层音频服务接口函数。我们在本实验中用最简单的方法来实现声音的播放和录制—媒体控制接口编程。使用的windows多媒体API函数如下:三.实验内容与代码1、使用PlaySound函数播放声音文件:PlaySound(filename,NULL,SND_SYNC);2、使用sndPlaySound函数播放声音文件:sndPlaySound(filename,SND_SYNC);3、使用高级MCI函数播放声音文件:MCI_OPEN_P

4、ARMSmciopen;MCI_PLAY_PARMSmciplay;//filename_play存放了声音文件的路径mciopen.lpstrElementName=filename_play;mciopen.lpstrDeviceType=(LPCSTR)MCI_DEVTYPE_SEQUENCER;//打开对应的播放设备rtrn=mciSendCommand(0,MCI_OPEN,MCI_WAIT

5、MCI_OPEN_TYPE_ID

6、MCI_OPEN_TYPE

7、MCI_OPEN_ELEMENT,(DWORD)(LPVOID)&mciop

8、en);//播放打开的声音文件wDeviceID=mciopen.wDeviceID;mciplay.dwCallback=(DWORD)hwnd;rtrn=mciSendCommand(wDeviceID,MCI_PLAY,MCI_NOTIFY,(DWORD)(LPVOID)&mciplay);//停止播放mciSendCommand(wDeviceID,MCI_STOP,0,NULL);mciSendCommand(wDeviceID,MCI_CLOSE,0,NULL);4、录音:MCI_OPEN_PARMSmciopen;MCI_R

9、ECORD_PARMSmci1;mciopen.lpstrElementName=(LPCSTR)"";mciopen.lpstrDeviceType="waveaudio";//打开播放设备rtrn=mciSendCommand(0,MCI_OPEN,MCI_WAIT

10、MCI_OPEN_TYPE

11、MCI_OPEN_ELEMENT,(DWORD)(LPVOID)&mciopen);//录制声音wDeviceID=mciopen.wDeviceID;mci1.dwCallback=(DWORD)hwnd;rtrn=mciSendComman

12、d(wDeviceID,MCI_RECORD,MCI_NOTIFY,(DWORD)(LPVOID)&mci1);//停止录音mciSendCommand(wDeviceID,MCI_STOP,0,NULL);//保存录制的声音,filename_save是保存的文件名MCI_SAVE_PARMSmcisave;mcisave.lpfilename=filename_save;mcisave.dwCallback=(DWORD)hwnd;rtrn=mciSendCommand(wDeviceID,MCI_SAVE,MCI_SAVE_FILE

13、

14、MCI_WAIT,(DWORD)(LPVOID)&mcisave);四.运行结果开始界面:思考题:1、什么是MCI接口?简述MCI所囊括的内容MCI(MediaControlInterfac

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。