Visual C++大学教程 教学课件 作者 冯博琴 第11章 多媒体技术.ppt

Visual C++大学教程 教学课件 作者 冯博琴 第11章 多媒体技术.ppt

ID:50307548

大小:1.00 MB

页数:46页

时间:2020-03-07

Visual C++大学教程 教学课件 作者 冯博琴 第11章 多媒体技术.ppt_第1页
Visual C++大学教程 教学课件 作者 冯博琴 第11章 多媒体技术.ppt_第2页
Visual C++大学教程 教学课件 作者 冯博琴 第11章 多媒体技术.ppt_第3页
Visual C++大学教程 教学课件 作者 冯博琴 第11章 多媒体技术.ppt_第4页
Visual C++大学教程 教学课件 作者 冯博琴 第11章 多媒体技术.ppt_第5页
资源描述:

《Visual C++大学教程 教学课件 作者 冯博琴 第11章 多媒体技术.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第11章多媒体技术11.1图像处理技术11.1.1位图文件结构分析位图(BMP)文件是Windows采用的图形文件格式,它常以bmp、dib或rle作为扩展名。位图文件最大的特点是没有经过压缩,它将图像中的每个像素的颜色值进行存储。1.位图文件头位图文件头可以用下面的数据结构来描述:typedefstructtagBITMAPFILEHEADER{//bmfhWORDbfType;DWORDbfSize;WORDbfReserved1;WORDbfReserved2;DWORDbfOffBits;}BITMAPFILEHEADER;2.位图信息头位图信息头也可以用下面的数

2、据结构来描述:typedefstructtagBITMAPINFOHEADER{//bmihDWORDbiSize;LONGbiWidth;LONGbiHeight;WORDbiPlanes;WORDbiBitCount;DWORDbiCompression;DWORDbiSizeImage;LONGbiXPelsPerMeter;LONGbiYPelsPerMeter;DWORDbiClrUsed;DWORDbiClrImportant;}BITMAPINFOHEADER;3.彩色表彩色表用下面的数据结构描述:typedefstructtagRGBQUAD{//rgbq

3、BYTErgbBlue;BYTErgbGreen;BYTErgbRed;BYTErgbReserved;}RGBQUAD;4.位图数据紧跟在彩色表之后的是图像数据字节阵列。图像的每行由表示图像像素的连续的字节组成,每一行的字节数取决于图像的颜色数目和用像素表示的图像宽度。11.1.2将位图文件绘制成对话框背景StretchBlt函数用位图的指定矩形部分和设备环境中指定的矩形区域贴图,如果位图的矩形部分同当前设备环境部分大小不一致,则将位图进行压缩或放大。语法:BOOLStretchBlt(intx,inty,intnWidth,intnHeight,CDC*pSrcDC,

4、intxSrc,intySrc,intnSrcWidth,intnSrcHeight,DWORDdwRop);11.1.3将设备上下文转换为位图位图文件由位图文件头、位图信息头、调色板和位图数据组成。位图文件头是固定的结构,位图信息头及调色板可以通过CBitmap的GetBitmap方法获得,而对于位图数据可以通过GetDIBits方法获得,最后通过CFile对象创建位图文件,并将前面得到的数据写入文件中。11.1.4在程序中显示JPEG与GIF文件可以通过IPicture接口来显示JPEG和GIF图像。首先利用CFile对象从文件中读取图像数据到缓冲区中,然后调用Cre

5、ateStreamOnHGlobal方法在缓冲区中创建一个流对象,接着调用OleLoadPicture方法从流中加载图像信息到IPicture中,最后调用IPicture的Render方法绘制图像。11.2音频处理技术WAVE格式的音频文件是比较常用的音频文件类型。11.2.1播放应用程序中的WAVE资源在播放WAVE资源时,首先调用FindResource函数搜索指定的音频资源,然后调用LoadResource函数装载资源到存储器,再调用LockResource函数锁定资源句柄,使用sndPlaySound函数播放WAVE资源,最后调用FreeResource函数释放资

6、源句柄。11.2.2播放WAVE文件WAVE音频文件是比较常用的音频文件,对于音频的播放可以有多种方法。11.2.3音量大小控制使用MCI(TheMediaControlInterface)接口可以进行音量控制。图11.6音量控制程序(1)mixerOpen函数用于打开指定的混音器设备,并确保在应用程序关闭之前设备不被移除。语法:MMRESULTmixerOpen(LPHMIXERphmx,UINTuMxld,DWORDdwCallback,DWORDdwlnstance,DWORDfdwOpen);(2)mixerGetLineInfo函数用于获取混音器设备指定的线路信

7、息。语法:MMRESULTmixerGetLinelnfo(HMIXEROBJhmxobj,LPMIXERLINEpmxl,DWORDfdwlnfo);(3)mixerGetLineControls函数用于获取关联音频线路的一个或多个控制器。语法:MMRESULTmixerGetLineControls(HMIXEROBJhmxobj,LPMIXERLINECONTROLSpmxlc,DWORDfdwControls);(4)mixerGetControlDetails函数用于获取指定控制器的详细信息。语法:MMRESULTm

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

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

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