多路视频通信方法与系统的制作方法

文档序号:7924057阅读:172来源:国知局
专利名称:多路视频通信方法与系统的制作方法
技术领域
本发明涉及计算机网络技术领域,尤其是计算机网络中的多路视频通信方 法与系统。
背景技术
互联网技术的发展,极大地改变了人们的工作生活。其中,视频通信技术 使得远隔千里的人们能够获得面对面的沟通体验。因此,视频聊天、视频会议、 网络游戏中都广泛用到了视频通信技术。
由于视频通信需要处理的原始视频数据量大,因此在传输之前需要对原始
视频数据进行视频编码,通过对^L频编码器设置分辨率、帧率、码率等编码参 数,生成符合特定需求的视频码流。在接收终端,对视频码流进行解码便可得 到解码视频图像。对于固定的视频编解码器,在特定的编码参数条件下对视频 序列进行编码,得到一组码率和失真的关系,作为该编解码器的率失真特性, 通常用率失真特性描述编解码器生成的码流在不同码率条件下对应的解码-〖见频 质量。
在一对一的网络视频通信中,为适应网络带宽的波动,通常根据网络状况 自适应地调整编码参数及传输技术,提高传输的视频质量。在多人视频通信过 程中,由于连接多个用户的网络状况存在异构性和时变性,且终端设备(如手 机,PC机)的处理能力也有所差异,传统上是按照平均或者多数的需求对4见频 编解码设定编码参数,对原始视频数据进行编码生成单一码流,对参与通话的 所有用户广播该单一码流,对于同一个发送的视频源,在所有接收的远程客户 端具有相同的视频质量。
这种广播单一码流的多人;f见频通信技术无法适应终端处理能力和网络状况
的多样性,对于网络状况较好或者终端设备处理能力较强的用户,会带来资源 的浪费而没有达到最优的^L频通话质量,而对于网络状况较差或者终端处理能 力较低的用户,会造成网络拥塞或者终端设备无法正常处理等状况。

发明内容
有鉴于此,有必要解决广播单一码流的多人视频通信技术无法适应终端处 理能力和网络状况的多样性的问题,提供一种提高多路视频通信质量的方法。 此外,还提供了一种提高多路视频通信质量的系统。
为解决上述技术问题,提出以下技术方案
一种多路视频通信方法,包括以下步骤检测网络状况信息及两个以上远 程客户端的属性并建立视频通信连接;根据所述网络状况信息及所述各个远程 客户端的属性选择与各个远程客户端对应的视频编码参数;根据所述视频编码 参数分别编码视频数据,得到与所述各个远程客户端对应的编码后的视频数据; 传输分别编码后的视频数据至对应的各个远程客户端。
其中,所述检测网络状况信息及两个以上远程客户端的属性并建立视频通 信连接的步骤包括通过检测网络状况信息获得与本地客户端连接的所述远程 客户端的数量;创建网络连接单元;通过网络连接单元与所述远程客户端协商 确定连接双方所使用的视频编解码器类型,并为每一个远程客户端创建一个独 立的视频编解码器,并将与该-现频编解码器对应的候选一见频编码参数表载入, 所述候选一见频编码参数表内设有所述视频编码参数与i见频率失真特性的对应关 系。
其中,所述根据所述网络状况信息及各个远程客户端的属性选择与所述各 个远程客户端对应的一见频编码参数的步骤包括在候选一见频编码参数表中查找 在各视频编解码器增加相同编码码率的情况下,^L频失真改善最大的^L频编码 参数;将查找到的视频编码参数更新为相应视频编解码器的当前视频编码参数。
其中,若存在两个以上增加相同编码码率的情况下-见频失真改善最大的4见 频编码参数,则随机将其中某一视频编码参数更新为相应视频编解码器的当前 视频编码参数。
其中,还包括通过检测网络状况信息获得所述本地客户端的最大可用上 行带宽;计算所述本地客户端中每一视频编解码器选用的当前视频编码参数对 应的码率之和;判断所述码率之和是否超过所述最大可用上行带宽;如果所述 码率之和未超过所述最大可用上行带宽,则重复执行所述查找与更新的步骤。
其中,还包括通过检测网络状况信息获取所述本地客户端与所述远程客 户端连接时所述远程客户端的最大可用下行带宽;判断所述更新的当前视频编 码参数对应的视频码率是否超过相应远程客户端的最大可用下行带宽;如果所 述视频码率未超过所述最大可用下行带宽,则重复执行所述查找与更新的步骤。
其中,还包括通过检测远程客户端的属性获得所述远程客户端能支持的 视频最大分辨率、最大帧率;判断所述更新的当前^L频编码参数所对应的^L频 分辨率和帧率是否超过所述最大分辨率、最大帧率;如果所述视频分辨率和帧 率未超过所述最大分辨率、最大帧率,则重复执行所述查找与更新的步骤。
其中,还包括定时检测并更新网络状况;根据更新的网络状况选择编码 参数。
其中,还包括根据网络检测结果,判断远程客户端是否关闭;如果所述 远程客户端关闭,则删除与该远程客户端相应的网络连接和4见频编解码器。
其中,还包括判断本地客户端的视频通信功能是否关闭;如果本地客户 端关闭视频通信功能,则删除与所有视频远程客户端相应的网络连接单元和视 频编解码器。
其中,还包括建立所述候选视频编码参数表的步骤。
其中,所述建立候选视频编码参数表的步骤包括获取典型视频通信场景 的样本序列;采用不同的^见频编码参数对典型^L频通信场景的样本序列进4亍编 码;记录所述^见频编码参数与视频率失真特性的对应关系。
其中,所述候选视频编码参数表内存储有编码参数、编码码率与率失真特 性的对应关系,并按码率增加的顺序依次用索引值编号,将索引值对应的率失 真特性曲线上的采样点的斜率定义为率失真斜率,所述查找的方式为查找率失 真斜率最大的索引值,并将该索引值对应的视频编码参数作为所述增加相同编 码码率的情况下,视频失真改善最大的视频编码参数。
一种多路视频通信系统,包括网络模块,用于检测网络状况信息及两个 以上远程客户端的属性并建立视频通信连接;视频质量模块,与所述网络模块 相连,用于存储候选视频编码参数表,所述候选视频编码参数表内设有所述视 频编码参数与视频率失真特性的对应关系,所述视频质量模块根据所述网络状
况及两个以上远程客户端的属性提供与所述两个以上远程客户端相应的视频编
码参数;视频编解码模块,与所述视频质量模块及网络模块相连,用于按照所 述视频质量模块提供的两个以上视频编码参数分别对视频数据进行编码,并将 编码后的视频数据通过所述网络模块分别发送至相应的各个远程客户端。
其中,所述视频编解码模块设有与所述远程客户端数量相同的视频编解码 器,每个视频编解码器对应一个远程客户端;所述网络模块还用于与远程客户 端协商确定连接双方所使用的所述视频编解码器类型。
其中,所述视频质量模块用于在候选视频编码参数表中查找在各视频编解 码器增加相同编码码率的情况下视频失真改善最大的视频编码参数,并将查找
其中,若存在两个以上增加相同编码码率的情况下一见频失真改善最大的牙见 频编码参数,所述视频质量模块则随机将某一视频编码参数更新为相应视频编 解码器的当前视频编码参数。
上述多路视频通信方法或系统中,根据网络状况信息及各个远程客户端属 性选择与各个远程客户端对应的视频编码参数,使各个远程客户端接收到的编 码视频数据与其网络带宽及设备本身属性相适应,提高了多路视频通信的质量。
将增加相同编码码率的情况下,视频失真改善最大的视频编码参数更新为 相应视频编解码器的当前视频编码参数,可以更有效率的利用有限的网络带宽, 提高多路视频通信的整体质量。
设置分辨率、帧率、最大可用上行带宽、最大可用下行带宽的筛选条件,
定时检测并更新网络状况并根据更新的网络状况选择编码参数,可以根据 不同网络的波动状况进行网络自适应调节。


图1为多路视频通信方法的流程图2为建立候选视频编码参数表的步骤的详细流程图;
图3为码率与失真度关系曲线示意图4为获取网络状况信息及各个远程客户端属性并建立视频通信连接的步 骤的详细流程图5为选择与各个远程客户端对应的视频编码参数的步骤的详细流程图; 图6为多路视频通信系统的功能模块图。
具体实施方式
本申请公开的多路视频通信方法与系统通过对每一条连接通路采用独立的 视频编解码器,并为视频编解码器建立视频率失真特性与视频编码参数的关系 表,根据各连接通路的网络状况和终端设备处理能力的差异,调节各路视频编 解码器的编码参数,提升多路视频通信的整体视频通话质量。
如图l所示, 一种多路视频通信方法包括以下步骤
步骤S102,建立候选视频编码参数表。视频编码参数表是一种视频编码参 数与视频率失真特性的关系表,选用某一组视频编码参数对原始视频数据进行 编码时,得到的码率和解码后的视频失真度就会与该组视频编码参数对应。通 常,候选视频编码参数表在进行视频通信之前就已经建立并存储。
步骤S104,获取网络状况信息及各个远程客户端属性并建立视频通信连接。 通过检测网络状况信息获得本地网络的最大可用上行带宽,与本地客户端连接 的远程客户端的数量、远程客户端与本地客户端连接的最大可用下行带宽等。 远程客户端的属性包括远程客户端解码器能支持的-见频最大分辨率、最大帧率 等。建立视频通信连接包括创建网络连接单元,通过网络连接单元与远程客户 端协商确定连接双方所使用的视频编解码器类型,并为每一个远程客户端创建 一个独立的视频编解码器。
步骤S106,根据所述本地网络状况信息、各个远程客户端网络状况信息及 各个远程客户端属性从候选视频编码参数表中选择与各个远程客户端对应的视 频编码参数。其中,视频编码参数包括分辨率、帧率、码率、量化步长等。在 网络状况和远程客户端允许的情况下,选择的编码参数使各个连接进行视频通 信的整体质量达到最佳。特别地,选择在增加相同的码率的情况下视频失真改 善最大的视频编码参数作为与对应远程客户端进行视频通信的当前视频编码参
数,也就是说,将增加的码率分配给该视频编码参数对应的远程客户端连接上,
例如本地客户端Client0与远程客户端Clientl及远程客户端Client2进行4见频通 信,通过分析两路视频编解码器的候选视频编码参数表,在本地客户端有限的 上行带宽中,如果增加10kbps的视频编码码率对远程客户端Clientl的视频频失 真改善要好于对远程客户端Client2,则将此10kbps分配给本地客户端Client0 对远程客户端Clientl的视频通信中。
步骤S108,根据所述视频编码参数分别编码视频数据根据视频编码参数 的选择结果,分别用选择的视频编码参数对原始视频数据进行编码,得到与各 个远程客户端对应的编码后的视频数据。
步骤S110,传输编码后的视频数据至所述各个远程客户端。由于视频数据 的编码参数是根据网络状况和远程客户端的条件确定的,因此解码后的视频通 信的整体质量是在现有网络状况及远程客户端条件下最佳的。
步骤S112,定时检测并更新网络状况。例如,每隔三秒或五秒检测网络状 况信息,便于即时更新网络状况。
步骤S114,根据网络检测结果,判断对方远程客户端是否关闭。如果是, 则进入步骤S116,在删除与该远程客户端相应的网络连接和-f见频编解码器后, 流程结束。
如果步骤S114中,对方远程客户端未关闭,则进入步骤S118中,判断本 地客户端视频通信功能是否关闭。如果本地客户端未关闭该视频通信功能,则 返回步骤S106中,根据更新的网络状况选择编码参数。如果本地客户端关闭视 频通信功能,则进入步骤S120,删除与所有视频远程客户端相应的网络连接单 元和视频编解码器后流程结束。
以下将以更具体的方式描述上述方法。
在进行视频通信之前,需要获得视频编码参数与失真的关系。容易理解, 采用相同的编码方法,码率越高则失真越小,相应地占用网络带宽也越大。因 此,编码参数与失真的关系,重点在码率与失真的关系,候选视频编码参数表 即用于保存上述关系。
建立候选视频编码参数表的详细流程如图2所示
步骤S202,获取与实际应用类似的典型视频通信场景的样本序列。典型视 频通信场景的样本序列可以预先存储在存储器中并通过输入输出设备读取,也 可以通过摄像头拍摄典型的视频通信场景,例如室内会议、室外风景、体育赛 场等场景。
步骤S204,采用不同的视频编码参数对典型视频通信场景的样本序列进行 编码,例如,使用不同的分辨率、不同的帧率、不同的量化步长等其他编码参 数进行编码,获得编码后不同码率的视频数据。
步骤S206,记录^L频编码参数与率失真特性的对应关系。具体而言,为记 录不同码率下的对所有样本序列的平均失真度。其中,失真度是将编码后不同
码率的视频数据进行解码,将解码后得到的视频分别在空域和时域上采样至与 原始视频相同的分辨率和帧率之后,相对于原始视频的失真度。
步骤S208,按码率从低到高排序,得到码率/ 与失真度Z)的关系(如图3 所示)。图3中,存在多个码率与失真的采样点,其中每一个点代表该码率对应 的编码参数所产生的失真度。采样点(码率i ,失真度Z))构成视频编解码器近 似的码率与失真度的特性曲线。
步骤S210,挑选上述采样点中的候选参数点。将率失真特性曲线上每一点 的斜率称为率失真斜率。率失真斜率越大,表示增加相同编码码率的情况下, 视频失真减小得越快,也就是说视频失真改善越大。按照码率由低到高的顺序 从这些采样点中选择构成凸壳的点近似作为多路视频通信方法中提高视频整体 通信质量的候选参数点,则这些点的率失真斜率满足由大到小的顺序关系。用 索引值(她P0,1,2,…)对候选参数点进行编号。如图3所示,采样点(R1, D1), (R2, D2), ..., (R10, D10)中构成凸壳的点为(R1, D1), (R2, D2), (R4, D4), (R5, D5), (R8, D8), (R10, D10),即这些凸壳点作为候选参数点,而其他非凸壳的点,例如(R3,D3),则 放弃。
步骤S212,将候选参数点对应的一组编码参数(索引值/wfec,率失真斜率 A:,分辨率s,帧率/,码率i ,量化步长0尸,其他编码参数; a^, paG,…)力口 入视频编解码器的候选参数表,完成视频编解码器候选参数表的建立。
对于同一类型的视频编解码器,其率失真特性曲线也是固定的,因此,只
需对远程客户端的每一种视频编解码器建立静态的候选参数表,在视频通信过 程中,读取所需视频编解码器的候选参数表即可,从而避免计算复杂度的增加。
在候选参数表建立后,即可根据网络状况及远程客户端属性选择合适的参 数进^^见频编;马和通4言。
获取网络状况信息及各个远程客户端属性并建立视频通信连接的详细流程
如图4中步骤S402至S408所示
步骤S402,获取本地网络状况信息通过检测网络状况信息获得本地客户 端的最大可用上行带宽S一,与本地客户端连接的远程客户端的数量等信息。
步骤S404,创建网络连接单元,本地客户端为每一个远程客户端创建一个 独立的网络连接单元。
步骤S406,通过网络连接单元与远程客户端协商确定连接双方所使用的视 频编解码器类型,并建立一个独立的视频编解码器,并将与该纟见频编解码器对 应的候选参数表载入。由于视频编解码技术的多样性,在进行正式的视频通信 之前,需要连接双方协商确定视频编解码器类型,避免出现一方编码后的视频 数据另 一方无法解码的情况。由于不同的视频编码方法其涉及的参数是不同的, 因此,不同的视频编解码器有其对应的候选参数表。
步骤S408,获取远程客户端属性和网络状况。远程客户端Client/的网络状 况包括本地客户端ClientO与该远程客户端连接时该远程客户端的最大可用下行 带宽5ffi等。远程客户端的属性包括远程客户端能支持的视频最大分辨率A、最 大帧率乂等。
获取网络状况信息及各个远程客户端属性并建立视频通信连接后,即可根 据上述信息选择与各个远程客户端对应的视频编码参数,详细流程如图5中 S502至S508所示
步骤S502,所有编码器都采用索引值为0的参数条项,即对所有的视频编
解码器1到Z,其当前索引值/wfec,都为0,并对所有视频编解码器的码率求和<formula>formula see original document page 13</formula>
上式中1 为本地客户端中每一视频编解码器对应的候选参数表中当前选用
索引值对应的码率之和,即总的上行视频数据码率;外'""")为各视频编解码器 对应的候选参数表中当前选用索引值对应的码率。
步骤S504,根据步骤S406中建立的视频编解码器、步骤S408中获取的远 程客户端属性和网络状况,查找满足条件的率失真斜率最大的索引值/W《。最 大的率失真斜率"i""《)的查找公式为
<formula>formula see original document page 14</formula>
其中,
/"&x:表示查找到的新的最大率失真斜率对应的索引值;3^表示在所有候 选参数表中查找新的最大率失真斜率值W/"^c;),新的最大率失真斜率值
yt(/"cfec;)需要满足的条件为
/mtec;>/mfec,,即对于同一个视频编解码器,其新的索引值需要大于当前索
引值,也就是说,向码率增大的方向寻找率失真斜率最大的索引值;
s(/加fcc,')",,即新的索引值对应的分辨率不能超过相应远程客户端能支持的 最大分辨率;
/(/mfec,')S/,即新的索引值对应的帧率不能超过相应远程客户端能支持的 最大帧率;
W(/mfec,')《^,,即新的索引值对应的码率不能超过相应远程客户端与本地客
户端连接时的最大下行带宽;
&m -及(/"Ax,) +及(/^fec,')S&p。,即当前所有视频编解码器的编码码率之和减 去当前最大率失真斜率索引值对应的码率加上查找到的新的最大率失真斜率索 引值对应的码率应当不超过本地客户端的最大可用上行带宽。
步骤S504中,可能存在两个以上最大率失真斜率的情况,即存在两个以上 增加相同编码码率的情况下视频失真改善都为相同的最大值的视频编码参数, 在这种情况下,随机将其中某一选择其中的一个最大率失真斜率。
步骤S506,判断步骤S504中是否查找到满足条件的新的索引值。如果查找 到,则进入步骤S508。否则,进入步骤S510。
步骤S508 , 更新当前所有视频编解码器的编码码率之和 (凡目=及_-/ (/"cfeO + i (/"cfec '),即将新的索引值对应的码率替代当前索引值对 应的码率),并将新的索引值作为当前索引值(/wcfec = hcfec/ )后返回步骤S504 查找新的索引值。率失真斜率越大,表示在增加相同码率的情况下,视频失真 度改善越大,因此,查找到率失真斜率最大的索引值/"cfec:后,将率失真斜率最 大的索引值/"rf《作为该视频编解码器w的当前索引值/"cfec。。增加索引值以可以 增加相应的;^见频编解码器的码率,而查找到率失真斜率最大的索引值,可以在 增加相同码率的情况下更大的减小视频失真度,从而有效利用网络带宽并最大 限度的降低整体视频的失真度。
步骤S510,将当前的索引值对应的编码参数作为编码器的编码参数。
上述多路视频通信方法中,根据网络状况信息及各个远程客户端属性选择 与各个远程客户端对应的视频编码参数,使各个远程客户端接收到的编码视频 数据与其网络带宽及设备本身属性相适应,提高了多路视频通信的质量。将增
加相同编码码率的情况下,— 见频失真改善最大的视频编码参#丈更新为相应3见频 编解码器的当前视频编码参数,可以更有效率的利用有限的网络带宽,提高多 路视频通信的整体质量。设置分辨率、帧率、最大可用上行带宽、最大可用下 行带宽的筛选条件,可以防止本地客户端或部分远程客户端无法支持相应分辨 率或,或者带宽不够的情况发生,佳j见频通信变得不可用。采用采样点的方法, 可以使计算变得简单。当然,在其他实施方式中,可以对釆样点进行曲线拟合, 得出精度更高的失真度与码率的关系,相应地,计算也会变得复杂。
如图6所示,其为多路视频通信系统600 (例如本地客户端)与两个以上远 程客户端(例如台式机602、手机604、笔记本电脑606)进行:视频通信的示意图。多路视频通信系统600包括视频源模块610、视频质量模块620、视频编解 码模块630、网络模块640及显示模块650。
视频源模块610用于存储或捕获典型视频通信场景的样本序列、需要通过 视频通信传播的原始视频数据等。
视频编解码模块630与视频源模块610相连,以接收视频源模块610的原 始视频数据并对原始视频数据进行编码,产生编码后的视频数据。视频编解码 模块630还与网络模块640相连,以获取通过网络才莫块640接收的其他远程客 户端传送过来的编码视频数据并对其进行解码,以产生相应的视频流。视频流 被传送到与视频解码模块630相连的显示模块650上进行显示。
网络模块640用于检测网络状况信息及两个以上远程客户端属性并建立视 频通信连接。网络模块640通过检测网络状况信息获得本地客户端的最大可用 上行带宽^一,与本地客户端连接的需要进行视频通信的远程客户端的数量等信 息。网络模块640为每一个远程客户端创建一个独立的网络连接单元,其中第 一网络连接单元642与远程客户端台式机602相连;第二网络连接单元644与 远程客户端手机604相连;第三网络连接单元646与远程客户端笔记本电脑606 相连。网络;溪块640通过上述网络连接单元分别与各远程客户端通信获取远程 客户端属性和网络状况。远程客户端的网络状况包括本地客户端与该远程客户 端连接时该远程客户端的最大可用下行带宽^w等。远程客户端的属性包括远程 客户端能支持的视频最大分辨率A、最大帧率力等。
网络模块640还用于与远程客户端协商确定连接双方所爿使用的视频编解码 器类型。视频编解码模块630依据协商的视频编解码器类型为每一个远程客户 端建立一个独立的视频编解码器,每个视频编解码器对应一个远程客户端。其 中,第 一视频编解码器632通过第 一 网络连接单元642与远程客户端台式机602 相连;第二视频编解码器634通过第二网络连接单元644与远程客户端手机604 相连;第三视频编解码器636通过第三网络连接单元646与远程客户端笔记本 电脑606相连。
视频质量模块620与视频编解码模块630及网络模块640相连,用于存储 多组视频编码候选参数表,候选视频编码参数表内设有视频编码参数与视频率 失真特性的对应关系。视频质量模块620根据网络模块640检测到的网络状况 及两个以上远程客户端属性提供与两个以上远程客户端相应的视频编码参数。 视频质量模块620在候选视频编码参数表中查找在各视频编解码器增加相同编 码码率的情况下视频失真改善最大的视频编码参数,并将查找到的视频编码参
数更新为相应^L频编解码器的当前视频编码参数。若存在两个以上增加相同编 码码率的情况下视频失真改善最大的视频编码参数,则视频质量模块620随机
将其中某一视频编码参数更新为相应视频编解码器的当前视频编码参数。 一见频 编解码模块630按照视频质量模块620提供的视频编码参数对视频数据进行编 码并将编码后的视频数据通过网络模块640发送至相应远程客户端。
例如,如图6所示,视频质量模块620内建有与所述视频编解码器数量相 同的视频编码候选参数表第一参数表622与第一^L频编解码器632对应连接; 第二参数表624与第二视频编解码器634对应连接;第三参^t表626与第三4见 频编解码器636对应连接。每一参数表622用于存储与该视频编解码器632对 应的候选参数表,视频质量模块620根据网络模块640检测到的本地客户端与 远程客户端台式机602连接时远程客户端台式机602的最大可用下行带宽301, 能支持的视频最大分辨率&、最大帧率/i等提供与其相应的视频编码参数,将 网络带宽与远程客户端的性能做最大化的利用,从而提高视频质量。
更具体地,以第一视频编解码器632及第二视频编解码器634为例,假设 二者当前视频编码参数对应的索引值都为0,如果下一个索引值(例如都为1) 对应的采样点的率失真斜率第一视频编解码器632要大于第二视频编解码器 634,则将第一视频编解码器632索引值为1的条项对应的编码参数作为第一视 频编解码器632的当前编码参数。在进行下一轮查找的过程中,将比较第一视 频编解码器632的当前索引值(即1)的下一个索引4直(例如2)对应的率失真 斜率与第二视频编解码器634的当前索引值(即0)的下一个索引值(即1)对 应的率失真斜率的大小关系。
容易理解,由于^^频通信是相互的,远程客户端(例如台式机602、手机 604、笔记本电脑606 )也具有类似多路^见频通信系统600的架构。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细, 但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域 的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和 改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附 权利要求为准。
权利要求
1、一种多路视频通信方法,其特征在于,所述方法包括以下步骤检测网络状况信息及两个以上远程客户端的属性并建立视频通信连接;根据所述网络状况信息及所述各个远程客户端的属性选择与各个远程客户端对应的视频编码参数; 根据所述视频编码参数分别编码视频数据,得到与所述各个远程客户端对应的编码后的视频数据;传输分别编码后的视频数据至对应的各个远程客户端。
2、 根据权利要求1所述的多路视频通信方法,其特征在于,所述检测网络 状况信息及两个以上远程客户端的属性并建立视频通信连接的步骤包括通过检测网络状况信息获得与本地客户端连接的所述远程客户端的数量; 创建网络连接单元;通过网络连接单元与所述远程客户端协商确定连接双方所^使用的^见频编解 码器类型,并为每一个远程客户端创建一个独立的视频编解码器,并将与该视 频编解码器对应的候选视频编码参数表载入,所述候选视频编码参数表内设有 所述视频编码参数与视频率失真特性的对应关系。
3、 根据权利要求2所述的多路视频通信方法,其特征在于,所述根据所述 网络状况信息及各个远程客户端的属性选择与所述各个远程客户端对应的3见频 编码参数的步骤包括在候选视频编码参数表中查找在各视频编解码器增加相同编码码率的情况 下,视频失真改善最大的视频编码参数;将查找到的视频编码参数更新为相应视频编解码器的当前视频编码参数。
4、 根据权利要求3所述的多路视频通信方法,其特征在于,若存在两个以 上增加相同编码码率的情况下视频失真改善最大的视频编码参数,则随机将其 中某一视频编码参数更新为相应视频编解码器的当前视频编码参数。
5、 根据权利要求3所述的多路视频通信方法,其特征在于,还包括 通过检测网络状况信息获得所述本地客户端的最大可用上行带宽; 计算所述本地客户端中每一视频编解码器选用的当前视频编码参数对应的 码率之和;判断所述码率之和是否超过所述最大可用上行带宽;如果所述码率之和未超过所述最大可用上行带宽,则重复执行所述查找与 更新的步骤。
6、 根据权利要求3所述的多路视频通信方法,其特征在于,还包括 通过检测网络状况信息获取所述本地客户端与所述远程客户端连接时所述远程客户端的最大可用下行带宽;判断所述更新的当前视频编码参数对应的视频码率是否超过相应远程客户 端的最大可用下行带宽;如果所述视频码率未超过所述最大可用下行带宽,则重复执行所述查找与 更新的步骤。
7、 根据权利要求3所述的多路视频通信方法,其特征在于,还包括 通过检测远程客户端的属性获得所述远程客户端能支持的视频最大分辨率、最大帧率;述最大分辨率、最大帧率;如果所述视频分辨率和帧率未超过所述最大分辨率、最大帧率,则重复执 行所述查找与更新的步骤。
8、 根据权利要求1所述的多路视频通信方法,其特征在于,还包括 定时^r测并更新网络状况;根据更新的网络状况选择编码参数。
9、 根据权利要求8所述的多路视频通信方法,其特征在于,还包括 根据网络检测结果,判断远程客户端是否关闭;如果所述远程客户端关闭,则删除与该远程客户端相应的网络连接和一见频 编解码器。
10、 根据权利要求2所述的多路视频通信方法,其特征在于,还包括 判断本地客户端的视频通信功能是否关闭;如果本地客户端关闭视频通信功能,则删除与所有视频远程客户端相应的 网络连接单元和-f见频编解码器。
11、 根据权利要求3所述的多路视频通信方法,其特征在于,还包括建立所述候选视频编码参数表的步骤。
12、 根据权利要求11所述的多路视频通信方法,其特征在于,所述建立候 选视频编码参数表的步骤包括获取典型视频通信场景的样本序列;采用不同的视频编码参数对典型视频通信场景的样本序列进行编码; 记录所述视频编码参数与视频率失真特性的对应关系。
13、 根据权利要求3所述的多路视频通信方法,其特征在于, 所述候选视频编码参数表内存储有编码参数、编码码率与率失真特性的对应关系,并按码率增加的顺序依次用索引值编号,将索引值对应的率失真特性 曲线上的采样点的斜率定义为率失真斜率,所述查找的方式为查找率失真^1"率
14、 一种多路视频通信系统,其特征在于,所述多路视频通信系统包括 网络模块,用于检测网络状况信息及两个以上远程客户端的属性并建立视频通信连接;视频质量模块,与所述网络模块相连,用于存储候选视频编码参数表,所 述候选视频编码参数表内设有所述视频编码参数与视频率失真特性的对应关 系,所述视频质量模块根据所述网络状况及两个以上远程客户端的属性提供与 所述两个以上远程客户端相应的-见频编码参凄t;视频编解码模块,与所述视频质量模块及网络模块相连,用于按照所述视 频质量模块提供的两个以上视频编码参数分别对视频数据进行编码,并将编码 后的视频数据通过所述网络模块分别发送至相应的各个远程客户端。
15、 根据权利要求14所述的多路视频通信系统,其特征在于,所述^L频编 解码模块设有与所述远程客户端数量相同的视频编解码器,每个视频编解码器 对应一个远程客户端;所述网络模块还用于与远程客户端协商确定连接双方所 使用的所述视频编解码器类型。
16、 根据权利要求15所述的多路视频通信系统,其特征在于,所述一见频质 量模块用于在候选视频编码参数表中查找在各视频编解码器增加相同编码码率 的情况下视频失真改善最大的视频编码参数,并将查找到的视频编码参数更新 为相应视频编解码器的当前视频编码参数。
17、根据权利要求16所述的多路视频通信系统,其特征在于,若存在两个 以上增加相同编码码率的情况下^见频失真改善最大的^L频编码参凄史,所述一见频 质量模块则随机将某一—见频编码参数更新为相应-见频编解码器的当前-见频编码 参数。
全文摘要
一种多路视频通信方法,包括以下步骤检测网络状况信息及两个以上远程客户端属性并建立视频通信连接;根据所述网络状况信息及各个远程客户端属性选择与各个远程客户端对应的视频编码参数;根据所述视频编码参数分别编码视频数据;传输分别编码后的视频数据至所述各个远程客户端。上述多路视频通信方法中,根据网络状况信息及各个远程客户端属性选择与各个远程客户端对应的视频编码参数,使各个远程客户端接收到的编码视频数据与其网络带宽及设备本身属性相适应,提高了多路视频通信的质量。此外,还提供了一种多路视频通信系统。
文档编号H04L29/06GK101365125SQ200810198890
公开日2009年2月11日 申请日期2008年9月27日 优先权日2008年9月27日
发明者谷沉沉 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1