- 1、本文档共48页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
;第10讲 多媒体应用程序的设计 ;12.1 利用音频函数;12.1.1 一个简单的应用实例 ;12.1.2 几个常用的音频函数 ;12.1.3 用控制波形声音的播放 ;在调用设备时可用()检测错误,该函数的原型如下:
(
, 错误代码
, 指向错误内容字串的指针
错误内容的缓冲区容量
) ;【例12-2】编写一个音频播放器程序,可以选择音频文件,并控制其播放、暂停播放、暂停后的继续播放以及停止播放的功能 ;1. 将头文件加入到文件中,将多媒体函数库通过菜单中的命令来与程序链接起来 ; ()
{ ();
…
:
; 初始化正在播放标识
; 初始化正在暂停标识
0; 初始化设备标识
;
}; () 打开一个文件
{ ; 定义类的用来存储文件名
; 定义类的用来存储文件扩展名
定义结构体变量用来存储打开文件的信息和返回的设备标识信息
; 定义用来储存返回的错误标识
[]=波形音频文件(*)|*序列(*)|*\0;
();
通过打开按钮时显示的内容; (())
{ (); 获取打开的文件名
(); 获取打开的文件扩展名
() 如果程序正在播放,则关闭
{ (,0);
关闭正在播放的声音
() 如果关闭不成功,则显示出错的原因
{((,()))
(,出错);
(不明错误标识,出错);
给出相应报告
;
} };如果没有声音正在播放,则获取打开文件的后辍,并根据后辍决定相应的打开类型
(()) 当后辍为时
;
(())当后辍为时
;
;
将打开的文件名存入结构体中
(0,()());
发送打开文件命令,参数说明设备类型名包含在结构体中,
参数说明要打开的文件名包含在结构体中; ()如果打开不成功,则显示出错的原因
{ ((,()))
(,出错);
(不明错误标识,出错);
;
}
将获取的设备值赋给全局变量
设置正在播放标识为
设置正在暂停标识为
} }; () 从头开始播放
{ ;
结构体变量存储播放相关信息
() 如果没有正在播放的声音
{()();
为发送消息指定窗口句柄
0设置播放位置从头开始
(,()());
开始播放声音,参数说明开始播放的位置包含在结构体中
参数的意义是播放完后发送消息 ; ()
{ ((,()))
(,出错);
(不明错误标识,出错);
;
}
设置正在播放标识为
} } ; ()
{ ()如果有正在播放的声音
{ ()如果不是暂停状态
{(,0);
则暂停播放
()
{ ((,()))
(,出错);
(不明错误标识,出错);
;
}
; 设置正在暂停标识为
}; 如果已经是暂停状态
{(,0);
则继续播放
()
{ ((,()))
(,出错);
(不明错误标识,出错);
;
}
设置正在暂停标识为
} } } ; ()
{();
发送停止命令消息,参数说明当命令执行结束后函数才返回值
()
{ ((,()))
(,出错);
(不明错误标识,出错);
;
}
; 设置正在播放标识为
; 设置正在暂停标识为
(如要播放新的文件,请在打开前先关闭现有文件,注意);
提请用户注意先关闭现有文件
}; () 关闭当前设备
{ () 若什么文件都没有打开过,就不执行关闭操作
{();
()
{ ((,()))
(,出错);
(不明错误标识,出错);
; }
(,0);
()
{ ((,()))
(,出错);
(不明错误标识,出错);
; }
0; 关闭文件后将变量设为 0
} } ; ()
点击确定的响应
{
();
先执行关闭文件的操作
(); 关闭窗口
};手动加入消息的处理函数
在中的函数
: ()的
“}}”
和
“()”
语句之间加入如下代码:
( );;在中的消息映射入口处加入如下代码: ()。
样式如下:
(, )
{{()
()
()
()
(, )
(, )
(, )
(, )
(, )
}}
()
() ; 将函数加入应用程序中:
( )
{ ()
成功播放完成后重置标识
{ 设置正在播放标识为
设置正在暂停标识为
0;
}
-1否则返回错误
};12.2 利用 控件实现多媒体程序设计 ;为类添加四个成员,两个用来播放多媒体文件,两个用来保存待播放的文件名,修改后的文件如下:
4; 前
您可能关注的文档
- 电视技术概论之单片机芯与大屏幕彩色电视机.pptx
- 电梯操作设备操作规程.docx
- 电子公司新员工管理入职课件.pptx
- 电子渠道的定义与业务介绍.pptx
- 电子商务网络营销实战.pptx
- 电子文件管理课件.pptx
- 店面基本流程与规范.pptx
- 店铺管理等级分类.pptx
- 店长岗位职责与工作守则.pptx
- 定价理论知识.pptx
- 2024年05月黑龙江双鸭山饶河县事业单位面向社会公开引进高学历人才10人笔试上岸历年高频考点(难、易错点)附带答案详解.docx
- 2024年05月黑龙江鸡西市营商环境建设监督局招考聘用笔试上岸历年高频考点(难、易错点)附带答案详解.docx
- 2024年06月安徽马鞍山含山县选任人民陪审员120人笔试上岸历年高频考点(难、易错点)附带答案详解.docx
- 2024年2月上海交通大学医学院附属上海儿童医学中心招考聘用100人笔试上岸历年高频考点(难、易错点)附带答案详解.docx
- 2024年06月春季奥体中心公开招聘笔试上岸历年高频考点(难、易错点)附带答案详解.docx
- 2024年06月中国农业电影电视中心公开招聘应届毕业生拟录用人选笔试上岸历年高频考点(难、易错点)附带答案详解.docx
- 公路工程监理工程师经济系列(公路工程经济)模拟练习试卷16.pdf
- 公路工程监理工程师经济系列(公路工程经济)模拟练习试卷8.pdf
- 设备工程进度管理方法练习试卷1.pdf
- 环境影响评价师(环境影响评价技术方法)模拟试卷74.pdf
文档评论(0)