一种基于H.265视频编码格式的视频会议系统的制作方法

文档序号:11480052阅读:240来源:国知局
一种基于H.265视频编码格式的视频会议系统的制造方法与工艺

本发明涉及视频会议系统领域,具体涉及一种基于h.265视频编码格式的视频会议系统。



背景技术:

现有的基于h.264视频编码格式的视频会议系统在进行高清会议时(分辨率为720p或1080p),发送和接收的视频流所占用的带宽非常高,以至于视频会议的通话质量对网络环境的要求十分苛刻,一般采用专用网络或者只在一个相对封闭的局域网内进行才能获得较好的视频效果,如果遇到网络波动较大或带宽较小的情况,会在很大程度上影响高清视频流的发送接收;并且,使用h.264编码格式的视频会议系统中的高清会议视频体积都很大,如果要将接收到的视频流上传至一些储存的服务器或是从服务器下载至本地,即使上传下载的带宽很大,也需要较长时间。

针对于原有视频会议系统中出现的这种情况,本发明将其与最新的h.265视频编码格式相结合,使得视频的压缩率大大提升,在有限的带宽下可以传输更高清晰度的视频,并通过directshow技术应用于视频编解码的各个环节,在很大程度上减小了在进行同等视频质量的视频会议时编码后视频流的大小,最终达到了减小视频传输过程中带宽的消耗、减小视频文件的储存空间以及加速视频文件在服务器之间的传输速度等效果。



技术实现要素:

本发明的目的是针对上述现有技术的不足,提供了一种基于h.265视频编码格式的视频会议系统,使用h.265视频编码方式代替原本的h.264视频编码方式,大大提高了相同分辨率下视频的提及,从而在一定程度上解决了高清视频传输所消耗的网络带宽以及储存资源的问题,进而一定程度上缓解了网络不稳定情况下所带来的视频质量不稳定的问题。

本发明的目的可以通过如下技术方案实现:

一种基于h.265视频编码格式的视频会议系统,包括信令收发模块、性能监控模块、视频编码模块、视频解码模块、视频流管理模块、主程序模块、进程管理模块和视频数据收发模块,所述信令收发模块是基于sip协议的网络通信模块,用于将信息进行封装,并通过网络发送给特定ip地址的终端,或接受其他终端发送来的信息;所述性能监控模块用于监控视频会议系统运行过程中的各个性能数值,并在性能数值异常时执行对应的处理方式;所述视频编码模块用于接收连接在本终端的摄像头的视频数据,使用指定的编码方法对原始视频数据进行编码,并将编码好的视频数据发送给其他终端;所述视频解码模块用于接收其他终端发送过来的视频数据,并根据该视频数据使用的编码方法,使用对应的解码方法来对视频数据进行解码,将解码后的视频数据进行显示或本地储存;所述视频流管理模块用于为所有的视频流创建和关闭编码模块和解码模块,其中,一个视频会议系统中所使用到的摄像头视频或从其他终端发送过来的视频都称为一个视频流,每一个视频流对应一个编码模块或解码模块;所述主程序模块用于提供终端与用户交互的界面并对终端进行配置;所述进程管理模块使用d-bus进程间通讯机制,负责各个模块间的通信以及各个模块的创建与关闭;所述视频数据收发模块基于rtp协议,将编码好的视频数据发送至指定终端,或者从指定ip地址的终端接收视频数据。

进一步地,所述信令收发模块处理的信息均为会话控制类信息,所述性能监控模块监控的视频会议系统运行过程中的各个性能数值包括带宽消耗和硬盘读写速率。

进一步地,所述视频编码模块使用基于h.265编码格式的编码方法,所述视频解码模块使用基于h.265解码格式的解码方法。

进一步地,所述视频解码模块能够对解码后的视频数据进行格式转换,以适应不同播放设备的需要。

进一步地,所述视频编码模块和视频解码模块均使用directshow技术搭建的框架,并能够根据终端硬件环境的不同,选择性地使用硬件编码和硬件解码或软件编码和软件解码两种方式进行编解码的实现。

进一步地,所述基于h.265视频编码格式的视频会议系统默认终端设备具有硬件编解码所需要的硬件,并通过硬件编解码的方式,将视频流数据以h.265编码格式在各终端设备之间编码传输并解码播放,但对只需求少量或单个高清视频的编解码,又没有硬件编解码所需要的硬件的情况下,所述视频会议系统能够自动判断,使用软件编解码方式进行视频的编解码。

进一步地,所述硬件编码流程为:从directshow的数据源组件接收摄像头的原始视频流数据,使用intel的处理器硬件进行h.265编码格式的编码,将编码好的数据交给rtp发送组件发送给对应ip地址的终端程序端口;所述硬件解码流程为:从rtp组件接收编码后的视频数据,进行缓存并交给视频解码模块进行解码,视频解码模块从接收缓存中读取视频数据并使用intel的处理器硬件进行h.265编码格式的解码,并将解码后的视频数据交给渲染组件,渲染组件将接收到的视频流,渲染至屏幕。

进一步地,所述软件编码流程为:从directshow的数据源组件接收摄像头的原始视频流数据,根据不同类型的视频流数据格式转换为yuv420格式,接着对yuv原始视频数据进行编码,将编码好的数据交给视频数据收发模块,发送给对应ip地址的终端程序端口;所述软件解码流程为:从视频数据收发模块接收编码后的视频数据,进行缓存并交给视频解码模块进行解码,视频解码模块从接收缓存中读取视频数据并使用对应解码库,通过cpu的运算进行解码,并将解码后的视频数据交给渲染组件,渲染组件将接收到的视频流,渲染至屏幕。

本发明与现有技术相比,具有如下优点和有益效果:

本发明所述的基于h.265视频编码格式的视频会议系统,相对于现在使用的h.264视频编码格式的视频会议系统,在视频流的体积方面,对于视频流数据的压缩率有很大提高,进而就减小了相同原始质量的视频流在互联网中传播所需要的带宽和时间,也为在对于带宽和数据大小的移动端,如手机等,进行高清视频会议提供一种可行的方式;另外,通过对视频流数据的压缩,降低了视频流数据的体积,并降低了在发送和接受视频流数据时所产生的cpu时间消耗,进而降低了视频会议过程中对于用户所感知到的系统使用延迟和视频的收发延迟。

附图说明

图1为本发明实施例基于h.265视频编码格式的视频会议系统的结构示意图。

图2为本发明实施例基于h.265视频编码格式的视频会议系统中视频编码模块的工作流程图。

图3为本发明实施例基于h.265视频编码格式的视频会议系统中视频解码模块的工作流程图。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。

实施例:

如图1所示,本实施例提供了一种基于h.265视频编码格式的视频会议系统,包括信令收发模块、性能监控模块、视频编码模块、视频解码模块、视频流管理模块、主程序模块、进程管理模块和视频数据收发模块,所述信令收发模块是基于sip协议的网络通信模块,用于将信息进行封装,并通过网络发送给特定ip地址的终端,或接受其他终端发送来的信息;所述性能监控模块用于监控视频会议系统运行过程中的各个性能数值,并在性能数值异常时执行对应的处理方式;所述视频编码模块用于接收连接在本终端的摄像头的视频数据,使用指定的编码方法对原始视频数据进行编码,并将编码好的视频数据发送给其他终端;所述视频解码模块用于接收其他终端发送过来的视频数据,并根据该视频数据使用的编码方法,使用对应的解码方法来对视频数据进行解码,将解码后的视频数据进行显示或本地储存;所述视频流管理模块用于为所有的视频流创建和关闭编码模块和解码模块,其中,一个视频会议系统中所使用到的摄像头视频或从其他终端发送过来的视频都称为一个视频流,每一个视频流对应一个编码模块或解码模块;所述主程序模块用于提供终端与用户交互的界面并对终端进行配置;所述进程管理模块使用d-bus进程间通讯机制,负责各个模块间的通信以及各个模块的创建与关闭;所述视频数据收发模块基于rtp协议,将编码好的视频数据发送至指定终端,或者从指定ip地址的终端接收视频数据。

其中,所述信令收发模块处理的信息均为会话控制类信息,所述性能监控模块监控的视频会议系统运行过程中的各个性能数值包括带宽消耗和硬盘读写速率。所述视频编码模块使用基于h.265编码格式的编码方法,所述视频解码模块使用基于h.265解码格式的解码方法。并且,所述视频解码模块能够对解码后的视频数据进行格式转换,以适应不同播放设备的需要。

进一步地,所述视频编码模块和视频解码模块均使用directshow技术搭建的框架,并能够根据终端硬件环境的不同,选择性地使用硬件编码和硬件解码或软件编码和软件解码两种方式进行编解码的实现。所述基于h.265视频编码格式的视频会议系统默认终端设备具有硬件编解码所需要的硬件,并通过硬件编解码的方式,将视频流数据以h.265编码格式在各终端设备之间编码传输并解码播放,但对只需求少量或单个高清视频的编解码,又没有硬件编解码所需要的硬件的情况下,所述视频会议系统能够自动判断,使用软件编解码方式进行视频的编解码。其中,所述硬件编码流程为:从directshow的数据源组件接收摄像头的原始视频流数据,使用intel的处理器硬件进行h.265编码格式的编码,将编码好的数据交给rtp发送组件发送给对应ip地址的终端程序端口;所述硬件解码流程为:从rtp组件接收编码后的视频数据,进行缓存并交给视频解码模块进行解码,视频解码模块从接收缓存中读取视频数据并使用intel的处理器硬件进行h.265编码格式的解码,并将解码后的视频数据交给渲染组件,渲染组件将接收到的视频流,渲染至屏幕。所述软件编码流程为:从directshow的数据源组件接收摄像头的原始视频流数据,根据不同类型的视频流数据格式转换为yuv420格式,接着对yuv原始视频数据进行编码,将编码好的数据交给视频数据收发模块,发送给对应ip地址的终端程序端口;所述软件解码流程为:从视频数据收发模块接收编码后的视频数据,进行缓存并交给视频解码模块进行解码,视频解码模块从接收缓存中读取视频数据并使用对应解码库,通过cpu的运算进行解码,并将解码后的视频数据交给渲染组件,渲染组件将接收到的视频流,渲染至屏幕。

所述基于h.265视频编码格式的视频会议系统对于视频的接收的具体流程为:首先系统根据用户的接收视频,由进程管理模块通知信令收发模块与特定终端进行信息交互(信息包括如:对方终端的ip地址,本终端的ip地址,欲接收的视频流的视频分辨率等),之后由视频流管理模块进程创建新的接收视频流(如图1中虚线部分所示,其中包含视频数据收发模块和视频解码模块),用以接收从其他终端发送过来的视频流。当用户停止接收该视频流时,主程序模块将通过进程管理模块通知信令收发模块向对应的终端发送停止接收视频消息,之后视频流管理模块将销毁对应的接受视频流。对于视频的发送的具体流程为:系统只有在受到其他终端的视频发送请求消息时才会发送本地摄像头采集的视频数据,当收到视频发送请求时,系统会解析消息中包含的数据,获取请求终端的ip地址,并且将自身的ip地址以及欲发送的视频的详细信息返回给消息的发送者,之后通知视频流管理模块,创建发送视频流(如图1中虚线部分所示,其中包含视频数据收发模块和视频编码模块),并由其中的视频流数据收发模块将对应视频的数据发送给指定终端,当收到视频发送请求终端发送的终止接收视频消息时,信令收发模块通过进程管理模块通知视频流管理模块停止发送视频数据并销毁对应的发送视频流。

其中,所述视频编码模块的工作流程图如图2所示,首先编码器为编码时所需要的参数集设定默认初值、分配内存空间并进行默认初始化,之后使用编码器循环对原始视频数据进行编码,当不再有视频输入或者视频流关闭时,输出剩余视频数据并结束编码。视频解码模块的工作流程图如图3所示,系统首先根据配置或自动检测编码器的类型,决定要使用的编码器,之后接收从其他模块传入的视频数据,获取数据中的视频流信息,根据流信息初始化解码器上下文结构体,之后对接收到的视频数据逐帧进行解码,并传递给下游的模块,进行文件保存或显示至屏幕。

以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明专利构思加以等同替换或改变,都属于本发明专利的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1