视频处理方法、装置、电子设备及介质与流程

文档序号:21543283发布日期:2020-07-17 17:47阅读:129来源:国知局
视频处理方法、装置、电子设备及介质与流程

本发明实施例涉及数据传输技术领域,尤其涉及一种视频处理方法、装置、电子设备及介质。



背景技术:

随着电视墙的普及以及支持的分辨率越来越高,越来越多领域选择采用电视墙来显示视频信息。例如,在监控领域中采用电视墙实时显示监控视频。

目前,在显示要求和显示能力越来越强的情况下,单个网口的传输能力已经从百兆升级到了千兆。对于一个解码设备来说,一个网口通常需要对应多个输出口,当需要处理大的视频业务时,带宽的实际传输能力与需求还是有着较大的差距,很容易导致在视频数据上墙显示时出现画面卡顿。



技术实现要素:

本发明实施例中提供了一种视频处理方法、装置、电子设备及介质,以实现从图像数据发流端到解码设备的视频码流码率的控制。

第一方面,本发明实施例中提供了一种视频处理方法,所述方法包括:

若识别到码流切换触发事件,则从至少两个视频业务中确定目标视频业务;以及,确定所述目标视频业务的码流切换控制信息;

向管理设备发送所述码流切换控制信息,以使所述管理设备依据所述码流切换控制信息对所述目标视频业务的码流进行切换并发送,以调整码流码率;

接收所述管理设备发送的所述目标视频业务的切换后码流。

第二方面,本发明实施例中还提供了一种视频处理装置,所述装置包括:

切换信息确定模块,用于若识别到码流切换触发事件,则从至少两个视频业务中确定目标视频业务;以及,确定所述目标视频业务的码流切换控制信息;

切换信息发送模块,用于向管理设备发送所述码流切换控制信息,以使所述管理设备依据所述码流切换控制信息对所述目标视频业务的码流进行切换并发送,以调整码流码率;

视频码流接收模块,用于接收所述管理设备发送的所述目标视频业务的切换后码流。

第三方面,本发明实施例中还提供了一种电子设备,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例中提供的视频处理方法。

第四方面,本发明实施例中还提供了一种介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例中提供的视频处理方法。

本发明实施例中提供了一种视频处理方法,在确定出现码流切换触发事件的情况下,从多个视频业务中确定目标视频业务以及目标视频业务的码流切换控制信息,而管理设备依据码流切换控制信息对目标视频业务的码流进行切换,以调整其发送的视频码流的码率。采用本申请方案,可对来自发流端的视频码流进行控制,避免接收的视频码流的码率过大占用过多的传输带宽所导致的网络传输带宽不足的问题,解决了大业务量视频码流上墙时因传输带宽不足导致的视频卡顿的问题,最大化地利用解码资源和网络传输资源。

上述发明内容仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1是本发明实施例中提供的一种视频处理方法的流程图;

图2是本发明实施例中提供的一种视频业务的视频码流的传输示意图;

图3是本发明实施例中提供的另一种视频处理方法的流程图;

图4是本发明实施例中提供的一种视频显示窗口之间的窗口示意图;

图5是本发明实施例中提供的另一种视频显示窗口之间的窗口示意图;

图6是本发明实施例中提供的又一种视频显示窗口之间的窗口示意图;

图7是本发明实施例中提供的一种视频处理装置的结构框图;

图8是本发明实施例中提供的一种电子设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

为了更好地理解本申请的技术方案,这里简略分析实际场景中的解码设备的相关内容,以更好地发现其中的缺陷。通常,编码设备可对视频业务的视频数据进行编码得到视频码流,然后通过网络或其他形式将视频码流传输给解码设备进行解码处理,最后将解码后的视频信号在显示设备上显示。在处理小业务量的视频码流时,解码设备可以正常解码,但是在处理大业务量的视频码流时,网络传输带宽可能会出现不足,造成无法将视频码流正常传输至解码设备进行解码,导致解码出现卡顿,进而影响后续的显示。

结合上述对解码设备出现的解码缺陷分析,下面通过以下实施例及各实施例的可选技术方案对视频处理方法、装置、电子设备及介质进行详细阐述。

图1是本发明实施例中提供的一种视频处理方法的流程图。本发明实施例可适用于对来自发流端的视频码流进行合理控制的情况。该方法可由视频处理装置执行,该装置可采用软件和/或硬件的方式实现,并集成在任何具有网络通信功能的电子设备上。例如,该电子设备可包括但不限于解码设备、计算机设备以及服务器等。如图1所示,本发明实施例中提供的视频处理方法,可包括以下步骤s110-s130:

s110、若识别到码流切换触发事件,则从至少两个视频业务中确定目标视频业务;以及,确定目标视频业务的码流切换控制信息。

在本实施例中,图2是本发明实施例中提供的一种视频业务的视频码流的传输示意图。参见图2,解码设备可接收管理设备发送的来自编码设备的视频码流,并在对视频码流解码后将其在显示设备上显示。其中,显示设备可包括电视墙,例如,电视墙是由多个大屏拼接合成的超大屏幕的电视墙体。码流切换触发事件可用于指示管理设备是否针对向解码设备发送的视频码流进行码流切换。例如,对于网络传输带宽不足的情况,通过码流切换触发事件指示管理设备针对向解码设备发送的视频码流进行码率降低;而,对于网络传输带宽充足的情况,通过码流切换触发事件指示管理设备针对向解码设备发送的视频码流进行码率提高或者恢复初始码率。

在本实施例中,图2仅示出了将一种视频业务的视频码流进行解码并在显示设备上进行显示的传输示意,而对于实际场景中的解码设备来说,解码设备通常会处理多种视频业务的视频码流,而非一种视频业务的视频码流。即,解码设备通常会将多种视频业务的码流进行解码,并将解码后的多种视频业务的视频信号在显示设备上显示。因此,在识别到码流切换触发事件后,解码设备不会控制管理设备对所有视频业务的视频码流进行码流切换,而是从至少两个视频业务中选取满足码流切换要求的目标视频业务,以便管理设备对目标视频业务的码流进行切换。这样做的好处在于,可以根据实际的需求进行有目的的码流切换,避免在对部分视频业务的码流进行切换后,造成在显示设备上显示的该部分视频业务的视频数据不符合要求,影响显示效果。

在本实施例中,解码设备除了需要确定对至少两种视频业务中的哪些视频业务的码流进行切换,还需确定目标视频业务的码流切换控制信息,即确定如何对目标视频业务的码流进行切换。可选地,码流切换控制信息用于指示将目标视频业务的当前码率的码流切换至目标码率的码流。例如,对于网络传输带宽不足的情况,其中设置的目标码率小于当前码率;即,降低目标视频业务的视频码流的码率,以免传输过程中占用过多的网络传输带宽。而,对于网络传输带宽充足的情况,其中设置的目标码率大于当前码率,即,提高目标视频业务的视频码流的码率,以保证在传输过程中视频业务的码流能够承载足够多的数据来保证视频清晰度和流畅度。

s120、向管理设备发送码流切换控制信息,以使管理设备依据码流切换控制信息对目标视频业务的码流进行切换并发送。

在本实施例中,参见图2,编码设备不会直接将编码后的各个视频业务的视频码流发送给解码设备,而是先将编码后的视频码流发送给管理设备,然后管理设备将接收的各个视频业务的码流转发给解码设备。在此基础上,解码设备可将已经确定的目标视频业务的码流切换控制信息发送给管理设备,进而管理设备根据码流切换控制信息来实现对视频码流的切换操作,从而达到对传输的码流进行码率调整的目的。

在本实施例中,管理设备可根据码流切换控制信息指示的切换后码流的码流类型信息,例如码流类型信息可为切换后码流的码率,将目标视频业务所需要的继续传输的码流从当前码率的码流切换到目标码率的码流,然后继续向解码设备发送切换后码流,这样就可控制向解码设备发送的目标视频业务的视频码流的码率。其中,对于网络传输带宽不足的情况,目标码率小于当前码率;而对于网络传输带宽充足的情况,目标码率大于当前码率。

需要说明的是,本申请方案不是对解码设备内部做带宽限制,以分配不同的传输带宽。本申请方案考虑到对解码设备内部做带宽限制的方式只能对解码设备本身的带宽进行限制,对于发流端(例如编码设备)的传输带宽并不能进行控制,数据还是会发过来,无法起到有效控制。因此,本申请方案从视频数据的源头来对各个视频业务的视频码流进行控制,避免在业务量大的视频业务下因传输带宽不足导致的解码过程出现卡顿。

在本实施例中,在向管理设备发送码流切换控制信息时,因为可能涉及到的视频业务比较多,因此在传递的时候尽量简要地表达所需要的码流切换控制信息。可选地,在传输格式上按照如下格式:<?xmlversion="1.0"encoding="utf-8"?>、<screengroupcode>string</screengroupcode>以及<windowsgroup>windowid:streamtype,windowid:streamtype……</windowsgroup>。其中,在协议中需要告知管理平台:screengroupcode表示对哪一组屏幕进行控制、windowsgroup表示要控制的窗口列表有哪些以及streamtype表示需要切换成什么样的码流类型。采用上述传输格式,可通过简略的表达方式简明扼要的告知管理设备相关的控制信息,方便简洁。

s130、接收管理设备发送的目标视频业务的切换后码流。

在本实施例中,参见图2,解码设备可接收目标视频业务的切换后的视频码流。这样,就可使得解码设备接收到的码流所占用的传输带宽得到有效的控制,避免由于向解码设备发送的视频码流所需的传输带宽过大而导致的网络传输带宽不足进而产生的解码卡顿的问题,从而保证视频业务所占用的传输带宽在一个合理的范围,进而可最大化的利用解码设备的解码资源和网络传输资源。

在本实施例的一种可选方式中,接收管理设备发送的目标视频业务的切换后码流,可包括以下步骤:

采用目标传输通道,接收管理设备发送的目标视频业务的切换后码流;目标传输通道包括在码流切换之前,管理设备与解码设备之间的可复用传输通道。

在本实施例中,当管理设备接收到解码设备告知的码流切换控制信息的时候,管理平台根据码流切换控制信息对向解码设备发送的目标视频业务的码流进行码流切换,从当前码率的切换前码流切换为目标码率的切换后码流,然后将目标码率的切换后码流进行发送。并且,为保证在码流切换过程中不会因为传输的视频数据出现传输间断而导致的视频画面的卡顿,管理设备在码流切换过程中不会将其与解码设备建立的传输通道断开,而是直接复用在码流切换之前管理设备与解码设备之间的目标传输通道来传输切换后码流。这样在码流切换时就可直接采用原来的目标传输通道继续发送切换后码流,而不需要等待传输通道重新建立,从而避免因重新建立传输通道而导致视频传输出现间断。

在本实施例中,可选地,参见图2,针对同一视频业务,管理设备与编码设备之间可分别建立多个不同码率的通道连接。例如,管理设备与编码设备之间的不同码率的通道连接可基于socket通信建立。这样,管理设备可采用与编码设备间的多个不同码率的通道连接,从编码设备同时获取目标视频业务的切换前码流与切换后码流以及其他码率的码流。例如,在接入编码设备时,管理设备可对每一路视频业务的编码通道都建立多个不同码率的通道连接,包括主码流的通信连接、辅码流的通信连接、第三码流的通信连接,其中,主码流的码率大于辅码流的码率,辅码流的码率大于第三码流的码率。在此基础上,管理设备可以同时获取编码设备的所有码率的视频码流数据,当需要切换码流的时候只需要将待切换的满足切换需求的另一码流写入目标传输通道,然后复用目标传输通道继续向解码设备发送目标视频业务的切换后码流,而不需从编码设备重新获取视频码流数据。

采用上述可选方案的好处在于,管理设备可直接复用原有的传输通道来传输切换后的视频码流,直接用切换后码流数据代替当前码率的码流数据并写入现有目标传输通道即可,可避免因为重新建立传输通道导致发送的码流出现间断而造成后续在显示设备上显示的画面出现卡顿。同时,管理平台获取编码设备的所有码率类型的码流,这样在切换码流时不需要再从编码设备获取视频码流数据,实现无缝码流切换。

本发明实施例中提供了一种视频处理方法,采用本申请方案,可对来自发流端的视频码流进行控制,避免接收的视频码流的码率过大占用过多的传输带宽而导致的网络传输带宽不足,解决了大业务量视频码流上墙时因传输带宽不足导致视频卡顿的问题,最大化地利用解码设备的解码资源和网络传输资源。

在上述实施例的基础上,可选地,在从至少两个视频业务中确定目标视频业务之前,还可包括以下步骤a1-a2:

步骤a1、依据至少两个视频业务中各个视频业务所需的传输带宽,确定网络的剩余传输带宽。

在本实施例中,参见图2,对于解码设备上的各个视频业务,解码设备可获取各个视频业务的视频码流的分辨率和帧率;然后,依据各个视频码流的分辨率和帧率,按照预设的传输带宽计算方式计算各个视频业务需要占用的传输带宽。例如,视频业务的视频码流的传输带宽计算如下:如果视频业务的视频码流的分辨率为1080p,帧率为30fps,那么该视频业务所需的传输带宽为4mbps;如果视频业务的视频码流的分辨率为1080p,帧率为60fps,那么该视频业务所需的传输带宽为8mbps;如果视频业务的视频码流的分辨率为720p,帧率为30fps,那么该视频业务所需的传输带宽为2mbps。

在本实施例中,在确定至少两个视频业务中各个视频业务所需的传输带宽之后,可统计至少两个视频业务所需要占用的总传输带宽。依据至少两个视频业务所需要占用的总传输带宽,可计算得到管理设备与解码设备之间的网络传输带宽中的剩余传输带宽。可选地,考虑到对于千兆网口来说,理论数据传输可以到1gbps,实际传输最佳情况可能只能达到500mbps,因此在计算管理设备与解码设备之间的网络传输带宽中的剩余传输带宽时,可按照实际传输最佳情况能达到的500mbps来统计网络传输带宽中的剩余传输带宽。

步骤a2、若剩余传输带宽小于预设带宽下限阈值,则确定管理设备与解码设备间的网络传输带宽不足,并触发码流切换操作。

在本实施例中,可预先设置一个带宽阈值作为下限阈值,如果检测到剩余传输带宽小于该预设带宽下限阈值,则确定各个视频业务的所占用的传输带宽过大造成管理设备与解码设备间的网络传输带宽不足,此时可认为识别到第一类码流切换触发事件,需要执行降低视频业务的视频码流的码率的操作。

在本实施例中,可选地,还可预先设置另一个带宽阈值作为上限阈值,如果检测到剩余传输带宽大于该预设带宽上限阈值,则确定各个视频业务的所占用的传输带宽比较少,管理设备与解码设备间的网络传输带宽充足,此时可认为识别到第二类码流切换触发事件,可执行提高或者恢复视频业务的视频码流的码率的操作。此外,可选地,如果检测到剩余传输带宽大于该预设带宽下限阈值,且小于预设带宽上限阈值,则确定各个视频业务的所占用的传输带宽正好合适,此时表明未识别到码流切换触发事件。

采用上述可选实施方案的好处在于,可实时地对接收的各个视频业务所占用的传输带宽进行检测,若检测到各个视频业务所占用的传输带宽过大,则及时对视频业务所占用的传输带宽进行控制,从源头上解决视频业务所占用传输带宽过大导致解码设备出现卡顿的问题;同时,通过实时检测也能及时获知何时对视频业务的码流的码率进行恢复,以保证视频信号在显示设备上的显示效果。

图3是本发明实施例中提供的另一种视频处理方法的流程图,本发明实施例在上述实施例的基础上对前述实施例中s110的步骤进一步优化,本发明实施例可以与上述一个或者多个实施例中各个可选方案结合。如图3所示,本实施例中提供的视频处理方法,可包括以下步骤s310-s340:

s310、若识别到码流切换触发事件,则依据显示设备上至少两个视频显示窗口的窗口属性信息,从至少两个视频显示窗口中确定目标视频显示窗口。

在本实施例中,参见图2,各个视频业务的视频数据会在显示设备上分别以视频显示窗口的形式进行显示。其中,在显示设备上,一个视频显示窗口对应显示一个视频业务的视频数据。此时,可确定显示设备上各个视频业务关联的视频显示窗口的窗口属性信息,进而依据各个视频业务关联的视频显示窗口的窗口属性信息来确定目标视频业务。可选地,窗口属性信息可包括:视频显示窗口的被遮挡信息、视频显示窗口的尺寸信息以及视频显示窗口的位置信息中的一个或多个组合信息。这样,当检测到网络传输带宽压力比较大时,解码设备就可从多个维度在众多视频显示窗口中选择目标视频显示窗口,进而选择合适的目标视频业务来进行码流切换。

s320、将目标视频显示窗口关联的视频业务作为目标视频业务;以及,确定目标视频业务的码流切换控制信息。

在本实施例中,对于显示设备上显示的各个视频显示窗口而言,每一个视频显示窗口关联有一个或多个视频业务。解码设备对其关联的视频业务的码流进行解码,并将解码后的视频数据发送到显示设备。显示设备可通过视频显示窗口对其关联的视频业务的解码后视频数据进行显示。

在本实施例的一种可选方式中,依据显示设备上至少两个视频显示窗口的窗口属性信息,从至少两个视频显示窗口中确定目标视频显示窗口,可包括以下步骤b1-b2:

步骤b1、若至少两个视频显示窗口中存在被遮挡的视频显示窗口,则确定被遮挡的视频显示窗口的被遮挡区域大小。

在本实施例中,图4是本发明实施例中提供的一种视频显示窗口之间的窗口示意图。参见图4,在显示设备上,视频显示窗口1的大部分区域被视频显示窗口2遮挡覆盖,视频显示窗口2只有一小部分区域被视频显示窗口3遮挡覆盖。对于这类情况来说,因为视频显示窗口1的大部分区域被遮挡,这个窗口本身的视频信息已经不被用户关注,因此可选择对这部分视频显示窗口对应的视频业务的码流的码率进行降低。基于上述分析,可从显示设备上各个视频显示窗口之间的遮挡覆盖情况来确定需要进行码流切换的目标视频显示窗口。

在本实施例中,可实时检测显示设备上显示的至少两个视频显示窗口中是否存在被遮挡的视频显示窗口。若存在,则继续确定被遮挡的视频显示窗口的被遮挡区域大小,以便利用被遮挡区域大小来确定是否将其作为目标视频显示窗口;若不存在,则按照窗口属性信息中各个属性信息的优先级顺序采用下一属性信息来确定目标视频显示窗口。

步骤b2、依据被遮挡的视频显示窗口的被遮挡区域大小,从被遮挡的视频显示窗口中确定目标视频显示窗口。

在本实施例中,可选地,可按照各个被遮挡的视频显示窗口的被遮挡区域大小,对各个被遮挡的视频显示窗口进行由大到小进行排序,从中选取排序在前的预设个视频显示窗口作为目标视频显示窗口。又一可选地,可预先设定一个窗口遮挡区域阈值,若检测到被遮挡的视频显示窗口的被遮挡区域大小大于该预设的窗口遮挡区域阈值,则将该被遮挡的视频显示窗口作为目标视频显示窗口;否则,不作为目标视频显示窗口。若按照被遮挡的视频显示窗口的被遮挡区域大小无法得到目标视频显示窗口,则按照窗口属性信息中各个属性信息的优先级顺序采用下一属性信息来筛选确定目标视频显示窗口或者采用前一可选的被遮挡区域大小排序方案来筛选目标视频显示窗口。

在上述实施例的基础上,可选地,在判断显示设备上显示的视频显示窗口是否能够对其进行降低码流码率等级时,如果存在视频显示窗口没有被其他视频显示窗口遮挡覆盖,且该视频显示窗口是由多个大屏拼接显示的,将这类视频显示窗口作为不可降低码流码率的特殊窗口。

在本实施例的另一种可选方式中,依据显示设备上至少两个视频显示窗口的窗口属性信息,从至少两个视频显示窗口中确定目标视频显示窗口,可包括:

若至少两个视频显示窗口中存在尺寸缩放的视频显示窗口,则从尺寸缩放的视频显示窗口中确定目标视频显示窗口。

在本实施例中,图5是本发明实施例中提供的另一种视频显示窗口之间的窗口示意图。参见图5,在显示设备上,各个视频显示窗口的窗口大小可能不一致,例如,视频显示窗口1的窗口大小较小,视频显示窗口2和视频显示窗口3的窗口较大。对于这类情况来说,因为视频显示窗口较大的窗口会更多的关注细节,而较小的视频显示窗口则相对会忽略其细节,因此可选择对这部分尺寸缩小的视频显示窗口对应的视频业务的码流的码率进行降低。

在本实施例中,可实时检测显示设备上显示的至少两个视频显示窗口中是否存在尺寸缩放的视频显示窗口。若存在,则从尺寸缩放的视频显示窗口中确定目标视频显示窗口;若不存在,则按照窗口属性信息中各个属性信息的优先级顺序采用下一属性信息来筛选确定目标视频显示窗口。

在本实施例中,可选地,可按照各个尺寸缩放的视频显示窗口的窗口尺寸大小,对各个尺寸缩放的视频显示窗口由小到大进行排序,从中选取排序在前的预设个尺寸缩放的视频显示窗口作为目标视频显示窗口。又一可选地,可分别确定各个尺寸缩放的视频显示窗口在显示设备上占据的像素数以及各个尺寸缩放的视频显示窗口对应的视频数据的分辨率。若确定尺寸缩放的视频显示窗口在显示设备上占据的像素数小于尺寸缩放的视频显示窗口对应的视频数据的分辨率,则将该尺寸缩放的视频显示窗口作为目标视频显示窗口;否则,不作为目标视频显示窗口。若按照尺寸缩放的视频显示窗口的窗口尺寸大小无法得到目标视频显示窗口,则按照窗口属性信息中各个属性信息的优先级顺序采用下一属性信息来筛选确定目标视频显示窗口或者采用前一可选的窗口尺寸排序方案来筛选目标视频显示窗口。

在本实施例的又一种可选方式中,依据显示设备上至少两个视频显示窗口的窗口属性信息,从至少两个视频显示窗口中确定目标视频显示窗口,可包括以下步骤c1-c2:

步骤c1、若确定至少两个视频显示窗口的窗口数量超过预设数量,则依据至少两个视频显示窗口的窗口位置,确定被关注的视频显示窗口。

在本实施例中,图6是本发明实施例中提供的又一种视频显示窗口之间的窗口示意图。参见图6,显示设备上显示的视频显示窗口的窗口数量可能非常多,而对于不同位置的各个视频显示窗口的关注程度不同,即有的位置着重关注,而有的位置关注度偏低。例如,参见图6,视频显示窗口1、视频显示窗口4、视频显示窗口9以及视频显示窗口12等位置属于在显示设备的角落里,从一种使用角度来说,越关注的视频业务会放在中间位置,这样可以方便关注视频显示窗口中视频的实际细节,从这个角度来说,可以降低这类放置在角落里的窗口视频码流的码率。

基于上述思路,可实时检测显示设备上的视频显示窗口的窗口数量是否超过预设数量。若超过预设数量,则依据显示设备上显示的至少两个视频显示窗口的窗口位置,确定被关注的视频显示窗口;否则,不执行该过程或者将默认的视频显示窗口作为被关注的视频显示窗口。例如,可通过视觉跟踪技术来确定用户关注的视频显示窗口,或者将预设位置处的视频显示窗口作为被关注的视频显示窗口。

步骤c2、将至少两个视频显示窗口中除被关注的视频显示窗口以外的其它视频显示窗口,作为目标视频显示窗口。

在本实施例中,在确定显示设备上被关注的视频显示窗口之后,可将显示设备上显示的除被关注的视频显示窗口以外的其它视频显示窗口,作为目标视频显示窗口。

s330、向管理设备发送码流切换控制信息,以使管理设备依据码流切换控制信息对目标视频业务的码流进行切换并发送,以调整码流码率。

s340、接收管理设备发送的目标视频业务的切换后码流。

在上述实施例的基础上,在判断是否进行码流切换时,可分别在网络传输带宽不足和网络传输带宽充足两种情况下,从上述三种可选方式中选择一个或多个可选方式分别组成完整的码流切换方案,并按照已选择各个可选方式的优先级顺序依次采用各个可选方式的码流切换方案分别进行视频码流切换操作。

为了更好地理解上述组合方案,下面示例性说明上述可选方式的组合示例:

在管理设备与解码设备间的网络传输带宽不足时,包括以下示例方案:

在一个可选示例中,在网络传输带宽不足时,解码设备采用第一种可选方式的码流切换方案指示管理设备对目标视频业务的码流进行第一次码流切换以降低码流码率,并接收切换后码流;在第一次切换码流且网络传输带宽仍然不足时,解码设备采用第二种可选方式的码流切换方案指示管理设备对另一目标视频业务的码流进行第二次码流切换以降低码流码率,并接收切换后码流;在第二次切换码流且网络传输带宽仍然不足时,解码设备采用第三种可选方式的码流切换方案指示管理设备对又一目标视频业务的码流进行第三次码流切换以降低码流码率,并接收切换后码流。

在另一个可选示例中,在网络传输带宽不足时,解码设备采用上述三种可选方式中的一种可选方式的码流切换方案指示管理设备对目标视频业务的码流进行第一次码流切换以降低码流码率,并接收切换后码流;在第一次切换码流且网络传输带宽仍然不足时,解码设备采用上述三种可选方式中的另一种可选方式的码流切换方案指示管理设备对另一目标视频业务的码流进行第二次码流切换以降低码流码率,并接收切换后码流。

在管理设备与解码设备间的网络传输带宽充足时,通过码流切换以恢复码流码率的过程和网络传输带宽不足情况下的顺序正好相反。

本发明实施例中提供了一种视频处理方法,采用本申请方案,可以从显示设备上视频显示窗口的显示情况有目的确定目标视频显示窗口,然后对目标视频显示窗口对应的视频业务的码流切换,避免在对部分视频显示窗口的视频业务的码流进行切换后,造成在显示设备上显示的该部分视频业务的视频数据不符合要求,影响显示效果。并且,通过对来自发流端的视频码流进行控制,可避免接收的视频码流的码率过大占用过多的传输带宽而导致的网络传输带宽不足,解决了大业务量视频码流上墙时因传输带宽不足导致视频卡顿的问题,最大化地利用解码设备的解码资源和网络传输资源。

图7是本发明实施例中提供的一种视频处理装置的结构框图。本发明实施例可适用于对来自发流端的视频码流进行合理控制的情况。该装置可采用软件和/或硬件的方式实现,并集成在任何具有网络通信功能的电子设备上。如图7所示,本发明实施例中提供的视频处理装置,可包括以下内容:切换信息确定模块710、切换信息发送模块720和视频码流接收模块730。其中:

切换信息确定模块710,用于若识别到码流切换触发事件,则从至少两个视频业务中确定目标视频业务;以及,确定所述目标视频业务的码流切换控制信息;

切换信息发送模块720,用于向管理设备发送所述码流切换控制信息,以使所述管理设备依据所述码流切换控制信息对所述目标视频业务的码流进行切换并发送,以调整码流码率;

视频码流接收模块730,用于接收所述管理设备发送的所述目标视频业务的切换后码流。

在上述实施例的基础上,可选地,切换信息确定模块710包括:

显示窗口确定单元,用于依据显示设备上至少两个视频显示窗口的窗口属性信息,从所述至少两个视频显示窗口中确定目标视频显示窗口;所述窗口属性信息包括:视频显示窗口的被遮挡信息、视频显示窗口的尺寸信息以及视频显示窗口的位置信息中的一个或多个组合信息;

视频业务确定单元,用于将所述目标视频显示窗口关联的视频业务,作为所述目标视频业务。

在上述实施例的基础上,可选地,显示窗口确定单元包括:

若所述至少两个视频显示窗口中存在被遮挡的视频显示窗口,则确定被遮挡的视频显示窗口的被遮挡区域大小;

依据被遮挡区域大小,从被遮挡的视频显示窗口中确定目标视频显示窗口。

在上述实施例的基础上,可选地,显示窗口确定单元包括:

若所述至少两个视频显示窗口中存在尺寸缩放的视频显示窗口,则从尺寸缩放的视频显示窗口中确定目标视频显示窗口。

在上述实施例的基础上,可选地,显示窗口确定单元包括:

若确定所述至少两个视频显示窗口的窗口数量超过预设数量,则依据所述至少两个视频显示窗口的窗口位置,确定被关注的视频显示窗口;

将所述至少两个视频显示窗口中除被关注的视频显示窗口以外的其它视频显示窗口,作为所述目标视频显示窗口。

在上述实施例的基础上,可选地,所述视频流切换控制信息用于指示将目标视频业务的当前码率的码流切换至目标码率的码流,且所述目标码率小于所述当前码率。

在上述实施例的基础上,可选地,码流切换触发事件的触发包括以下操作:

依据所述至少两个视频业务中各个视频业务所需的传输带宽,确定网络的剩余传输带宽;

若所述剩余传输带宽小于预设带宽下限阈值,则确定网络的传输带宽不足,并触发码流切换操作。

在上述实施例的基础上,可选地,视频码流接收模块730包括:

采用目标传输通道,接收所述管理设备发送的所述目标视频业务的切换后码流;其中,所述目标传输通道包括:在码流切换之前,管理设备与解码设备之间的可复用传输通道。

在上述实施例的基础上,可选地,所述管理设备与编码设备之间建立有多个不同码率的通道连接,所述管理设备通过所述多个不同码率的通道连接从编码设备同时获取所述目标视频业务的切换前码流与切换后码流。

本发明实施例中所提供的视频处理装置可执行上述本发明任意实施例中所提供的视频处理方法,具备执行该视频处理方法相应的功能和有益效果,详细过程参见前述实施例中视频处理方法的相关操作。

图8是本发明实施例中提供的一种电子设备的结构示意图。如图8所示结构,本发明实施例中提供的电子设备包括:一个或多个处理器810和存储装置820;该电子设备中的处理器810可以是一个或多个,图8中以一个处理器810为例;存储装置820用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器810执行,使得所述一个或多个处理器810实现如本发明实施例中任一项所述的视频处理方法。

该电子设备还可以包括:输入装置830和输出装置840。

该电子设备中的处理器810、存储装置820、输入装置830和输出装置840可以通过总线或其他方式连接,图8中以通过总线连接为例。

该电子设备中的存储装置820作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中所提供的视频处理方法对应的程序指令/模块。处理器910通过运行存储在存储装置820中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例中视频处理方法。

存储装置820可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储装置820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置820可进一步包括相对于处理器810远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置830可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置840可包括显示屏等显示设备。

并且,当上述电子设备所包括一个或者多个程序被所述一个或者多个处理器810执行时,程序进行如下操作:

若识别到码流切换触发事件,则从至少两个视频业务中确定目标视频业务;以及,确定所述目标视频业务的码流切换控制信息;

向管理设备发送所述码流切换控制信息,以使所述管理设备依据所述码流切换控制信息对所述目标视频业务的码流进行切换并发送,以调整码流码率;

接收所述管理设备发送的所述目标视频业务的切换后码流。

当然,本领域技术人员可以理解,当上述电子设备所包括一个或者多个程序被所述一个或者多个处理器810执行时,程序还可以进行本发明任意实施例中所提供的视频处理方法中的相关操作。

本发明实施例中提供了一种介质,其上存储有计算机程序,该程序被处理器执行时用于执行视频处理方法,该方法包括:

若识别到码流切换触发事件,则从至少两个视频业务中确定目标视频业务;以及,确定所述目标视频业务的码流切换控制信息;

向管理设备发送所述码流切换控制信息,以使所述管理设备依据所述码流切换控制信息对所述目标视频业务的码流进行切换并发送,以调整码流码率;

接收所述管理设备发送的所述目标视频业务的切换后码流。

可选的,该程序被处理器执行时还可以用于执行本发明任意实施例中所提供的视频处理方法。

本发明实施例的计算机可读介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(randomaccessmemory,ram)、只读存储器(readonlymemory,rom)、可擦式可编程只读存储器(erasableprogrammablereadonlymemory,eprom)、闪存、光纤、便携式cd-rom、光存储器件、磁存储器件、或者上述的任意合适的组合。计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于:电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、无线电频率(radiofrequency,rf)等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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