专利名称:实现多种视音频流格式转换的装置和方法
技术领域:
本发明属于视讯领域,具体来说是涉及一种实现多种视音频流格式转换的装置和方法。
如
图1所示,现有流媒体系统的整体构架由三部分组成编码器(11),流媒体服务器(12),客户端(13)。编码器一般配备摄像头(14)和编码软件,它可以将摄像头(14)摄取的图像或从存储设备读取的多媒体文件编成码流,通过INTERNET传送给流媒体服务器(12),流媒体服务器(12)负责多媒体文件的存储以及多媒体数据的发送,因此它需要较高的处理能力和吞吐能力。客户端(13)装备播放软件,如RealNetworks、Windows Media、Quicktime等,向流媒体服务器(12)发送请求要求播放指定的节目,流媒体服务器(12)应答客户的请求后向其发送数据包。上述系统的关键流媒体技术是缓冲的使用,由于INTERNET使用的是包交换网络,从数据源到客户端的数据包由于路由不同,到达的时间也不一致,因此需要缓冲进行同步,同时缓冲的存在也能够在一定程度上抵消网络抖动所造成的影响。
随着视讯产品的市场开拓,越来越多的客户要求服务商提供实时的和非实时的流媒体视讯方案。主要体现在以下三点首先可以在IP网络上提供的会议直播业务,满足低成本的IP网络会议的现场广播;其次还要提供一套完整的类似于VOD的点播系统,可以把会议内容存储下来,以供大家可以随时随地通过IP网络点播会议实况,进行会议学习;第三,用户还可以通过这套点播流系统实现其它增值业务如股评、远程教育等,为客户带来长期受益。
一方面,会议电视系统主要集中于双向实时的视音频应用,多媒体数据的编码和解码完全按照ITU(International TelecommunicationsUnion国际电信同盟)-T的标准进行,如H.261、H.263、G.711、G.723等,各个厂家系统能够互通,数据格式完全公开;另一方面,主流的流媒体产品厂商如RealNetworks、Windows Media、Quicktime等均采用专用的流媒体格式;实际上,RealNetworks、Windows Media、Quicktime均不直接支持使用ITU-T标准压缩的数据,虽然二者均提供SDK(SoftwareDevelopment Kit软件开发工具包)对其流媒体文件进行读写操作,但是二者系统之间无法直接互通。
因此,如果要将会议电视系统的多媒体数据通过主流的流媒体系统传送,必须完成通用的流媒体格式转换的工作。
针对上述问题,现有技术中通用的解决方案是如图2所示,在会议电视系统的多媒体数据(23)和流媒体服务器(12)之间使用一个会议电视终端(21)和装有实时编码系统的编码设备(22),例如一个PC和采集卡,会议电视终端(21)负责将多媒体数据(23)解码并转化为模拟信号,该模拟信号输入到装有实时编码系统的编码设备(22),编码设备(22)重新将模拟信号数字化后调用实时编码系统,生成通用的流媒体格式的数据。
可是上述方案存在许多缺点,如1、数据格式转化过程为会议压缩数据解码->数字信号->模拟信号->数字信号->流媒体格式编码,由于要进行数模转化和模数转化,从而造成视音频质量的损失。
2、编码设备和会议电视系统无任何联系,无法与会议流程统一。当会议召开和结束时,必须手工开始和结束编码过程。
3、编码设备受编码软件和硬件所限,只能完成一路编码;而且没有对外接口或需要自行开发,无标准可以遵循。
4、需要会议电视终端和实时编码设备,系统成本较高。
为实现上述目的,本发明首先提供了一种实现多种视音频流格式转换的装置,该装置包括输入模块,用于接收原始视音频压缩数据包;RTP(Real-Time Transport Protocol实时传输协议)模块,用于处理所述输入模块接收的原始视音频压缩数据包;解码模块,用于将所述RTP模块处理后的视音频压缩数据解码;解码缓冲区,用于存储所述解码后的视音频压缩数据;唇音同步模块,用于将所述解码后的视音频压缩数据同步;编码缓冲区,用于存储所述同步后的视音频压缩数据;编码模块,用于将所述编码缓冲区中的视音频压缩数据编码为通用流媒体格式;输出模块,用于发送所述编码后的视音频压缩数据。
其中,所述的输入模块更进一步包含接收或发出H.323、SIP或H.248等多种协议的呼叫加入会议,与会议电视系统中的设备建立连接。
输入模块将接收到的原始视音频压缩数据包送至RTP模块进行处理后,首先传送给解码模块,再将解码后的视音频压缩数据存入解码缓冲区,然后唇音同步模块从解码缓冲区读取视音频压缩数据后进行同步,又送至编码缓冲区,最后由编码模块将其编码为通用流媒体格式,经输出模块输出。
为了进一步缩小本发明的成本和增加其可用性,本发明所述的一种实现多种视音频流格式转换的装置可进一步包括控制模块,用于控制多路数据的输入、处理、解码,其中,在和输入模块、RTP模块、解码模块相连的控制模块的协调下,输入模块能够同时接收多路数据,RTP模块能够同时处理多路数据,解码模块能够同时解码多路数据。其负责总体任务调度,能够同时接收和管理多路呼叫以及多种类型的呼叫、多路数据解码等,从而完成多路媒体数据的转换和广播。
上述装置也可包括网络模块及相应的网络接口,用于监听所述网络接口中的端口,当流媒体服务器连接到该端口后,该网络模块将所述输出模块输出的编码后的视音频压缩数据打包后,通过IP网络发送给流媒体服务器。
上述装置还可包括存储设备,用于存储所述输出模块输出的编码后的视音频压缩数据。
所述的解码模块更具体地讲包括音频解码模块和视频解码模块,其中音频解码模块用于将所述处理后的视音频压缩数据包中的音频压缩数据解码为音频PCM格式,视频解码模块用于将所述处理后的视音频压缩数据包中的视频压缩数据解码为视频YUV格式。
所述的唇音同步模块更具体地是指从所述解码缓冲区中读取视音频数据及其RTP时间信息,根据RTP时间信息以及RTCP包的同步时间信息确定音频、视频数据的网络延迟时间,即得到音频视频的相对网络时延,再根据得到的相对网络时延填充静音或缓存图像,从而实现音频与视频的同步。
本发明同时也提出了一种实现多种视音频流格式转换的方法,包含以下步骤a、接收原始视音频压缩数据包;b、处理接收的原始视音频压缩数据包,并将其解码后,存入解码缓冲区;
c、从解码缓冲区将所述解码后的视音频压缩数据取出,并进行同步,然后存入编码缓冲区;d、从编码缓冲区将所述同步后的视音频压缩数据取出,并编码为通用流媒体格式;e、将编码后的流媒体数据打包后向网络发送。
采用本发明所述的技术方案,不仅完成了多媒体数据的多种流媒体格式的转换,其编码随会议一起开始和结束进行同步,避免了多媒体数据不必要的损失;输出模块和网络模块的使用,使得本发明具有了通用的对外接口;控制模块的使用,使得本发明能够和其他MCU(MultipointControl Unit多点控制单元)配合,完成多路输入、多路转换、多路编码功能,降低了系统成本,从而提高了系统整体性能。
图2是本发明现有技术的整体架构图。
图3是本发明实施例的系统示意图。
图4是本发明实施例的系统构成图。
如图3所示为本实施例(31)在会议电视系统中的位置,本实施例(31)可以称为流媒体网关,能够直接接入会议电视系统,也同时连接着流媒体服务器(12)。将会议电视系统的多媒体数据直接转换为流媒体服务器(12)支持的格式。流媒体服务器(12)以单播或组播的方式将转换后的流媒体数据向客户端(13)传送。
本实施例(31)的设备硬件采用工控机或专用服务器,高度为1U(1U为高度单位,1U=1.75英寸),操作系统为Windows 2000。如图4所示,其组成包括输入模块(41),用于接收原始视音频压缩数据包;
RTP模块(42),用于处理所述输入模块接收的原始视音频压缩数据包;音频解码模块(44),用于将所述RTP模块处理后的音频压编数据解码;视频解码模块(45),用于将所述RTP模块处理后的视频压缩数据解码;解码缓冲区(46),用于存储所述解码后的视音频压缩数据;唇音同步模块(47),用于将所述解码后的视音频压缩数据同步;编码缓冲区(49),用于存储所述同步后的视音频压缩数据;编码模块(50),用于将所述编码缓冲区中的视音频压缩数据编码为通用流媒体格式;输出模块(51),用于发送所述编码后的视音频压缩数据;存储模块(53),用于存储编码后的视音频压缩数据;网络模块(52)及相应的网络接口(55),用于将编码后的视音频压缩数据发送给流媒体服务器(12)。
本发明所述的一种实现多种视音频流格式转换的装置包含以下步骤一、用于接收原始视音频压缩数据包。输入模块(41)接收或发出H.323、SIP(Session Initiation Protocol会话初始化协议)或H.248等多种协议呼叫加入会议,与会议电视系统中的设备建立连接。
二、处理接收的原始视音频压缩数据包,并将其解码后,存入解码缓冲区。用于处理所述输入模块(41)接收的原始视音频压缩数据包,去除其负载头信息后将净荷数据传送给音频解码模块(44)、视频解码模块(45);而音频解码模块(44)将处理后的视音频压缩数据中的音频压缩数据解码为音频PCM格式,视频解码模块(45)将处理后的视音频压缩数据中的视频压缩数据解码为视频YUV格式;解码后的数据存入解码缓冲区(46);三、从解码缓冲区将所述解码后的视音频压缩数据取出,并进行同步,然后存入编码缓冲区。唇音同步模块(47)负责将解码后的原始视音频数据同步,该模块从解码缓冲区(46)中读取视音频压缩数据及其RTP时间信息。根据RTP时间信息以及RTCP(Real-Time Transport ControlProtocol实时传输控制协议)包的同步时间信息确定音频、视频数据的网络延迟时间,得到音频视频的相对网络时延。根据得到的相对时延确定哪个超前。如果确定音频超前,将填充该延迟时间的静音,直到与视频实现同步;如果视频超前,将缓存该帧图像,直到同步语音到来。最后将同步的视频数据和音频数据送到编码缓冲区(49)。
四、从编码缓冲区将所述同步后的视音频压缩数据取出,并编码为通用流媒体格式。编码模块(50)用于将所述编码缓冲区中的视音频压缩数据编码为通用流媒体格式;编码模块(50)定时到编码缓冲区(49)中取出同步的视音频数据,记录当前时间,并将数据编码为通用流媒体格式,如RealNetworks、Windows Media、QuickTime、MPEG4等,并以文件的形式存储到本地存储设备。
五、将编码后的流媒体数据打包后向网络发送。输出模块(51)用于发送编码模块(50)编码后的视音频压缩数据,编码后的视音频压缩数据一方面可以以文件的形式存储到本地存储设备,即存储模块(53);另一方面也可在编码转换的同时,通过网络模块(52)及相应的网络接口(55)连接到流媒体服务器(12)上,网络模块(52)负责监听网络接口(55)中的端口,当流媒体服务器(12)连接到该端口后,网络模块(52)将编码数据以HTTP(HyperText Transfer ProtocolWWW服务程序所用的协议)或RDT协议(Real Data Transport实时数据传输)将数据打包并在包头中记录编码模块提供的时间信息,其中HTTP协议用于Window Media,RDT协议用于RealNetworks,然后通过IP网络发送给流媒体服务器(12)。
这样,客户端(13)就可以通过免费的媒体播放器软件,如WindowsMedia Player,RealOne Player,QuickTime Player等,连接到流媒体服务器(12),观看正在召开的会议内容从而完成会议的直播过程。
如图4所示的实施例还进一步包括控制模块(54),用于控制多路数据的输入、处理、解码,在呼叫处理方面采用MCU结构设计,能够同时接收和管理多路呼叫、多路数据解码,从而完成多路媒体数据的转换和广播,这样进一步缩小了系统成本和增加了系统可用性。
本实施例能够同时加入多个会议,作为会议存储模块(53)将正在举行会议的多媒体数据以流媒体格式存储。也提供网络接口(55)向网络中的客户端(13)广播编码以后的流媒体内容,在需要的时候,也可将存储模块(53)中的多媒体数据通过网络模块(52)及相应的网络接口(55)发送。
权利要求
1.一种实现多种视音频流格式转换的装置,其特征在于,该装置包括输入模块,用于接收原始视音频压缩数据包;RTP模块,用于处理所述输入模块接收的原始视音频压缩数据包;解码模块,用于将所述RTP模块处理后的视音频压编数据解码;解码缓冲区,用于存储所述解码后的视音频压缩数据;唇音同步模块,用于将所述解码后的视音频压缩数据同步;编码缓冲区,用于存储所述同步后的视音频压缩数据;编码模块,用于将所述编码缓冲区中的视音频压缩数据编码为通用流媒体格式;输出模块,用于发送所述编码后的视音频压缩数据。
2.如权利要求1所述的一种实现多种视音频流格式转换的装置,其特征在于,该装置还进一步包括控制模块,用于控制多路数据的输入、处理、解码。
3.如权利要求1所述的一种实现多种视音频流格式转换的装置,其特征在于,该装置还进一步包括和所述输出模块相连的网络模块及相应的网络接口,用于监听所述网络接口中的端口;当流媒体服务器连接到该端口后,该网络模块将所述输出模块输出的编码后的视音频压缩数据打包后,通过IP网络发送给流媒体服务器。
4.如权利要求1所述的一种实现多种视音频流格式转换的装置,其特征在于,该装置还进一步包括和所述输出模块相连的存储设备,用于存储所述输出模块输出的编码后的视音频压缩数据。
5.如权利要求1所述的一种实现多种视音频流格式转换的装置,其特征在于,所述的RTP模块更具体地是指将原始视音频压缩数据包去除其负载头信息后,成为净荷数据。
6.如权利要求1所述的一种实现多种视音频流格式转换的装置,其特征在于,所述的解码模块更具体地包括音频解码模块和视频解码模块。
7.如权利要求6所述的一种实现多种视音频流格式转换的装置,其特征在于,所述的音频解码模块用于将所述处理后的视音频压缩数据中的音频压缩数据解码为音频PCM格式。
8.如权利要求6所述的一种实现多种视音频流格式转换的装置,其特征在于,所述的视频解码模块用于将所述处理后的视音频压缩数据中的视频压缩数据解码为视频YUV格式。
9.如权利要求1所述的一种实现多种视音频流格式转换的装置,其特征在于,所述的唇音同步模块更具体地是指从所述解码缓冲区中读取视音频数据及其RTP时间信息,根据RTP时间信息以及RTCP包的同步时间信息确定音频、视频数据的网络延迟时间,即得到音频视频的相对网络时延,再根据得到的相对网络时延填充静音或缓存图像,从而实现音频与视频的同步。
10.如权利要求1所述的一种实现多种视音频流格式转换的装置,其特征在于,所述的输入模块更进一步包含接收或发出H.323、SIP或H.248等多种协议的呼叫加入会议,与会议电视系统中的设备建立连接。
11.一种基于权利要求1所述实现多种视音频流格式转换的装置而实现的多种视音频流格式转换方法,其特征在于,该方法包含以下步骤a、接收原始视音频压缩数据包;b、处理接收的原始视音频压缩数据包,并将其解码后,存入解码缓冲区;c、从解码缓冲区将所述解码后的视音频压缩数据取出,并进行同步,然后存入编码缓冲区;d、从编码缓冲区将所述同步后的视音频压缩数据取出,并编码为通用流媒体格式;e、将编码后的流媒体数据打包后向网络发送。
12.如权利要求11所述的一种实现多种视音频流格式转换的方法,其特征在于,所述的步骤a更进一步包含接收或发出H.323、SIP或H.248等多种协议的呼叫加入会议,与会议电视系统中的设备建立连接。
13.如权利要求11所述的一种实现多种视音频流格式转换的方法,其特征在于,所述的步骤d中的编码为通用流媒体格式是指编码为Real、Windows Media、MPEG4通用流媒体格式,并存储在本地。
全文摘要
本发明提出了一种实现多种视音频流格式转换的装置和方法,该装置包括输入模块,用于接收原始视音频压缩数据包;RTP模块,用于处理所述输入模块接收的原始视音频压缩数据包;解码模块,用于将所述处理后的视音频压缩数据解码;解码缓冲区,用于存储所述解码后的视音频压缩数据;唇音同步模块,用于将所述解码后的视音频压缩数据同步;编码缓冲区,用于存储所述同步后的视音频压缩数据;编码模块,用于将所述编码缓冲区中的视音频压缩数据编码为通用流媒体格式;输出模块。本发明不仅完成了多媒体数据的多种流媒体格式的转换,使得其编码和会议的进行同步,而且还避免了多媒体数据不必要的损失,降低了系统成本,提高了系统整体性能。
文档编号H04N7/26GK1472959SQ02128329
公开日2004年2月4日 申请日期2002年7月30日 优先权日2002年7月30日
发明者梁柱, 罗忠, 梁 柱 申请人:华为技术有限公司