著录项信息
专利名称 | 一种视频通话方法及装置 |
申请号 | CN201510372343.5 | 申请日期 | 2015-06-30 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-11-04 | 公开/公告号 | CN105025243A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04N7/14 | IPC分类号 | H;0;4;N;7;/;1;4查看分类表>
|
申请人 | 北京奇艺世纪科技有限公司 | 申请人地址 | 上海市徐汇区乐山路33号3幢701室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 上海众源网络有限公司 | 当前权利人 | 上海众源网络有限公司 |
发明人 | 冯巍 |
代理机构 | 北京柏杉松知识产权代理事务所(普通合伙) | 代理人 | 马敬;项京 |
摘要
本发明实施例公开了一种视频通话方法及装置。一种视频通话方法,应用于进行视频通话的每个终端,视频通话过程中,每个终端均竖屏显示视频图像,该方法可以包括以下步骤:在视频通话呼叫建立阶段,第一终端接收第二终端发送的标识所述第二终端的数据处理能力的信息;所述第一终端将自身的数据处理能力与所述第二终端的数据处理能力进行对比;根据对比结果,所述第一终端确定自身在视频通话阶段是否执行旋转视频图像的任务;在视频通话阶段,所述第一终端根据确定结果,与所述第二终端进行视频通话。应用本发明实施例所提供的技术方案,可以使得在视频通话过程中,各终端可以进行较为流畅的视频通话,提升用户的视频通话体验。
1.一种视频通话方法,其特征在于,应用于进行视频通话的每个终端,视频通话过程中,每个终端均竖屏显示视频图像,所述方法包括:
在视频通话呼叫建立阶段,第一终端接收第二终端发送的标识所述第二终端的数据处理能力的信息;
所述第一终端将自身的数据处理能力与所述第二终端的数据处理能力进行对比;
根据对比结果,所述第一终端确定自身在视频通话阶段是否执行旋转视频图像的任务;
如果自身的数据处理能力等于所述第二终端的数据处理能力,则确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务;
或者,如果自身的数据处理能力高于所述第二终端的数据处理能力,则确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务,且执行旋转所述第二终端发送的视频图像的任务;
或者,如果自身的数据处理能力低于所述第二终端的数据处理能力,则确定自身在视频通话阶段不执行旋转视频图像的任务;
在视频通话阶段,所述第一终端根据确定结果,与所述第二终端进行视频通话。
2.根据权利要求1所述的方法,其特征在于,在自身的数据处理能力低于所述第二终端的数据处理能力的情况下,所述方法还包括:
确定在视频通话阶段将自身采集到的视频图像直接发送给所述第二终端。
3.根据权利要求1所述的方法,其特征在于,在自身的数据处理能力等于所述第二终端的数据处理能力的情况下,所述方法还包括:
判断自身的数据处理能力或所述第二终端的数据处理能力是否低于预设能力阈值;
如果是,则确定在视频通话阶段降低视频图像的采集分辨率。
4.根据权利要求1至3 任一项所述的方法,其特征在于,所述标识所述第二终端的数据处理能力的信息为:所述第二终端的中央处理器CPU信息、所述第二终端的操作系统版本信息、所述第二终端的操作系统类型信息中的一种或多种。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述标识所述第二终端的数据处理能力的信息为:所述第二终端的数据处理能力的等级信息。
6.一种视频通话装置,其特征在于,应用于进行视频通话的每个终端,视频通话过程中,每个终端均竖屏显示视频图像,所述装置包括:
信息接收模块,用于在视频通话呼叫建立阶段,第一终端接收第二终端发送的标识所述第二终端的数据处理能力的信息;
信息对比模块,用于所述第一终端将自身的数据处理能力与所述第二终端的数据处理能力进行对比;
确定模块,用于根据所述信息对比模块的对比结果,所述第一终端确定自身在视频通话阶段是否执行旋转视频图像的任务;
所述确定模块包括:关系确定子模块,用于根据所述信息对比模块的对比结果,所述第一终端确定自身的数据处理能力与所述第二终端的数据处理能力的关系;第一确定子模块,用于在自身的数据处理能力等于所述第二终端的数据处理能力的情况下,确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务;第二确定子模块,用于在自身的数据处理能力高于所述第二终端的数据处理能力的情况下,确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务,且执行旋转所述第二终端发送的视频图像的任务;第三确定子模块,用于在自身的数据处理能力低于所述第二终端的数据处理能力的情况下,确定自身在视频通话阶段不执行旋转视频图像的任务;
视频通话模块,用于在视频通话阶段,所述第一终端根据确定结果,与所述第二终端进行视频通话。
7.根据权利要求6所述的装置,其特征在于,所述第三确定子模块还用于:
在自身的数据处理能力低于所述第二终端的数据处理能力的情况下,确定在视频通话阶段将自身采集到的视频图像直接发送给所述第二终端。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
判断子模块,用于在自身的数据处理能力等于所述第二终端的数据处理能力的情况下,判断自身的数据处理能力或所述第二终端的数据处理能力是否低于预设能力阈值,如果是,则触发第四确定子模块;
所述第四确定子模块,用于确定在视频通话阶段降低视频图像的采集分辨率。
一种视频通话方法及装置\n技术领域\n[0001] 本发明涉及终端技术领域,特别涉及一种视频通话方法及装置。\n背景技术\n[0002] 随着终端技术和网络技术的快速发展,终端的视频通话功能得到了越来越广泛的应用。进行视频通话的终端需要对音视频信号同时进行上行编码及下行解码。当两个竖屏终端进行视频通话时,一方采集到的视频图像如果直接传送给另一方,且在另一方直接显示,会造成另一方显示的视频图像有拉伸现象。如图1所示,终端A将采集到的视频图像进行存储,经过视频编码、打包操作,将视频图像经由网络直接传送给终端B,终端B进行视频解码操作,直接显示视频图像,视频图像在终端B上被拉伸显示。\n[0003] 为避免这种问题,进行视频通话的终端除了需要对音视频信号进行上行编码和下行解码外,还需要执行相应的旋转视频图像的任务,以适应竖屏终端的显示需求。现有的视频通话方法有两种:\n[0004] 一种方法如图2所示,当终端A作为发送方、终端B作为接收方时,终端A采集到视频图像后,先对采集到的视频图像进行旋转、编码、打包操作,然后经由网络传送给终端B,终端B进行视频解码,并显示解码后的视频图像,同样,终端B作为发送方、终端A作为接收方时与此类似。也就是说,在这种方法中,发送方对于采集到的视频图像先进行旋转操作,再进行编码、打包操作,然后经由网络传送给接收方,接收方进行视频解码后显示视频图像。\n[0005] 另一种方法如图3所示,当终端A作为发送方、终端B作为接收方时,终端A采集到视频图像后,直接进行视频编码、打包操作,然后经由网络传送给终端B,终端B进行视频解码,对视频图像进行旋转后显示,同样,终端B作为发送方、终端A作为接收方时与此类似。也就是说,在这种方法中,发送方对于采集到的视频图像编码、打包后,经由网络传送给接收方,接收方进行视频解码、旋转视频图像操作,并显示旋转后的视频图像。\n[0006] 上述这两种方法都可以避免视频图像在接收方显示时被拉伸的问题。但是,在实际应用中,移动终端的数据处理能力有限,进行视频通话的移动终端对音视频信号进行上行编码和下行解码的过程已经消耗了较多的资源,对于数据处理能力较差的移动终端来说,其对于上下行数据的编解码都可能无法实时处理,如果再加上旋转视频图像的任务,可能会出现本机或远端接收到的画面出现卡顿现象,甚至是黑屏现象,影响视频通话的正常进行,用户的视频通话体验较差。\n发明内容\n[0007] 为解决上述问题,本发明实施例公开了一种视频通话方法及装置。技术方案如下:\n[0008] 一种视频通话方法,应用于进行视频通话的每个终端,视频通话过程中,每个终端均竖屏显示视频图像,所述方法包括:\n[0009] 在视频通话呼叫建立阶段,第一终端接收第二终端发送的标识所述第二终端的数据处理能力的信息;\n[0010] 所述第一终端将自身的数据处理能力与所述第二终端的数据处理能力进行对比;\n[0011] 根据对比结果,所述第一终端确定自身在视频通话阶段是否执行旋转视频图像的任务;\n[0012] 在视频通话阶段,所述第一终端根据确定结果,与所述第二终端进行视频通话。\n[0013] 在本发明的一种具体实施方式中,所述根据对比结果,所述第一终端确定自身在视频通话阶段是否执行旋转视频图像的任务,包括:\n[0014] 如果自身的数据处理能力等于所述第二终端的数据处理能力,则确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务;\n[0015] 如果自身的数据处理能力高于所述第二终端的数据处理能力,则确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务,且执行旋转所述第二终端发送的视频图像的任务;\n[0016] 如果自身的数据处理能力低于所述第二终端的数据处理能力,则确定自身在视频通话阶段不执行旋转视频图像的任务。\n[0017] 在本发明的一种具体实施方式中,在自身的数据处理能力低于所述第二终端的数据处理能力的情况下,所述方法还包括:\n[0018] 确定在视频通话阶段将自身采集到的视频图像直接发送给所述第二终端。\n[0019] 在本发明的一种具体实施方式中,在自身的数据处理能力等于所述第二终端的数据处理能力的情况下,所述方法还包括:\n[0020] 判断自身的数据处理能力或所述第二终端的数据处理能力是否低于预设能力阈值;\n[0021] 如果是,则确定在视频通话阶段降低视频图像的采集分辨率。\n[0022] 在本发明的一种具体实施方式中,所述标识所述第二终端的数据处理能力的信息为:所述第二终端的中央处理器CPU信息、所述第二终端的操作系统版本信息、所述第二终端的操作系统类型信息中的一种或多种。\n[0023] 在本发明的一种具体实施方式中,所述标识所述第二终端的数据处理能力的信息为:所述第二终端的数据处理能力的等级信息。\n[0024] 一种视频通话装置,应用于进行视频通话的每个终端,视频通话过程中,每个终端均竖屏显示视频图像,所述装置包括:\n[0025] 信息接收模块,用于在视频通话呼叫建立阶段,第一终端接收第二终端发送的标识所述第二终端的数据处理能力的信息;\n[0026] 信息对比模块,用于所述第一终端将自身的数据处理能力与所述第二终端的数据处理能力进行对比;\n[0027] 确定模块,用于根据所述信息对比模块的对比结果,所述第一终端确定自身在视频通话阶段是否执行旋转视频图像的任务;\n[0028] 视频通话模块,用于在视频通话阶段,所述第一终端根据确定结果,与所述第二终端进行视频通话。\n[0029] 在本发明的一种具体实施方式中,所述确定模块,包括:\n[0030] 关系确定子模块,用于根据所述信息对比模块的对比结果,所述第一终端确定自身的数据处理能力与所述第二终端的数据处理能力的关系;\n[0031] 第一确定子模块,用于在自身的数据处理能力等于所述第二终端的数据处理能力的情况下,确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务;\n[0032] 第二确定子模块,用于在自身的数据处理能力高于所述第二终端的数据处理能力的情况下,确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务,且执行旋转所述第二终端发送的视频图像的任务;\n[0033] 第三确定子模块,用于在自身的数据处理能力低于所述第二终端的数据处理能力的情况下,确定自身在视频通话阶段不执行旋转视频图像的任务。\n[0034] 在本发明的一种具体实施方式中,所述第三确定子模块还用于:\n[0035] 在自身的数据处理能力低于所述第二终端的数据处理能力的情况下,确定在视频通话阶段将自身采集到的视频图像直接发送给所述第二终端。\n[0036] 在本发明的一种具体实施方式中,所述装置还包括:\n[0037] 判断子模块,用于在自身的数据处理能力等于所述第二终端的数据处理能力的情况下,判断自身的数据处理能力或所述第二终端的数据处理能力是否低于预设能力阈值,如果是,则触发第四确定子模块;\n[0038] 所述第四确定子模块,用于确定在视频通话阶段降低视频图像的采集分辨率。\n[0039] 应用本发明实施例所提供的技术方案,进行视频通话的第一终端,通过对比自身的数据处理能力及第二终端的数据处理能力,可以得到二者的数据处理能力的高低,根据对比结果,可以确定自身在视频通话阶段是否执行旋转视频图像的任务,即确定自身在视频通话阶段是否执行旋转自身采集到的视频图像的任务,及确定自身在视频通话阶段是否执行旋转第二终端发送的视频图像的任务。这样,可以根据终端的数据处理能力分配旋转视频图像的任务,尽量将旋转视频图像的任务分配给数据处理能力高的终端,以减小数据处理能力低的终端的数据处理压力,使得在视频通话过程中,各终端可以进行较为流畅的视频通话,提升用户的视频通话体验。\n附图说明\n[0040] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。\n[0041] 图1为现有技术中视频通话过程的一种示意图;\n[0042] 图2为现有技术中视频通话过程的另一种示意图;\n[0043] 图3为现有技术中视频通话过程的另一种示意图;\n[0044] 图4为本发明实施例中视频通话方法的一种实施流程图;\n[0045] 图5为本发明实施例中视频通话过程的一种示意图;\n[0046] 图6为本发明实施例中视频通话装置的一种结构示意图。\n具体实施方式\n[0047] 首先对本发明实施例所提供的一种视频通话方法进行说明,该方法可以包括以下步骤:\n[0048] 在视频通话呼叫建立阶段,第一终端接收第二终端发送的标识所述第二终端的数据处理能力的信息;\n[0049] 所述第一终端将自身的数据处理能力与所述第二终端的数据处理能力进行对比;\n[0050] 根据对比结果,所述第一终端确定自身在视频通话阶段是否执行旋转视频图像的任务;\n[0051] 在视频通话阶段,所述第一终端根据确定结果,与所述第二终端进行视频通话。\n[0052] 本发明实施例所提供的技术方案应用于进行视频通话的每个终端,视频通话过程中,每个终端均竖屏显示视频图像。进行视频通话的终端可以是手机、平板电脑等终端,可能为两个或多于两个,本发明对此不做限定,每两个终端之间均需要进行视频图像旋转任务的协商。针对要进行视频通话的每两个终端中的任一个终端而言,可能要执行的旋转视频图像的任务有两个,一个是旋转自身采集的视频图像的任务,一个是旋转另一个终端发送过来的视频图像的任务。\n[0053] 在本发明实施例中,第一终端为要进行视频通话的任意一个终端,第二终端为要进行视频通话的除第一终端外的任意一个终端。在视频通话呼叫建立阶段,第二终端向第一终端发送标识第二终端的数据处理能力的信息,第一终端接收到该信息后,将自身的数据处理能力与第二终端的数据处理能力进行对比,根据对比结果,第一终端确定在视频通话阶段是否执行旋转视频图像的任务,当然,与此同时,第一终端也会向第二终端发送标识第一终端的数据处理能力的信息,第二终端接收到该信息后,将自身的数据处理能力与第一终端的数据处理能力进行对比,根据对比结果,第二终端也能够确定在视频通话阶段是否执行旋转视频图像的任务。要进行视频通话的每个终端分别与其他终端进行这样的协商后,各自均能确定出在视频通话阶段是否需要执行旋转视频图像的任务,在视频通话阶段,根据确定结果,各终端之间进行视频通话。\n[0054] 应用本发明实施例所提供的技术方案,进行视频通话的第一终端,通过对比自身的数据处理能力及第二终端的数据处理能力,可以得到二者的数据处理能力的高低,根据对比结果,可以确定自身在视频通话阶段是否执行旋转视频图像的任务,即确定自身在视频通话阶段是否执行旋转自身采集到的视频图像的任务,及确定自身在视频通话阶段是否执行旋转第二终端发送的视频图像的任务。这样,可以根据终端的数据处理能力分配旋转视频图像的任务,尽量将旋转视频图像的任务分配给数据处理能力高的终端,以减小数据处理能力低的终端的数据处理压力,使得在视频通话过程中,各终端可以进行较为流畅的视频通话,提升用户的视频通话体验。\n[0055] 为了使本领域技术人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。\n[0056] 参见图4所示,为本发明实施例所提供的一种视频通话方法的实施流程图,该方法应用于进行视频通话的每个终端,视频通话过程中,每个终端均竖屏显示视频图像,该方法可以包括以下步骤:\n[0057] S110:在视频通话呼叫建立阶段,第一终端接收第二终端发送的标识所述第二终端的数据处理能力的信息。\n[0058] 在实际应用中,一个视频通话的过程由两个阶段构成:第一个阶段是视频通话呼叫建立阶段,在该阶段,在要进行视频通话的终端之间建立通信链路;第二个阶段是视频通话阶段,在该阶段,建立通信链路的终端进行视频通话。\n[0059] 在视频通话呼叫建立阶段,第二终端通过呼叫建立协议,如SIP(Session Initiation Protocol,会话初始协议),向第一终端发送标识自身的数据处理能力的信息。\n[0060] 对于任意一个终端来说,标识终端的数据处理能力的信息可以有两类:\n[0061] 第一类是终端的设备信息,具体的,可以是终端的中央处理器CPU信息、终端的操作系统版本信息、终端的操作系统类型信息中的一种或多种。其中,CPU信息可以包括CPU核心数、CPU主频是否支持硬件编解码等信息。当然,终端的设备信息并不限于以上例举的几种,还可以是其他设备信息,如电池电量信息、剩余存储容量信息等,本发明实施例对此不做限定。\n[0062] 第二类是终端的数据处理能力的等级信息,终端的数据处理能力的等级可以是该终端根据其设备信息或预先设定的计算方法,计算得到的。比如,一个终端的CPU核心数大于或等于4,则将其数据处理能力的等级设置为一级,一个终端的CPU核心数小于4,则将其数据处理能力的等级设置为二级,等级为一级的终端的数据处理能力高于等级为二级的终端的数据处理能力。当然,在实际应用中,可以综合终端的多个设备信息,确定出终端的数据处理能力的等级。或者,可以通过分析终端的历史视频通话数据,得到该终端在历史视频通话中的卡顿次数或异常中断率等信息,并根据这些信息确定该终端的数据处理能力的等级。比如,某终端在某一周期内,平均每次视频通话卡顿1次,视频通话异常中断率为30%,如果设定平均每次视频通话卡顿次数小于等于1、且视频通话异常终端率小于50%对应的终端的数据处理能力的等级为一级,相反则为二级,则可以确定该终端的数据处理能力的等级为一级。这样,在视频通话呼叫建立阶段,要进行视频通话的各终端可以将自己的数据处理能力的等级信息直接发送给对方终端。\n[0063] S120:所述第一终端将自身的数据处理能力与所述第二终端的数据处理能力进行对比。\n[0064] 第一终端接收到标识第二终端的数据处理能力的信息后,得到第二终端的数据处理能力,其可以将自身的数据处理能力与第二终端的数据处理能力进行对比。\n[0065] 在第一终端接收到的标识第二终端的数据处理能力的信息为第一类信息的情况下,第一终端可以将接收到的每种设备信息,分别与自身对应的该设备信息进行对比。\n[0066] 对比方法可以根据实际情况预先设定,比如,可以分别针对每种设备信息,对比第一终端的该设备信息和第二终端的该设备信息的优劣,如果第一终端的某设备信息优于第二终端该设备信息,则可以将第一终端的该设备信息值置为1,否则置为0,在实际应用中,可以根据每种设备信息在视频通话过程中的重要程度,赋予每种设备信息不同的权重值,例如在视频通话过程中,CPU核心数的重要性最高,其次是CPU主频是否支持硬件编解码、操作系统类型、操作系统版本,这样,为这些设备信息赋予的权重值是由高到低的。最终,每个终端的这些设备信息的加权和可以表征该终端的数据处理能力,可以根据两个终端的设备信息的加权和的差值绝对值是否大于某一预设阈值,确定出这两个终端的数据处理能力的高低。\n[0067] 为方便理解,针对这种对比方法进行举例说明。\n[0068] 假设第一终端接收到的标识第二终端的数据处理能力的信息所属类型分别为:\nCPU核心数、CPU主频是否支持硬件编解码、操作系统类型、操作系统版本。第一终端与第二终端的这几种类型的信息分别如表1所示。\n[0069]\n[0070] 表1\n[0071] 从表1中可见,第一终端和第二终端的CPU主频均支持硬件编解码、操作系统类型均为安卓Android,所以,第一终端和第二终端的这两种设备信息值均为0。第一终端和第二终端的设备信息不同的是,第一终端的CPU核心数为2,第二终端的CPU核心数为4,第一终端的操作系统版本为Android 4.3,第二终端的操作系统版本为Android 4.2。第一终端的CPU核心数小于第二终端的CPU核心数,则第一终端的CPU核心数值为0,第二终端的CPU核心数值为1。第一终端的操作系统版本高于第二终端的操作系统版本,则第一终端的操作系统版本值为1,第二终端的操作系统版本值为0。预先设定这四种设备信息的权重值分别为0.9、\n0.7、0.5、0.3,则通过计算可以得到以下信息:第一终端的设备信息的加权和为:0*0.9+0*\n0.7+0*0.5+1*0.3=0.3,第二终端的设备信息的加权和为:1*0.9+0*0.7+0*0.5+0*0.3=\n0.9。如果这两个终端的设备信息的加权和的差值的绝对值0.6大于预设的阈值,则可以确定第一终端的数据处理能力低于第二终端的数据处理能力。\n[0072] 当然,在实际应用中还可以应用其他对比条件进行数据处理能力的对比,如电池剩余电量、剩余存储容量,可以适当增加电池剩余电量较多的终端的数据处理能力分数,或者增加剩余存储容量较多的终端的数据处理能力分数。本发明对此不做限定。\n[0073] 在实际应用中,第一终端可以根据预先设定的计算方法计算得到自身的数据处理能力的等级,并对等级信息进行存储,这样在第一终端接收到的标识第二终端的数据处理能力的信息为第二类信息的情况下,第一终端可以将第二终端的数据处理能力的等级与自身的数据处理能力的等级直接进行对比,以确定出这两个终端数据处理能力的高低。\n[0074] S130:根据对比结果,所述第一终端确定在视频通话阶段是否执行旋转视频图像的任务。\n[0075] 通过步骤S120的对比,根据对比结果,第一终端可以确定自身的数据处理能力与第二终端的数据处理能力的关系,根据二者的关系可以确定自身是否执行旋转视频图像的任务。\n[0076] 如果第一终端的数据处理能力等于第二终端的数据处理能力,则第一终端可以确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务;\n[0077] 如果第一终端的数据处理能力高于第二终端的数据处理能力,则第一终端可以确定自身在视频通话阶段执行旋转自身采集到的视频图像的任务,且执行旋转所述第二终端发送的视频图像的任务;\n[0078] 如果第一终端的数据处理能力低于第二终端的数据处理能力,则第一终端可以确定自身在视频通话阶段不执行旋转视频图像的任务。\n[0079] 在本发明的一种具体实施方式中,在第一终端的数据处理能力低于第二终端的数据处理能力的情况下,第一终端可以确定在视频通话阶段将自身采集到的视频图像直接发送给第二终端,由第二终端在视频通话阶段执行旋转第一终端发送的视频图像的任务。\n[0080] 当然,在第一终端的数据处理能力等于第二终端的数据处理能力的情况下,第一终端可以进一步判断自身的数据处理能力或第二终端的数据处理能力是否低于预设能力阈值,如果是,则表明这两个终端的数据处理能力都不足以满足进行流畅的视频通话的需求,则第一终端可以确定在视频通话阶段降低视频图像的采集分辨率。同样,第二终端根据该方法也可以确定出在视频通话阶段降低视频图像的采集分辨率。\n[0081] 在实际应用中,第一终端和第二终端应用相同的技术方案进行视频图像旋转任务的协商,分别可以确定出自身是否需要执行旋转视频图像的任务,不需要再进行旋转信息的询问和应答。\n[0082] 在本发明的一个实施例中,第一终端和第二终端通过协商后确定的视频图像旋转任务分配方案可以如表2所示。\n[0083]\n[0084] 表2\n[0085] S140:在视频通话阶段,所述第一终端根据确定结果,与所述第二终端进行视频通话。\n[0086] 经过步骤S110至步骤S130在视频通话呼叫建立阶段对视频图像旋转任务的分配后,在视频通话阶段,第一终端根据确定结果,与第二终端进行视频通话。\n[0087] 如图5所示,经过对比,确定终端A的数据处理能力高、终端B的数据处理能力低,则在视频通话阶段,当终端A作为发送方、终端B作为接收方时,终端A对采集到的视频图像进行旋转、编码、打包操作,然后经由网络传送给终端B,终端B进行视频解码,并显示解码后的视频图像,当终端B作为发送方、终端A作为接收方时,终端B对采集到的视频图像进行编码、打包操作,然后经由网络传送给终端A,终端A进行视频解码,旋转视频图像操作,并显示旋转后的视频图像。\n[0088] 例如,针对终端A和终端B采用不同的方案进行视频通话实验,终端A的CPU配置为:\n4核1.6GHz+4核1.2GHz,终端B的CPU配置为:单核1.0GHz,通过对比,可知终端A的数据处理能力高于终端B的数据处理能力。如果终端A和终端B使用图2所示的方案进行视频通话,终端B受限于其自身的数据处理能力,只能接收显示分辨率为176x144的视频图像,如果终端A和终端B使用本发明实施例所提供的技术方案,终端B可以解码并显示分辨率为320x240的视频图像,提升了视频通话的质量,具体结果可以参见表3所示。\n[0089]\n 终端A 终端B\nCPU配置 4核1.6GHz+4核1.2GHz 单核1.0GHz\n图2所示方案 上行176x144,下行640x360 上行640x360,下行176x144\n本发明实施例方案 上行320x240,下行640x360 上行640x360,下行320x240[0090] 表3\n[0091] 应用本发明实施例所提供的技术方案,进行视频通话的第一终端,通过对比自身的数据处理能力及第二终端的数据处理能力,可以得到二者的数据处理能力的高低,根据对比结果,可以确定自身在视频通话阶段是否执行旋转视频图像的任务,即确定自身在视频通话阶段是否执行旋转自身采集到的视频图像的任务,及确定自身在视频通话阶段是否执行旋转第二终端发送的视频图像的任务。这样,可以根据终端的数据处理能力分配旋转视频图像的任务,尽量将旋转视频图像的任务分配给数据处理能力高的终端,以减小数据处理能力低的终端的数据处理压力,使得在视频通话过程中,各终端可以进行较为流畅的视频通话,提升用户的视频通话体验。\n[0092] 相应于上面的方法实施例,本发明实施例还提供了一种视频通话装置,该装置应用于进行视频通话的每个终端,视频通话过程中,每个终端均竖屏显示视频图像。参见图6所示,该装置可以包括以下模块:\n[0093] 信息接收模块210,用于在视频通话呼叫建立阶段,第一终端接收第二终端发送的标识所述第二终端的数据处理能力的信息;\n[0094] 其中,所述标识所述第二终端的数据处理能力的信息可以为:所述第二终端的中央处理器CPU信息、所述第二终端的操作系统版本信息、所述第二终端的操作系统类型信息中的一种或多种。\n[0095] 或者,所述标识所述第二终端的数据处理能力的信息可以为:所述第二终端的数据处理能力的等级信息。\n[0096] 信息对比模块220,用于所述第一终端将自身的数据处理能力与所述第二终端的数据处理能力进行对比;\n[0097] 确定模块230,用于根据所述信息对比模块220的对比结果,所述第一终端确定在视频通话阶段是否执行旋转视频图像的任务;\n[0098] 视频通话模块240,用于在视频通话阶段,所述第一终端根据确定结果,与所述第二终端进行视频通话。\n[0099] 在本发明的一种具体实施方式中,所述确定模块230,可以包括以下子模块:\n[0100] 关系确定子模块,用于根据所述信息对比模块220的对比结果,所述第一终端确定自身的数据处理能力与所述第二终端的数据处理能力的关系;\n[0101] 第一确定子模块,用于在自身的数据处理能力等于所述第二终端的数据处理能力的情况下,确定在视频通话阶段执行旋转自身采集到的视频图像的任务;\n[0102] 第二确定子模块,用于在自身的数据处理能力高于所述第二终端的数据处理能力的情况下,确定在视频通话阶段执行旋转自身采集到的视频图像的任务,且执行旋转所述第二终端发送的视频图像的任务;\n[0103] 第三确定子模块,用于在自身的数据处理能力低于所述第二终端的数据处理能力的情况下,确定在视频通话阶段不执行旋转视频图像的任务。\n[0104] 在本发明的一种具体实施方式中,所述第三确定子模块还可以用于:\n[0105] 在自身的数据处理能力低于所述第二终端的数据处理能力的情况下,确定在视频通话阶段将自身采集到的视频图像直接发送给所述第二终端。\n[0106] 在本发明的一种具体实施方式中,所述装置还可以包括:\n[0107] 判断子模块,用于在自身的数据处理能力等于所述第二终端的数据处理能力的情况下,判断自身的数据处理能力或所述第二终端的数据处理能力是否低于预设能力阈值,如果是,则触发第四确定子模块;\n[0108] 所述第四确定子模块,用于确定在视频通话阶段降低视频图像的采集分辨率。\n[0109] 应用本发明实施例所提供的装置,进行视频通话的第一终端,通过对比自身的数据处理能力及第二终端的数据处理能力,可以得到二者的数据处理能力的高低,根据对比结果,可以确定自身在视频通话阶段是否执行旋转视频图像的任务,即确定自身在视频通话阶段是否执行旋转自身采集到的视频图像的任务,及确定自身在视频通话阶段是否执行旋转第二终端发送的视频图像的任务。这样,可以根据终端的数据处理能力分配旋转视频图像的任务,尽量将旋转视频图像的任务分配给数据处理能力高的终端,以减小数据处理能力低的终端的数据处理压力,使得在视频通话过程中,各终端可以进行较为流畅的视频通话,提升用户的视频通话体验。\n[0110] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。\n[0111] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。\n[0112] 本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。\n[0113] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
法律信息
- 2018-09-28
- 2017-03-15
专利申请权的转移
登记生效日: 2017.02.20
申请人由北京奇艺世纪科技有限公司变更为上海众源网络有限公司
地址由100080 北京市海淀区北一街2号鸿城拓展大厦10、11层变更为201103 上海市徐汇区乐山路33号3幢701室
- 2015-12-02
实质审查的生效
IPC(主分类): H04N 7/14
专利申请号: 201510372343.5
申请日: 2015.06.30
- 2015-11-04
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-10-09
|
2013-07-11
| | |
2
| |
2012-09-26
|
2012-05-30
| | |
3
| |
2003-07-30
|
2003-01-09
| | |
4
| |
2013-05-22
|
2012-11-16
| | |
5
| |
2014-10-08
|
2013-01-29
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |