
1.本发明涉及视频会议技术领域,尤其涉及一种视频会议方法、会议终端、服务器及存储介质。
背景技术:2.在云会议系统中的视频会议中,各会议终端先将本地的视频数据编码后发给mcu(multi control unit,多点控制单元)服务器,mcu服务器收到各会议终端的视频码流后,先对这些视频码流进行解码,然后再进行多画面合成,最后再将多画面对应的视频数据进行编码发给参加视频会议的各会议终端。各会议终端收到mcu服务器的视频码流后进行数据解码,然后进行画面展示。
3.可以预见的是,如果一次视频会议中参与会议的会议终端比较多,则视频会议过程中,mcu服务器就需要同时处理多个视频源的视频码流:将从各视频源处接收到的视频码流进行解码及视频画面合成,然后再对合成画面进行编码。因此,这个处理过程要求mcu服务器具有较高的处理能力,一旦mcu服务器性能不够,则会导致会议终端侧的视频画面存在延时,影响各与会用户会议体验的问题。
技术实现要素:4.本发明实施例提供的视频会议方法、会议终端、服务器及存储介质,主要解决的技术问题是:如何解决mcu服务器处理性能不够造成会议终端侧视频画面延时严重,与会用户会议体验不佳的问题。
5.为解决上述技术问题,本发明实施例提供一种视频会议方法,包括:
6.接收服务器发送的合成码流与独立码流,合成码流由服务器对本次视频会议中部分视频源的视频码流进行解码、画面合成及重新编码形成,独立码流为服务器自其余视频源处接收到后转发给本会议终端的视频码流;
7.分别对合成码流与独立码流进行解码;
8.对合成码流与独立码流对应的视频画面进行显示。
9.本发明实施例还提供一种视频会议方法,包括:
10.接收本次视频会议中视频源发送的视频码流;
11.对部分视频源的视频码流进行解码、画面合成及重新编码,得到合成码流发送给各会议终端,并将其余视频源的视频码流作为独立码流转发给各会议终端。
12.本发明实施例还提供一种会议终端,会议终端包括第一处理器、第一存储器及第一通信总线;
13.第一通信总线用于实现第一处理器和第一存储器之间的连接通信;
14.第一处理器用于执行第一存储器中存储的一个或者多个程序,以实现上述第一种视频会议方法的步骤。
15.本发明实施例还提供一种服务器,服务器包括第二处理器、第二存储器及第二通
信总线;
16.第二通信总线用于实现第二处理器和第二存储器之间的连接通信;
17.第二处理器用于执行第二存储器中存储的一个或者多个程序,以实现上述第二种的视频会议方法的步骤。
18.本发明实施例还提供一种存储介质,存储介质存储有第一视频会议程序与视频会议程序中的至少一个,第一视频会议程序可被一个或者多个处理器执行,以实现上述第一种视频会议方法的步骤;第二视频会议程序可被一个或者多个处理器执行,以实现上述第二种的视频会议方法的步骤。
19.本发明的有益效果是:
20.根据本发明实施例提供的视频会议方法、会议终端、服务器及存储介质,在视频会议过程中,服务器接收到本次视频会议中各视频源发送的视频码流后,仅对部分视频源的视频码流进行解码、画面合成及重新编码,形成合成码流并发送给会议终端,同时服务器将其余视频源的视频码流作为的独立码流也发送给各会议终端,让会议终端对合成码流与独立码流进行解码显示,这种会议方案中服务器因为不需要对全部视频源的视频码流进行解码、画面合成以及重新编码,因此,降低了对服务器侧编解码能力的要求。对于服务器处理能力范围之外的其他视频码流,直接发送给会议终端,从而充分利用了会议终端侧的处理资源,降低了会议终端侧视频画面的延时,提升了视频会议的流畅度,增强了用户体验。
21.本发明其他特征和相应的有益效果在说明书的后面部分进行阐述说明,且应当理解,至少部分有益效果从本发明说明书中的记载变的显而易见。
附图说明
22.图1为本发明实施例一中提供的视频会议方法的一种交互流程图;
23.图2为本发明实施例二中提供的视频会议方法的一种交互流程图;
24.图3为本发明实施例二中提供的会议终端显示各视频源的视频画面的一种示意图;
25.图4为本发明实施例二中提供的会议终端显示各视频源的视频画面的另一种示意图;
26.图5为本发明实施例二中示出的服务器对部分视频源的视频码流进行处理形成合成码流的一种流程图;
27.图6为本发明实施例三中提供的视频会议方法的一种交互流程图;
28.图7为本发明实施例三中提供的会议终端视频会议画面布局的一种示意图;
29.图8为本发明实施例三中提供的会议终端视频会议画面布局的另一种示意图;
30.图9为本发明实施例四中提供的会议终端的一种硬件结构示意图;
31.图10为本发明实施例四中提供的服务器的一种硬件结构示意图;
32.图11为本发明实施例四中提供的视频会议系统的一种示意图。
具体实施方式
33.为了使本发明的目的、技术方案及优点更加清楚明白,下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以
解释本发明,并不用于限定本发明。
34.实施例一:
35.为了解决相关技术中因为mcu服务器处性能不足,导致mcu服务器在对来自各视频源的视频码流进行解码、画面合成及重新编码处理时的效率低下,进而导致视频会议中各会议终端显示的视频画面延时严重,影响与会用户会议体验的问题,本实施例提供一种视频会议方法,请参见图1示出的视频会议方法的一种交互流程图:
36.s102:服务器接收本次视频会议中视频源发送的视频码流。
37.在本实施例中,服务器可以是mcu服务器,mcu服务器实质上是一台多媒体信息交换机,进行多点呼叫和连接,实现视频广播、视频选择、音频混合、数据广播等功能,完成各终端信号的汇接与切换。
38.可以理解的是,当视频会议的发起者通过自己的会议终端向服务器发起了视频会议之后,服务器将会通知对应的会议终端,让这些会议终端加入到该视频会议当中。在视频会议过程中,各会议终端侧的媒体采集设备,例如摄像头,可以采集到各会议终端侧的图像信息,从而形成视频。会议终端对媒体采集设备采集到的视频进行编码之后就可以形成本端的视频码流,然后将该视频码流发送给服务器。
39.需要说明的是,通常情况下,会议终端侧的媒体采集设备除了摄像头以外,还可以包括麦克风等,用于采集与会用户的音频信息。在会议终端采集到视频当中也是同时包括图像信息与音频信息的。
40.在一场视频会议当中,通常会有多个与会用户,因此,对于服务器而言,其会接收到视频会议中多个会议终端发送的视频码流。从服务器的角度来看,这些提供视频码流的会议终端就是视频源。毫无疑义的是,在一些会议场景下,部分与会用户可能会关闭自己的摄像头,也即在会议过程中不提供本端的图像信息,在这种情况下,可以认为该会议终端不是视频源。
41.s104:服务器对部分视频源的视频码流进行解码、画面合成及重新编码,得到合成码流发送给各会议终端,并将其余视频源的视频码流作为独立码流转发给各会议终端。
42.服务器在接收到视频源发送的视频码流后,可以仅对其中部分视频码流进行解码、画面合成以及重新编码,对于另一部分视频源的视频码流,服务器不做解码、画面合成等处理。例如,假定一场视频会议中包含四个视频源,则服务器可以仅对其中三个视频源的视频码流进行解码、画面合成以及重新编码,形成合成码流,对于另外一个视频码流,则继续保持独立。当然,在另外一些示例当中,服务器也可以仅对其中两个视频源的视频码流进行解码、画面合成及重新编码处理,让剩余的两个视频码流继续保持独立。
43.应当理解的是,未经服务器进行画面合成的视频码流中仅仅包含单个会议终端侧的视频画面,而合成码流的行程经历了画面合成,其中包含至少两个会议终端侧的视频画面,所以,相对于合成码流,这里可以将未经服务器解码、画面合成及重新编码的视频码流称为“独立码流”。
44.对接收到的视频码流进行处理得到合成码流后,服务器可以将合成码流发送给各会议终端,以便在各会议终端上显示合成码流对应的视频画面。另一方面,对于独立码流,服务器也需要将其发动给各会议终端,以便各会议终端显示独立码流对应的视频画面。基于合成码流与独立码流,会议终端上可以显示各个视频源侧的图像信息。值得说明的是,服
务器发送合成码流的动作与发送独立码流的动作之间并无严格的时序关系,在一些情景中,服务器先发送合成码流,然后再发送独立码流,在另外一些情景当中,独立码流先于合成码流传输,甚至在一些示例当中,合成码流与独立码流是同时被传输到会议终端侧的。事实上,为了降低会议终端侧的画面延时,让会议终端能够及时对视频码流进行处理,从而尽早进行画面展示,服务器在某一视频码流可以传输到会议终端侧的时候,可以立即进行传输,而不用关注其他视频码流。
45.例如,在一种示例当中,在服务器对接收到的视频码流a1、c1以及d1进行解码、画面合成及重新编码的过程中,服务器又接收到了视频码流b1,因为服务器无须对视频码流b1进行额外处理,因此,其可以直接将视频码流b1作为独立码流发送到各会议终端侧。随后,在合成码流生成完成之后,再将合成码流传输给会议终端。又例如,a2、b2、c2、d2以及e2五方进行视频会议,按照设定,服务器将b2、c2、d2三方的视频码流进行解码、画面合成及重新编码,而a2与e2两方的视频码流则分别作为独立码流。如果服务器接收到的第一个视频码流是a2的视频码流,则服务器可以直接将该视频码流独立码流发送到各会议终端侧。随后,服务器依次接收到b2、c2、e2、d2的视频码流,在接收到b2、c2的视频码流之后,服务器可以先对这两个视频码流进行解码,在接收到e2的视频码流之后,将该视频码流转发给会议终端。在接收到d2的视频码流之后,服务器对其进行解码,然后与b2、c2两侧视频码流的解码结果进行画面合成,然后对合成画面进行重新编码,得到合成码流,并将合成码流发送到会议终端侧。
46.s106:会议终端分别对合成码流与独立码流进行解码。
47.会议终端在接收到服务器发送的视频码流之后,可以对接收到的视频码流进行解码。可以理解的是,相关技术中的会议终端仅需要对一种视频码流进行解码,即仅需要对包含全部视频源视频画面的合成码流进行解码,所以解码方式仅仅与服务器侧的编码方式相对应,是固定唯一的。而本实施例中会议终端需要对至少两个视频码流(一个合成码流,至少一个独立码流)进行解码,独立码流与合成码流分别由不同的对象编码:合成码流由服务器编码,而独立编码则是由对应的会议终端编码。在一些示例当中,会议终端与服务所采用的编码方式相同,则会议终端在对自服务器处接收到的独立码流与合成码流进行解码的时候,可以采用同样的解码方式,也即,会议终端不需要区分不同的视频码流来采用不同的解码方式。
48.但在更多情况下,会议终端与服务器的编码方式可能会不同,甚至不同会议终端彼此之间所采用的编码方式也不完全相同。在这些情况下,会议终端对自己接收到的视频码流进行解码的时候,对于不同的视频码流也需要采用不同的解码方式。
49.在本实施例的一些示例当中,服务器与各会议终端可以预先约定彼此对各视频码流的编解码方式,这样,当服务器将一个视频码流传输给对应的会议终端的时候,只需要在对应的视频码流中携带一个标识信息向对应会议终端指示该视频码流是哪一个视频码流即可。例如,服务器与会议终端约定对于合成码流采用解码方式一进行解码,对于独立码流采用解码方式二进行解码。这样,在服务器向会议终端发送合成码流的时候,只需要在该视频码流中携带上对应的标识信息,会议终端接收到视频码流之后,根据其携带的标识信息旧可以查询到针对该视频码流需要采用解码方式进行解码。
50.s108:会议终端对合成码流与独立码流对应的视频画面进行显示。
51.会议终端对自己所接收到视频码流完成解码之后,可以将对应的视频画面显示在屏幕上。在本实施例的一些示例当中,会议终端可以在对某一个视频码流解码后立即对该解码完成的视频码流对应的视频画面进行显示,并不需要等待对独立码流和合成码流的解码均完成之后再进行显示。
52.本实施例提供的视频会议方法中,服务器可以仅对部分视频源的视频码流进行解码、画面合成以及重新编码,并不需要对所有的视频源的视频码流均进行该处理,对于其没有处理的视频码流,可以直接发送给各会议终端,让各会议终端直接解码显示,这样可以充分利用会议终端侧的处理资源,降低服务器的处理负担,降低视频画面的延时,提升视频会议的品质。
53.实施例二:
54.根据前述实施例的介绍可知,本发明实施例中服务器可以仅对部分视频源的视频码流进行解码、画面合成以及重新编码形成合成码流,然后将合成码流发送给各会议终端,至于另外一部分视频码流,服务器直接将其发送给各会议终端。
55.可以理解的是,服务器所生成的合成码流中包括多少个视频码流,以及合成码流、各独立码流的编解码方式如何都是可以预先设置的,甚至,服务器生成的合成码流中包括哪几个视频源的视频码流也都是可以预先设置的,例如,在一些示例当中,服务器与会议终端属于同一个厂家,设计人员可以在设备出厂之前先将这些内容固化在会议终端和服务器中;或者,程序人员可以以设备升级的方式将这些内容写入升级程序中,从而分别推送至服务器与会议终端侧。
56.当然,在本实施例的一些示例当中,上述内容也是可以由服务器根据当前视频会议的情况自己决定的,下面结合图2示出的流程图对这种视频会议方法进行阐述:
57.s202:会议终端向服务器发送本会议终端的视频编解码能力参数。
58.在本实施例中,当会议终端进入视频会议之后,可以向服务器发送自己的视频编解码能力参数,可以理解的是,会议终端发送视频编解码能力参数可以是主动向服务器上报,也可以是在接收到服务器的请求之后向服务器发送。
59.视频编解码能力参数可以表征该会议终端自己的视频编解码能力,在本实施例的一种示例当中,视频编解码能力参数包括编码参数与解码参数,编码参数包括本会议终端的编码能力。解码参数包括本会议终端的解码能力、上会速度、帧频、以及格式信息中的至少一种。
60.s204:服务器根据各会议终端的视频编解码能力参数以及本服务器的视频编解码能力确定视频会议的解码显示策略。
61.服务器在获取到各会议中的视频编解码能力参数之后,可以基于这些终端的编解码能力以及本服务器自身的视频编解码能力确定此次视频会议的解码显示策略。服务器基于此次视频会议中会议终端的数目,以及各会议终端对其本端视频进行编码的方式等可以确定出此次视频会议中将全部视频源的视频码流处理成合成码流的处理要求。进一步地,服务器可以判断自身的额视频编解码能力是否满足该处理要求,如果是,则说明服务器可以对全部视频源的视频码流均进行解码、画面合成及重新编码,也即,服务器可以将所有视频源的视频码流处理成合成码流。但如果服务器经过判断,确定自己的视频编解码能力低于将视频会议中全部视频源的视频码流处理成合成码流的处理要求,也即服务器的处理能
力不足以将对全部视频源的视频码流进行解码、画面合成及重新编码,则服务器将会确定在本次视频会议的后续过程中,自己仅会对其中部分视频码流进行合成码流的处理。至于究竟对其中多少视频码流进行处理,对哪些视频码流进行处理,处理后的合成码流的编码方式如何,则需要进一步结合各会议终端的视频编解码能力确定。服务器需要保障的是自己发送给各会议终端的视频码流,包括合成码流与各独立码流所采用的编码方式都是会议终端所支持的,否则如果某一个会议终端无法对自己接收到的视频码流进行解码,则会导致该会议终端无法显示至少某一个会议终端侧的视频画面。
62.在本实施例的一些示例当中,服务器确定的解码显示策略中包括解码指示,解码指示用于指示会议终端在对其接收到的各视频码流,也即合成码流与独立码流进行解码的方式。例如,服务器指示会议终端对携带标识信息为“1”的视频码流采用解码方式一进行解码,对携带标识信息为“2”的视频码流采用解码方式二进行解码,对于携带标识信息为“3”的视频码流采用解码方式三进行解码,则服务器在后续过程中向各会议终端发送视频码流的时候,只需要携带上对应的标识信息,会议终端就可以结合着解码显示策略确定出对该视频码流的解码方式。
63.在本实施例的另外一些示例当中,解码显示策略中还包括显示指示,显示指示用于告知会议终端服务器所发送的各视频码流与显示区域的映射关系,这样,当会议终端接收到一个视频码流并对其进行解码之后,其可以基于解码显示策略中显示指示确定该将对应的视频画面显示到屏幕的哪个区域。
64.当然,可以理解的是,在一些示例当中,显示指示并不是解码显示策略中必须的内容,因为在这些示例当中,会议终端在显示屏上可以根据自己将会接收到的视频码流的路数设置对应数目的显示区域,例如,假定会议终端在于服务器进行协商之后确定在本次会议中自己将要接收到的视频码流的路数是k路,则会议终端侧可以设置k个显示区域,每当接收并解码一路视频码流后,会议终端随机从当前未填充画面的显示区域中选择一个用于显示该视频码流的视频画面即可。只不过,由于合成码流对应的视频画面中会同时包含至少两个会议终端侧的视频画面,因此,如果不能保证合成码流显示在一个面积较大的显示区域内,则会导致视频画面中的人物等很小,用户观看细节吃力的问题。如图3所示,视频会议中有a3、b3以及c3三个视频源,服务器会对a3与b3的视频码流进行处理形成合成码流,而c3则继续作为独立码流。按照前面的显示方案,各会议终端侧仅需要设置两个显示区域,其中合成码流占用一个显示区域,独立码流将占用另一个显示区域,这样,a3、b3对应的视频画面就需要共用一个显示区域,这就使得a3、b3两侧的视频画面仅有c3侧视频画面的一半大小,这不仅使得用户难以看清楚a3、b3两侧的画面,也不符合用户视频会议的习惯。
65.所以,在本实施例更多的示例当中,解码显示策略当中包括各视频码流与各显示区域之间的映射关系,通过这种方式,服务器可以保证各视频源的视频画面在会议终端侧的显示效果,例如,保证各视频源采用相同大小的显示区域进行显示,又例如,保证各视频源的视频画面可以拼接显示在一个整体区域内,如图4所示:视频会议中有a4、b4、c4、d4、e4、f4六个会议终端参会,且每个会议终端都开启了自己的摄像头,因此,共有六个视频源,服务器将a4、b4、c4、d4的视频码流处理成合成码流,另外两个视频源的视频码流作为独立码流。服务器与各会议终端写上了各视频码流对应的显示区域,其中,第一区域401中用于显示合成码流对应的视频画面,至于视频画面内部各子画面的排布,由服务器决定;第二区
域402和第三区域403分别用于显示e4对应的视频画面和f4对应的视频画面。通过这种显示拼接,六个视频源的画面集中显示在一个区域内,不会分布在屏幕的各处,且,在图4当中,各视频源的视频画面规格一致,符合用户视频的观看习惯。
66.s206:服务器将解码显示策略发送给各会议终端。
67.服务器确定出解码显示策略之后,可以将解码显示策略发送给各个会议终端,以便让各会议终端了解此次视频会议的实现方案。
68.s208:服务器对视频会议n个视频源中m个的视频码流进行解码及画面合成,并根据与解码显示策略中解码方式对应的编码方式对合成画面进行重新编码形成合成码流。
69.在本实施例中,假定总共有n个视频源,而服务器在与会议终端协商的过程中决定自己将对其中m个视频源的视频码流进行处理形成合成码流,至于剩余的n-m个视频码流,将分别作为独立码流发送给各会议终端,这里的m小于n。
70.所以,服务器在接收到用于形成合成码流的视频码流之后,可以对这些视频码流进行解码、画面合成以及重新编码,进而形成合成码流。在本实施例的一些示例当中,服务器与各会议终端在协商阶段确定了形成合成码流的是哪些视频源的视频码流,则服务器在生成合成码流之前也必须先等到这些视频源的视频码流都已接收到。但在本实施例的另外一些示例当中,服务器在解码显示策略中并未指定合成码流由哪些视频源的视频码流构成,因此,服务器可以根据视频会议的实际情况临时确定将哪些视频源的视频码流合成在一起。例如,在本实施例的一些示例当中,服务器可以按照自己从各视频源处接收到视频码流的先后顺序选择前m个视频码流来形成合成码流。下面请参见图5示出的服务器对部分视频源的视频码流进行解码、画面合成及重新编码得到合成码流的流程图:
71.s502:按照从各视频源处接收视频码流的先后顺序获取前m个视频源的视频码流;
72.s504:对m个视频源的视频码流进行解码;
73.s506:对m个视频码流对应的解码结果进行画面合成得到合成画面;
74.s508:按照与解码显示策略中解码方式对应编码方式对合成画面进行编码得到合成码流。
75.s210:服务器将合成码流以及剩余n-m个自视频源处接收到的独立码流发送给各会议终端。
76.服务器可以将自己处理生成的合成码流发送给各会议终端,另一方面,服务器可以将自己接收到的作为独立码流的视频码流也发送给各会议终端,对于这些视频码流的发送顺序,前述实施例中已经作为较为详细的说明,这里不再赘述。
77.s212:会议终端根据解码显示策略对视频码流进行解码显示。
78.会议终端接收到服务器发送的视频码流后,可以按照解码显示策略中的解码指示所指示的解码方式对合成码流与独立码流进行解码。随后,会议终端按照解码显示策略中显示指示将各视频码流的视频画面填充到对应的显示区域进行显示。
79.本实施例提供的视频会议方法,在视频会议正式开始以前,服务器可以获取到各会议终端的视频编解码能力参数,然后基于自身的视频编解码能力以及各会议终端的视频编解码能力确定自己是否可以对本次视频会议中全部视频源的视频码流进行处理形成合成码流,如果是,则服务器在后续过程中仍然可以按照相关技术中提供的视频会议方案来处理各视频源的视频码流;但如果服务器确定自己的视频编解码能力低于将此次视频会议
中全部视频源的视频码流处理成合成码流的处理要求,则其可以仅对其中部分视频源的视频码流进行处理,并同时充分利用各会议终端侧的解码资源,进而降低各会议终端侧视频画面的延时,提升视频会议参与用户的会议体验。
80.实施例三:
81.为了使本领域技术人员对本发明实施例所提供的视频会议方法的优点与细节有更清楚的了解,本实施例将接结合示例对该视频会议方法进行详细阐述,请参见图6:
82.s602:会议发起端在mcu管理平台上创建会议。
83.应当理解的是,会议发起端实际上也是视频会议中的一个会议终端,该会议终端通常由会议主持持有。会议发起端在mcu管理平台上创建会议,也相当于是在管理平台上开启了一个网络“会议室”。
84.s604:mcu通知需要参加会议会的会议终端进入该视频会议;
85.s606:会议终端上报自身的视频编解码能力参数给mcu;
86.s608:mcu将自身的最优解码能力、会议终端最优解码能力确定出来,并通知会议终端;
87.上会时mcu默认会选择画面布局,mcu会将画面布局告诉会议终端,mvu发送给会议终端的控制消息中包含了多画面数、多画面布局模式、每路子画面的内容(如主视频源、辅视频源、第一路主视频解码、第二路视频解码、辅视频解码等)。
88.s610:会议终端将本地视频按照协商后的编码方式编码后发给mcu;
89.s610:mcu对接收到的视频码流进行处理后向各会议终端发送。
90.如果是单画面或者mcu解码能力完全满足的多画面布局(双画面、三画面)时,则mcu收到视频码流后,进行视频码流解码、画面合成、重新编码再发送给会议终端。如图7所示,只有三路远端(far)视频码流、一路本端(near)视频码流,mcu的解码能力完全足够,因此,其可以负责全部视频码流的解码、画面合成及重新编码,形成合成码流后再发给各会议终端。此时,服务器发送出去的视频码流中仅有合成码流,不包含独立码流。
91.如果画面布局是超出mcu解码能力的多画面布局,则mcu根据协商出的解码能力,默认按照自己接收码流的先后顺序,选择其中部分视频码流形成合成码流:mcu对这些视频码流先进行解码,解码完成以后再进行画面合成,再将画面合成数据编码形成合成码流,并发给各会议终端。对于剩下的视频码流,mcu直接带上标识标签发送给个会议终端。如图8所示的多画面布局视频会议,一种包括六个视频源,经过协商之后,mcu将处理其中的四个视频源的视频码流,各会议终端处理剩余两个视频源的视频码流。其中,far1、far、far3、far4的视频码流由mcu解码、画面合成再编码形成合成码流后再发给会议终端;far5、near两路码流mcu收到以后贴上相应标识标签,然后发送给各会议终端。
92.s612:会议终端对接收到的视频码流进行解码显示。
93.会议终端收到mcu发送的合成码流后解码,并显示在相应区域;另一方面,会议终端收到独立码流以后也会解码,然后根据相应标识标签在相应区域显示。
94.在多画面模式场景下,根据码流信息,会议终端将合成码流所对应的视频画面填充到指定区域,将其他独立码流根据相应标签填充到多画面布局中指定区域。
95.实施例四:
96.本实施例提供一种存储介质,该存储介质中可以存储有一个或多个可供一个或多
个处理器读取、编译并执行的计算机程序,在本实施例中,该存储介质可以存储有第一视频会议程序、第二视频会议程序中的至少一个,其中,第一视频会议程序可供一个或多个处理器执行实现前述实施例介绍的任意一种视频会议方法会议终端侧的流程。第二视频会议程序可供一个或多个处理器执行实现前述实施例介绍的任意一种视频会议方法服务器侧的流程。
97.本实施例中还提供一种会议终端,如图9所示:会议终端90包括第一处理器91、第一存储器92以及用于连接第一处理器91与第一存储器92的第一通信总线93,其中第一存储器92可以为前述存储有第一视频会议程序的存储介质,第一处理器91可以读取第一视频会议程序,进行编译并执行实现前述实施例中介绍的视频会议方法会议终端侧的流程:
98.第一处理器91接收服务器发送的合成码流与独立码流,其中,合成码流由服务器对本次视频会议中部分视频源的视频码流进行解码、画面合成及重新编码形成,独立码流为服务器自其余视频源处接收到后转发给本会议终端的视频码流。随后,第一处理器91分别对合成码流与独立码流进行解码,并对合成码流与独立码流对应的视频画面进行显示。
99.在本实施例的一种示例当中,第一处理器91接收服务器发送的合成码流与独立码流之前,还会先向服务器发送本会议终端的视频编解码能力参数,并接收服务器发送的解码显示策略,其中,解码显示策略由服务器根据其自身的视频编解码能力以及本次视频会议各会议终端的视频编解码能力参数确定,用于指示本会议终端对从合成码流与各独立码流的解码显示方式。
100.在本实施例的一种示例当中,发送给服务器的视频编解码能力参数包括编码参数与解码参数,编码参数包括本会议终端的编码能力;解码参数包括本会议终端的解码能力、上会速度、帧频、以及格式信息中的至少一种。
101.可选地,解码显示策略包括解码指示与显示指示,其中解码指示用于指示本会议终端对各视频码流的解码方式;显示指示用于指示服务器发送的各视频码流与显示区域的映射关系。第一处理器91分别对合成码流与独立码流进行解码时,可以按照解码指示所指示的解码方式对合成码流与独立码流进行解码。在对合成码流与独立码流对应的视频画面进行显示时,第一处理器91按照显示指示将各视频码流的视频画面填充到对应的显示区域进行显示。
102.本实施例中还提供一种服务器,如图10所示:服务器100包括第二处理器101、第二存储器102以及用于连接第二处理器101与第二存储器102的第二通信总线103,其中第二存储器102可以为前述存储有第二视频会议程序的存储介质,第二处理器101可以读取第二视频会议程序,进行编译并执行实现前述实施例中介绍的视频会议方法服务器侧的流程:
103.第二处理器101接收本次视频会议中视频源发送的视频码流,然后对部分视频源的视频码流进行解码、画面合成及重新编码,得到合成码流发送给各会议终端,并将其余视频源的视频码流作为独立码流转发给各会议终端。
104.可选地,第二处理器101接收本次视频会议中视频源发送的视频码流之前,还可以先获取视频会议中各会议终端的视频编解码能力参数,然后根据各会议终端的视频编解码能力参数以及本服务器的视频编解码能力确定视频会议的解码显示策略,其中,解码显示策略能够指示各会议终端对合成码流与各独立码流的解码显示方式。随后,第二处理器101再将解码显示策略发送给各会议终端。
105.在本实施例的一种示例当中,第二处理器101对部分视频源的视频码流进行解码、画面合成及重新编码之前,还会先根据各会议终端的视频编解码能力参数以及本服务器的视频编解码能力确定本服务器自身的编解码能力低于将视频会议中全部视频源的视频码流处理成合成码流的处理要求。
106.在本实施例的一种示例当中,合成码流由m个视频源的视频码流形成,m大于等于2;第二处理器101对部分视频源的视频码流进行解码、画面合成及重新编码得到合成码流时,按照从各视频源处接收视频码流的先后顺序获取前m个视频源的视频码流,然后对m个视频源的视频码流进行解码,再对m个视频码流对应的解码结果进行画面合成得到合成画面。随后,第二处理器101按照与解码显示策略中解码方式对应编码方式对合成画面进行编码得到合成码流。
107.本实施例还提供一种视频会议系统,请参见图11所示,在该视频会议系统11当中,包括服务器100以及多个会议终端90。服务器100可以为mcu服务器,会议终端可以以各种形式来实施。例如,可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、pda(personal digital assistant,个人数字助理)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字tv、台式计算机等固定终端。
108.本实施例提供的会议终端与、服务器,在视频会议过程中,服务器接收到本次视频会议中各视频源发送的视频码流后,仅对部分视频源的视频码流进行解码、画面合成及重新编码,形成合成码流并发送给会议终端,同时服务器将其余视频源的视频码流作为的独立码流也发送给各会议终端,让会议终端对合成码流与独立码流进行解码显示,这种会议方案中服务器因为不需要对全部视频源的视频码流进行解码、画面合成以及重新编码,因此,降低了对服务器侧编解码能力的要求。对于服务器处理能力范围之外的其他视频码流,直接发送给会议终端,从而充分利用了会议终端侧的处理资源,降低了会议终端侧视频画面的延时,提升了视频会议的流畅度,增强了用户体验。
109.显然,本领域的技术人员应该明白,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件(可以用计算装置可执行的程序代码来实现)、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram,rom,eeprom、闪存或其他存储器技术、cd-rom,数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。所
以,本发明不限制于任何特定的硬件和软件结合。
110.以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。