CN100352270C - 一种支持多源流媒体的同步播放控制方法 - Google Patents

一种支持多源流媒体的同步播放控制方法 Download PDF

Info

Publication number
CN100352270C
CN100352270C CNB2005100962159A CN200510096215A CN100352270C CN 100352270 C CN100352270 C CN 100352270C CN B2005100962159 A CNB2005100962159 A CN B2005100962159A CN 200510096215 A CN200510096215 A CN 200510096215A CN 100352270 C CN100352270 C CN 100352270C
Authority
CN
China
Prior art keywords
video
media
synchronous
stream
audio
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2005100962159A
Other languages
English (en)
Other versions
CN1767601A (zh
Inventor
郑庆华
刘均
张之明
江丕峻
王晨旭
彭挺
陈洪
杨冬
林杰
伍洋
张帆
吕伟梅
姜山
丁凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Jiaotong University
Original Assignee
Xian Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian Jiaotong University filed Critical Xian Jiaotong University
Priority to CNB2005100962159A priority Critical patent/CN100352270C/zh
Publication of CN1767601A publication Critical patent/CN1767601A/zh
Application granted granted Critical
Publication of CN100352270C publication Critical patent/CN100352270C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种支持多源流媒体的同步播放控制方法,实现该方法的装置包括分离器、解码器组、多源流媒体同步、多源视频流融合、OSD以及音频滤镜;分离器将多个本地媒体文件或多路流媒体中的视音频数据进行分离;解码器组调用相应解码器,解码后数据被送至多源流媒体同步模块;同步模块采用多粒度分层同步控制机制对媒体对象之间以及媒体对象内的多路媒体流进行同步控制;多路视频由多源视频融合模块融合为一路视频;OSD模块将融合后的数据与音量大小、当前播放时间或字幕信息叠加后进行视频输出;多路音频由音频滤镜进行格式转换、线性叠加后进行音频输出。该播放器可广泛应用于网上课件点播、多场景监控、多录像回放、多视频点播等领域。

Description

一种支持多源流媒体的同步播放控制方法
所属领域
本发明属于计算机设计与应用技术领域,涉及计算机软件、多媒体技术以及视音频处理技术,特别涉及一种支持多源流媒体的同步播放控制方法。
背景技术
多媒体技术的飞速发展促使人们对复杂媒体呈现需求的不断提高,并已逐渐成为人们获取和传递信息、进行网络化自主学习的最有效手段。因此,各操作系统一直都力求能够对多媒体达到完美的支持。
多源流媒体是一种支持两路或者两路以上流媒体数据同步播放并以特定方式(如“画中画”、多窗口)进行表现的复杂媒体类型。它进一步提高了媒体的表现能力和信息含量,受到当前人们的普遍关注。
申请人经过查新,检索到与本发明相关专利1个,国内文献4篇,国外相关文献4篇:
(一)相关专利1个:
1.专利名称:基于UPNP协议的LINUX操作系统下的媒体播放器专利申请人:海信集团有限公司
(二)国内相关文献3篇:
1.标题:H.323同步控制实现研究,通信学报.2004,25(5).-67-74
2.标题:多媒体同步系统的缓冲区补偿技术
刊名:计算机学报.2003,26(4).-484-490
3.标题:一种新的媒体内同步控制算法
刊名:计算机研究与发展.2002,39(12).-1675-1680
4.标题:延时估计和实时数据的同步控制
刊名:通信学报.1999,20(2).-46-52
(三)国外相关文献4篇:
1.Title:A synchronization and flow control scheme for interactivemultimedia-on demand(MOD)systems
Author(s):Chung-Ming Huang;Chian Wang;Hsu-Yang Kung
Source:Proceedings Seventh International Conference on Parallel andDistributed Systems(Cat.No.PR00568):39-46,2000
2.Title:A performance comparison of single-stream and multi-streamapproaches to live media synchronization
Author(s):Tasaka,S.;Ishibashi,Y.
Source:IEICE Transactions on Communications vol.E81-B,no.11:1988-97,11 1998
3.Title:A synchronization scheme for distributed multimedia informationsystems
Author(s):Lu,G.J.;Pung,H.K.;Chua,T.S.
Editor(s):Ng,C.S.;Yeo,T.S.;Yeo,S.P.
Source:Communications on the Move.Singapore.ICCS/ISITA′92(Cat.No.92TH0479-6):1-5 vol.1,1992
4.Title:A fast,multi-platform open source SMIL playerConference:ACM Multimedia 2004-proceedings of the 12th ACMInternational Conference on Multimedia
Publisher:Association for Computing Machinery
对上述文献分析如下:
在专利1中,发明人提出了一种基于UPNP协议的LINUX操作系统下的媒体播放器,其应用程序模块主要包括有内容传输子系统、格式解码子系统,以及音视频传输服务模块、连接管理服务模块和播放器控制服务模块,其特征在于:在应用程序模块中设置有UPNP协议栈。该发明所提到的基于UPnP协议的媒体播放器,主要实现了网络中媒体播放器自动发现和互操作的功能,提供用户间共享使用网络资源的功能。
国内文献[1]中,提出并实现了一种H.323多媒体通信系统音视频同步控制算法,算法以正常语音播放为基准,利用H.263码流语法信息,通过调整视频播放帧率实现媒体间同步,不增加通信冗余度。
国内文献[2]中,主要针对时延抖动这一影响多媒体信息连续播放质量的重要因素,通过在播放端设置缓冲区以抵消时延抖动,从而保证媒体内及媒体间的同步。
国内文献[3]中,提出的媒体同步播放方案,是基于发送方的媒体同步控制,根据缓冲区的占用情况来检测失步,并将其反馈给发送方,发送方利用给出的控制函数对发送帧率进行调整,来保持接收方媒体的同步播放。
国内文献[4]中,提出的同步控制算法,针对常见分组网缺乏QoS业务的特点,借助于RTP的数据传输机制,通过对报文延时及延时抖动的估计,来调节和维持实时媒体数据的同步。
国外文献[1]中,主要论述了媒体点播系统对VCR交互的响应方式。针对分布式多媒体环境下的媒体交互,提出了一些同步控制方法,但这些方法很不具体。
国外文献[2]中,论述了视音频之间的单流与多流传输问题。由于视频流和音频流的分开传输,导致在传输过程中产生的唇音不同步的问题,论文提出施行动态分流传输控制可以改善同步质量。
国外文献[3]中,论述了流内同步及流间同步问题及用户交互对多流呈现的影响;提出流内的同步主要依靠媒体和呈现媒体之间的时间关系,对流间的同步是根据媒体的同步属性来建立和维护它们之间的同步。
国外文献[4]中,论述了一种以新的SMIL引擎为核心的、跨平台的媒体播放器。该播放器未对SMIL文件中多路媒体进行同步控制,也未对多个视频窗口进行融合。
从国内、外数据库检索和文献分析看,主要是对单路媒体流的流内同步讨论较多,关于多源流媒体的同步控制方法与多路媒体数据融合方法并未涉及。对流内同步方法主要有两种,一是调整播放端缓冲区的大小,保证媒体间的同步;基于传输协议,来调节和维护媒体数据的同步。
发明内容
为了克服上述现有技术存在的缺陷或不足,本发明提供支持多源流媒体的同步播放控制方法,可将来自媒体服务器或媒体文件的多路时序相关的异构媒体进行同步控制,并在多路视频融合后进行播放。
本发明的技术方案是这样实现的:
流媒体同步播放控制,采用流媒体同步播放控制装置实现,该装置包括分离器、解码器组、多源流媒体同步模块、多源视频流融合模块、OSD模块以及音频滤镜;分离器接收来自多个本地媒体文件或网上多路流媒体中的媒体数据,并实时地将每路媒体流中的视音频数据进行分离,分离后的数据各自进入相应队列;解码器组从队列中接收到视音频数据,根据其所采用的多媒体编码算法,调用相应的解码器,以多进程方式并行地完成多路视音频数据的解码,并将解码后媒体数据送至多源流媒体同步模块;多源流媒体同步模块接收到多路媒体流数据后,采用多粒度分层同步控制机制对媒体对象之间以及媒体对象内的多路媒体流进行同步控制;同步后的多路视频与多路音频数据分别送至多源视频流融合模块与音频滤镜;多源视频融合模块采用基于图像融合的视频融合算法将多路同步视频融合为一路视频,以避免多个视频窗口重叠显示;融合过程中,该模块还能实现主次媒体对象视频的切换,并重新进行融合;OSD模块接收到融合后的视频数据后,将音量大小、当前播放时间或字幕信息叠加到视频上,并进行输出;最终实现多路视频流的同步播放控制;音频滤镜到融合后的音频数据后,进行格式转变,如增益,重采样,并进行线性叠加,最终实现多路音频流的同步播放控制。
在多源流媒体同步模块,采用了一种多粒度分层同步控制机制,是将同步问题分解为媒体层、流层和对象层的三个层次;在流层,根据音频、视频、字幕的优先级顺序,首先,基于呈现时间戳PTS实现视音频的同步,其次,基于参考点RP实现字幕与视频的同步,流层媒体数据的同步解决了媒体对象内的同步;在流层同步的基础上,在对象层,采用多进程间的管道通信机制实现了媒体对象间的同步。
在多源视频融合模块,采用基于图像融合的视频融合算法;该算法是将多个视频窗口在一个虚拟背景中的进行图像融合:首先,对同步后的多路视频流中的视频帧进行色度空间的转换,将YUV格式统一转化为RGB(RedGreen Blue)格式,其次,根据用户选择确定主从视频;第三,根据主从关系对视频帧大小进行映射变换,并确定在虚拟背景上位置;第四,在虚拟背景上进行像素级的融合,生成“画中画”效果的融合视频。
采用本发明,可以实现一种支持多源流媒体的播放器,该播放器支持各种媒体流及本地媒体文件的播放;并能支持它们之间组合形成的异构多源媒体同步播放。该播放器可广泛应用于网上课件点播、多场景监控、多录像回放、多视频点播等领域。
附图说明
图1为本发明体系结构及数据流示意图;
图2为本发明多源流媒体播放过程中同步问题的描述示意图;
图3为本发明多粒度分层同步参考模型示意图;
图4为本发明媒体对象间同步模型示意图;
图5为本发明多源视频流图像分屏融合的原理示意图;
图6为本发明图像大小的映射变化过程示意图;
图7为本发明分频融合区域示意图;
图8为本发明象素级“画中画”视频融合过程示意图;
图9为本发明多源视频流融合效果。
具体实施方式
下面结合附图对本发明作进一步的详细描述。
同步播放控制机制的组成与工作机理
参照图1所示,流媒体同步播放控制装置包括分离器、解码器组、多源流媒体同步模块、多源视频流融合模块、OSD模块以及音频滤镜。
分离器用于接收来自多个本地媒体文件或网上多路流媒体中的媒体数据,并对其进行格式识别、分离。媒体文件开头部分有一段数据可用于识别媒体格式,这部分数据包括文件类型,包含的数据流数量,数据流类型,数据流的编码算法,根据这些信息,可将媒体分离为单独的视频流、音频流及字幕流;分离后的数据各自进入相应队列。
解码器组从队列中接收到视音频数据,根据其所采用的多媒体编码算法,调用相应的解码器,以多进程方式并行地完成多路视音频数据的解码,视频数据被解码成BMP或YUV格式的图像帧,音频数据被解码成线性格式;解码后媒体数据被送至多源流媒体同步模块。
多源流媒体同步模块接收到多路媒体流据后,采用多粒度分层同步控制机制对媒体对象之间以及媒体对象内的多路媒体流进行同步控制;在媒体对象内(流层),根据音频、视频、字幕的优先级顺序,首先,基于PTS实现视音频的同步,其次,基于RP实现字幕与视频的同步;在流层同步的基础上,在对象层,采用多进程间的管道通信机制实现了媒体对象间的同步。同步后的多路视频与多路音频数据分别送至多源视频流融合模块与音频滤镜。
多源视频流融合模块采用图像融合技术实现将多路同步视频融合为一路视频,以避免多个视频窗口重叠显示;融合过程中,该模块还能实现主次媒体对象视频的切换,并重新进行融合。OSD模块接收到融合后的视频数据后,将音量大小、当前播放时间或字幕信息叠加到视频上,并进行输出;最终实现多路视频流的同步播放控制。
音频滤镜到融合后的音频数据后,将其转化为适合输入的格式,并进行线性叠加,最终实现多路音频流的同步播放控制。
关键技术
多粒度分层的多源流媒体同步控制方法
(1)多源流媒体同步问题描述
参照图2所示,多源流媒体同步问题,图2中有媒体对象1与2两个媒体对象,每个媒体对象包含视频流、音频流、字幕流。其中ta是指一个媒体流内部媒体数据包的时态关系;tb与tc是指一个媒体对象内部的不同媒体流之间的时态关系,这里分别是媒体对象1中视频与音频、视频与字幕的时态关系。根据在同步过程中对时序要求的严格程度,还可以将流间同步再一步细分为动态同步和静态同步两种。tb所描述的音、视频唇音同步是一种动态同步过程,它要求音视频在播放过程中的任何时刻保持同步;tc所描述的字幕和视频的的同步则是一个静态同步过程,对于特定的一屏字幕,它对应了一段显示时间区间,只要保证在区间点时刻(或称为参考点)与视频流的同步即可,而对这段时间区间内的任何时刻,并没有同步操作。
如果媒体对象内是严格同步的,则有:
ta=1/fps,tb=0,tc=0
其中,fps为视频帧速率。
两个或者两个以上媒体对象之间的同步关系,用tM描述,图2中tM表示媒体对象1与媒体对象2中音频数据之间的时序关系,同样,如果媒体对象间是严格同步的,则有:
tM=0
在多源流媒体播放过程中,流内同步的同步粒度最小,它是解决媒体对象内同步的基础和前提,媒体对象间的同步则是在媒体对象内同步的基础上多个媒体对象间的时序关系,它的同步粒度最大。一般情况下,ta依赖于媒体文件本身或流媒体传输的结果,而且基本上已经能满足多源流媒体同步需求,所以,在本发明的研究重点是:
通过一系列有效的同步机制,使tb、tc和tM的值最小。
(2)多粒度分层同步参考模型
针对多源流媒体播放中的各种同步问题,提出了面向多源流媒体播放的多粒度分层同步参考模型。
参照图3所示,在分层同步模型中,我们将不同的同步需求分为三层:媒体层、流层和对象层,在模型图中右侧给出的是每层对应的同步操作对象。
媒体层:其目的是实现流内各个媒体单元的同步,媒体单元包括视频帧、音频采样以及字幕段。目前,该层的同步机制主要是在多媒体数据在网络传输过程中,通过在发送端或本地接收端设置相应的缓冲区、改变发送端发送速率并采取ARQ反馈机制实现的,该过程发生在媒体数据网络传输阶段,不属于本发明范畴之内,因此,对媒体层的同步不进行说明。对于流层和同步层,其同步过程是透明的。ta是该层的同步状态描述参数。
流层:其目的是实现了媒体流之间同步。媒体流包括视频流、音频流、字幕流,根据音频、视频、字幕的优先级,我们采用了基于时间戳的流间同步机制。这里,对于音频、视频,时间戳是媒体数据的PTS,表示一个数据包期望被呈现的静态时间标记,对于字幕,时间戳是是字幕的RP,即字幕期望被显示、隐藏的静态时间标记。tb和tc是该层的同步状态描述参数,分别描述视音频之间以及视频与屏幕之间的同步。
对象层:其目的是实现媒体对象间的同步。我们通过运用管道实现多个媒体对象进程间的通讯功能,提出了基于管道通信的媒体对象间同步机制。tM是该层同步状态描述参数。
其中,媒体层的同步是实现流层同步的基础,而流层的同步又是实现对象层同步的前提。在上述的三层同步模型中可以看到,在每一同步层内,我们通过相应的同步机制,解决了该层同步操作对象的同步问题。
(3)同步基准的建立
由于各同步层的同步粒度差异较大,具体来说,流层的同步粒度小,对象层的同步粒度大,因此,各同步层中的同步基准也具有差异性。
■流层的同步基准
流层同步的主要操作对象是视频流、音频流以及字幕流等,要确定流层的同步基准,其实就是根据媒体对象内部上述三种流的优先级关系而确定主媒体流。
由于人耳对声音停顿、重复或播放速率的调整较为敏感,因此通常将音频流作为主媒体流,而将视频流及其它媒体流作为从媒体流,通过调整播放时间实现流层的流间同步。
视音频的同步是一种动态同步过程,对同步的性能要求比较高,而字幕流的同步是一种静态同步的过程,对同步的性能要求并不是很高。根据上述分析可以确定三种主要媒体流具有“音频>视频>字幕”的优先级关系。所以,音频流是流层的同步基准。特别地,如果流层处理的媒体对象没有音频流,根据优先级,可以确定视频流为同步基准。
■对象层的同步基准
对象层的同步情况分为两类:一、无需同步,即组成多源流媒体播放中的多个媒体对象之间,几乎没有依赖性,不用进行同步处理,阈值空间的值为无限大。如多个无关的媒体对象的多源流播放。二、精确同步,即组成多源流媒体播放中的多个媒体对象之间,同步要求较高,同步阈值空间较小。如一场体育比赛中在多个不同角度拍摄到的赛场视频的全景回放过程,其同步阈值需设置在1s以下。
根据上述分析,我们提出了能够唯一描述媒体对象的7元向量模型:
MO=<ID,Ts,Weight,ThRank,MRL,Fusion,Info>
其中,
MO:Media Object,是指媒体对象;
ID:唯一标识该媒体对象的一个正整数;
Ts:TimeStamp,记录该媒体对象的播放位置,由流层的接口提供,一般为该媒体对象中的主媒体流的PTS值;
Weight:权重,是一个正整数,标记该媒体对象同步性能要求的高低,规定其值越小同步要求就越高,默认主媒体对象的权重值为1;
ThRank:Threshold Rank,阈值等级,是一相对值,表示该媒体对象和主媒体对象之间同步性能要求的高低。根据实际应用需要,我们确定如下阈值等级列表:
Figure C20051009621500141
MRL:指该媒体对象的资源路径,它可以是本地路径或者网络流路径;
Fusion:视频融合的标识位,值为Major、Minor或None;
Info:用于描述该媒体对象的一些附加信息。
如果对象层要处理N个媒体对象间的同步问题,我们用向量M=(MO0,MO1,…MON),来记录对象层同步元素集。
在M中,我们把权重值最小的媒体对象定义为对象层的同步基准。
(4)媒体对象内同步
媒体对象内同步包括视音频的同步与字幕、视频的同步。
■基于PTS的视音频同步
基于PTS的视音频同步的主要思想为:音频按照正常速度播放,视频帧控制程序根据同步状态检测程序的输出结果对视频帧进行正常播放或丢帧处理,在每播完一视频帧后,A/V PTS校正程序对音频延时做相应处理并将结果反馈到同步状态检测程序,从而完成对当前不同步情况的修正。
设:
audio_delay:音频延时,是同步状态检测程序判断当前同步状态的重要依据,初始值为0;
timer:当前视频的播放位置,初始值为0;
playsize:声卡Buffer中可以填入数据的空间大小;
o_bps:一秒钟未压缩音频字节数;
fps:frame per second,视频帧速率;
Th:音、视频同步阈值空间,取值100ms;
v_pts:当前视频PTS;
a_pts:当前音频PTS;
T1:自当前音频pts到当前读取的音频数据的播放延时;
T2:音频流的输入缓冲区存放的音频数据的播放延时;
T3:解压后尚未送进声卡的音频数据的播放延时;
T4:声卡中尚未播放的音频数据的播放延时;
AV_delay:由A/V PTS校正程序计算出来的当前正在播放的音、视频间存在的实际延时,通过修正跨度因子S,对audio_delay进行修正;
S:修正跨度因子,在算法实现中,取值为0.1。如果我们得到AV_delay值为1s,则A/V PTS校正程序经过多次完成对该AV_delay的全部修正,这样就避免了因修正值过大对视频播放产生明显的“抖动”现象。
基于PTS的音、视频同步算法:
Step1开始,初始化audio_delay=0,timer=0;
Step2若文件播放完毕,转Step13,否则,获得声卡Buffer中可以填入数据的空间大小playsize,继续;
Step3解压缩playzise大小的音频数据并送入声卡播放;
Step4修改audio_delay的值;
audio_delay=audio_delay+playsize/o_bps
Step5读取一帧未解码的视频帧数据,修改audio_delay和timer的值;
timer=timer+1/fps
audio_delay=audio_delay-1/fps
Step6同步状态检测程序计算audio_delay-T4值,如果该值大于音、视频同步阈值空间Th值,则出现了不同步现象,转Step12,否则,继续;
Step7视频帧控制程序解压该视频帧,sleep(1/fps-上面操作所用时间),显示;
*********A/VPTS校正程序对audio_delay值进行修正******
Step8获取a_pts和v_pts值,并修改a_pts为当前正在播放音频的时刻;
a_pts=a_pts+T1-T2-T3-T4
Step9计算AV_delay值;
AV_delay=a_pts-v_pts
Step10修正audio_delay值;
audio_delay=audio_delay+AV_delay*S
***********A/V PTS校正程序修正结束**************
Step11返回Step2;
Step12视频帧控制程序不解压此视频帧,做丢弃处理,返回Step2;
Step13结束。
■基于“参考点”的字幕、视频同步
字幕的显示与隐藏需要与视频帧的PTS保持同步,每一个“参考点”其实都对应着一个视频PTS,当视频PTS到达的时候,字幕显示控制程序就可以确定是否当前的字幕内容是否需要显示或者隐藏。由此可知,只要保证第一个参考点与视频的PTS保持同步,其他参考点都相对于第一个参考点的固定延时而保持了同步,因为每段字幕内容的的显示时间都是确定的。这样,就很简单的实现了字幕与视频的同步。
(5)对象层同步
对象层同步需要确定同步交互信息格式和维护各种基础同步信息。
■同步交互信息格式
我们确定对象层同步交互信息格式如下:
SyncMsg=ID+Ts+Weight+ThRank+Action+Param
在上式中,共有6部分数据组成,其中前4部分数据与媒体对象模型中信息一致,后两部分数据说明如下:
Action:表示该消息的接收媒体对象进程所需要采取的动作,即主媒体对象进程给从媒体对象进程的执行命令;
Param:一般是执行Action命令时所需要附加信息。
其中Action和Param相对应的值如下表所示:
Figure C20051009621500181
■基础同步信息
为了实现多源媒体的同步,系统需要建立并维护以下同步信息数据:
①媒体对象链表:PlayTree
记录当前正在播放的多个媒体对象的基本信息,是一个动态链表。
②阈值等级矩阵:TRM(Threshold Rank Matrix)
TRM=(ThR21,ThR31,...ThRN1)T
它是一个N-1维的向量,记录所有从媒体对象与主媒体对象间的阈值等级。
③同步偏离矩阵:SSM(Synchronization Skew Matrix)
理论上,N个媒体对象间的同步关系是一个二维的关系,即N×N的矩阵SSM1
Figure C20051009621500191
其中ssij(i,j=0,1,...,N)是第i个媒体对象和第j个媒体对象间的同步偏离值(Tsi-Tsj)。
由于SSM1是一个反对称阵,而我们只要知道其中上半部分或下半部分的数据,就完全可以进行媒体对象的同步处理,所以我们可以将SSM1简化为下式上三角矩阵SSM2
Figure C20051009621500192
实际上,根据对象层同步基准的确立过程可以知道,在媒体对象间同步中,从媒体对象间的同步可以不作关心,关键是处理好主媒体对象和从媒体对象之间的同步关系,由此,我们还可以将SSM2简化下式同步偏离矩阵SSM:
SSM=(ss21,ss31,...,ssN1)
它也是一个N-1维的向量,由此我们得到了在媒体对象间同步过程中非常重要的同步偏离矩阵SSM。并且,通过这种方式,我们将对象层较为复杂的二维同步问题简化为一维同步问题。
■媒体对象间同步模型
有了对象层能同步元素集M,同步交互信息格式SyncMsg,以及基础同步信息PlayTree、TRM、SSM,对象层同步的基本思想:
首先,根据M获得PlayTree,并构建TRM和SSM;
其次,以SyncMsg为基础进行进程间通信交互各媒体对象进程的同步信息,更新PlayTree、SSM并进行动态维护;
最后,同步偏离程序根据PlayTree、TRM、SSM信息检测当前的不同步状态,并进行同步处理:主媒体对象按照正常速度播放,从媒体对象的播放可能要做跳过或暂停操作(接收主媒体对象命令信息),由此完成媒体对象间同步。
由此可见,媒体对象间同步相比于音视频的同步,需要处理的对象多,粒度大,动态性强。
参照图4所示,我们对于基于管道通信的媒体对象间同步过程说明如下:
(1)多源流媒体播放程序开始,根据输入媒体的相关信息,确定主媒体对象,初始化Ts、Weight、ThRank等参数,创建PlayTree,启动主媒体对象播放进程并按常速播放,同时启动各从媒体对象播放进程。
(2)由PlayTree生成阈值等级矩阵TRM。
(3)通过进程间的管道通信,主媒体对象播放进程所获得的所有从媒体对象的状态信息,及时更新PlayTree中Ts参数值,完成对PlayTree的动态维护。
(4)完成三项功能:I保持和主媒体对象进程的管道通信,将从媒体对象自身的状态信息及时反馈给主媒体对象进程;II接受主媒体对象进程的命令信息,执行同步操作;III接收用户对从媒体对象的VCR控制信息。
(5)根据PlayTree生成并动态维护同步偏离矩阵SSM。
(6)同步检测程序通过比较SSM和TRM中对应位的值,即如果发现其中的一个从媒体对象的SSj1值超过了其相应的Thj1值,产生不同步信息。
(7)将不同步信息通知主媒体对象进程,主媒体对象进程采用管道通信向不同步的从媒体对象进程发送命令信息SyncMsg,完成同步操作。
(8)用户对主媒体对象进行VCR控制。
(9)用户对从媒体对象进行VCR控制。
对于该同步模型,需要说明以下几点:
步骤(3)~(7)构成一个闭环过程,它是实现媒体对象间同步的核心环路。
在该同步模型中,还有一个Clock模块,它不是系统参考时间SCR(System Clock Reference),而是由TRM中最小值和SCR共同得到的一个时钟参数,是该同步模型的“全局时钟”,由此“统一领导”同步情况的检测和纠正。
如果同步检测程序检测结果有多个不同步信息,系统将首先处理其ThRank值较低(优先级较高)的不同步情况。如果媒体对象的ThRank值为-1,同步检测程序将忽略对此媒体对象的同步处理。
主媒体对象和从媒体对象的用户VCR控制的实现稍有不同。对于主媒体对象,直接将VCR控制信息通知从媒体对象进程并采取相应VCR操作;对于从媒体对象,首先将该信息发送至主媒体对象进程,并由主媒体对象进程将信息发送到其他从媒体对象进程。
在进行Seek操作和VCR操作的时候,都有一个全局同步的过程,此操作由主媒体对象进程实现。
这样,我们已经完整的提出了面向多源流媒体播放的同步解决方案,多源流媒体的同步问题得到了解决。
基于图像融合的视频融合机制
多源视频流融合的目的就是使前景在选定融合中心点或区域实现前景与背景的覆盖(Overlay),并在边界处做一些流畅和平滑过渡处理。
首先,我们对背景和前景进行预处理,为进行象素级融合打好基础,然后,在背景中选取要融合的中心位置或区域,最后应用融合算法达到我们的融合要求,完成融合过程。
参照图5所示,预处理完成了对不同格式的图像进行色度空间的转换、图像维数的标准化、图像大小的映射变换等工作。融合位置的选择确定了前景和背景的相对位置。融合算法完成了图像的象素级融合。以上步骤完成了图像融合的基本功能,在此基础上实现多源流视频的融合,但是,多源流视频的融合过程较之两个图像的融合过程更具复杂性,所以,需要将上述流程进行扩展(图5中虚框所示)。
多源流视频分频融合所处理的是多个前景在一个虚拟背景中的图像融合过程,这些前景都互不覆盖,因此在视频解码器输出形成视频帧之后我们还需要完成主次前景的选择过程,复杂的融合位置的定位过程等,而且,对于不同视频输出设备对色度空间的支持情况各异,我们需要对融合输出做适当“后处理”,以便于灵活适应,如为了实现前景到背景的平滑过渡,在图像的渐变区域内,融合后的每个象素既包括了来自背景的信息,又存在前景的信息。
■多源流视频融合算法
设:在多源流的播放过程中获得视频帧序列Fi,i∈[1,N],解码后为图像文件序列Bi,i∈[1,N]:
S1.开始
接收图像文件序列Bi,作为图像融合的输入,多源流视频分频流融合开始。
S2.生成虚拟背景
根据最后视频输出设备分辨率大小(设为U×V),生成图像融合的虚拟背景bgB(background Bitmap),格式为RGB24,每个象素填充值0xFFFFFF(黑色)。如何媒体文件播放结束,转S12,否则继续。
S3.确定主次前景
根据接收到的Bi,选取其中的一个图像文件Bj,j∈[1,N]作为图像融合的主前景MajorFB(Major Frontground Bitmap),其余的都作为图像融合次前景MinorFBk,k∈[1,N-1](Minor Frontground Bitmap)。
根据能够唯一标识媒体对象的7元向量模型,在这个模型中有一个Fusion域,它是视频融合的标识位,值可以为Major、Minor或None,各值的意义如下:
Major:标识媒体对象为视频融合中的主前景;
Minor:标识媒体对象为视频融合中的次前景;
None:标识媒体对象不进行视频融合。
一般情况下,系统默认主媒体对象的Fusion值为Major,从媒体对象的Fusion值为Minor,媒体对象的Fusion值接受用户的修改。这样,就确定了一个主前景MajorFB,N-1个次前景MinorFBk,k∈[1,N-1]。
如果所有媒体对象的Fusion值为None,则不进行视频融合,采用多窗口方式显示,转S12。
S4.色度空间的转换
由于确定的MajorFB和MinorFBk,k∈[1,N-1]可能采用了不同的色度空间,格式不一致,因此需要将上述图像进行色度空间(图像格式)的转换,为了便于进一步的图像融合处理,通过下式将所有的图像转换到RGB空间上来,其转换结果都为RGB24的无压缩BMP位图文件格式。
R G B = 1.000 0 1.140 1.000 - 0.390 - 0.580 1.000 2.030 0 Y U V
S5.图像维数的标准化
将MajorFB和MinorFBk,k∈[1,N-1]的分辨率标准化为U×V,为MajorFB、MinorFBk,k∈[1,N-1]和bgB进行象素级的融合奠定基础。
S6.图像大小的映射变换
进行融合前,需要对MajorFB和MinorFBk,k∈[1,N-1]进行图像大小的转换,这是一个象素映射变换的过程,其变换函数记为f。我们对该过程进行简单叙述,一般图像的宽与高之比为4∶3,不失一般性,假设我们需要将原始的图像MajorFB和MinorFBk,k∈[1,N-1](U×V)缩小为原来的1/z,缩小后图像MajorFB和MinorFBk,k∈[1,N-1]的维数为m×n,正整数z称为图像缩放倍率。不妨设:
U=zm+I,V=zn+r
故,对MajorFB和MinorFBk,k∈[1,N-1]可采用丢弃部分边缘象素(图中1×r区域),正比缩小的方法转换图像大小,其中对原图象素每z×z方阵象素区中取一点作为MajorFBz和MinorFBkz,k∈[1,N-1]的象素,即存在以下的象素映射关系:
MajorFBz=f(z,MajorFB)
MinorFBkz=f(z,MinorFBk),k∈[1,N-1]
参照图6所示其转换过程:
这样,就确定了前景MajorFBz或MinorFBkz,k[1,N-1]在虚拟背景bgB中的融合区域m×n.
参照图7所示:
S7.融合位置的计算
根据U、V和图像缩放倍率z分别对主次前景的大小进行了变换,并且由此得到了变换后主次前景在背景中的融合区域Q:m×n。但我们还需确定MajorFBz和MinorFBkz,k∈[1,N-1]的第一个象素在bgB中的位置P:P(x,y)和Pk(xk,yk)之后,才能完全确定各前景在背景中的融合位置。
在多源视频流的融合过程中,我们采用“画中画”形式,Pk(xk,yk)之间使用简单的线性关系表示,即:
Pk+1(xk+1,yk+1)=Pk(xk,yk+n)
如果MajorFBz不存在,即S3中所有媒体的Fusion值都为Minor,则将MinorFBkz在bgB“平均布局”。
S8.象素级“画中画”视频融合
假设融合后的输出为bgB’,在已有bgB、MajorFBz和MinorFBkz,k∈[1,N-1]、P、Q的基础上,给出视频融合的过程。
参照图8所示视频融合的过程:
把融合过程记为F。bgB’是通过象素级图像融合过程F将bgB和MajorFBz和MinorFBkz,k∈[1,N-1]进行N次融合的结果。
设bgB、MajorFBz和MinorFBkz,k[1,N-1]都是线性地址保存,即:
bgB=byte[0..3*U*V-1]
MajorFBz,MinorFBkz=byte[0..3*m*n-1],k∈[1,N-1]
以MinorFBkz,k∈[1,N-1]和bgB的融合过程为例,融合过程F可以用以下算法描述:
***********************多源视频流融合算法********************
001  for I=0 to N-1do  //连续执行N次融合过程
002      for J=0 to m-1 do  //替换Q中的第J+1行象素
003          for K=0 to n-1 do  //替换Q中的第J+1行、第K+1列所对应
的象素
004          begin
005             bgB{[(xI+1-1)*n+yI+1-1]*3}=MinorFB(I+1)z[(J*n+K)*3];
                //替换象素中的R分量
006             bgB{[(xI+1-1)*n+yI+1-1]*3+1}=MinorFB(I+1)z[(J*n+K)*3+1];
                //替换象素中的G分量
007        bgB{[(xI+1-1)*n+yI+1-1]*3+2}=MinorFB(I+1)z[(J*n+K)*3+2];
           //替换象素中的B分量
008        end.
*************************************************************
到此,通过F完成了多源视频流“画中画”象素级融合。
S9.后处理
根据不同的视频输出设备支持的色度空间的差异,对bgB’进行类似S4的色度空间转换和类似S5的图像大小缩放处理。
S10.视频输出
通过Video Out将在一个视频窗口中以“画中画”方式呈现给用户。
S11.用户窗口控制
在多源视频的播放过程中,接受用户窗口操作(如将主前景全屏,切换主前景和次前景等),程序修改媒体对象的Fusion域的值,返回S2,系统重新启动新的多源视频流融合过程。
参照图9所示视频融合后的效果图。
■窗口控制策略
由于视频窗口比较小,细节信息无法看清,为此引入了窗口控制策略,实现主次前景媒体对象视频的灵活切换。
策略:融合后的视频窗口bgB’是一个U×V维的窗口,其中每一个象素都对应着视频窗口中的一个坐标p(u,v),如图8所示,根据bgB、MajorFBz和MinorFBkz,k∈[1,N-1],我们可以判断点p(u,v)是在当前的主前景媒体对象MajorFBz,还是在次前景媒体对象MinorFBkz,k∈[1,N-1]区域内,进而通过修改相应媒体对象的Fusion域的值,重新启动多源流视频融合算法,完成主次前景媒体对象视频的切换功能。
定义消息evFusion,用户在次前景窗口中双击时产生,当多源视频窗口接收到该消息后,程序修改当前主前景媒体对象的Fusion值为Minor,而修改次前景媒体对象的Fusion值为Major。

Claims (2)

1.一种支持多源流媒体的同步播放控制方法,其特征在于:采用流媒体同步播放控制装置实现,该装置包括分离器、解码器组、多源流媒体同步模块、多源视频流融合模块、屏幕显示模块以及音频滤镜;分离器接收来自多个本地媒体文件或网上多路流媒体中的媒体数据,并实时地将每路媒体流中的视音频数据进行分离,分离后的数据各自进入相应队列;解码器组从队列中接收到视音频数据,根据所采用的多媒体编码算法,调用相应的解码器,以多进程方式并行地完成多路视音频数据的解码,并将解码后媒体数据送至多源流媒体同步模块;多源流媒体同步模块接收到多路媒体流数据后,采用多粒度分层同步控制方法对媒体对象之间以及媒体对象内的多路媒体流进行同步控制;同步后的多路视频与多路音频数据分别送至多源视频流融合模块与音频滤镜;多源视频流融合模块采用基于图像融合的视频融合算法将多路同步视频融合为一路视频;融合过程中,该模块还能实现主次媒体对象视频的切换,并重新进行融合;屏幕显示模块接收到融合后的视频数据后,将音量大小、当前播放时间或字幕信息叠加到视频上,并进行输出;最终实现多路视频流的同步播放控制;音频滤镜到融合后的音频数据后,进行格式转变,重采样,并进行线性叠加,最终实现多路音频流的同步播放控制;所述的多粒度分层同步控制方法,是将同步问题分解为媒体层、流层和对象层的三个层次;在流层,根据音频、视频、字幕的优先级顺序,首先,基于呈现时间戳实现视音频的同步,其次,基于参考点实现字幕与视频的同步,流层媒体数据的同步解决了媒体对象内的同步;在流层同步的基础上,在对象层,采用多进程间的管道通信机制实现媒体对象间的同步。
2.根据权利要求1所述的一种支持多源流媒体的同步播放控制方法,其特征在于:在多源视频融合模块采用的基于图像融合的视频融合算法是将多个视频窗口在一个虚拟背景中进行图像融合:首先,对同步后的多路视频流中的视频帧进行色度空间的转换,将YUV格式统一化为RGB格式,其次,根据用户选择确定主从视频;第三,根据主从关系对视频帧大小进行映射变换,并确定在虚拟背景上的位置;第四,在虚拟背景上进行像素级的融合,生成“画中画”效果的融合视频。
CNB2005100962159A 2005-10-21 2005-10-21 一种支持多源流媒体的同步播放控制方法 Expired - Fee Related CN100352270C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100962159A CN100352270C (zh) 2005-10-21 2005-10-21 一种支持多源流媒体的同步播放控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100962159A CN100352270C (zh) 2005-10-21 2005-10-21 一种支持多源流媒体的同步播放控制方法

Publications (2)

Publication Number Publication Date
CN1767601A CN1767601A (zh) 2006-05-03
CN100352270C true CN100352270C (zh) 2007-11-28

Family

ID=36743175

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100962159A Expired - Fee Related CN100352270C (zh) 2005-10-21 2005-10-21 一种支持多源流媒体的同步播放控制方法

Country Status (1)

Country Link
CN (1) CN100352270C (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720251B2 (en) * 2006-06-23 2010-05-18 Echo 360, Inc. Embedded appliance for multimedia capture
JP4281778B2 (ja) * 2006-10-13 2009-06-17 ソニー株式会社 撮像装置および撮像画像記録方法
CN101179484A (zh) * 2006-11-09 2008-05-14 华为技术有限公司 一种不同媒体流间的同步方法及系统
WO2008079112A1 (en) * 2006-12-20 2008-07-03 Thomson Licensing Embedded audio routing switcher
CN101212679B (zh) * 2006-12-30 2010-04-14 凌阳科技股份有限公司 Avi文件播放时切换多路音频流的av同步方法及装置
CN101034582B (zh) * 2007-04-02 2011-01-26 北京暴风网际科技有限公司 一种提高媒体文件播放效果的系统及其方法
CN101068345B (zh) * 2007-05-24 2010-06-23 杭州华三通信技术有限公司 视频监控方法和系统以及网络传输设备
JP5529033B2 (ja) * 2007-12-05 2014-06-25 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ 端末の出力を同期させる方法およびシステム
CN101227265B (zh) * 2008-01-31 2012-06-13 深圳国人通信有限公司 一种设备监控系统中客户端之间数据同步的方法
CN101594487B (zh) * 2008-05-30 2013-08-21 新奥特(北京)视频技术有限公司 一种字幕机场景区域切换的同步方法
CN101577110B (zh) * 2009-05-31 2012-04-25 腾讯科技(深圳)有限公司 视频播放方法及视频播放器
CN102110430A (zh) * 2009-12-23 2011-06-29 富士通株式会社 用于多窗口显示的方法和系统
CN102254560B (zh) * 2010-05-19 2013-05-08 安凯(广州)微电子技术有限公司 一种移动数字电视录像中的音频处理方法
CN101840494B (zh) * 2010-05-25 2015-07-01 福建新大陆电脑股份有限公司 一种条码边界判断装置
CN101883270A (zh) * 2010-06-10 2010-11-10 上海海事大学 一种在独立视频流中插入相关媒体的方法
CN101894336B (zh) * 2010-06-28 2013-10-09 深圳市江波龙电子有限公司 一种视频点播支付系统及其进行支付的方法
CN101901126B (zh) * 2010-07-12 2012-01-04 东北大学 组合式大屏幕流媒体播放的计算机控制方法
CN102215427A (zh) * 2011-05-17 2011-10-12 深圳创维-Rgb电子有限公司 在电视机上同步播放多媒体信息的方法、装置及电视机
US9392295B2 (en) * 2011-07-20 2016-07-12 Broadcom Corporation Adaptable media processing architectures
CN102387326B (zh) * 2011-09-28 2015-12-16 歌尔声学股份有限公司 在同一屏幕实现同时观看不同画面的方法、系统和设备
WO2013082965A1 (zh) * 2011-12-05 2013-06-13 优视科技有限公司 流媒体数据处理方法及装置、流媒体数据再现设备
CN102522096A (zh) * 2011-12-07 2012-06-27 中国航空无线电电子研究所 多路音视频同步回放系统及其方法
CN102547482B (zh) * 2011-12-30 2014-05-07 北京锐安科技有限公司 一种多路ip音视频流同步播放方法
CN102623032B (zh) * 2012-04-01 2014-09-17 深圳英飞拓科技股份有限公司 一种实现硬盘录像机同步回放的方法
CN102625164A (zh) * 2012-04-06 2012-08-01 上海车音网络科技有限公司 多媒体数据处理平台及多媒体读物、系统和方法
CN103905783B (zh) * 2012-12-25 2017-09-01 杭州海康威视数字技术股份有限公司 对视频流进行解码显示的方法及设备
CN103065503B (zh) * 2012-12-27 2015-05-20 重庆大学 控制河段船舶通行动态与信号揭示过程的再现方法和系统
US20140297882A1 (en) * 2013-04-01 2014-10-02 Microsoft Corporation Dynamic track switching in media streaming
CN103237185A (zh) * 2013-05-15 2013-08-07 无锡北斗星通信息科技有限公司 电视台端atsc信号的播出控制系统
CN103246752A (zh) * 2013-05-30 2013-08-14 北京瑞翔恒宇科技有限公司 一种关联ppt文档与音频的系统
CN105578204B (zh) * 2014-10-14 2020-10-30 海信视像科技股份有限公司 一种多视频数据显示的方法及装置
CN105721920B (zh) * 2014-12-04 2019-04-02 中国移动通信集团公司 一种媒体在多设备上协同播放的方法、装置及终端
CN105392024B (zh) * 2015-10-28 2018-04-24 中国电子科技集团公司第二十八研究所 一种多源异类数据同步重放方法
CN105704506A (zh) * 2016-01-19 2016-06-22 北京流金岁月文化传播股份有限公司 一种解决视音频编码唇音同步的装置和方法
CN107333164B (zh) * 2016-04-29 2020-05-15 北京学而思教育科技有限公司 一种图像数据处理方法及装置
CN107809659A (zh) * 2017-10-27 2018-03-16 北京雷石天地电子技术有限公司 一种多路视频融合播放的方法及装置
CN108881918A (zh) * 2017-11-29 2018-11-23 北京视联动力国际信息技术有限公司 一种多路视频的处理方法和一种多媒体终端
CN108174283A (zh) * 2017-12-27 2018-06-15 威创集团股份有限公司 一种视频信号源产生方法及装置
CN108881917B (zh) * 2018-07-27 2019-12-03 西安电子科技大学 基于高速实时解码平台的并行解码快速排序方法
CN109828742B (zh) * 2019-02-01 2022-02-18 珠海全志科技股份有限公司 音频多路同步输出方法、计算机装置及计算机可读存储介质
CN110225363B (zh) * 2019-07-10 2021-08-06 央视国际网络无锡有限公司 一种不同直播源切换并叠加不同滤镜的方法
CN113709585B (zh) * 2021-08-25 2023-09-19 三星电子(中国)研发中心 流媒体播放方法和装置
CN115643442A (zh) * 2022-10-25 2023-01-24 广州市保伦电子有限公司 一种音视频合流录制播放方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1472959A (zh) * 2002-07-30 2004-02-04 华为技术有限公司 实现多种视音频流格式转换的装置和方法
US6715126B1 (en) * 1998-09-16 2004-03-30 International Business Machines Corporation Efficient streaming of synchronized web content from multiple sources
US6816909B1 (en) * 1998-09-16 2004-11-09 International Business Machines Corporation Streaming media player with synchronous events from multiple sources
US20050228898A1 (en) * 2002-01-15 2005-10-13 Microsoft Corporation Synchronizing data streams

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6715126B1 (en) * 1998-09-16 2004-03-30 International Business Machines Corporation Efficient streaming of synchronized web content from multiple sources
US6816909B1 (en) * 1998-09-16 2004-11-09 International Business Machines Corporation Streaming media player with synchronous events from multiple sources
US20050228898A1 (en) * 2002-01-15 2005-10-13 Microsoft Corporation Synchronizing data streams
CN1472959A (zh) * 2002-07-30 2004-02-04 华为技术有限公司 实现多种视音频流格式转换的装置和方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
基于RTP/RTCP协议的实时数据传输与同步控制策略 任延珍,喻占武,胡瑞敏.计算机工程与应用,第2003卷第10期 2003 *
流媒体同步机制的研究 崔莉,王敏,吉逸.计算机应用研究,第2005卷第1期 2005 *
用匿名管道实现进程间的通信与同步 焦纯,杨国胜,王健琪.电子与电脑,第1999卷第2期 1999 *

Also Published As

Publication number Publication date
CN1767601A (zh) 2006-05-03

Similar Documents

Publication Publication Date Title
CN100352270C (zh) 一种支持多源流媒体的同步播放控制方法
CN1190081C (zh) 发送和接收动态图像数据的方法及其设备
CN1141844C (zh) 移动图像合成系统
CN1220359C (zh) 通信终端、服务器、广播通信系统及方法
CN1178472C (zh) 图像信号制式变换装置
CN1174607C (zh) 图像编码装置和方法、图像解码装置和方法、记录载体
CN1148955C (zh) 编码数据流接合设备和方法及编码数据流生成设备和方法
CN1187929C (zh) 数据接收装置、数据接收方法及数据传输方法
CN1299502C (zh) 解码设备和解码方法
CN101035279A (zh) 一种在视频资源中使用信息集的方法
CN1276602C (zh) 广播系统
CN101060617A (zh) 一种视频点播控制方法、客户端设备和切换控制装置
CN1314762A (zh) 数据传输方法和数据传输系统
CN1714577A (zh) 视频传输
CN1666195A (zh) 支持媒体文件中的高级编码格式
CN1636400A (zh) 运动图像分配系统、运动图像分配设备及方法、记录介质及程序
CN1682539A (zh) 用于适配2d和3d立体视频信号的装置和方法
CN101052127A (zh) 信息处理装置、信息处理方法、记录介质和程序
CN1852414A (zh) 一种视频码流伽玛特性校正方法及多点控制单元
CN1692640A (zh) 广播记录系统、记录设备、广播设备及用于节省用来记录内容的记录介质的存储空间的记录程序
CN1812548A (zh) 记录器及其方法,播放器及其方法,程序和记录介质
CN1659883A (zh) 远程播放dvd的方法与系统
CN1574944A (zh) 动态图像解码装置
CN1279753C (zh) 视频中继装置及视频分布系统
CN1269352C (zh) 解码装置和解码方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20071128

Termination date: 20131021