VisualBasic环境下VideoAudio压缩数据流播放技术

VisualBasic环境下VideoAudio压缩数据流播放技术,第1张

VisualBasic环境下VideoAudio压缩数据流播放技术,第2张

介绍

-银行数字监控系统是目前有市场和应用前景的开发项目。基于不同的MPEG采集卡和硬件外设开发的监控系统在国内外已经有了比较成熟的技术。为了满足实时监控、实时采集压缩、随时回放、传输压缩数据流的特定要求,本系统采用了一种网络视频/音频多点传输(视频广播)的视频数据采集卡,提供AVI(MPEG I帧压缩编码)采集和MPG采集。发送方播放MPEG流,接收方接收并显示MPEG流,网络传输采用WinSock 2 IP-Multicast。如果这台机器是发送方,网络上的任何其他PC都可以是接收方。只要您指定不同的端口号,您就可以将多台PC作为发送方,将多台PC作为接收方来接收来自不同发送方的视频数据,或者您可以在传输数据时将数据保存为本机的MPEG文件。本文主要介绍在VB环境下开发MPEG卡采集的音视频数据的一些编程技巧。

2.介绍MPEG的内容和发展

-多媒体信息主要包括图像、声音、文字三大类。其中,视频、音频等信号的信息量非常大,这些信息的表达方式、输入输出要求也各不相同。有效地表达和恰当地处理这些数据是非常重要的,这使得多媒体信息压缩技术成为多媒体通信领域的关键技术之一。MPEG(运动图像专家组)于1988年与ISO IEC联合成立,致力于运动图像及其伴音编码的全球标准化。它包括MPEG系统:MPEG视频和MPEG音频。为了推动社会从文本信息时代向多媒体信息时代过渡,ISO继MPEG-1、2、4之后又推出了MPEG-7。

-MPEG-1(ISO/IEC 11172)于1993年制定,是数据传输速率低于1.5 Mbit/s的数字存储媒体的运动图像和伴音编码的国际标准,视频压缩比为26: 1。MPEG-2于1995年(ISO/IEC 13818)制定,是基于CCIR601推荐的图像质量DVB、HDTV、DVD的3-10mb/s运动图像及其伴音编码的国际标准。与以往基于信息论的波形编码理论对视频和音频进行一定比特率编码的MPEG标准不同,1998年11月发布的国际标准MPEG-4更注重多媒体系统的交互性和灵活性。它引入了AV对象(音频/视频对象),使更多的交互式操作成为可能。1998年10月,国际标准化组织引入了MPEG-7的概念,预计将于2001年初最终完成并发布。它的正式名称是“多媒体内容描述接口”。它为现实生活中的各种多媒体内容提出了一种标准化的描述方案,该方案基于提取待描述对象的各种特征,方便人们快速有效地搜索所需的多媒体资料。

3.VB开发了MPEG -音频/视频数据流的回放技术。

-3.1.VB中多媒体MCI控件和MediaPlayer控件播放MPEG数据流的缺点

-VB中常用的多媒体控件是多媒体MCI控件,它管理媒体控制接口(MCI)设备上多媒体文件的录制和回放。它用于向声卡、MIDI序列器、CD-ROM驱动器、视频CD播放器、磁带录像机和播放器等设备发出MCI命令,还支持Windows (*。avi)视频文件。采用多媒体MCI控件播放采集的MPEG数据流,播放速度比实时监控显示快。在测试中还发现,当MPEG文件的长度缩短到500k-600k时,无法看到广播图像。在VB中使用MediaPlayer控件的缺点依然存在。分析原因是:由于MPEG文件长度太短,播放设备一开机就已经关机,这是编程无法控制的。此外,对于用户要求的压缩数据流的一些信息,以及用户希望实现的一些功能,如图形大小、压缩率、图形的缩放显示、美观的界面等。为了程序开发者的方便,上述控件提供的高级接口不再适用。在此基础上很难实现底层的一些操作。在解决上述实际问题时,我们称之为Quatrz.dll动态链接库。

-3.2.一个动态链接库,Quatrz.dll,它提供了方便MPEG流的低级操作和高级接口。

-Quatrz.dll,动态链接库,可以在Windows\System下找到,这是一个控制Windows中运动图像播放的类型库。只有在VB中将它添加到“引用”菜单中才能使用。该库定义了IBasicAudio、IBasicVideo和IBasicVideo2、IMediaEvent、IMediaEventEx、IMediaPosition等。,可以方便地在CommandButton控件的Click事件中添加代码设置和读取音频的相关值。或者设置读取视频的输入输出源的相关参数,直接调用无参数的函数Run、Pause、Stop等来控制播放事件的进程,使用IMediaPosition类来操作具体的播放细节。压缩MPEG数据流的输出显示不需要特殊控制。在VisualBasic中,可以选择一个窗体作为容器,或者选择窗体上的PictureBox控件作为容器。为了使界面美观,方便用户查找相关信息,我们使用PictureBox控件作为容器来显示和播放MPEG数据流。

-3.3.用PictureBox控件显示MPEG数据流

Visual Basic中的PictureBox控件可以显示来自位图、图标或图元文件的图形,以及增强的图元文件、JPEG或GIF文件。您还可以操作代码中的图形属性和方法来创建动画或模拟。在窗体上放置一个PictureBox控件picTV,在调用Windows\System下的动态链接库Quatrz.dll的基础上,定义一个全局对象pMC,使pMC指向FilgraphManager的一个新实例,打开压缩的MPEG文件。然后定义一个本地对象pVW作为IVideoWindow的新实例,打开一个播放视频的窗口;设pVW = pMC,将pVW赋给对象,将picTV的属性值hWnd赋给pVW的所有者,这样picTV就可以显示接收到的MPEG数据流。具体操作如下:

set pMC = New FilgraphManager
pMC。render file " C:\ Bank \ Montior \ Example。MPG " "/br/]Set pVW = pMC
pVW。window style = CLng(& h 6000000)
pVW。Left = 0
pVW。top = 0
Old width = pvw . width
Old = pvw . height
pictv . width = pvw . width * 15
pictv . height = pvw . height * 15
pvw . owner = pictv . hwnd
-可以单独定义一个函数。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » VisualBasic环境下VideoAudio压缩数据流播放技术

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情