学习笔记

By admin in 计算机教程 on 2019年11月16日

—- 1. 引言

常见的电影格式


1、RM格式:RM格式是RealNetworks公司开发的一种流媒体视频文件格式,可以根据网络数据传输的不同速率制定不同的压缩比率,从而实现低速率的Internet上进行视频文件的实时传送和播放。它主要包含RealAudio、RealVideo和RealFlash三部分。

银行的数字化监视监控系统是目前比较有市场及应用前景的开发项目,基于不同的MPEG采集卡与硬件外围设备开发的监视监控系统在国内外都有比较成型的技术。为了满足实时监视、实时采集压缩、随时回放、压缩数据流的传播等具体要求,在该系统中使用了一种用于网络视频/音频多点传输(视频广播)的视频数据采集卡,提供AVI(MPEG
I
Frame压缩编码)采集、MPG采集。发送端广播MPEG流,接受端接受MPEG流并显示,网络传输采用WinSock
2
IP-Multicast。如果本机为发送端,网络上另外任何一台PC可以作为接收端。只要指定不同端口号,同时可以有多台PC机作为发送端,多台PC机作为接收端接收不同发送端的视频数据,也可在传送数据的同时在本机将数据存为MPEG文件。本文主要介绍在VB的环境下开发MPEG卡采集的Audio/Video数据播放的一些编程技巧。

中文名       RM文件格式

—- 2. MPEG的内容与发展简介

外文名         RealMedia file format


性质        一种多媒体视频文件容器格式

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

开发者      RealNetworks公司

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

包含      RealAudio、RealVideo

—- 3.VB开发MPEG — Audio/Video数据流的播放技术

文件扩展名    .rm

—- 3.1.VB中Multimedia MCI
控件,MediaPlayer控件播放MPEG数据流的缺点

2、MP4格式:MP4是一套用于音频、视频信息的压缩编码标准,由国际标准化组织(ISO)和国际电工委员会(IEC)下属的“动态图像专家组”(Moving
Picture Experts
Group,即MPEG)制定,第一版在1998年10月通过,第二版在1999年12月通过。MPEG-4格式的主要用途在于网上流、光盘、语音发送(视频电话),以及电视广播。

—- VB中常用的多媒体控件是Multimedia MCI 控件,它管理媒体控制接口 (MCI)
设备上的多媒体文件的记录与回放。它被用来向诸如声卡、MIDI
序列发生器、CD-ROM 驱动器、视频 CD
播放器和视频磁带记录器及播放器等设备发出 MCI 命令,还支持 Windows
(*.avi) 视频文件的回放。采用Multimedia MCI
控件播放采集的MPEG数据流,播放速度比实时监控显示要快,在测试时还发现MPEG文件长度缩短到500k-600k时,就无法看到播出的图像了。改用VB中的MediaPlayer控件上叙缺点仍然存在。分析原因是:因为MPEG文件长度太短了,播放设备刚打开就已经关闭了,这是编程无法控制的。而且,对于用户要求获取的某些有关压缩数据流的信息和希望实现的某些功能,比如图线尺寸、Copmression
Rate、图形的缩放显示、界面的美观等,上叙控件所提供的为方便程序开发人员使用的高层接口已不适用,要想在此基础上实现对底层的一些操作,难度可想而知。在解决上叙实际性问题时,我们调用了动态链接库Quatrz.dll。

MPEG-4包含了MPEG-1及MPEG-2的绝大部份功能及其他格式的长处,并加入及扩充对虚拟现实模型语言(VRML
, VirtualReality Modeling
Language)的支持,面向对象的合成档案(包括音效,视讯及VRML对象),以及数字版权管理(DRM)及其他互动功能。而MPEG-4比MPEG-2更先进的其中一个特点,就是不再使用宏区块做影像分析,而是以影像上个体为变化记录,因此尽管影像变化速度很快、码率不足时,也不会出现方块画面。

—- 3.2.提供对MPEG流方便的底层操作和高层接口的动态链接库Quatrz.dll

中文名         动态图像专家组


外文名       Moving Picture Experts Group 4

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

制定单位          ISO、IEC

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

用途          语音发送、电视广播等。

—- Visual Basic中PictureBox
控件可以显示来自位图、图标或者元文件,以及来自增强的元文件、JPEG 或 GIF
文件的图形。亦可在代码中操作图形属性和方法,以创建动画或进行仿真。在窗体上放置了一个PictureBox控件picTV,在调用了WindowsSystem下动态链接库Quatrz.dll的基础上,定义一个全局的Object对象pMC,令
pMC指向
FilgraphManager的一个新实例,打开压播放的MPEG文件;再定义一个局部对象
pVW 为 IVideoWindow的新实例,打开一个播放Video的窗口;令pVW =
pMC,给对象引用pVW赋值,将picTV的属性值hWnd赋给pVW的Owner
,这样picTV就能显示接收的MPEG数据流了。具体操作如下:

3、RMVB:
 RealMedia可变比特率(RMVB)是RealNetworks公司开发的RealMedia多媒体数字容器格式的可变比特率(VBR)扩展版本。相对于更常见的按固定比特率(CBR)编码的流媒体RealMedia容器,RMVB典型应用于保存在本地的多媒体内容。使用该格式文件的扩展名是”.rmvb”。[1]

Set pMC = New FilgraphManager
pMC.RenderFile “C:BankMontiorExample.MPG”
Set pVW = pMC
pVW.WindowStyle = CLng(&H6000000)
pVW.Left = 0
pVW.Top = 0
OldWidth = pVW.width
OldHeight = pVW.Height
picTV.width = pVW.width * 15
picTV.Height = pVW.Height * 15

RMVB是一种视频文件格式,其中的VB指Variable Bit
Rate(可变比特率)。较上一代RM格式画面要清晰很多,原因是降低了静态画面下的比特率。

pVW.Owner = picTV.hWnd

可以单独定义一个函数包括这些代码,也可将其放到CommandButton控件的Click事件中。
—- 3.4.MPEG数据流的缩放显示


放大或缩小MPEG图像是各种多媒体播放软件中常用的图像显示处理手段。VisualBasic中对于静态图片进行缩放处理可以使用Image控件,将控件的Stretch属性设为True,则装入的图片会改变比例适应Image控件的范围,因此对图片的缩放处理变成对Image控件的Height、Width属性值的大小变化。由于控件的尺寸发生变化,显示的点距不能改变,造成显示点的像素点与图片不能完全一一对应,显示质量明显变差。只有Image控件才能对图片进行缩放,如果PictureBox控件不足以显示整幅图象,则裁剪图象以适应控件的大小。要想实现用PictureBox控件实现对输出MPEG图像的缩放,必须改变MPEG数据流的输出比例,在调节PictureBox控件的尺寸去适应输出的MPEG图像。实际上,在上面的第3小节里,为了显示输出MPEG图像已经这样做了。只不过用的是读取出的MPEG图像OldWidth、
OldHeight,下面给出一个以原来的1/2大小输出MPEG图像的例子。

pVW.width = OldWidth / 2
pVW.Height = OldHeight / 2
picTV.Left = 135
picTV.Top = 135
picTV.width = pVW.width * 15
picTV.Height = pVW.Height * 15
pVW.Owner = picTV.hWnd


在放大或缩小MPEG图像的尺寸时要注意保持Width、Height的比例一致,以免输出的图像变形。
—- 3.5.鼠标拖动播放MPEG数据流


用鼠标拖动滚动条随意播放MPEG数据流是Windows中多媒体播放机播放VCD的常用技术。VB中的Slider
控件是包含滑块和可选择性刻度标记的窗口,可以通过拖动滑块,用鼠标单击滑块的任意一侧或者使用键盘移动滑块。在选择离散数值或某个范围内的一组连续数值时,Slider
控件十分有用。通过将滑块移动到刻度标记处,可以对MPEG数据流进行定位播放。在窗体上放置一个Slider
控件Slider
1,设置好光标移动的最大步长LargeChange=5,最小步长SmallChange=1,最大移动范围Max=50,实现程序如下:

Private Sub Slider1_Scroll()

Dim pMP As IMediaPosition
Dim v As Double

If Not bOpen Then Exit Sub

bSeeking = True
pMC.Pause

Set pMP = pMC

v = Slider1.Value – Slider1.Min
v = v / Slider1.Max * pMP.Duration
pMP.CurrentPosition = v
Set pMP = Nothing

pMC.Run

End Sub

中文名       RealMedia可变比特率

—- 3.6.MPEG数据流采集时间的获取

VisualBasic里提供了一个函数FileDateTime可用来获取文件建立或是更新的日期与时间。定义一个局部对象
pMP 为IMediaPosition的新实例,令pMP =
pMC,给对象引用pMP赋值;再定义两个Double型的变量curpos
、length,将pMP.CurrentPosition赋给curpos,取得MPEG数据流的当前相对位置时间,将pMP.Duration
赋给length,取得MPEG数据流的时间长度值;就能获取MPEG数据流相对的采集时间。根据MPEG采集文件建立的特性将两个日期时间作加法或减法则可以得到MPEG数据流的采集时间。


在整个MPEG的播放过程中,都要求实时显示MPEG数据流的采集时间,可定义一个获取采集时间的函数,采用Timer控件的Timer事件来驱动。通过引发
Timer 事件,Timer
控件可以有规律地隔一段时间执行一次函数获取到MPEG数据流的采集时间。

—- 4.结束语


将成熟的图像压缩技术用于电视监视监控领域具有十分重要的意义。例如:在银行的监视监控系统中,由于客户(银行)身份的特殊性,在对冒领他人存款、银行失窃或被抢劫等扰乱银行正常工作秩序的事件的调查及其处理中,采集的压缩数据流是很重要的办案线索与证据。在该系统中不仅要求监视画面清晰,采集的数据冗余度低,MPEG数据流的播放技术也是很重要的。本文介绍了在Windows环境下,利用VisualBasic自身条件和原有控件开发MPEG卡采集的Audio/Video数据的播放技术。充分利用了VB的优越条件,灵活地与VB中各种现有控件结合,开发出来的MPEG媒体播放器功能完

http://www.bkjia.com/VBjc/526009.htmlwww.bkjia.comtruehttp://www.bkjia.com/VBjc/526009.htmlTechArticle—- 1. 引言 —-
银行的数字化监视监控系统是目前比较有市场及应用前景的开发项目,基于不同的MPEG采集卡与硬件外围设备开发的监视监…

外文名       RealMedia Variable Bitrate

定义           一种视频文件格式

应用           视频领域

扩展名         .rmvb

开发商            RealNetworks

4、VOB(Video
Object)是DVD视频媒体使用的容器格式,VOB将数字视频、数字音频、字幕、DVD菜单和导航等多种内容复用在一个流格式中。VOB格式中的文件可以被加密保护。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2020 澳门金沙30064在线网站 版权所有