多媒体技术(第2版)第6章_第1页
多媒体技术(第2版)第6章_第2页
多媒体技术(第2版)第6章_第3页
多媒体技术(第2版)第6章_第4页
多媒体技术(第2版)第6章_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章多媒体编程技术

普通高等教育“十一五”国家级规划教材6.1媒体控制接口(MCI)MultimediaControlInterfaceMCI(媒体控制接口)是Microsoft公司为实现Windows系统下设备无关性而提供的媒体控制接口标准。用户可以方便地使用MCI控制多媒体设备和文件优点提高编程效率,降低编程复杂度系统升级十分方便26.1媒体控制接口(MCI)使用MCI函数进行多媒体设备控制的一般步骤打开设备设置或获取设备相关信息播放设备关闭设备向多媒体设备发送MCI命令

3MCI命令接口--两种形式命令字符串Playtimpani.wav

命令消息WORDwDeviceID;MCI_PLAY_PARMSmciPlayParms;MciSendCommand(wDeviceID,MCI_PLAY,0,(DWORD)(LPVOID)&mciPlayParms);6.1媒体控制接口(MCI)具有相同的功能命令字符串使用简单命令消息执行效率高46.1媒体控制接口(MCI)MCI命令集提供了原始命令集来控制不同类型的媒体设备命令—字符串接口中的命令描述了MCI命令集,每一条命令在命令—消息接口中都有对应的命令消息。例如:close命令字符串等同于MCI_CLOSE命令消息5MCI命令集命令描述Capality请求某一设备能力的信息Close关闭用过的设备Info请求某一设备的信息Open打开并初始化某一设备Pause暂停止在播放和记录的设备Play开始设备播放Record开始设备记录Resume恢复暂停播放和记录设备Seek改变媒体的当前位置Status请求设备状态的信息(如播放还是暂停状态)Stop停止设备的播放或记录6MCI命令MCI命令由一字符串组成,语法如下:Command

device_name

argumentscommand:MCI所使用的命令;device_name:指设备类型、文件名称或别名;arguments:指令所带的参数列表。OpencdaudioOpenbells.wav76.2多媒体控件与开发平台无关具有可共享、可重复使用的特点丰富和增强了使用高级语言进行多媒体编程功能86.2.1MCI控件多媒体MCI控件MCI.OCX专用于对多媒体控制接口MCI设备的多媒体数据文件实施记录和回放通过一组按钮来发出种种设备控制命令以实现对诸如:音频面板、MIDI音序器、CD-ROM驱动器、音频CD播放机、录像带播放、录音带录放等设备的控制在“工程”菜单中选择“部件”,弹出部件对话框,选择“MicrosoftMultimediaControls”控件,返回后工具箱中出现了MCI控件。96.2.1MCI控件在窗口中添加MCI控件106.2.1MCI控件主要属性:Enabled:使该控件有效Visible:使该控件可见DeviceType:设置多媒体控件所要管理的设备类型AutoEnable:为True时,自动激活DeviceType所指定的设备。FileName:指定MCI所要使用的文件名称Command:在运行时使用,指定需要执行的MCI命令116.2.1MCI控件MCI命令它是通过一套高层的与设备无关的命令来控制多媒体设备的。格式:Mmcontrol1.Command=“commandname”例如:Mmcontrol1.Command=“Open”128.3.1MCI控件MCI命令要发送的命令与MCI控件上各按钮的名称一致.Prev,next,play,pause,back,step,stop,record,eject还可以发送一些通用命令Open,close,sound,seek,save136.2.1MCI控件Subform_Load()MMControl1.DeviceType="WaveAudio"MMControl1.FileName=“c:\1.wav"MMControl1.Command="Open"EndSub146.2.2

WindowsMediaPlayer控件在“工程”菜单中选择“部件”,弹出部件对话框,选择“Windows

Media

Player”控件,返回后工具箱中出现了WindowsMediaPlayer控件。添加到窗口156.2.2

WindowsMediaPlayer控件属性和方法URL:String

指定媒体位置,本机或网址uiMode

播放器界面模式,可为Full,Mini,NoneInvisibleplayState

播放状态,1=停止,2=暂停,3=播放,6=正在缓冲,9=正在连接,10=准备就绪fullScreen

是否全屏显示166.2.2

WindowsMediaPlayer控件属性和方法Controls:播放器基本控制controls.play

播放controls.pause

暂停controls.stop

停止controls.fastForward

快进controls.fastReverse

快退controls.next

下一曲controls.previous

上一曲详见WindowsMediaPlayer9SDK文档

176.2.2

WindowsMediaPlayer控件PrivateSubForm_Load()WindowsMediaPlayer1.URL="c:\1.mpg"WindowsMediaPlayer1.Controls.StopEndSub186.2.3

ShokewaveFlash控件在“工程”菜单中选择“部件”,弹出部件对话框,选择“ShokewaveFlash”控件,返回后工具箱中出现了ShokewaveFlash控件。添加到窗口196.2.3

ShokewaveFlash控件属性Quality:指定当前渲染的质量,0为低分辨率,1为高分辨率,2为自动降低分辨率,3为自动升高分辨率;ScaleMode:缩放模式,0为全部显示,1为随控件大小变化,2为缩放至控件大小;Loop:循环属性,True为循环播放,False为不循环播放;Playing:播放属性,True为播放,False为停止;Movie:指定播放的flash文件路径,可以为一个URL206.2.3

ShokewaveFlash控件方法Play():开始播放动画;Stop();停止播放动画;Back();播放前一帧动画;Forward():播放后一帧动画;Rewind():重头播放216.2.3

ShokewaveFlash控件举例Subform_Load()`设置flash动画文件的路径shockwaveflash1.Movie="c:\1.swf"shockwaveflash1.loop=trueshockwaveflash1.playEndSub226.3多媒体软件开发工具包软件开发工具包(SoftwareDevelopmentKit,SDK)是辅助开发某一类软件的相关文档、范例和工具的集合,通过使用多媒体软件开发工具包中提供的各种接口和工具,开发人员可以无须了解复杂的技术内幕(如视频压缩技术原理、文字识别技术、语音识别技术等),而方便有效地开发多媒体应用程序。236.3.1DirectShowDirectShow是微软公司在ActiveMovie和VideoforWindows的基础上推出的新一代基于COM的流媒体处理的开发包,与DirectX开发包一起发布。DirectShow技术是建立在DirectDraw和DirectSound组件基础之上的通过DirectDraw对显卡进行控制以显示视频通过DirectSound对声卡进行控制以播放声音246.3.1DirectShowDirectShow可提供高质量的多媒体流的捕获和回放功能;支持多种媒体格式,包括ASF(AdvancedSystemsFormat)MPEG(MotionPictureExpertsGroup)AVI(Audio-VideoInterleaved)MP3(MPEGAudioLayer-3)WAV声音文件可以从硬件上捕获媒体数据流可以自动检测并使用视频和音频加速硬件256.3.1DirectShowDirectShow将多媒体数据的处理看成一条流水线每道工序由一种称为滤波器(Filter)的组件完成源过滤器(SourceFilters):负责从数据源获取数据,包括本地文件、Internet、采集卡、数据摄像机等变换过滤器(TransformFilters):负责从源过滤器获得数据,并负责对数据进行处理和传输提交过滤器(RendererFilters):负责数据的最终去向,它可以将数据传给声卡、显卡进行多媒体演示,也可以传输到文件中保存266.3.1DirectShowDirectShow还提供了一个高层组件过滤器图表管理器(FilterGraphManager),它负责这些既分工又合作的过滤器装配成一条流水线,具体包括监管过滤器的连接、控制过滤器中的数据流、传递事件通知应用程序等。276.3.2MicrosoftSpeechSDK语音技术语音识别(speechrecognition,SR)语音合成(speechsynthesis,SS,即TTS)微软公司推出了MicrosoftSpeechSDK提供关于语音处理的一套应用程序编程接口SAPI(SpeechApplicationProgrammingInterface)。提供了实现TTS和SR程序的基本函数,大大简化了语音编程的难度,降低了语音编程的工作量。286.3.2MicrosoftSpeechSDKMicrosoftSpeechSDK采用COM标准开发,底层协议都以COM组件的形式完全独立于应用程序层语音识别由识别引擎(RecognitionEngine)管理语音合成由语音合成引擎(SynthesisEngine)负责。程序员只需专注于自己的应用,调用相关的语音应用程序接口(SAPI)来实现语音功能296.3.2MicrosoftSpeechSDK语音识别的主要接口包括:IspRecognizer接口:用于创建语音识别引擎的实例,在创建时通过参数选择引擎的种类。IspRecoContext接口:主要用于接受和发送与语音识别消息相关的事件消息,装载和卸载识别语法资源。IspRecoGrammar接口:通过这个接口,应用程序可以载入、激活语法规则IspPhrase

接口:用于获取识别的结果,包括识别的文字、识别了哪一条语法规则等。306.3.2MicrosoftSpeechSDK语音合成主要通过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论