欢迎来到天天文库
浏览记录
ID:15757172
大小:64.00 KB
页数:9页
时间:2018-08-05
《directx多媒体应用程序设计初步》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、DirectX多媒体应用程序设计初步作者:未知来源:月光软件站加入时间:2005-2-28 月光软件站-摘要:文章简单地介绍了Microsoft®DirectX®以及它在VB多媒体程序设计中的应用。DirectX®是Microsoft®推出的硬件应用程序接口(APIs),它包括DirectX®Graphics®和DirectX®Audio®等,使用它能够方便地实现二维、三维动画、音频数据段回放等功能。DirectMusic®是DirectX®的基本组件之一,主要用于MIDI、WAVE等文件的回放。本文着重介绍它在VB多媒体程序设计中的应用。关键词:DirectX®、VB
2、、API、DirectMusic®、MIDI一、 DirectX介绍Microsoft®DirectX®是用于游戏开发和高品质多媒体应用程序开发的一系列底层程序接口。它包括了对二维、三维图形、声音、音乐、输入的支持,它甚至可以在应用程序中支持网络通讯,比如允许多用户参与的网络游戏。DirectX包括了如下几个部分:DirectDraw®、Direct3D®、DirectMusic®、DirectSound®、DirectInput®、DirectPlay®。DirectXAPIsDirectXGraphicsDirectXAudioDirectShow
3、DirectDrawDirect3DDirectSoundDirectMusicDirectInputDirectPlayDirectSetupDirectDraw®:DirectXAPI的一个组成部分,它能够直接将显示缓冲区的内容直接输出,提供对显示设备的直接存取并在Windows图形设备接口上保留兼容性。Direct3D®:提供三维图形的编程接口。DirectMusic®:与DirectSound不同,它并不是为数字音频的捕获和回放设计的,而是一种基于消息机制的接口,它能通过硬件或软件合成器将数字音乐转换为声音样本并回放输出。VB中使用DirectX播放MIDI音乐
4、也主要是使用这一组编程接口来实现。DirectSound®:它提供对声音的高效混音、硬件加速以及对声音设备的直接存取。DirectInput®:用于输入设备(如鼠标、键盘、游戏控制器等)控制的API。DirectShow®:是MicrosoftWindows平台的流媒体构造接口,使用DirectShow技术能使应用程序完成高质量的音频、视频捕获和回放。DirectPlay®:提供多用户网络游戏的支持。DirectSetup®:安装DirectX组件的API接口。二、在VB中使用DirectX®实现MIDI文件的回放要在VB中使用DirectX,请先按如下的过程初始化系统
5、环境:1、 启动MicrosoftVisualBasic6.0,新建一个标准的EXE文件(StandardEXEfile);2、 选择“Project”菜单并在菜单中选择“References”;3、 在列表框中选中“DirectX8forVisualBasicTypeLibrary”后,点击“确定”按钮。通过以上的设置,DirectX8APIs就被成功地引用到了VisualBasic编程环境中,现在就可以方便地使用DirectX8API函数了。使用DirectX编程实现MIDI回放有三个步骤:初始化、播放和停止、释放对象。也就是说,在调用并回放MIDI文件以前要
6、对DirectMusic对象进行初始化(包括对象的创建、数据段装载和声音通道初始化)。下面的几个函数可以实现这一初始化过程:1.DirectMusicPerformanceCreate:创建一个DirectMusicPerformance8对象调用:object.DirectMusicPerformanceCreate()AsDirectMusicPerformance8参数:object:DirectX8对象返回:DirectMusicPerformance8对象错误:如果调用不成功,Err.Number置位2.DirectMusicLoaderCreate:创建一个
7、DirectMusicLoader8对象调用:Object.DirectMusicLoaderCreate()AsDirectMusicLoader8参数:object:DirectX8对象返回:DirectMusicLoader8对象错误:如果调用不成功,Err.Number置位3.InitAudio:初始化Performance对象,要让声音能够正常播放,此函数应该首先被调用。调用:object.InitAudio(hWndAsLong,lFlagsAsCONST_DMUS_AUDIO,_AudioParamsAsDMUS_AUDIO
此文档下载收益归作者所有