发明内容
本发明提供了一种调整视频质量等级的方法、系统和装置,以便于在视频流传输过程中动态调整视频质量,更好地适应使用需求,实现诸如节约资源或提高客户端的使用性能的优点。
一种调整视频质量等级的方法,该方法应用于包含视频采集装置、编码器、管理服务器和客户端的系统,该方法包括:
A、当所述客户端接收到针对与所述客户端存在监控关系的视频采集装置N的运动侦测告警或防盗告警时,客户端向管理服务器发送视频调节请求;
B、管理服务器获取视频调节请求中携带的所述视频采集装置N的信息,判断所述客户端与所述视频采集装置N的监控关系对应的视频质量等级是否可提高,如果是,确定视频调整方案为提高向所述客户端发送的视频采集装置N对应的视频流的视频质量等级,并向视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息;否则,向所述客户端返回指示视频质量不可调的确认消息;
C、如果编码器接收到所述配置消息,则按照所述视频调整方案信息调整向所述客户端发送的视频流的视频质量等级;如果所述客户端接收到所述指示视频质量不可调的确认消息,则记录该客户端与视频采集装置N的监控关系对应视频质量不可调标志。
一种调整视频质量等级的方法,该方法应用于包含视频采集装置、编码器、管理服务器和客户端的系统,该方法包括:
A、当所述客户端确定自身接收到的视频流所占用的资源超过预设的第一资源门限值时,所述客户端向管理服务器发送视频调节请求;其中,所述资源包括网络带宽、客户端的CPU资源或客户端的内存资源;
B、所述管理服务器获取所述视频调节请求中携带的与所述客户端存在监控关系的所有视频采集装置信息,判断与所述客户端存在监控关系的视频采集装置中是否存在视频质量可降低的视频流对应的视频采集装置,如果否,向所述客户端返回指示视频质量不可调的确认消息;如果是,按照各视频采集装置的优先级,确定与所述客户端存在监控关系的视频采集装置中视频质量可降低的部分或全部视频采集装置,确定视频调整方案为降低向所述客户端发送的所述部分或全部视频采集装置对应的视频流的视频质量等级,并向视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息;
C、如果编码器接收到所述配置消息,则按照所述视频调整方案信息调整向所述客户端发送的视频流的视频质量等级;如果客户端接收到所述指示视频质量不可调的确认消息,则记录该客户端与视频采集装置N的监控关系对应视频质量不可调标志。
一种调整视频质量等级的系统,该系统包括:编码器、管理服务器和客户端;
所述客户端,用于在接收到针对与所述客户端存在监控关系的视频采集装置N的运动侦测告警或防盗告警时,向所述管理服务器发送携带视频采集装置N的信息的视频调节请求;接收到指示视频质量不可调的确认消息后,记录所述客户端与所述视频采集装置N的监控关系对应视频质量不可调标志;
所述管理服务器,用于接收到所述视频调节请求后,判断所述客户端与所述视频采集装置N的监控关系对应的视频质量等级是否可提高,如果是,根据所述视频采集装置N的信息,确定视频调整方案为提高向所述客户端发送的视频采集装置N对应的视频流的视频质量等级,并向视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息;否则,向所述客户端返回指示视频质量不可调的确认消息;
所述编码器,用于接收到所述配置消息后,按照所述视频调整方案信息调整向所述客户端发送的视频流的视频质量等级。
一种调整视频质量等级的系统,该系统包括:编码器、管理服务器和客户端;
所述客户端,用于确定自身接收到的视频流所占用的资源超过预设的第一资源门限值时,所述客户端向管理服务器发送携带与所述客户端存在监控关系的所有视频采集装置信息的视频调节请求;其中,所述资源包括网络带宽、客户端的CPU资源或客户端的内存资源;接收到所述指示视频质量不可调的确认消息后,记录该客户端与视频采集装置N的监控关系对应视频质量不可调标志;
所述管理服务器,用于在接收到所述视频调节请求后,判断与所述客户端存在监控关系的视频采集装置中是否存在视频质量可降低的视频流对应的视频采集装置,如果否,向所述客户端返回指示视频质量不可调的确认消息;如果是,按照各视频采集装置的优先级,确定与所述客户端存在监控关系的视频采集装置中视频质量可降低的部分或全部视频采集装置,确定视频调整方案为降低向所述客户端发送的所述部分或全部视频采集装置对应的视频流的视频质量等级,并向视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息;
所述编码器,用于收到所述配置消息后,则按照所述视频调整方案信息调整向所述客户端发送的视频流的视频质量等级。
一种用于视频系统中的客户端,其中所述视频系统还包括编码器、管理服务器,所述客户端包括:触发检测模块和调节请求发送模块;
所述触发检测模块,用于对视频系统中的运行情况进行监控,检测预设的视频调节触发条件是否被满足,并在视频调节触发条件被满足后向所述调节请求发送模块发送第一触发消息;
所述调节请求发送模块,用于接收到所述第一触发消息时,向视频系统中的管理服务器发送视频调节请求。
一种视频系统中的管理服务器,其中所述视频系统中还包括:客户端和编码器,所述管理服务器包括:请求接收模块、方案确定模块和消息发送模块;
所述请求接收模块,用于接收所述客户端发送的视频调节请求;
所述方案确定模块,用于根据所述视频调节请求中携带的视频采集装置信息,确定视频调整方案;
所述消息收发模块,用于向所述视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息。
一种视频系统中的编码器,其中所述视频系统中还包括:客户端和管理服务器;所述编码器包括:消息接收模块和质量调整模块;
所述消息收发模块,用于接收所述管理服务器发送的配置消息;
所述质量调整模块,用于按照所述配置消息中携带的视频调整方案信息调整向客户端发送的视频流的视频质量等级;
其中,所述配置消息是所述管理服务器接收到所述客户端发送的视频调节请求后,根据所述视频调节请求中携带的视频采集装置信息,确定视频调整方案后发送的。
由以上技术方案可以看出,本发明提供的方法和系统能够通过视频调节触发事件来触发客户端向管理服务器发送视频调节请求,管理服务器根据视频调节请求中携带的视频采集装置信息,确定视频调整方案,并向视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息,使得编码器按照视频调整方案调整向所述客户端发送视频流的视频质量等级。本发明能够在视频流传输过程中动态调整视频流的视频质量,更好地适应使用需求。例如对于某些不需要太高视频质量的视频流,采用较低的视频质量,当需要较高视频质量时提高其视频质量,从而节约网络带宽;在客户端接收的视频流所占用的CPU或内存资源超限时,能够动态地降低部分或全部视频流的质量,从而提高客户端的使用性能。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
本发明所提供的方法可以如图3所示,主要包括以下步骤:
步骤301:当发生视频调节触发事件时,客户端向管理服务器发送视频调节请求。
步骤302:管理服务器根据视频调节请求中携带的视频采集装置信息,确定视频调整方案,并向视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息。
步骤303:编码器接收到所述配置消息后,按照所述视频调整方案信息调整向客户端发送的视频流的视频质量等级。
下面结合具体实施例对上述方法进行详细描述。
实施例一、通过监控前端的检测触发客户端针对某个监控前端发起视频质量等级。
监控前端可以通过运动侦测告警或者防盗告警等检测来触发视频质量等级的调整,本实施例中以运动侦测来为例进行描述。图4为本发明实施例一提供的方法流程图,需要说明的是,该实施例中的客户端A和摄像机A仅是代称,其可以是视频监控网络中的任一台客户端和摄像机。如图4所示,该方法可以包括以下步骤:
步骤401:客户端A确定摄像机A对应的视频流的运动矢量是否超过预设的运动矢量阈值时,判断该客户端A是否与摄像机A存在监控关系,如果是,向管理服务器发送携带摄像机A信息的视频调节请求(图4中仅示出是的情况);否则,结束流程。
在本实施例中,针对所有或者某些摄像机可以在编码器上设置运动侦测功能,编码器可以获取这些摄像机所采集图像的运动矢量,当某个摄像机所采集图像的运动矢量超过预设的运动矢量阈值时,可以通过管理服务器向各客户端发送运动侦测告警,触发与该摄像机存在监控关系的客户端发送视频调节请求,以采用较高的视频质量等级进行传输;当低于预设的阈值时,编码器可以通过管理服务器向各客户端发送告警撤消消息,触发与该摄像机存在监控关系的客户端发送调节撤消消息,以恢复较低的视频质量等级进行传输,以节约带宽。
例如,可以针对采集的视频图像长时间不变化的摄像机A设置运动侦测功能,当编码器检测到摄像机A采集的视频图像开始发生变化时,通过管理服务器向各客户端发送携带摄像机A信息的运动侦测告警。客户端A接收到该运动侦测告警后,确定摄像机A采集的视频图像的运动矢量超过预设的运动矢量阈值,如果自身与摄像机A存在监控关系,则向管理服务器发送携带摄像机A信息的视频调节请求。
如果采用防盗告警的方式,例如,在某个摄像机端发生一些盗窃等特殊行为触发了防盗告警装置,则该防盗告警装置可以通过管理服务器向客户端发送防盗告警来触发客户端向管理服务器发送视频调节请求。
步骤402:管理服务器接收到视频调节请求后,获取其中的摄像机A信息,在确定客户端A与摄像机A的监控关系对应的当前视频质量等级可以提高时,向编码器发送配置消息指示编码器提高向该客户端A发送的摄像机A对应的视频流的视频质量等级。
客户端A发送的视频调节请求中除了包含摄像机A的信息之外,还会包含客户端A的信息;例如,视频调节请求中包含客户端A账号信息和摄像机A的通道信息。
管理服务器在接收到视频调节请求后,会确定一个视频调整方案,本步骤中管理服务器确定的视频调整方案为提高向客户端A发送的摄像机A对应的视频流的视频质量等级。
客户端A可以首先确定客户端A与摄像机A的监控关系对应的当前视频质量等级,判断该当前视频质量等级是否可提高,如果是,则向编码器发送配置消息,否则,向客户端A返回指示视频质量不可调的确认消息。所述当前视频频质量等级是否可提高可以有两种情况,其一为摄像机A的视频质量不可调,其二为当前视频质量等级已是最高等级。
步骤403:编码器接收到上述配置消息后,提高向客户端A发送的摄像机A对应的视频流的视频质量等级,生成视频调整记录,并将调整后的视频质量等级携带在确认消息中发送给管理服务器。
编码器在接收到配置消息后,可以根据配置消息的指示,将向客户端A发送的摄像机A对应的视频流的视频质量等级提高设定级数。其中,编码器对视频流的视频质量等级的调整可以通过对该视频流的编码码率进行调整来实现。
编码器生成的视频调整记录可以包含调整视频等级的监控关系,该监控关系对应的调整前的视频质量等级和调整后的视频质量等级。
步骤404:管理服务器接收到确认消息后,记录客户端A与摄像机A的监控关系对应的调整后的视频质量等级,并向客户端A发送携带调整后的视频质量等级的确认消息。
管理服务器中可以记录有各监控关系和该监控关系对应的视频质量等级的表项,管理服务器接收到确认消息后,将携带的调整后的视频质量等级添加到该客户端A和摄像机A的监控关系对应的表项中。
步骤405:客户端A接收到管理服务器发送的确认消息后,记录客户端A与摄像机A的监控关系对应的调整后的视频质量等级。
同样,客户端A也可以记录有客户端A与各摄像机的监控关系,以及该监控关系对应的视频质量等级的表项,接收到确认消息后,将携带的调整后的视频质量等级添加到该客户端A和摄像机A的监控关系对应的表项中。
另外,如果客户端A接收到的是指示视频质量不可调的确认消息,则客户端A可以记录客户端A与摄像机的监控关系对应视频质量不可调标志。
至此,已经完成了因运动侦测触发的提高视频质量等级的流程,如果客户端A再次收到关于摄像机A的运动侦测告警,可以判断是否已经记录客户端A与摄像机A的监控关系对应调整后的视频质量等级或视频质量不可调标志,如果是,结束流程,不向管理服务器发送视频调节请求;否则按照步骤401-步骤405执行。
另外,摄像机A对应的视频流的运动矢量还有可能在设定时间内保持低于预设的运动矢量阈值,此时,为了节约带宽和客户端A的CPU和内存资源,可以继续执行以下操作:
步骤406:客户端A确定摄像机A对应的视频流的运动矢量在设定时间内保持低于预设的运动矢量阈值时,向管理服务器发送携带摄像机A信息的视频调节撤消请求。
当摄像机A对应的视频流的运动矢量在设定时间内保持低于预设的阈值时,编码器可以通过管理服务器向各客户端发送运动侦测撤消告警,触发与该摄像机A存在监控关系的客户端发送视频调节撤消请求。或者,当摄像机A对应的视频流的运动矢量低于预设的运动矢量阈值时,编码器可以通过管理服务器向各客户端发送运动侦测撤消告警,与该摄像机A存在监控关系的客户端接收到运动侦测撤消告警后的设定时间内,如果没有接收到编码器发送的针对摄像机的运动侦测告警,则确定摄像机A对应的视频流的运动矢量在设定时间内保持低于预设的阈值。
步骤407:管理服务器接收到上述视频调节撤消请求后,向摄像机A对应的编码器发送配置撤消消息指示编码器恢复向该客户端A发送的摄像机A对应的视频流的视频质量等级。
步骤408:编码器接收到上述配置撤消消息后,将向该客户端A发送的摄像机A对应的视频流的视频质量等级恢复至原等级,删除视频调整记录,向管理服务器发送指示恢复至原等级的确认消息。
步骤409:管理服务器接收到指示恢复至原等级的确认消息后,删除该客户端A与摄像机A的监控关系对应的调整后的视频质量等级,并向客户端A恢复指示恢复至原等级的确认消息。
步骤410:客户端A接收到上述确认消息后,删除记录的客户端A与摄像机A的监控关系对应的调整后的视频质量等级。
至此,视频质量等级的恢复过程完毕,如果客户端A释放与摄像机A的监控关系,即不再需要接收摄像机A对应的视频流,则执行以下步骤:
步骤411:客户端A释放与摄像机A的监控关系时,向管理服务器发送包含摄像机A信息的监控关系释放请求。
步骤412:管理服务器接收到上述监控关系释放请求后,向摄像机A对应的编码器发送释放消息指示编码器释放客户端A与摄像机A的监控关系。
步骤413:编码器接收到上述释放消息后,释放客户端A与摄像机A的监控关系对应的业务和视频调整记录,向管理服务器返回指示释放完成的确认消息。
本步骤中,释放客户端A与摄像机A的监控关系对应的业务即不再将摄像机A采集的视频流发送给该客户端A,直至再次建立监控关系。
步骤414:管理服务器接收到指示释放完成的确认消息后,删除记录的客户端A与摄像机A的监控关系,以及该监控关系对应的视频质量等级记录,并向客户端A返回指示释放完成的确认消息。
步骤415:客户端A收到指示释放完成的确认消息后,删除记录的客户端A与摄像机A的监控关系,以及该监控关系对应的视频质量等级记录。
至此,监控关系的释放过程结束。
实施例二、通过检测客户端本地接收的视频流所占用资源超限来触发视频质量等级的调整。
图5为本发明实施例二提供的方法流程图,如图5所示,该方法可以包括以下步骤:
步骤501:客户端A确定本地接收到的视频流所占用的带宽超过预设的第一带宽门限值,或者所占用的CPU资源超过预设的第一CPU资源门限值,或者所占用的内存资源超过预设的第一内存资源门限值,向管理服务器发送视频调节请求,该视频调节请求中携带与客户端A存在监控关系的摄像机信息。
本步骤实际上是客户端确定本地接收到的视频流所占用的资源超过预设的第一资源门限值,视频流所占用的资源可以是网络带宽、客户端的CPU资源或者客户端的内存资源等。
同样,摄像机信息可以是摄像机的标识信息或者摄像机通道信息。
步骤502:管理服务器接收到上述视频调节请求后,确定与客户端A存在监控关系的摄像机中视频质量可降低的摄像机,根据确定的摄像机的优先级确定视频调整方案,并按照确定的视频调整方案向涉及的编码器发送携带视频调整方案信息的配置消息。
管理服务器根据视频调节请求中的摄像机信息,判断这些摄像机中是否存在视频质量可降低的视频流对应的摄像机,如果否,则可以向客户端A返回指示视频质量不可调的确认消息;如果是,则确定视频质量可调的摄像机。
本步骤中涉及的摄像机的优先级可以是预设的优先级,也可以是客户端A确定的优先级并携带在视频调节请求中发送给管理服务器的。
管理服务器可以根据与客户端A存在监控关系的摄像机的优先级,确定出一个合理的视频调整方案。例如,可以为下调优先级最低的N个摄像机对应的视频流的视频质量等级,其中N为预设的整数;也可以按照优先级分别按比例下调确定的摄像机的视频质量等级。然后,管理服务器向视频调整方案涉及的摄像机对应的编码器发送配置消息,该配置消息中包含该编码器需要进行的视频调整方案信息。
以图1所示的架构为例,假设图1中的客户端A因本地接收的视频流所占用资源超限向管理服务器发送了视频调节请求,客户端A与摄像机A、B、C和D都建立了监控关系,则该视频调节请求中包含摄像机A通道信息、摄像机B通道信息、摄像机C通道信息和摄像机D通道信息,还可以进一步包含摄像机A、B、C、D通道的优先级信息。假设摄像机A、B、C、D通道的优先级从高到底依次为1、2、3、4。管理服务器确定的视频调整方案可以为:将摄像机D通道降低3个视频质量等级,摄像机C通道降低2个视频质量等级,摄像机B通道降低1个视频质量等级,保持摄像机A通道的视频质量等级不变。对应的,管理服务器向编码器A发送配置消息指示编码器将向客户端A发送的摄像机B通道的视频流的视频质量等级降低1个级别,向编码器B发送配置消息指示编码器将向客户端A发送的摄像机C通道的视频流的视频质量等级降低2个级别,将向客户端A发送的摄像机D通道的视频流的视频质量等级降低3个级别。
步骤503:编码器接收到配置消息后,按照配置消息中的视频调整方案信息调整向客户端A发送的对应摄像机的视频流的视频质量等级,生成视频调整记录,将视频调整结果携带在确认消息中发送给管理服务器。
步骤504:管理服务器接收到编码器返回的确认消息,根据确认消息中的视频调整结果,记录对应监控关系对应的调整后的视频质量等级,将该客户端对应的调整次数值加1,向客户端A返回指示视频质量已调整的确认消息。
同样,管理服务器中可以记录有各监控关系和该监控关系对应的视频质量等级的表项,根据确认消息中的视频调整结果,将调整后的视频质量等级添加到对应监控关系的表项中。
另外,管理服务器可以针对各客户端的视频调整次数进行记录,初始值为0,每调整一次将调整次数值加1。
步骤505:客户端A接收到指示视频质量已调整的确认消息后,在本地设置实时调整状态标志。
如果客户端A接收到的是指示视频质量不可调的确认消息,则在本地客户端设置视频质量不可调标志。
至此已经完成了因接收的视频流所占用资源超限而触发的调整视频质量等级的流程。为了防止调整后的视频流所占用的资源仍然超限,更优地,可以继续执行步骤506。
步骤506:客户端A设置实时调整状态标志后,等待设定时间,客户端A判断本地接收到的视频流所占用的带宽是否超过预设的第一带宽门限值,或者所占用的CPU资源是否超过预设的第一CPU资源门限值,或者所占用的内存资源是否超过预设的第一内存资源门限值,如果否,则调整结束。如果是,则重新执行步骤501-步骤506。
如果客户端A接收到的总视频流所占用的资源降低到一定程度,可以按照以下流程重新恢复各视频流原有的视频质量等级。
步骤507:客户端A确定本地接收到的视频流所占用的带宽低于预设的第二带宽门限值,或者所占用的CPU资源低于预设的第二CPU资源门限值,或者所占用的内存资源低于预设的第二内存资源门限值,向管理服务器发送视频调节撤消请求。
本步骤中涉及的第二带宽门限值、第二CPU资源门限值、第二内存资源门限值均分别低于第一带宽门限值、第一CPU资源门限值、第一内存资源门限值。例如可以设置第二带宽门限值、第二CPU资源门限值、第二内存资源门限值分别为第一带宽门限值、第一CPU资源门限值、第一内存资源门限值的50%等。
步骤508:管理服务器接收到客户端A的视频调节撤消请求后,根据对视频调整结果的记录,向针对客户端A调整了视频质量等级的编码器发送配置撤消消息指示撤消针对客户端A调整的视频质量等级。
步骤509:编码器接收到该配置撤消消息后,按照视频调整记录恢复向客户端A发送的对应摄像机的视频流的视频质量等级,删除视频调整记录,向管理服务器发送指示已恢复至原等级的确认消息。
编码器按照视频调整记录可以确定针对客户端A调整的摄像机通道,将向客户端A发送的这些摄像机通道的视频流的视频质量等级恢复至原配置的视频质量等级。
步骤510:管理服务器接收到对应各编码器发送的指示已恢复至原等级的确认消息后,删除客户端A对应监控关系对应的调整后的视频质量等级,将该客户端对应的调整次数值清零,向客户端A返回指示视频质量已恢复的确认消息。
步骤511:客户端A接收到该确认消息后,删除在本地设置的实时调整状态标志,即恢复至正常状态。
除了上述直接恢复到正常状态的方式之外,也可以采用逐次恢复的方式,例如,当资源专用状况恢复至资源门限值的80%时,根据记录恢复至上一次的视频质量等级,删除已经恢复的记录,并将调整次数值减1;恢复至资源门限值的60%时,根据记录再向上恢复一次视频质量等级,删除已经恢复的记录,并将调整次数值减1;直至调整次数值减为0,即恢复至正常状态。
如果客户端A删除与某个摄像机的监控关系时,可以按照图4中步骤411至步骤415中的流程执行,在此不再赘述。
如果客户端A退出登录,即退出该视频监控业务,则可以执行以下步骤:
步骤512:管理服务器检测到客户端A退出登录,向与客户端A存在监控关系的摄像机对应的编码器发送释放消息指示编码器释放客户端A的监控关系。
步骤513:编码器接收到该释放消息后,释放客户端A对应的业务,并删除客户端A对应的视频调整记录,向管理服务器返回指示释放完成的确认消息。
步骤514:管理服务器接收到该确认消息后,删除客户端A对应的监控关系,以及该监控关系对应的记录。
本实施例中步骤512至步骤514中客户端退出登录的执行过程同样适用于实施例一。
以上是对本发明所提供的方法进行的详细描述,下面对本发明所提供的系统进行详细描述。图6为本发明实施例提供的系统结构图,如图6所示,该系统包括:编码器601、管理服务器602和客户端603。
客户端603,用于在发生视频调节触发事件时,向管理服务器602发送视频调节请求。
管理服务器602,用于根据视频调节请求中携带的视频采集装置信息,确定视频调整方案,并向视频调整方案涉及的编码器601发送携带视频调整方案信息的配置消息。
编码器601,用于接收到配置消息后,按照视频调整方案信息调整向客户端603发送的视频流的视频质量等级。
按照视频调节触发事件的不同,该系统可以有以下两种实现:
第一种:客户端603在接收到针对与该客户端603存在监控关系的视频采集装置N的运动侦测告警或防盗告警时,向管理服务器602发送携带视频采集装置N的信息的视频调节请求。
管理服务器602根据视频采集装置N的信息,确定的视频调整方案为提高向客户端603发送的视频采集装置N对应的视频流的视频质量等级。
其中视频采集装置N指代与客户端603存在监控关系的任一个视频采集装置。
管理服务器602在接收到视频调节请求之后,还可以用于判断客户端603与视频采集装置N的监控关系对应的视频质量等级是否可提高,如果是,继续执行确定视频调整方案的操作;否则向客户端603返回指示视频质量不可调的确认消息。
客户端603,还可以用于接收到指示视频质量不可调的确认消息后,记录该客户端603与视频频采集装置N的监控关系对应视频质量不可调标志。
更进一步地,客户端603,还可以用于接收到针对视频采集装置N的运动侦测撤消告警或防盗撤消告警时,向管理服务器602发送携带视频采集装置N信息的视频调节撤消请求。
管理服务器602,还可以用于接收到视频调节撤消请求后,向视频采集装置N对应的编码器601发送视频调节撤消请求。
编码器601,还用于接收到视频撤消请求后,恢复向客户端603发送的视频采集装置N对应的视频流的视频质量等级。
更优地,编码器601在调整视频质量等级后,可以进一步生成视频调整记录,并向管理服务器602发送携带调整后的视频质量等级的确认消息;恢复视频质量等级后,删除视频调整记录,向管理服务器602发送指示恢复至原等级的确认消息。
管理服务器602接收到携带调整后的视频质量等级的确认消息后,记录客户端603与视频采集装置N的监控关系对应的调整后的视频质量等级,并向客户端603发送携带调整后的视频质量等级的确认消息;接收到指示恢复至原等级的确认消息后,删除记录的客户端603与视频采集装置N的监控关系对应的调整后的视频质量等级,并向客户端603发送指示恢复至原等级的确认消息。
客户端603可以在接收到携带调整后的视频质量等级的确认消息后,记录该客户端603与视频采集装置N的监控关系对应调整后的视频质量等级;接收到指示恢复至原等级的确认消息后,删除记录的客户端603与视频采集装置N的监控关系对应的调整后的视频质量等级。
更优地,客户端603接收到针对视频采集装置N的运动侦测告警或防盗告警后,还可以进一步判断是否已经记录客户端603与视频采集装置N的监控关系对应的调整后的视频质量等级或者视频质量不可调标志,如果是,结束流程;否则执行向管理服务器602发送视频调节请求的操作。
第二种:客户端603确定接收到的视频流所占用的资源超过预设的第一资源门限值时,向管理服务器602发送携带与该客户端603存在监控关系的所有视频采集装置信息的视频调节请求。
管理服务器602按照各视频采集装置的优先级,确定与客户端603存在监控关系的视频采集装置中视频质量可降低的部分或全部视频采集装置,确定的视频调整方案为降低向客户端603发送的部分或全部视频采集装置对应的视频流的视频质量等级。
另外,管理服务器602在接收到视频调节请求之后,还可以用于判断与客户端603存在监控关系的视频采集装置中是否存在视频质量可降低的视频流对应的视频采集装置,如果否,向客户端603返回指示视频质量不可调的确认消息;如果是,执行确定视频质量方案的操作。
客户端603,还可以用于接收到指示视频质量不可调的确认消息后,设置视频质量不可调标志。
更进一步地,客户端603,还可以用于在确定接收到的视频流所占用的资源低于预设的第二资源门限值时,向管理服务器602发送视频调节撤消请求。
管理服务器602,还可以用于接收到视频调节撤消请求后,向针对客户端603调整了视频质量等级的编码器601发送配置撤消消息。
编码器601,还可以用于接收到配置撤消消息后,恢复向客户端603发送的视频流的视频质量等级;
其中,第二资源门限值小于第一资源门限值。
更优地,编码器601,还可以用于在调整视频质量等级之后生成视频调整记录,并向管理服务器602发送携带视频调整结果的确认消息;在恢复视频质量等级之后删除视频调整记录,向管理服务器602发送指示恢复至原等级的确认消息。
管理服务器602,还可以用于接收到携带视频调整结果的确认消息后,根据视频调整结果,记录客户端603与部分或全部视频采集装置的监控关系对应的调整后的视频质量等级,将客户端603对应的调整次数值加1,并向客户端603返回指示视频质量已调整的确认消息;接收到指示恢复至原等级的确认消息后,删除记录的客户端603对应监控关系所对应的调整后的视频质量等级,将客户端603对应的调整次数值清零,向客户端603返回指示视频质量已恢复的确认消息;
客户端603,还用于接收到指示视频质量已调整的确认消息后,设置实时调整状态标志;接收到指示视频质量已恢复的确认消息后,删除设置的实时调整状态标志。
更优地,客户端603在设置实时调整状态标志后,等待设定时间,如果确定自身接收到的视频流所占用的资源超过预设的第一资源门限值,则重新执行向管理服务器602发送视频调节请求的操作。
基于该系统的以上两种实现,管理服务器602,还可以用于检测到客户端603退出登录后,向视频调整方案涉及的编码器601发送释放消息;接收到指示释放完成的确认消息后,删除客户端603对应的监控关系。
编码器601,还可以用于接收到释放消息后,释放客户端603对应的视频流业务,向管理服务器602返回指示释放完成的确认消息。
下面对上述系统中涉及的客户端、管理服务器和编码器的结构分别进行详细描述。
图7为本发明实施例提供的客户端的结构示意图,如7所示,客户端可以包括:触发检测模块700和调节请求发送模块710。
触发检测模块700,用于对视频系统中的运行情况进行监控,检测预设的视频调节触发条件是否被满足,并在视频调节触发条件被满足后向调节请求发送模块710发送第一触发消息。
调节请求发送模块710,用于接收到第一触发消息时,向视频系统中的管理服务器发送视频调节请求。
其中,触发检测模块700可以包括:第一检测子模块701和第一触发子模块702。
第一检测子模块701,用于在接收到针对与该客户端存在监控关系的视频采集装置N的运动侦测告警或防盗告警时,确定预设的视频调节触发条件被满足。
第一触发子模块702,用于在第一检测子模块701确定预设的时频调节触发条件被满足时,向调节请求发送模块710发送第一触发消息。
另外,第一检测子模块701,还可以用于接收到针对视频采集装置N的运动侦测撤消告警或防盗撤消告警时,通知第一触发子模块702向调节请求发送模块710向第二触发消息。
调节请求发送模块710,还可以用于接收到第二触发消息时,向管理服务器发送携带视频采集装置N信息的视频调节撤消请求。
更优地,触发700检测模块还可以包括:第一信息设置子模块703,用于接收到管理服务器发送的指示视频质量不可调的确认消息后,记录该客户端与视频采集装置N的监控关系对应视频质量不可调标志;接收到携带调整后的视频质量等级的确认消息后,记录该客户端与视频采集装置N的监控关系对应调整后的视频质量等级;接收到指示恢复至原等级的确认消息后,删除记录的客户端与视频采集装置N的监控关系对应的调整后的视频质量等级。
触发检测模块700还可以采用另外一种结构,可以具体包括:第二检测子模块704和第二触发子模块705。
第二检测子模块704,用于确定该客户端接收到的视频流所占用的资源超过预设的第一资源门限值时,确定预设的视频调节触发条件被满足。
第二触发子模块705,用于在第二检测子模块704确定预设的时频调节触发条件被满足时,向调节请求发送模块发送第一触发消息。
更优地,第二检测子模块704,还可以用于在确定接收到的视频流所占用的资源低于预设的第二资源门限值时,通知第二触发子模块705向调节请求发送模块710发送第二触发消息。
调节请求发送模块710,还可以用于接收到第二触发消息时,向管理服务器发送携带视频采集装置N信息的视频调节撤消请求,其中,第二资源门限值小于第一资源门限值。
在这种结构下,触发检测模块700还可以包括:第二信息设置子模块706,用于接收到管理服务器发送的指示视频质量不可调的确认消息后,记录该客户端与视频采集装置N的监控关系对应视频质量不可调标志;接收到指示视频质量已调整的确认消息后,设置实时调整状态标志;接收到指示视频质量已恢复的确认消息后,删除设置的实时调整状态标志。
图8为本发明实施例提供的管理服务器的结构示意图,如图8所示,该管理服务器可以包括:请求接收模块801、方案确定模块802和消息收发模块803。
请求接收模块801,用于接收客户端发送的视频调节请求。
方案确定模块802,用于根据视频调节请求中携带的视频采集装置信息,确定视频调整方案。
消息收发模块803,用于向视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息。
当视频调节请求中携带视频采集装置N的信息时,方案确定模块802确定的视频调整方案为提高向客户端发送的视频采集装置N对应的视频流的视频质量等级。
此时,该管理服务器还可以包括:第一判断模块804,用于在请求接收模块801接收到视频调节请求后,判断客户端与视频采集装置N的监控关系对应的视频质量等级是否可提高,如果是,触发方案调整模块802执行确定视频调整方案的操作;否则,触发消息收发模块803向客户端返回指示视频质量不可调的确认消息。
另外,请求接收模块801,还可以用于接收视频调节撤消请求。
消息收发模块803,还可以用于在请求接收模块801接收到视频调节撤消请求后,向视频采集装置N对应的编码器发送视频调节撤消请求。
更优地,该管理服务器还可以包括:第一信息记录模块805,用于在消息收发模块801接收到编码器发送的携带调整后的视频质量等级的确认消息后,记录客户端与视频采集装置N的监控关系对应的调整后的视频质量等级,并触发消息收发模块803向客户端发送携带调整后的视频质量等级的确认消息;接收到消息收发模块803发送的指示恢复至原等级的确认消息后,删除记录的客户端与视频采集装置N的监控关系对应的调整后的视频质量等级,并通知消息收发模块803向客户端发送指示恢复至原等级的确认消息。
当视频调节请求中携带与该客户端存在监控关系的所有视频采集装置信息时,方案确定模块802确定与客户端存在监控关系的视频采集装置中视频质量可降低的部分或全部视频采集装置,确定的视频调整方案为降低向客户端发送的部分或全部视频采集装置对应的视频流的视频质量等级。
此时,该管理服务器还可以包括:第二判断模块806,用于在请求接收模块801接收到视频调节请求后,判断与客户端存在监控关系的视频采集装置中是否存在视频质量可降低的视频流对应的视频采集装置,如果否,通知消息收发模块803向客户端返回指示视频质量不可调的确认消息;如果是,触发方案确定模块802执行确定视频质量方案的操作。
更优地,该管理服务器还可以包括:第二信息记录模块807,用于在消息收发模块803接收到携带视频调整结果的确认消息后,根据视频调整结果,记录客户端与部分或全部视频采集装置的监控关系对应的调整后的视频质量等级,将客户端对应的调整次数值加1,并通知消息收发模块803向客户端返回指示视频质量已调整的确认消息;在消息收发模块803接收到指示恢复至原等级的确认消息后,删除记录的客户端对应监控关系所对应的调整后的视频质量等级,将客户端对应的调整次数值清零,通知消息收发模块803向客户端返回指示视频质量已恢复的确认消息。
基于以上结构,该管理服务器还可以包括:客户端检测模块808和退出处理模块809。
客户端检测模块808,用于检测客户端是否退出登录。
退出处理模块809,用于在客户端检测模块808检测到客户端退出登录后,通知消息收发模块803向视频调整方案涉及的编码器发送释放消息;消息收发模块803接收到指示释放完成的确认消息后,删除客户端对应的监控关系。
图9为本发明实施例提供的编码器结构示意图,如图9所示,该编码器可以包括:消息接收模块901和质量调整模块902。
消息收发模块901,用于接收管理服务器发送的配置消息。
质量调整模块902,用于按照配置消息中携带的视频调整方案信息调整向客户端发送的视频流的视频质量等级。
其中,配置消息是管理服务器接收到客户端发送的视频调节请求后,根据视频调节请求中携带的视频采集装置信息,确定视频调整方案后发送的。
另外,消息收发模块901,还可以用于接收管理服务器发送的视频撤消请求。
质量调整模块902,还可以用于在消息接收模块901接收到视频撤消请求后,恢复向客户端发送的视频流的视频质量等级。
更优地,该编码器还可以包括:信息记录模块903。
信息记录模块903,用于在质量调整模块902调整视频质量等级后,生成视频调整记录,并触发消息收发模块901向管理服务器发送携带调整后的视频质量等级的确认消息;在质量调整模块902恢复视频质量等级后,删除视频调整记录,通知消息收发模块901向管理服务器发送指示恢复至原等级的确认消息。
更进一步地,该编码器还可以包括释放处理模块904,用于在消息收发模块901接收到管理服务器发送的针对客户端的释放消息后,释放客户端对应的视频流业务,并通知消息收发模块901向管理服务器返回指示释放完成的确认消息。
由以上描述可以看出,本发明能够通过视频调节触发事件来触发客户端向管理服务器发送视频调节请求,管理服务器根据视频调节请求中携带的视频采集装置信息,确定视频调整方案,并向视频调整方案涉及的编码器发送携带视频调整方案信息的配置消息,使得编码器按照视频调整方案调整向所述客户端发送视频流的视频质量等级。本发明能够在视频流传输过程中动态调整视频流的视频质量,更好地适应使用需求。例如对于某些不需要太高视频质量的视频流,采用较低的视频质量,当需要较高视频质量时提高其视频质量,从而节约网络带宽;在客户端接收的视频流所占用的CPU或内存资源超限时,能够动态地降低部分或全部视频流的质量,从而提高客户端的使用性能。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。