一种音视频解码系统及解码方法

文档序号:8002935阅读:192来源:国知局
一种音视频解码系统及解码方法
【专利摘要】一种音视频解码系统及解码方法,包括:至少一通信模块,用于该音视频解码系统与前端设备进行数据交换;至少一解码模块,电性连接该通信模块,用于通过该通信模块从该前端设备获取需要的音视频数据,并对该音视频数据进行解码;至少一接口模块,电性连接该解码模块,用于提供多种音视频输出接口,将该解码模块解码后的音视频数据输出到显示设备;控制模块,电性连接该通信模块、该解码模块及该接口模块,用于根据该音视频解码系统中当前各模块已有的负载量和系统所能承载的负载量动态均衡控制各模块的负载;电源模块,用于给该音视频解码系统供电。
【专利说明】一种音视频解码系统及解码方法

【技术领域】
[0001]本发明涉及一种智能安防监控系统的实时音视频显示领域,特别是涉及一种分布式可配置可扩展的音视频解码系统的架构及设计方法。

【背景技术】
[0002]安防监控系统快速发展,监控摄像机的市场需求急剧增大,后台解码显示监控图像的清晰程度和实时性能要求越来越高。目前市场上大多数平台的音视频解码功能都是通过集中式架构的服务器和软件的方法实现,这样带来几个方面的问题:第一,软件方法实现音视频解码功能受限于集中式架构的服务器性能;第二,集中式架构的服务器的扩展性不强,如果前端设备规模扩大,则升级后台服务器的成本将大幅提高;第三,市场对监控图像的多屏显示的需求愈来愈烈,集中式架构的服务器显示接口的扩充,受到服务器载体空间的限制。基于此,一种分布式可配置可扩展的音视频解码系统的架构便应运而生,分布式架构的音视频解码系统是安防监控系统发展的必然趋势。


【发明内容】

[0003]为达上述目的本发明提供一种分布式音视频解码系统,包括:至少一通信模块,用于该音视频解码系统与前端设备进行数据交换;至少一解码模块,电性连接该通信模块,用于通过该通信模块从该前端设备获取需要的音视频数据,并对该音视频数据进行解码;至少一接口模块,电性连接该解码模块,用于提供多种音视频输出接口,将该解码模块解码后的音视频数据输出到显示设备;控制模块,电性连接该通信模块、该解码模块及该接口模块,用于根据该音视频解码系统中当前各模块已有的负载量和系统所能承载的负载量动态均衡控制各模块的负载;电源模块,用于给该音视频解码系统供电。
[0004]上述的分布式音视频解码系统,其中所述系统内各个类型的模块的功能独立,且各类型模块的数量可根据各模块的负载量和系统所能承载的负载量动态调整。
[0005]上述的分布式音视频解码系统,其中所述系统的解码模块、通信模块和控制模块具有通用性,根据功能需求定义部分为解码模块,部分为通信模块,部分为控制模块,各模块一旦被界定为某种类型的模块,定义后的模块功能不同且不重叠。
[0006]为达上述目的本发明还提供一种上述任一项所述的分布式音视频解码系统的控制方法,包括:步骤401,系统内通信模块和解码模块上报各自的负载量大小给控制模块;步骤402,控制模块查询系统内是否有新任务需要执行,如果没有则系统正常执行现有的任务,并继续监控各模块的负载量和新任务;如果有新任务则进入下一步骤;步骤403,控制模块比较计算各模块新任务的负载量大小;步骤404,控制模块根据系统内各模块现有的负载量做出均衡策略,并下发新任务。
[0007]上述的分布式音视频解码系统的控制方法,其中在步骤401之前,还包括:步骤501,控制模块解析用户的配置信息;步骤502,控制模块获取前端设备的编号。
[0008]上述的分布式音视频解码系统的控制方法,其中在步骤502中,控制模块获取前端设备的编号进一步包括:若前端设备不支持心跳协议,则控制模块定时的维护整个网络内的前端设备编号,并调度通信模块在整个网络内发送广播报文,网络内的前端设备收到控制模块发送的广播报文并回复自身的编号,控制模块统计收到的编号,并记录在自身的存储空间内;若前端设备支持心跳协议,则控制模块定时收到各个前端设备的心跳报文后,即认为该设备状态正常,统计该设备编号。
[0009]上述的分布式音视频解码系统的控制方法,其中于步骤404之后还包含一解码模块进行解码步骤包括:步骤601,获取解码方式;步骤602,上报已有的解码任务量给控制模块,待控制模块做最终的任务决策;步骤603,获取待解码的任务,如果解码模块本身的任务负载量相对较少,则会获取到新的解码任务,新获取的任务首先会暂存在内部存储队列内等待被解码;步骤604,按照用户配置的解码方式执行解码任务。
[0010]上述的分布式音视频解码系统的控制方法,其中系统内通信模块和解码模块上报各自的负载量大小给控制模块进一步包括:通信模块的负载量的衡量形式以现有的网络带宽、网络链路状态、模块堆栈内待传输和接收的数据包的大小作为参考指标,解码模块的负载量的衡量形式以模块内处理器的性能、内存的大小和模块内待解码的数据量大小作为参考指标。
[0011]上述的分布式音视频解码系统的控制方法,其中于步骤401之前,进一步包括一控制模块的选择方法,该控制模块的选择方法包括:步骤701,当系统开始工作时随机选择其中一个模块为控制模块,下一个模块被默认选择为备用控制模块;步骤702,系统工作后,将控制模块的所有数据实时更新到备用控制模块;步骤703,系统工作异常后,立即启用备用控制模块作为主控制模块,并自动选择其下一个模块为备用控制模块。
[0012]上述的分布式音视频解码系统的控制方法,其中所述的步骤703中,包括:当主控制模块出现异常后,自发启动备用控制模块。
[0013]与现有的音视频解码系统的架构相比,本发明的有益技术效果在于:
[0014]第一,本发明中所有的模块均为系统中独立的部分,各模块的数量都等于一时组成最小系统。在保证最小系统的前提下,增加或减少各模块的数量不影响系统的正常运行;
[0015]第二,本发明中系统内各功能按照模块化设计,使得系统内各功能独立且具有通用性;
[0016]第三,本发明中系统内各功能由于模块化设计的低耦合性,可使系统根据实际负载灵活的扩展各功能模块;
[0017]第四,本发明采用分布式的架构,能有效的缓解集中式架构的各种问题。
[0018]第五,本发明中系统内用户可配置系统的解码方式和接口的显示方式,使得系统可满足多种需求,具有接入方便,易维护,适用性强的特点。
[0019]分布式架构的音视频解码系统中各个功能模块相互独立,电源模块、通信模块、控制模块、解码模块、接口模块的数量可以根据系统的负载量动态扩展而不影响整个系统的正常运行。分布式架构的音视频解码系统是一个多输入、多输出系统,系统可以同时接入多路前端设备,并同时对其进行解码,最后通过多接口通道输出显示。系统内各个模块的负载量由控制模块实现均衡,即控制模块即为整个系统的核心大脑,其他模块均由控制模块指挥工作。
[0020]分布式架构的音视频解码系统相对于集中式的系统相比,有以下几个方面的优占-
^ \\\.
[0021](I)分布式架构的音视频解码系统是一个多输入多输出系统,缓解了集中式系统带来的接口模块和通信模块的瓶颈。
[0022](2)分布式架构的音视频解码系统内各个模块相互独立,使得系统的扩展和维护特别方便。
[0023](3)分布式架构的音视频解码系统由控制模块实现内部其他模块的负载均衡,为整个系统的高效工作提供保障。

【专利附图】

【附图说明】
[0024]图1是安防监控系统的架构图;
[0025]图2是本发明的分布式可配置可扩展的音视频解码系统等效图;
[0026]图3是本发明的分布式可配置可扩展的音视频解码系统的结构图;
[0027]图4是本发明的分布式可配置可扩展的音视频解码系统的任务处理流程图;
[0028]图5控制模块的执行流程;
[0029]图6解码模块的执行流程。
[0030]其中,附图标记:
[0031]S401-S405 步骤 S501-S505 步骤
[0032]S601-S604 步骤

【具体实施方式】
[0033]以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
[0034]如图1所示,是数据从前端设备到解码系统,最后到显示设备的流程。本发明中只涉及到解码系统,但是在介绍中会提到前端设备和显示设备,以此说明。
[0035]如图2所示,图2是本发明分布式可配置可扩展音视频解码系统的等效图。
[0036]在一实施例中,分布式可配置可扩展的音视频解码系统,包括:至少一通信模块、至少一解码模块、至少一接口模块、控制模块和电源模块。其中通信模块,用于该音视频解码系统与前端设备进行数据交换,系统内所有的音视频数据信号和控制信号由通信模块传送;解码模块,包括音频解码和视频解码,电性连接该通信模块,根据控制模块提供的信息,主动查询对应的前端设备,通过该通信模块从该前端设备获取需要的音视频数据,并对该音视频数据按照配置的解码方式进行解码;接口模块,电性连接该解码模块,用于提供多种音视频输出接口,将该解码模块解码后的音视频数据输出到显示设备;控制模块,电性连接该通信模块、该解码模块及该接口模块,用于根据该音视频解码系统中当前各模块已有的负载量和系统所能承载的负载量动态均衡控制各模块的负载,控制系统的工作状态、系统的解码方式、接口的显示方式,为用户提供可配置的接口 ;电源模块,用于给该音视频解码系统供电。
[0037]其中所述系统内各个类型的模块的功能独立,且各类型模块的数量可根据各模块的负载量和系统所能承载的负载量动态调整。并且所述系统的解码模块、通信模块和控制模块具有通用性,根据功能需求定义部分为解码模块,部分为通信模块,部分为控制模块,各模块一旦被界定为某种类型的模块,定义后的模块功能不同且不重叠。
[0038]图3是本发明的分布式可配置可扩展的音视频解码系统的结构图。
[0039]系统中每个模块都是一个独立的板卡。分布式可配置可扩展的音视频解码系统通过至少一个通信模块与前端设备连接,通过至少一个接口模块与显示设备连接。前端设备提供压缩编码后的音视频数据流,解码系统获得网络内所有前端设备编号,主动控制获取前端设备的数据流,并对其进行解码和输出。显示设备得到解码系统的输出数据,按格式显
/Jn ο
[0040]分布式可配置可扩展的音视频解码系统中,通信模块可通过多种方式实现:1M/1OOM/1000M以太网通信是最常用且最容易实现的一种,通过对应的PHY芯片和RJ45接口就能组成一路以太网通信;光网络通信近几年也趋于成熟,则光电转换设备的数据通信也是最佳的选择之一,常见的光通信形式有0WLINK、EP0N和SFP三种;随着4G时代的到来,LTE通信技术也是一种实现方式,对应的前端设备也必须是无线通信的形式。
[0041]分布式可配置可扩展的音视频解码系统中,解码模块的主处理芯片可采用海思的专用音视频处理芯片Hi3520和Hi3531,或者TI公司的DSP芯片。解码模块的性能直接决定整个解码系统的处理能力。以海思芯片为例,Η?3520芯片的最高工作频率可达600MHz,支持H.264、JPEG解码方式,同时支持8路Dl格式的视频解码或者I路1080P全高清+1路Dl的数据解码。Hi3531芯片则功能更加强大,最高工作频率达930MHz,支持H.264、MPEG4、JPEG等解码处理方式,解码能力达1080Ρ@60帧,同时支持4路1080Ρ全高清数据解码。
[0042]分布式可配置可扩展的音视频解码系统中,控制模块的主处理芯片性能要求不高,主要完成各模块列表维护,任务负载量统计,实现负载均衡的决策,调度整个系统的合理高效工作。一般普通的ARM或DSP处理器都可实现。
[0043]分布式可配置可扩展的音视频解码系统中,接口模块提供系统与显示设备的通道,包括HDMI 1.4接口、DP接口、VGA接口、HD-SDI接口、DVI接口、BNC接口等。可实现八百万视频图像像素的输出显示,也可实现多屏和分屏显示。
[0044]分布式可配置可扩展的音视频解码系统中,系统上电后,电源模块将交流输入电压转换为系统所需的各种电源信号,供系统内的其他所有模块使用。另外不同电平信号的上电顺序也是通过电源模块实现的,比如上电顺序是电平由高到低,掉电顺序是电平由低到高。电源转换芯片包含线性电源和开关电源等。
[0045]如图4所示是本发明系统的任务处理流程图,首先在步骤S401及402中,系统内通信模块和解码模块定时上报各自的负载量大小给控制模块,然后在S403中,控制模块查询系统内是否有新任务需要执行,如果没有则系统正常执行现有的任务,并继续监控各模块的负载量和新任务;如果有新任务则进入S404,按照任务类型比较计算各模块新任务的负载量大小,最后在步骤S405中,控制模块权衡系统内各模块现有的负载量做出均衡策略,并下发新任务。
[0046]其中在该控制方法中,还包括在步骤401之前进行控制模块解析用户的配置信息的步骤和控制模块获取前端设备的编号的步骤。
[0047]其中通信模块的负载量的衡量形式以现有的网络带宽、网络链路状态、模块堆栈内待传输和接收的数据包的大小作为参考指标。解码模块的负载量的衡量形式以模块内处理器的性能、内存的大小和模块内待解码的数据量大小作为参考指标。
[0048]系统工作时,按照默认规则界定系统中的控制模块、备用控制模块、通信模块和解码模块。则控制模块的工作流程如图5所示,以下控制模块的所有步骤都要同步到备用控制模块,当主控制模块发生意外时,系统立即启动备用控制模块作为主控制模块,并再选定一个备用控制模块,将所有数据备份。第一步S501,控制模块解析用户的配置信息,包括解析用户配置的解码方式,解码方式包括解码的音视频质量,解码的通道数量,每个通道解码的数量,即控制模块读取用户配置的解码方式和接口显示方式,解码方式如H.264解码、MPEG4解码、JPEG解码等,解码的图像质量如130万像素、200万像素、300万像素、500万像素、800万像素的视频图像,接口的显示方式如HDMI接口、DP接口、DVI接口等,还有多屏显示和分屏显示等方式;第二步S502,控制模块定时获取前端设备的编号,a)若前端设备不支持心跳协议,则在整个环境中前端设备由于各方面原因(比如停电,维修等)可能会退出整个网络,则控制模块需要定时的维护整个网络内的前端设备编号,控制模块调度通信模块在整个网络内发送广播报文,网络内的前端设备收到控制模块发送的广播报文并回复自身的编号,编号可以是IP地址,或者独一无二的其他编号,控制模块统计收到的编号,并记录在自身的存储空间内。b)若前端设备支持心跳协议,则控制模块定时收到各个前端设备的心跳报文后,即认为该设备状态正常,统计该设备编号;第三步S503,控制模块统计解码任务的负载量大小,控制模块调度通信模块主动连接网络内的前端设备,主动请求获取前端设备的音视频数据信号,并获取其音视频数据计算解码负载量的大小;第四步S504,控制模块计算各解码模块现有的负载量大小,系统运行过程中,各解码模块的负载量大小不一,主要表现在解码模块的处理器性能不同、内存大小不同、解码的视频图像质量不同、现有的解码任务数量不同等方面;第五步S505,控制模块根据负载量大小控制系统的运行,即控制模块根据解码任务的负载量和各解码模块现有的负载量大小,实施负载均衡策略,避免出现解码效率不高的现象。
[0049]解码模块的工作流程如图6所示,第一步S601,获取解码方式,即从控制模块获取解析后的解码方式,配置自己的工作环境;第二步S602,上报已有的解码任务量给控制模块,待控制模块做最终的任务决策;第三步S603,获取待解码的任务,如果解码模块本身的任务负载量相对较少,则会获取到新的解码任务,新获取的任务首先会暂存在内部存储队列内等待被解码;第四步S604,按照用户配置的解码方式执行解码任务。
[0050]所述系统内各个类型的模块的功能相互独立,其数量可动态扩展,当所有模块的数量各为一时组成最小系统。
[0051]本发明还提供了一种系统内控制模块的选择方法,步骤一:系统内通信模块,控制模块,解码模块的硬件之间相互通用,一旦被界定为一种模块,则功能就不同且功能不重叠,所有模块按照编号形成一个环形链表。步骤二,系统开始工作时随即选择其中一个位置的模块并界定为控制模块,而其下一个模块即被默认选择为备用控制模块。步骤三,系统工作后,控制模块的所有数据都要实时更新到备用控制模块,且主控制模块与备用控制模块间的数据通过通信模块传输。步骤四,系统工作异常后立即启用备用控制模块作为主控制模块,并自动选择其下一个模块为备用控制模块。
[0052]本发明的一种分布式可配置可扩展的音视频解码系统的架构及其控制方法,用于实现整个安防大系统中音视频解码系统的实时高效工作。首先,系统采用负载均衡的思想,系统可根据当前各模块已有的负载量和系统所需的负载量的大小动态均衡各模块的负载,使得系统内各模块发挥最大的性能;其次,模块通用化的设计思想,用户根据实际需要动态扩展各模块的数量,而不是从新设计解决方案;最后,用户可配置系统的音视频数据解码方式和接口的显示方式,从产品的开发周期和成本上都能更好的发挥作用。
[0053]本发明提出了一种分布式可配置可扩展的音视频解码,可对任何待解码的音视频数据按照用户配置的解码方式进行实时解码,并根据用户配置的接口显示方式输出数据到显示设备。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
【权利要求】
1.一种分布式音视频解码系统,其特征在于,包括: 至少一通信模块,用于该音视频解码系统与前端设备进行数据交换; 至少一解码模块,电性连接该通信模块,用于通过该通信模块从该前端设备获取需要的音视频数据,并对该音视频数据进行解码; 至少一接口模块,电性连接该解码模块,用于提供多种音视频输出接口,将该解码模块解码后的音视频数据输出到显示设备; 控制模块,电性连接该通信模块、该解码模块及该接口模块,用于根据该音视频解码系统中当前各模块已有的负载量和系统所能承载的负载量动态均衡控制各模块的负载; 电源模块,用于给该音视频解码系统供电。
2.根据权利要求1所述的分布式音视频解码系统,其特征在于,所述系统内各个类型的模块的功能独立,且各类型模块的数量可根据各模块的负载量和系统所能承载的负载量动态调整。
3.根据权利要求1所述的分布式音视频解码系统,其特征在于,所述系统的解码模块、通信模块和控制模块具有通用性,根据功能需求定义部分为解码模块,部分为通信模块,部分为控制模块,各模块一旦被界定为某种类型的模块,定义后的模块功能不同且不重叠。
4.一种权利要求1-3之任一项所述的分布式音视频解码系统的控制方法,其特征在于,包括: 步骤401,系统内通信模块和解码模块上报各自的负载量大小给控制模块; 步骤402,控制模块查询系统内是否有新任务需要执行,如果没有则系统正常执行现有的任务,并继续监控各模块的负载量和新任务;如果有新任务则进入下一步骤; 步骤403,控制模块比较计算各模块新任务的负载量大小; 步骤404,控制模块根据系统内各模块现有的负载量做出均衡策略,并下发新任务。
5.根据权利要求4所述的分布式音视频解码系统的控制方法,其特征在于,在步骤401之前,还包括: 步骤501,控制模块解析用户的配置信息; 步骤502,控制模块获取前端设备的编号。
6.根据权利要求5所述的分布式音视频解码系统的控制方法,其特征在于,在步骤502中,控制模块获取前端设备的编号进一步包括:若前端设备不支持心跳协议,则控制模块定时的维护整个网络内的前端设备编号,并调度通信模块在整个网络内发送广播报文,网络内的前端设备收到控制模块发送的广播报文并回复自身的编号,控制模块统计收到的编号,并记录在自身的存储空间内;若前端设备支持心跳协议,则控制模块定时收到各个前端设备的心跳报文后,即认为该设备状态正常,统计该设备编号。
7.根据权利要求4所述的分布式音视频解码系统的控制方法,其特征在于,于步骤404之后还包含一解码模块进行解码步骤包括: 步骤601,获取解码方式; 步骤602,上报已有的解码任务量给控制模块,待控制模块做最终的任务决策; 步骤603,获取待解码的任务,如果解码模块本身的任务负载量相对较少,则会获取到新的解码任务,新获取的任务首先会暂存在内部存储队列内等待被解码; 步骤604,按照用户配置的解码方式执行解码任务。
8.根据权利要求4所述的分布式音视频解码系统的控制方法,其特征在于,系统内通信模块和解码模块上报各自的负载量大小给控制模块进一步包括: 通信模块的负载量的衡量形式以现有的网络带宽、网络链路状态、模块堆栈内待传输和接收的数据包的大小作为参考指标,解码模块的负载量的衡量形式以模块内处理器的性能、内存的大小和模块内待解码的数据量大小作为参考指标。
9.根据权利要求4所述的分布式音视频解码系统的控制方法,其特征在于,于步骤401之前,进一步包括一控制模块的选择方法,该控制模块的选择方法包括: 步骤701,当系统开始工作时随机选择其中一个模块为控制模块,下一个模块被默认选择为备用控制模块; 步骤702,系统工作后,将控制模块的所有数据实时更新到备用控制模块; 步骤703,系统工作异常后,立即启用备用控制模块作为主控制模块,并自动选择其下一个模块为备用控制模块。
10.根据权利要求8所述的分布式音视频解码系统的控制方法,其特征在于,所述的步骤703中,包括: 当主控制模块出现异常后,自发启动备用控制模块。
【文档编号】H04N19/44GK104349120SQ201310320177
【公开日】2015年2月11日 申请日期:2013年7月26日 优先权日:2013年7月26日
【发明者】张力, 苏威积, 裴彦杰, 林秀春, 肖鹏, 钟松延, 黄敏君, 董一伯, 杜丽, 邓超, 刘攀, 孟飞, 董博, 赵薇, 牛坤, 张健, 刘雨睿, 王东东, 张春杰, 黄传鹤 申请人:北京计算机技术及应用研究所, 北京航天爱威电子技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1