CN101047848A - 一种支持多视点视频合成的网络流媒体播放器及方法 - Google Patents
一种支持多视点视频合成的网络流媒体播放器及方法 Download PDFInfo
- Publication number
- CN101047848A CN101047848A CN 200710098823 CN200710098823A CN101047848A CN 101047848 A CN101047848 A CN 101047848A CN 200710098823 CN200710098823 CN 200710098823 CN 200710098823 A CN200710098823 A CN 200710098823A CN 101047848 A CN101047848 A CN 101047848A
- Authority
- CN
- China
- Prior art keywords
- module
- video frame
- hand
- virtual
- viewpoint
- 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.)
- Granted
Links
Images
Abstract
本发明涉及一种支持多视点视频合成的网络流媒体播放器,它包括一个数据接收模块和一个呈现模块,其特征在于:它还包括一个以上解码模块和一个合成模块;所述数据接收模块通过一条以上IP连接接收压缩视频码流,并将所接收数据向一个以上解码模块转发,此外它还从用户界面接收视点切换命令并向合成模块转发;所述解码模块从数据接收模块接收压缩视频帧数据并解码,并向合成模块转发解码后的原始视频帧数据;所述合成模块从一个以上解码模块接收原始视频帧数据并进行虚拟视合成,另一方面将合成结果向呈现模块转发,此外它还从数据接收模块接收视点切换命令;所述呈现模块从合成模块接收虚拟视频帧并向显示设备进行转发。本发明能够在一个播放器框架下同时与流媒体服务器建立多条网络连接并同时接收和解码多个视频码流。
Description
技术领域
本发明涉及多视点视频处理和网络流媒体技术领域,特别是关于一种支持多视点视频合成的网络流媒体播放器及方法。
背景技术
目前,基于个人计算机的网络流媒体播放器已获得广泛的应用。如图1所示,现有技术的流媒体播放器的架构主要由数据接收模块、解码模块和呈现模块组成,各模块之间的数据流动是通过在发送者模块的输出接口与接收者模块的输入接口之间建立一条数据通路来完成的。除了数据通路之外,模块间没有更多的耦合,能够实现较好的模块封装。各模块的功能具体描述如下:
数据接收模块主要负责通过网络与流媒体服务器进行交互并接收媒体数据。如图2所示,在该模块中包含一个输入接口、一个视频帧组装子模块和一个输出接口。输入接口负责从网络接收组成压缩视频数据的IP包,视频帧组装子模块负责解析接收到的IP包并将其组装成为一个个的压缩视频帧,输出接口负责缓存组装后的压缩视频帧数据,并将其发送到下一个模块(解码模块)的输入接口。
解码模块负责将接收到的压缩视频帧数据进行解码,然后以最快的速度将解码后的原始视频帧数据传递给呈现模块。该过程是在上一模块(数据接收模块)中输出接口的驱动下完成的。
呈现模块负责将解码后的原始视频帧数据送交显示设备进行显示和播放。其中需要利用每一帧数据的时间戳来进行时间同步,以控制每一帧的显示时间。该过程是在上一模块(解码模块)中输出接口的驱动下完成的。
上述现有技术的流媒体播放器能够满足传统单视点视频服务的需求,但它仅适用于单视点视频流的接收和播放,即同时只能通过IP网络从流媒体服务器接收含有一路视频信号的媒体数据然后进行解码和播放,用户同时只能够观看到来自流媒体服务器的一路视频。然而随着近年来视频服务的不断升级,多视点视频技术应运而生。相对于传统的单点视频来说,多视点视频可以提供某一事物或场景不同角度、不同层面的信息,并且可以把这些信息进行合成,生成多角度、全方位的自由或立体视觉。多视点视频的原始数据一般是由多个摄像机组成的集合采集而成。由于组成集合的摄像机大都距离固定,拍摄的场景也大致相同,因此多视点视频数据往往表现了同一场景或物体不同角度的信息,使得用户可以任意选择其中之一进行观看,或者根据相邻几个摄像机所拍摄的视频序列合成出一个虚拟的中间场景来进行观看,并实现多个视点之间的无缝自由浏览和切换,即所谓的自由视点视频。如果用户同时选择了多个相邻摄像机所拍摄的视频序列,并想在客户端将其合成为一个虚拟的中间视点来进行观看时,现有技术的流媒体播放器就无法满足这种需求。
发明内容
针对上述问题,本发明的目的是提供一种支持多视点视频合成的网络流媒体播放器及方法。
为实现上述目的,本发明采取以下技术方案:一种支持多视点视频合成的网络流媒体播放器,它包括一个数据接收模块和一个呈现模块,其特征在于:它还包括一个以上解码模块和一个合成模块;所述数据接收模块一方面通过一条以上IP网络连接从流媒体服务器接收源自一个以上摄像机视点的压缩视频码流,另一方面与一个以上解码模块相连,并向后者转发接收到的不同视点的压缩视频帧数据,所述数据接收模块还从用户界面接收视点切换命令并向合成模块转发;所述解码模块一方面与数据接收模块相连,从中接收针对所选定视点组装好的压缩视频帧数据并解码,另一方面与合成模块相连,向后者转发解码后的原始视频帧数据;所述合成模块一方面与一个以上解码模块相连,从中接收解码后的原始视频帧数据并进行虚拟视合成,另一方面与呈现模块相连,向后者转发合成后的虚拟视频帧数据,所述合成模块还从数据接收模块接收视点切换命令;所述呈现模块一方面与合成模块相连,从中接收合成后的虚拟视频帧数据,另一方面与显示设备相连。
所述数据接收模块由一个以上输入接口、一个以上视频帧组装子模块、一个以上输出接口和一个视点切换监听子模块所组成;所述每个输入接口一方面通过IP网络与流媒体服务器建立连接,并以连续IP包的形式从后者接收一路摄像机视点的压缩视频码流,另一方面与一个视频帧组装子模块相连,并将接收到的连续IP包向后者转发,所述每个输入接口还与视点切换监听子模块相连,从中接收视点切换命令并根据命令执行相应的视点切换操作;所述每个视频帧组装子模块一方面与一个输入接口相连,从中接收连续的IP包,然后解析并组装为一个个的压缩视频帧,另一方面与一个输出接口相连,向后者转发组装好的压缩视频帧数据;所述每个输出接口一方面与一个视频帧组装子模块相连,从中接收组装好的压缩视频帧数据,另一方面与一个解码模块相连,向后者转发接收到的压缩视频帧数据;所述视点切换监听子模块一方面监听并接收来自用户接口的视点切换命令,另一方面将该视点切换命令信息向各个输入接口和合成模块转发。
所述合成模块由一个主控输入接口、至少一个普通输入接口、至少一个视频帧缓冲队列、一个虚拟视合成子模块和一个输出接口组成;所述主控输入接口一方面与第一个解码模块相连并从中接收解码后的原始视频帧数据,另一方面与虚拟视合成子模块相连,直接驱动该子模块的运行并以输入参数的形式向其提供一路主控原始视频帧数据;所述每个普通输入接口一方面与一个解码模块相连并从中接收解码后的原始视频帧数据,另一方面与一个视频帧缓冲队列相连并将接收到的原始视频帧数据向后者转发;所述每个视频帧缓冲队列是一个先进先出型队列,它一方面与一个普通输入接口相连并将其所接收到的原始视频帧数据加入队列进行缓存,另一方面与虚拟视合成子模块相连,并以输入参数的形式向其提供一路原始视频帧数据;所述虚拟视合成子模块一方面与主控输入接口和至少一个视频帧缓冲队列相连,从中接收用于虚拟视合成的一个以上输入视频帧并在主控输入接口的驱动下调用虚拟视合成算法,另一方面与输出接口相连并向后者转发合成后的虚拟视频帧,所述虚拟视合成子模块还与数据接收模块中的视点切换监听子模块相连,从后者接收视点切换命令并解析出各个视点之间的比例关系等信息作为虚拟视合成算法的输入参数;所述每个输出接口一方面与虚拟视合成子模块相连,从中接收合成后的虚拟视频帧数据,另一方面与呈现模块相连并向后者转发接收到的虚拟视频帧数据。
所述视点切换命令中包含流媒体服务器位置,视点切换后重新进行虚拟视合成时所涉及到的各实际摄像机视点码流及其位置和比例关系等信息。
对于矩形摄像机阵列,如果每次最多采用相邻的上下左右4个实际视点来合成一个虚拟视,则采用一个如下形式的统一资源定位符(URL)来表示一个视点切换命令:ftv://ServerName;Nlt.sdp;Nrt.sdp;Nlb.sdp;Nrb.sdp;Rlr;Rtb,其中,ServerName表示流媒体服务器的域名,Nlt.sdp、Nrt.sdp、Nlb.sdp和Nrb.sdp分别表示当前所选左上角、右上角、左下角和右下角视点在流媒体服务器上的媒体描述文件名,Rlr和Rtb分别表示左右视点和上下视点在合成时所占的比例关系,其取值范围为0~1。
一种支持多视点视频合成的网络流媒体播放器方法,其特征在于播放过程操作步骤如下:(1)数据接收模块中的视点切换监听子模块每次监听并接收到来自用户界面的视点切换命令后,根据其中流媒体服务器域名和切换后各视点码流的媒体描述文件名组成相应的流媒体URL并发送至相应的输入接口,同时将其中的比例关系信息发送至合成模块中的虚拟视合成子模块;(2)数据接收模块中的每个输入接口在接收到与其对应的新的流媒体URL后,关闭与流媒体服务器之间的原有连接并使用该新的URL与流媒体服务器重新建立网络连接,然后连续不断地接收含有压缩视频数据的IP包并向对应的视频帧组装子模块转发;(3)数据接收模块中的每个视频帧组装子模块连续不断地从对应的输入接口接收IP包,并在组装好一个完整的压缩视频帧后向对应的输出接口转发;(4)数据接收模块中的每个输出接口连续不断地将接收到的压缩视频帧数据转发至对应的解码模块;(5)每个解码模块连续不断地从数据接收模块中对应的输出接口处接收压缩视频帧数据并解码,然后将解码后的原始视频帧数据向合成模块中对应的主控输入接口或者普通输入接口进行转发;(6)合成模块中的每个普通输入接口连续不断地将从对应的解码模块处接收到的原始视频帧数据加入到对应的视频帧缓冲队列;(7)合成模块中的主控输入接口连续不断地从对应的解码模块处接收原始视频帧,每接收到一个视频帧后以该视频帧的时间戳为基准从所有视频帧缓冲队列中各取出一个与该基准时间戳相匹配的视频帧,然后以所有这些视频帧以及从数据接收模块接收到的各视点比例关系信息作为输入参数调用虚拟视合成子模块来生成一个虚拟视频帧;(8)合成模块中的输出接口连续不断地将从虚拟视合成子模块输出的虚拟视频帧发送至呈现模块;(9)呈现模块连续不断地从合成模块接收虚拟视频帧并送至显示设备进行显示。
本发明由于采取以上技术方案,其具有以下优点:能够在一个播放器框架下同时与流媒体服务器建立多条网络连接并同时接收和解码多个视频码流,从而可在解码器端实现基于多视点视频流的虚拟视合成,既减轻了服务器端的计算压力,又增强了系统的灵活性;视点切换监听模块的使用使得视点切换不影响到其它模块甚至本模块中的其它子模块,也无须重置播放器框架结构和状态,从而能够以较小的开销实现快速视点切换;采用时间戳机制对多条视频码流中的视频帧进行时间同步,有效避免了因网络丢包等原因所造成的多视点视频不匹配现象。
附图说明
图1是现有技术网络流媒体播放器的系统结构图
图2是现有技术网络流媒体播放器中数据接收模块结构示意图
图3是本发明提供的支持多视点视频合成的网络流媒体播放器系统结构图
图4是本发明提供的支持多视点视频合成的网络流媒体播放器中数据接收模块结构图
图5是本发明提供的支持多视点视频合成的网络流媒体播放器中合成模块结构图
具体实施方式
下面结合附图和实施例,对本发明进行详细的描述。
如图3所示,本发明提供的支持多视点视频合成的网络流媒体播放器由一个数据接收模块100、一个以上解码模块200、一个合成模块300和一个呈现模块400所组成,图中实线箭头代表数据流的方向,虚线箭头代表控制流的方向。
数据接收模块100一方面通过一条以上IP网络连接从流媒体服务器接收源自多个摄像机视点的压缩视频码流,另一方面与一个以上解码模块200相连,并向后者转发接收到的不同视点的压缩视频帧数据。此外,数据接收模块100还从用户界面接收视点切换命令并向合成模块转发。其中,视点切换命令中包含流媒体服务器位置,以及视点切换后重新进行虚拟视合成时所涉及到的各实际摄像机视点码流及其位置和比例关系等信息。例如对于矩形摄像机阵列,如果每次最多采用相邻的上下左右4个实际视点来合成一个虚拟视,则采用如下形式的统一资源定位符(URL)来表示一个视点切换命令:ftv://ServerName;Nlt.sdp;Nrt.sdp;Nlb.sdp;Nrb.sdp;Rlr;Rtb其中,ServerName表示流媒体服务器的域名,Nlt.sdp、Nrt.sdp、Nlb.sdp和Nrb.sdp分别表示当前所选左上角、右上角、左下角和右下角视点在流媒体服务器中的媒体描述文件名,Rlr和Rtb分别表示左右视点和上下视点在合成时所占的比例关系,其取值范围为0~1。
所述解码模块200一方面与数据接收模块100相连,从中接收针对某个视点组装好的压缩视频帧数据并解码,另一方面与合成模块300相连,向后者转发解码后的原始视频帧数据。除了其输出接口所连接的下一个模块是合成模块300而不是呈现模块400之外,解码模块200与现有技术播放器中的解码模块完全相同。
合成模块300一方面与一个以上解码模块200相连,从中接收解码后的原始视频帧数据并进行虚拟视合成,另一方面与呈现模块400相连,向后者转发合成后的虚拟视频帧数据。此外,合成模块300还从数据接收模块100接收视点切换命令,其中所包含的切换后各视点比例关系信息将作为该模块中虚拟视合成算法的输入参数。
呈现模块400一方面与合成模块300相连,从中接收合成后的虚拟视频帧数据,另一方面与显示设备相连。除了其输出接口所连接的上一个模块是合成模块300而不是解码模块200之外,呈现模块400与现有技术播放器中的呈现模块完全相同。
如图4所示,本发明提供的支持多视点视频合成的流媒体播放器中数据接收模块100由一个以上输入接口101、一个以上视频帧组装子模块102、一个以上输出接口103和一个视点切换监听子模块104所组成,图中实线箭头代表数据流的方向,虚线箭头代表控制流的方向。
每个输入接口101一方面通过IP网络与流媒体服务器建立连接,并以连续IP包的形式从后者接收一路摄像机视点的压缩视频码流,另一方面与一个视频帧组装子模块102相连,并将接收到的连续IP包向后者转发。此外,输入接口101还与视点切换监听子模块104相连,从中接收视点切换命令并根据命令执行相应的视点切换操作。
每个视频帧组装子模块102一方面与一个输入接口101相连,从中接收连续的IP包然后解析并组装为一个个的压缩视频帧,另一方面与一个输出接口103相连,向后者转发组装好的压缩视频帧数据。
每个输出接口103一方面与一个视频帧组装子模块102相连,从中接收组装好的压缩视频帧数据,另一方面与一个解码模块200相连,向后者转发接收到的压缩视频帧数据。
视点切换监听子模块104一方面监听并接收来自用户接口的视点切换命令,另一方面将该视点切换命令信息向各个输入接口101和合成模块300转发。
如图5所示,本发明提供的支持多视点视频合成的流媒体播放器中合成模块300由一个主控输入接口301、至少一个普通输入接口302、至少一个视频帧缓冲队列303、一个虚拟视合成子模块304和一个输出接口305组成,图中实线箭头代表数据流的方向,虚线箭头代表控制流的方向。
主控输入接口301一方面与第一个解码模块200相连并从中接收解码后的原始视频帧数据,另一方面与虚拟视合成子模块304相连,直接驱动该子模块的运行并以输入参数的形式向其提供一路主控原始视频帧数据。
每个普通输入接口302一方面与一个解码模块200相连并从中接收解码后的原始视频帧数据,另一方面与一个视频帧缓冲队列303相连并将接收到的原始视频帧数据向后者转发。
每个视频帧缓冲队列303是一个先进先出型队列,它一方面与一个普通输入接口302相连并将其所接收到的每一个原始视频帧数据加入队列进行缓存,另一方面与虚拟视合成子模块304相连,并以输入参数的形式向其提供一路原始视频帧数据。
虚拟视合成子模块304一方面与主控输入接口301和至少一个视频帧缓冲队列303相连,从中接收用于虚拟视合成的一个以上输入视频帧并在主控输入接口301的驱动下调用虚拟视合成算法,另一方面与输出接口305相连并向后者转发合成后的虚拟视频帧。此外,虚拟视合成子模块304还与数据接收模块100中的视点切换监听子模块104相连,从后者接收视点切换命令并解析出各个视点之间的比例关系等信息作为虚拟视合成算法的输入参数。
每个输出接口305一方面与虚拟视合成子模块304相连,从中接收合成好的虚拟视频帧数据,另一方面与呈现模块400相连并向后者转发接收到的虚拟视频帧数据。
本发明一种支持多视点视频合成的网络流媒体播放器方法,其操作过程如下:
(1)数据接收模块100中的视点切换监听子模块104每次监听并接收到来自用户界面的视点切换命令后,根据其中流媒体服务器域名和切换后各视点码流的媒体描述文件名组成多个相应的流媒体URL(例如RTSP://ftv.pk.com/Nlt.sdp)并发送至相应的输入接口101,同时将其中的比例关系信息发送至合成模块300中的虚拟视合成子模块304;
(2)每个输入接口101在接收到与其对应的新的流媒体URL后,关闭与流媒体服务器之间的原有连接并使用该新的URL与流媒体服务器重新建立网络连接,然后连续不断地接收含有压缩视频数据的IP包并向对应的视频帧组装子模块102转发;
(3)每个视频帧组装子模块102连续不断地从对应的输入接口101接收IP包,并在组装好一个完整的压缩视频帧后向对应的输出接口103转发;
(4)每个输出接口103连续不断地将接收到的压缩视频帧数据转发至对应的解码模块200;
(5)每个解码模块200连续不断地从数据接收模块中对应的输出接口103处接收压缩视频帧数据并解码,将解码后原始视频帧数据向合成模块300中对应的主控输入接口301或者普通输入接口302进行转发;
(6)合成模块300中的每个普通输入接口302连续不断地将从对应的解码模块200处接收到的原始视频帧数据加入到对应的视频帧缓冲队列303;
(7)合成模块300中的主控输入接口301连续不断地从对应的解码模块200处接收原始视频帧,每接收到一个视频帧后以该视频帧的时间戳为基准从所有视频帧缓冲队列303中各取出一个与该基准时间戳相匹配的视频帧,然后以所有这些视频帧以及从数据接收模块100接收到的各视点比例关系信息作为输入参数调用虚拟视合成子模块304来生成一个虚拟视频帧;
(8)合成模块300中的输出接口305连续不断地将从虚拟视合成子模块输出的虚拟视频帧发送至呈现模块400;
(9)呈现模块400连续不断地从合成模块300接收虚拟视频帧并送至显示设备进行显示。
Claims (7)
1、一种支持多视点视频合成的网络流媒体播放器,它包括一个数据接收模块和一个呈现模块,其特征在于:它还包括一个以上解码模块和一个合成模块;
所述数据接收模块一方面通过一条以上IP网络连接从流媒体服务器接收源自一个以上摄像机视点的压缩视频码流,另一方面与一个以上解码模块相连,并向后者转发接收到的不同视点的压缩视频帧数据,所述数据接收模块还从用户界面接收视点切换命令并向合成模块转发;
所述解码模块一方面与数据接收模块相连,从中接收针对所选定视点组装好的压缩视频帧数据并解码,另一方面与合成模块相连,向后者转发解码后的原始视频帧数据;
所述合成模块一方面与一个以上解码模块相连,从中接收解码后的原始视频帧数据并进行虚拟视合成,另一方面与呈现模块相连,向后者转发合成后的虚拟视频帧数据,所述合成模块还从数据接收模块接收视点切换命令;
所述呈现模块一方面与合成模块相连,从中接收合成后的虚拟视频帧数据,另一方面与显示设备相连。
2、如权利要求1所述的支持多视点视频合成的网络流媒体播放器,其特征在于:所述数据接收模块由一个以上输入接口、一个以上视频帧组装子模块、一个以上输出接口和一个视点切换监听子模块所组成;
所述每个输入接口一方面通过IP网络与流媒体服务器建立连接,并以连续IP包的形式从后者接收一路摄像机视点的压缩视频码流,另一方面与一个视频帧组装子模块相连,并将接收到的连续IP包向后者转发,所述每个输入接口还与视点切换监听子模块相连,从中接收视点切换命令并根据命令执行相应的视点切换操作;
所述每个视频帧组装子模块一方面与一个输入接口相连,从中接收连续的IP包,然后解析并组装为一个个的压缩视频帧,另一方面与一个输出接口相连,向后者转发组装好的压缩视频帧数据;
所述每个输出接口一方面与一个视频帧组装子模块相连,从中接收组装好的压缩视频帧数据,另一方面与一个解码模块相连,向后者转发接收到的压缩视频帧数据;
所述视点切换监听子模块一方面监听并接收来自用户接口的视点切换命令,另一方面将该视点切换命令信息向各个输入接口和合成模块转发。
3、如权利要求1所述的支持多视点视频合成的网络流媒体播放器,其特征在于:所述合成模块由一个主控输入接口、至少一个普通输入接口、至少一个视频帧缓冲队列、一个虚拟视合成子模块和一个输出接口组成;
所述主控输入接口一方面与第一个解码模块相连并从中接收解码后的原始视频帧数据,另一方面与虚拟视合成子模块相连,直接驱动该子模块的运行并以输入参数的形式向其提供一路主控原始视频帧数据;
所述每个普通输入接口一方面与一个解码模块相连并从中接收解码后的原始视频帧数据,另一方面与一个视频帧缓冲队列相连并将接收到的原始视频帧数据向后者转发;
所述每个视频帧缓冲队列是一个先进先出型队列,它一方面与一个普通输入接口相连并将其所接收到的原始视频帧数据加入队列进行缓存,另一方面与虚拟视合成子模块相连,并以输入参数的形式向其提供一路原始视频帧数据;
所述虚拟视合成子模块一方面与主控输入接口和至少一个视频帧缓冲队列相连,从中接收用于虚拟视合成的一个以上输入视频帧并在主控输入接口的驱动下调用虚拟视合成算法,另一方面与输出接口相连并向后者转发合成后的虚拟视频帧,所述虚拟视合成子模块还与数据接收模块中的视点切换监听子模块相连,从后者接收视点切换命令并解析出各个视点之间的比例关系等信息作为虚拟视合成算法的输入参数;
所述每个输出接口一方面与虚拟视合成子模块相连,从中接收合成后的虚拟视频帧数据,另一方面与呈现模块相连并向后者转发接收到的虚拟视频帧数据。
4、如权利要求2所述的支持多视点视频合成的网络流媒体播放器,其特征在于:所述合成模块由一个主控输入接口、至少一个普通输入接口、至少一个视频帧缓冲队列、一个虚拟视合成子模块和一个输出接口组成;
所述主控输入接口一方面与第一个解码模块相连并从中接收解码后的原始视频帧数据,另一方面与虚拟视合成子模块相连,直接驱动该子模块的运行并以输入参数的形式向其提供一路主控原始视频帧数据;
所述每个普通输入接口一方面与一个解码模块相连并从中接收解码后的原始视频帧数据,另一方面与一个视频帧缓冲队列相连并将接收到的原始视频帧数据向后者转发;
所述每个视频帧缓冲队列是一个先进先出型队列,它一方面与一个普通输入接口相连并将其所接收到的原始视频帧数据加入队列进行缓存,另一方面与虚拟视合成子模块相连,并以输入参数的形式向其提供一路原始视频帧数据;
所述虚拟视合成子模块一方面与主控输入接口和至少一个视频帧缓冲队列相连,从中接收用于虚拟视合成的多个输入视频帧并在主控输入接口的驱动下调用虚拟视合成算法,另一方面与输出接口相连并向后者转发合成后的虚拟视频帧,所述虚拟视合成子模块还与数据接收模块中的视点切换监听子模块相连,从后者接收视点切换命令并解析出各个视点之间的比例关系等信息作为虚拟视合成算法的输入参数;
所述每个输出接口一方面与虚拟视合成子模块相连,从中接收合成后的虚拟视频帧数据,另一方面与呈现模块相连并向后者转发接收到的虚拟视频帧数据。
5、如权利要求2或3或4所述的支持多视点视频合成的网络流媒体播放器,其特征在于:所述视点切换命令中包含流媒体服务器位置,视点切换后重新进行虚拟视合成时所涉及到的各实际摄像机视点码流及其位置和比例关系等信息。
6、如权利要求5所述的支持多视点视频合成的网络流媒体播放器,其特征在于:对于矩形摄像机阵列,如果每次最多采用相邻的上下左右4个实际视点来合成一个虚拟视,则采用一个如下形式的统一资源定位符(URL)来表示一个视点切换命令:ftv://ServerName;Nlt.sdp;Nrt.sdp;Nlb.sdp;Nrb.sdp;Rlr;Rtb,其中,ServerName表示流媒体服务器的域名,Nlt.sdp、Nrt.sdp、Nlb.sdp和Nrb.sdp分别表示当前所选左上角、右上角、左下角和右下角视点在流媒体服务器上的媒体描述文件名,Rlr和Rtb分别表示左右视点和上下视点在合成时所占的比例关系,其取值范围为0~1。
7、一种支持多视点视频合成的网络流媒体播放器方法,其特征在于播放过程操作步骤如下:
(1)数据接收模块中的视点切换监听子模块每次监听并接收到来自用户界面的视点切换命令后,根据其中流媒体服务器域名和切换后各视点码流的媒体描述文件名组成相应的流媒体URL并发送至相应的输入接口,同时将其中的比例关系信息发送至合成模块中的虚拟视合成子模块;
(2)数据接收模块中的每个输入接口在接收到与其对应的新的流媒体URL后,关闭与流媒体服务器之间的原有连接并使用该新的URL与流媒体服务器重新建立网络连接,然后连续不断地接收含有压缩视频数据的IP包并向对应的视频帧组装子模块转发;
(3)数据接收模块中的每个视频帧组装子模块连续不断地从对应的输入接口接收IP包,并在组装好一个完整的压缩视频帧后向对应的输出接口转发;
(4)数据接收模块中的每个输出接口连续不断地将接收到的压缩视频帧数据转发至对应的解码模块;
(5)每个解码模块连续不断地从数据接收模块中对应的输出接口处接收压缩视频帧数据并解码,然后将解码后的原始视频帧数据向合成模块中对应的主控输入接口或者普通输入接口进行转发;
(6)合成模块中的每个普通输入接口连续不断地将从对应的解码模块处接收到的原始视频帧数据加入到对应的视频帧缓冲队列;
(7)合成模块中的主控输入接口连续不断地从对应的解码模块处接收原始视频帧,每接收到一个视频帧后以该视频帧的时间戳为基准从所有视频帧缓冲队列中各取出一个与该基准时间戳相匹配的视频帧,然后以所有这些视频帧以及从数据接收模块接收到的各视点比例关系信息作为输入参数调用虚拟视合成子模块来生成一个虚拟视频帧;
(8)合成模块中的输出接口连续不断地将从虚拟视合成子模块输出的虚拟视频帧发送至呈现模块;
(9)呈现模块连续不断地从合成模块接收虚拟视频帧并送至显示设备进行显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100988232A CN100559877C (zh) | 2007-04-27 | 2007-04-27 | 一种支持多视点视频合成的网络流媒体播放器及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100988232A CN100559877C (zh) | 2007-04-27 | 2007-04-27 | 一种支持多视点视频合成的网络流媒体播放器及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101047848A true CN101047848A (zh) | 2007-10-03 |
CN100559877C CN100559877C (zh) | 2009-11-11 |
Family
ID=38772003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007100988232A Expired - Fee Related CN100559877C (zh) | 2007-04-27 | 2007-04-27 | 一种支持多视点视频合成的网络流媒体播放器及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100559877C (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103262554A (zh) * | 2010-12-07 | 2013-08-21 | 三星电子株式会社 | 收发多媒体内容的发送装置和接收装置及其再现方法 |
CN103517062A (zh) * | 2012-06-15 | 2014-01-15 | 晨星软件研发(深圳)有限公司 | 影像的同步方法及其装置 |
CN103873775A (zh) * | 2014-03-24 | 2014-06-18 | 联想(北京)有限公司 | 电子设备以及信息处理方法 |
CN103888748A (zh) * | 2014-03-24 | 2014-06-25 | 中国人民解放军国防科学技术大学 | 用于众视点三维显示系统的视频帧同步方法 |
CN104811685A (zh) * | 2008-12-18 | 2015-07-29 | Lg电子株式会社 | 3d图像信号处理方法和用于实现该方法的图像显示器 |
CN105812826A (zh) * | 2007-10-05 | 2016-07-27 | 汤姆逊许可证公司 | 多视角视频编码系统内并入视频可用性信息的方法和装置 |
US9491437B2 (en) | 2010-12-07 | 2016-11-08 | Samsung Electronics Co., Ltd. | Transmitter for transmitting data for constituting content, receiver for receiving and processing data, and method therefor |
US9491435B2 (en) | 2012-06-05 | 2016-11-08 | Mstar Semiconductor, Inc. | Image synchronization method and associated apparatus |
CN106657871A (zh) * | 2015-10-30 | 2017-05-10 | 中国电信股份有限公司 | 基于视频拼接的多角度动态视频监控方法及装置 |
CN109309808A (zh) * | 2017-07-26 | 2019-02-05 | 梭维智能科技(深圳)有限公司 | 一种基于人脸识别的监控系统及方法 |
WO2020052456A1 (zh) * | 2018-09-11 | 2020-03-19 | 华为技术有限公司 | 一种实现视频流切换的方法、装置和系统 |
US11483495B2 (en) | 2018-08-22 | 2022-10-25 | Huawei Technologies Co., Ltd. | Method, apparatus, and system for implementing video stream switching |
CN115988230B (zh) * | 2022-12-15 | 2024-04-30 | 北极星云空间技术股份有限公司 | 基于gop转码和虚拟文件实现低延迟hls直播的方法 |
-
2007
- 2007-04-27 CN CNB2007100988232A patent/CN100559877C/zh not_active Expired - Fee Related
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105812826A (zh) * | 2007-10-05 | 2016-07-27 | 汤姆逊许可证公司 | 多视角视频编码系统内并入视频可用性信息的方法和装置 |
CN104811685B (zh) * | 2008-12-18 | 2017-04-12 | Lg电子株式会社 | 3d图像信号处理方法和用于实现该方法的图像显示器 |
US9571815B2 (en) | 2008-12-18 | 2017-02-14 | Lg Electronics Inc. | Method for 3D image signal processing and image display for implementing the same |
CN104811685A (zh) * | 2008-12-18 | 2015-07-29 | Lg电子株式会社 | 3d图像信号处理方法和用于实现该方法的图像显示器 |
US9491437B2 (en) | 2010-12-07 | 2016-11-08 | Samsung Electronics Co., Ltd. | Transmitter for transmitting data for constituting content, receiver for receiving and processing data, and method therefor |
US9628771B2 (en) | 2010-12-07 | 2017-04-18 | Samsung Electronics Co., Ltd. | Transmitter and receiver for transmitting and receiving multimedia content, and reproduction method therefor |
CN103262554A (zh) * | 2010-12-07 | 2013-08-21 | 三星电子株式会社 | 收发多媒体内容的发送装置和接收装置及其再现方法 |
US9491435B2 (en) | 2012-06-05 | 2016-11-08 | Mstar Semiconductor, Inc. | Image synchronization method and associated apparatus |
CN103517062A (zh) * | 2012-06-15 | 2014-01-15 | 晨星软件研发(深圳)有限公司 | 影像的同步方法及其装置 |
CN103888748B (zh) * | 2014-03-24 | 2015-09-23 | 中国人民解放军国防科学技术大学 | 用于众视点三维显示系统的视频帧同步方法 |
CN103888748A (zh) * | 2014-03-24 | 2014-06-25 | 中国人民解放军国防科学技术大学 | 用于众视点三维显示系统的视频帧同步方法 |
CN103873775A (zh) * | 2014-03-24 | 2014-06-18 | 联想(北京)有限公司 | 电子设备以及信息处理方法 |
CN106657871A (zh) * | 2015-10-30 | 2017-05-10 | 中国电信股份有限公司 | 基于视频拼接的多角度动态视频监控方法及装置 |
CN109309808A (zh) * | 2017-07-26 | 2019-02-05 | 梭维智能科技(深圳)有限公司 | 一种基于人脸识别的监控系统及方法 |
US11483495B2 (en) | 2018-08-22 | 2022-10-25 | Huawei Technologies Co., Ltd. | Method, apparatus, and system for implementing video stream switching |
WO2020052456A1 (zh) * | 2018-09-11 | 2020-03-19 | 华为技术有限公司 | 一种实现视频流切换的方法、装置和系统 |
US11212563B2 (en) | 2018-09-11 | 2021-12-28 | Huawei Technologies Co., Ltd. | Video stream switching method, apparatus, and system |
CN115988230B (zh) * | 2022-12-15 | 2024-04-30 | 北极星云空间技术股份有限公司 | 基于gop转码和虚拟文件实现低延迟hls直播的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100559877C (zh) | 2009-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101047848A (zh) | 一种支持多视点视频合成的网络流媒体播放器及方法 | |
Turletti | The INRIA videoconferencing system (IVS) | |
EP2719190B1 (en) | Spatially-segmented content delivery | |
CN1242623C (zh) | 视频编码方法、解码方法以及相关的编码器和解码器 | |
US10104451B2 (en) | IP uncompressed video encoder and decoder | |
US8665968B2 (en) | Method and system for 3D video coding using SVC spatial scalability | |
US8009742B2 (en) | Method and system for retransmitting internet protocol packet for terrestrial digital multimedia broadcasting service | |
US20120240174A1 (en) | Method and apparatus for configuring content in a broadcast system | |
US8432937B2 (en) | System and method for recovering the decoding order of layered media in packet-based communication | |
US20090207232A1 (en) | Multipoint conference system, multipoint conference method, and program | |
US9392303B2 (en) | Dynamic encoding of multiple video image streams to a single video stream based on user input | |
CN1787639A (zh) | 双向无线通信的光网络 | |
RU2634206C2 (ru) | Устройство и способ коммутации медиапотоков в режиме реального времени | |
CN105376613A (zh) | 一种快速频道切换方法、服务器及iptv系统 | |
US20140294080A1 (en) | Image processing device, image processing method, and computer program | |
CN1640150A (zh) | 在缺乏图像数据的情况下增加感知的视觉输出质量的图像处理方法和系统 | |
US20110191448A1 (en) | Subdivision of Media Streams for Channel Switching | |
JP2007281868A (ja) | 送信装置及び受信装置 | |
KR100792025B1 (ko) | Iptv 시스템에서 채널 변경시 비디오 데이터 전송 방법 | |
Shirai et al. | 4K SHD real-time video streaming system with JPEG 2000 parallel codec | |
JP6166692B2 (ja) | Ipベースの映像伝送装置および放送システム | |
JP2009171294A (ja) | 映像配信システム、映像中継装置、及び映像中継方法 | |
WO2017103963A1 (ja) | Ipベースの映像伝送装置および放送システム | |
JP2014204331A (ja) | Ip非圧縮映像エンコーダ | |
CN101521790A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091111 Termination date: 20190427 |
|
CF01 | Termination of patent right due to non-payment of annual fee |