一种编解码参数配置方法与流程

文档序号:17148985发布日期:2019-03-19 23:14阅读:234来源:国知局
一种编解码参数配置方法与流程
本发明涉及编解码技术,具体涉及一种编解码参数配置方法。
背景技术
:近年来,随着带宽的提高以及移动互联网的发展,以视频为载体的多媒体应用越来越丰富。移动终端呈现多样化、碎片化的分布,性能和参数各异,且随着版本的更新,新旧版本参数也不尽相同。为了适配不同终端达到最佳视频体验,如何根据实际需求和使用场景合理、灵活地配置视频codec的编、解码参数成为技术人员要解决的首要问题。已公开的视频能力交换方案主要使用基于sip的sdp请示/回答会话机制,会话双方来回应答协商出都支持的codec及参数,sdp会话协商机制需要多次来回协商参数,耗时较长,且受网络状态影响较大。技术实现要素:为解决现有存在的技术问题,本发明实施例提供一种编解码参数配置方法。为达到上述目的,本发明实施例的技术方案是这样实现的:一种编解码参数配置方法,所述方法包括:接收第一用户设备集群的编解码性能参数以及所述第一用户设备集群的设备属性;基于所述第一用户设备集群中每个用户设备的编解码性能参数及所述设备属性执行设备参数综合协商处理,以确定满足所述每个用户设备的协商配置参数,其中所述设备参数综合协商处理包括:基于所述第一用户设备集群中每个用户设备的编解码性能参数确定满足所述每个用户设备的编解码能力且与所述设备属性相对应的第一组编解码性能参数,基于所述第一组编解码性能参数和预设编解码性能参数确定第二组编解码性能参数,在所述第二组编解码性能参数中选择满足压缩效率的编解码性能参数,基于所述编解码性能参数生成协商配置参数;发送所述协商配置参数至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行编解码能力配置。优选地,所述编解码性能参数还包括与所述编解码性能参数相关联的硬件加速参数;所述预设编解码性能参数还包括与所述预设编解码性能参数相关联的预设硬件加速参数;所述基于所述第一组编解码性能参数和预设编解码性能参数确定第二组编解码性能参数之后,所述方法还包括:基于所述第一用户设备集群中每个用户设备的硬件加速参数和预设硬件加速参数确定支持硬件加速能力的第三组编解码性能参数;基于所述第二组编解码性能参数和所述第三组编解码性能参数确定第四组编解码性能参数;在所述第四组编解码性能参数中选择满足预设条件的编解码性能参数,基于所述编解码性能参数生成协商配置参数。优选地,所述编解码性能参数还包括:表征相应用户设备的编解码能力的第一参数;所述基于所述编解码性能参数生成协商配置参数之前,所述方法还包括:确定所述每个用户设备的第一参数的最低值,确定所述最低值对应的最大编解码性能参数;所述基于所述编解码性能参数生成协商配置参数,包括:基于所述编解码性能参数和所述最大编解码性能参数生成协商配置参数。本发明实施例提供的编解码参数配置方法。所述方法包括:获得第一用户设备集群上报的编解码性能参数;确定所述第一用户设备集群的设备属性;基于所述第一用户设备集群中每个用户设备的编解码性能参数和所述设备属性确定满足所述每个用户设备的协商配置参数;发送所述协商配置参数至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行配置。采用本发明实施例的技术方案,通过编解码能力配置设备(例如服务器)与用户设备之间的一次数据交互,使服务器选择合适的编解码能力数据下发至用户设备,减少了视频编解码能力的协商次数,缩短了协商时长。附图说明图1为本发明实施例的编解码参数配置方法的应用架构示意图。具体实施方式下面结合附图及具体实施例对本发明作进一步详细的说明。图1为本发明实施例的编解码参数配置方法的应用架构示意图;图1为本发明实施例中进行信息交互的各方硬件实体的示意图,图1中包括:服务器和用户设备,用户设备可通过有线网络或者无线网络与服务器进行信息交互。所述用户设备包括手机、台式电脑、笔记本电脑、一体电脑机等类型。作为一种实施方式,服务器中包括第一类服务器,所述第一类服务器可称为数据服务器,所述数据服务器用于向用户设备传输视频数据;其中,用户设备中可运行多种视频类应用;所述应用可用于发送视频数据和/或接收视频数据;则所述第一类服务器可以是用户设备中运行的视频类应用所属的数据服务器;连接归属于同一视频类应用所属的第一类服务器的用户设备,具有关联关系的至少两个用户设备划分为同一组用户设备;例如,用户设备1和用户设备2进行一对一的视频通话,则用户设备1和用户设备2组成一组用户设备。所述服务器中还包括第二类服务器,所述第二类服务器可作为本实施例中的编解码能力配置设备,用于与用户设备进行信息交互,获得所述用户设备发送的编解码能力数据,基于获得的编解码能力数据进行编解码参数协商,确定每一组用户设备中每个用户设备均支持的编解码能力数据并下发至相应组用户设备的每个用户设备中,以进行编解码配置参数的配置。本发明实施例提供的编解码参数配置方法包括:步骤101:获得第一用户设备集群上报的编解码性能参数。步骤102:确定所述第一用户设备集群的设备属性。步骤103:基于所述第一用户设备集群中每个用户设备的编解码性能参数和所述设备属性确定满足所述每个用户设备的协商配置参数。步骤104:发送所述协商配置参数至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行配置。其中所述设备参数综合协商处理包括:基于所述第一用户设备集群中每个用户设备的编解码性能参数确定满足所述每个用户设备的编解码能力且与所述设备属性相对应的第一组编解码性能参数,基于所述第一组编解码性能参数和预设编解码性能参数确定第二组编解码性能参数,在所述第二组编解码性能参数中选择满足压缩效率的编解码性能参数,基于所述编解码性能参数生成协商配置参数。本实施例中,所述编解码参数配置方法应用于编解码能力配置设备中;所述编解码能力配置设备用于对用户设备的编码方式和/或解码方式进行选择和配置,具体是处于同一组的用户设备编码方式和/或解码方式进行协商后配置。作为一种示例,所述编解码能力配置设备具体可通过用于编解码参数配置的服务器实现,在以下各实施例中均以服务器作为执行主体进行说明。本实施例中,服务器获得第一用户设备集群上报的编解码性能参数。其中,作为一种示例,所述第一用户设备集群可包括至少两个用户设备,所述至少两个用户设备具有关联关系;例如,所述至少两个用户设备属于同一群组。作为另一种示例,所述第一用户设备集群可也仅包括一个用户设备,所述服务器对所述用户设备的编解码能力数据进行配置。本实施例中,服务器获得所述第一用户设备集群的设备属性;所述设备属性包括仅需要视频编码的设备属性、或者仅需要视频解码的设备属性、或者需要视频编码和解码的设备属性。作为一种示例,在处于视频监控的应用场景时,所述设备属性即为视频编码的设备属性;在处于视频点播的应用场景时,所述设备属性即为视频解码的设备属性;在处于直播(直播可以理解为基于直播平台、采用音频和/或视频技术的多用户互动社交方式)的应用场景时,所述设备属性可以为多媒体数据的编码和解码的设备属性,所述多媒体数据可包括视频数据和/或音频数据;在处于网络电话的应用场景中,所述设备属性需要同时编码和解码,特别的,对于多人视频通话,还需要多路同时解码。其中,处于同一组的用户设备所具有的设备属性相同。本实施例中,服务器基于所述第一用户设备集群中每个用户设备的编解码性能参数和所述设备属性确定满足所述每个用户设备的协商配置参数,所述第二编解码能力为满足所述设备属性、且所述第一用户设备集群中每个用户设备均支持的编解码能力。具体的,服务器在接收到第一用户设备集群中的第一个用户设备上报的编解码性能参数后,创建一特定空间,待接收到所述第一用户设备集群中的所有用户设备上报的编解码性能参数后,结合所述第一用户设备集群的设备属性进行编解码能力数据的协商。在实际应用中,服务器获得的编解码能力数据中可包括组标识,基于所述组标识可确定获得的编解码能力数据是否属于同一组用户设备的编解码能力数据。所述服务器获得的编解码能力数据中还可包括组中的用户设备数量,以基于所述组中的用户设备数量可确定是否已接收到组中的所有用户设备上报的编解码能力数据。本实施例中,服务器基于设备属性选择与所述设备属性相关的、且满足所述第一用户设备集群中每个用户设备的能力的协商配置参数。具体的,若设备属性仅仅为视频编码的设备属性,则所述服务器选择与视频编码类型相关的、且满足所述第一用户设备集群中每个用户设备的编码能力的协商配置参数;若设备属性仅仅为视频解码的设备属性,则所述服务器选择与视频解码类型相关的、且满足所述第一用户设备集群中每个用户设备的解码能力的协商配置参数;若设备属性为视频编码和解码的设备属性,则所述服务器选择与视频编码和视频解码类型相关的、且满足所述第一用户设备集群中每个用户设备的编码能力和解码能力的协商配置参数。作为一种实施方式,所述基于所述第一用户设备集群中每个用户设备的编解码性能参数和所述设备属性确定满足所述每个用户设备的协商配置参数,包括:基于所述第一用户设备集群中每个用户设备的编解码性能参数以及预设编解码性能参数确定满足所述每个用户设备、且满足所述设备属性的协商配置参数;其中,所述预设编解码性能参数为预先配置的、对应类型的用户设备支持的编解码性能参数。具体的,服务器中可预先配置预设编解码性能参数,所述预设编解码性能参数为常用型号的用户设备支持的、且支持较佳的编解码性能参数。某些编解码能力是用户设备支持的,但效率较低或者容易出错,在用户设备上报的编解码能力数据中表示支持该编解码能力,但在所述预设编解码性能参数中表示不支持该编解码能力。基于此,本实施例中,所述服务器基于用户设备上报的编解码性能参数以及预设编解码性能参数确定每个用户设备所支持的、且符合所述设备属性的协商配置参数。其中,所述预设编解码性能参数可依据长期的运营自动配置,也可以通过操作人员进行人为配置。进一步地,满足所述设备属性、且满足所述第一用户设备集群中每个用户设备的编解码能力数据可能不止一个,则所述服务器选择满足预设条件的编解码能力数据作为所述协商配置参数。所述预设条件具体可以是使用户设备的特定性能达到最优的条件。作为一种示例,所述服务器可选择压缩效率最高的编解码能力数据作为协商配置参数,大大节省了带宽需求。本实施例中,所述服务器将协商确定的协商配置参数发送至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行编解码参数的配置。采用本发明实施例的技术方案,一方面,通过编解码能力配置设备(例如服务器)与用户设备之间的一次数据交互,使服务器选择合适的编解码能力数据下发至用户设备,减少了视频编解码能力的协商次数,缩短了协商时长。另一方面,通过服务器中存储的预设编解码性能参数,实现了服务器支持后续对编解码能力的灵活控制。又一方面,通过选择满足预设条件的编解码能力数据,例如选择压缩效率最高的编解码能力数据,大大节省了带宽。下面结合具体的协商机制对本发明实施例的编解码参数配置方法进行详细说明,包括:步骤201:获得第一用户设备集群上报的编解码性能参数。所述编解码性能参数包括编解码性能参数。步骤202:确定所述第一用户设备集群的设备属性。步骤203:基于所述第一用户设备集群中每个用户设备的编解码性能参数确定满足所述每个用户设备的编解码能力、且满足所述设备属性的第一组编解码性能参数。步骤204:基于所述第一组编解码性能参数和预设编解码性能参数确定第二组编解码性能参数。步骤205:在所述第二组编解码性能参数中选择满足预设条件的编解码性能参数,基于所述编解码性能参数生成协商配置参数。步骤206:发送所述协商配置参数至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行配置。本实施例中,服务器获得第一用户设备集群上报的编解码性能参数。其中,作为一种示例,所述第一用户设备集群可包括至少两个用户设备,所述至少两个用户设备具有关联关系;例如,所述至少两个用户设备属于同一群组。作为另一种示例,所述第一用户设备集群可也仅包括一个用户设备,所述服务器对所述用户设备的编解码能力数据进行配置。本实施例中,服务器获得所述第一用户设备集群的设备属性;所述设备属性包括仅需要视频编码的设备属性、或者仅需要视频解码的设备属性、或者需要视频编码和解码的设备属性。作为一种示例,在处于视频监控的应用场景时,所述设备属性即为视频编码的设备属性;在处于视频点播的应用场景时,所述设备属性即为视频解码的设备属性;在处于直播(直播可以理解为基于直播平台、采用音频和/或视频技术的多用户互动社交方式)的应用场景时,所述设备属性可以为多媒体数据的编码和解码的设备属性,所述多媒体数据可包括视频数据和/或音频数据;在处于voip的应用场景中,所述设备属性可以为多媒体数据编码和解码的设备属性,特别的,对于多人视频通话,还需要多路数据同时解码。其中,处于同一组的用户设备所具有的设备属性相同。本实施例中,服务器基于所述第一用户设备集群中每个用户设备的编解码性能参数确定满足所述每个用户设备的编解码能力、且满足所述设备属性的第一组编解码性能参数。具体的,服务器在接收到第一用户设备集群中的第一个用户设备上报的编解码性能参数后,创建一特定空间,待接收到所述第一用户设备集群中的所有用户设备上报的编解码性能参数后,结合所述第一用户设备集群的设备属性进行编解码能力数据的协商。在实际应用中,服务器获得的编解码能力数据中可包括组标识,基于所述组标识可确定获得的编解码能力数据是否属于同一组用户设备的编解码能力数据。所述服务器获得的编解码能力数据中还可包括组中的用户设备数量,以基于所述组中的用户设备数量可确定是否已接收到组中的所有用户设备上报的编解码能力数据。本实施例中,所述编解码性能参数包括编解码性能参数,作为一种示例,每个用户设备可通过一个32比特(bit)的字段描述所述编解码性能参数,也即可通过32bit的字段描述对应用户设备支持的编解码能力。具体可参照如下表1所示,若支持某编解码能力,则对应的字段置为1;相应的,若不支持某编解码能力,则对应的字段置为0。表10123……31h.264vp8hevcvp9……codecx作为另一种实施方式,所述编解码性能参数中还可以包括硬件信息和软件信息等等;其中,所述硬件信息例如中央处理器(cpu)信息(例如cpu主频、cpu核数等等)、硬件编解码器等;所述软件信息例如承载视频数据的应用的版本信息等等。本实施例中,服务器获得所述第一用户设备集群中所有用户设备的编解码性能参数(具体是所述编解码性能参数中的编解码性能参数)后,提取所述编解码性能参数中满足所述设备属性的编码和/或解码能力参数记为listc,具体的,若设备属性仅仅为视频编码的设备属性,则所述服务器选择与视频编码类型相关的、且满足所述第一用户设备集群中每个用户设备的编码能力的协商配置参数;若设备属性仅仅为视频解码的设备属性,则所述服务器选择与视频解码类型相关的、且满足所述第一用户设备集群中每个用户设备的解码能力的协商配置参数;若设备属性为视频编码和解码的设备属性,则所述服务器选择与视频编码和视频解码类型相关的、且满足所述第一用户设备集群中每个用户设备的编码能力和解码能力的协商配置参数。则所述第一组编解码性能参数codeclist1满足:codeclist1=listc(1)&listc(2)&……listc(n);其中,n表示所述第一用户设备集群中包括的用户设备数量;“&”表示逻辑与运算。本实施例中,所述服务器中预先配置有对应于用户设备类型的预设编解码性能参数,所述预设编解码性能参数为常用型号的用户设备支持的、且支持较佳的编解码性能参数。某些编解码能力是用户设备支持的,但效率较低或者容易出错,在用户设备上报的编解码能力数据中表示支持该编解码能力,但在所述预设编解码性能参数(具体是所述预设编解码性能参数)中表示不支持该编解码能力。某用户设备对应的预设编解码性能参数可记为lists;则所述第二组编解码性能参数codeclist2满足:codeclist2=(listc(1)&lists(1))&(listc(2)&lists(2))&……(listc(n)&lists(n))。本实施例中,所述第二组编解码性能参数中所包含的编解码性能参数可能不止一个,也就是说,满足设备属性、且满足所述第一用户设备集群中每个用户设备支持的编解码能力、并且满足服务器中存储的与相应用户设备类型相关联的预设编解码性能参数的编解码性能参数可能不止一个,则所述服务器选择满足预设条件的编解码能力数据作为所述协商配置参数。所述预设条件具体可以是使用户设备的特定性能达到最优的条件。作为一种示例,所述服务器可选择压缩效率最高的编解码能力数据作为协商配置参数。例如,若所述第二组编解码性能参数中包括h.264和高效视频编码(hevc,highefficiencyvideocoding)两种编解码性能参数,则可选择hevc作为所述协商配置参数。本实施例中,所述服务器将协商确定的协商配置参数发送至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行编解码参数的配置。采用本发明实施例的技术方案,第一方面,通过编解码能力配置设备(例如服务器)与用户设备之间的一次数据交互,使服务器选择合适的编解码能力数据下发至用户设备,减少了视频编解码能力的协商次数,缩短了协商时长。第二方面,通过服务器中存储的预设编解码性能参数,实现了服务器支持后续对编解码能力的灵活控制。第三方面,通过选择满足预设条件的编解码能力数据,例如选择压缩效率最高的编解码能力数据,大大节省了带宽。本发明实施例还提供了一种编解码参数配置方法。本发明实施例的编解码参数配置方法包括:步骤301:获得第一用户设备集群上报的编解码性能参数。所述编解码性能参数包括:编解码性能参数和与所述编解码性能参数相关联的硬件加速参数。步骤302:确定所述第一用户设备集群的设备属性。步骤303:基于所述第一用户设备集群中每个用户设备的编解码性能参数确定满足所述每个用户设备的编解码能力、且满足所述设备属性的第一组编解码性能参数。步骤304:基于所述第一组编解码性能参数和预设编解码性能参数确定第二组编解码性能参数。步骤305:基于所述第一用户设备集群中每个用户设备的硬件加速参数和预设硬件加速参数确定支持硬件加速能力的第三组编解码性能参数。步骤306:基于所述第二组编解码性能参数和所述第三组编解码性能参数确定第四组编解码性能参数。步骤307:在所述第四组编解码性能参数中选择满足预设条件的编解码性能参数,基于所述编解码性能参数生成协商配置参数。步骤308:发送所述协商配置参数至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行配置。本实施例中,服务器获得第一用户设备集群上报的编解码性能参数。其中,作为一种示例,所述第一用户设备集群可包括至少两个用户设备,所述至少两个用户设备具有关联关系;例如,所述至少两个用户设备属于同一群组。作为另一种示例,所述第一用户设备集群可也仅包括一个用户设备,所述服务器对所述用户设备的编解码能力数据进行配置。本实施例中,服务器获得所述第一用户设备集群的设备属性;所述设备属性包括仅需要视频编码的设备属性、或者仅需要视频解码的设备属性、或者需要视频编码和解码的设备属性。作为一种示例,在处于视频监控的应用场景时,所述设备属性即为视频编码的设备属性;在处于视频点播的应用场景时,所述设备属性即为视频解码的设备属性;在处于直播(直播可以理解为基于直播平台、采用音频和/或视频技术的多用户互动社交方式)的应用场景时,所述设备属性可以为多媒体数据的编码和解码的设备属性,所述多媒体数据可包括视频数据和/或音频数据;在处于voip的应用场景中,所述设备属性可以为多媒体数据编码和解码的设备属性,特别的,对于多人视频通话,还需要多路数据同时解码。其中,处于同一组的用户设备所具有的设备属性相同。本实施例中,服务器基于所述第一用户设备集群中每个用户设备的编解码性能参数确定满足所述每个用户设备的编解码能力、且满足所述设备属性的第一组编解码性能参数。具体的,服务器在接收到第一用户设备集群中的第一个用户设备上报的编解码性能参数后,创建一特定空间,待接收到所述第一用户设备集群中的所有用户设备上报的编解码性能参数后,结合所述第一用户设备集群的设备属性进行编解码能力数据的协商。在实际应用中,服务器获得的编解码能力数据中可包括组标识,基于所述组标识可确定获得的编解码能力数据是否属于同一组用户设备的编解码能力数据。所述服务器获得的编解码能力数据中还可包括组中的用户设备数量,以基于所述组中的用户设备数量可确定是否已接收到组中的所有用户设备上报的编解码能力数据。本实施例中,所述编解码性能参数包括编解码性能参数,作为一种示例,每个用户设备可通过一个32比特(bit)的字段描述所述编解码性能参数,也即可通过32bit的字段描述对应用户设备支持的编解码能力。具体可参照如下表1所示,若支持某编解码能力,则对应的字段置为1;相应的,若不支持某编解码能力,则对应的字段置为0。作为另一种实施方式,所述编解码性能参数中还可以包括硬件信息和软件信息等等;其中,所述硬件信息例如中央处理器(cpu)信息(例如cpu主频、cpu核数等等)、硬件编解码器等;所述软件信息例如承载视频数据的应用的版本信息等等。本实施例中,服务器获得所述第一用户设备集群中所有用户设备的编解码性能参数(具体是所述编解码性能参数中的编解码性能参数)后,提取所述编解码性能参数中满足所述设备属性的编码和/或解码能力参数记为listc,具体的,若设备属性仅仅为视频编码的设备属性,则所述服务器选择与视频编码类型相关的、且满足所述第一用户设备集群中每个用户设备的编码能力的协商配置参数;若设备属性仅仅为视频解码的设备属性,则所述服务器选择与视频解码类型相关的、且满足所述第一用户设备集群中每个用户设备的解码能力的协商配置参数;若设备属性为视频编码和解码的设备属性,则所述服务器选择与视频编码和视频解码类型相关的、且满足所述第一用户设备集群中每个用户设备的编码能力和解码能力的协商配置参数。则所述第一组编解码性能参数codeclist1满足:codeclist1=listc(1)&listc(2)&……listc(n);其中,n表示所述第一用户设备集群中包括的用户设备数量;“&”表示逻辑与运算。本实施例中,所述服务器中预先配置有对应于用户设备类型的预设编解码性能参数,所述预设编解码性能参数为常用型号的用户设备支持的、且支持较佳的编解码性能参数。某些编解码能力是用户设备支持的,但效率较低或者容易出错,在用户设备上报的编解码能力数据中表示支持该编解码能力,但在所述预设编解码性能参数(具体是所述预设编解码性能参数)中表示不支持该编解码能力。某用户设备对应的预设编解码性能参数可记为lists;则所述第二组编解码性能参数codeclist2满足:codeclist2=(listc(1)&lists(1))&(listc(2)&lists(2))&……(listc(n)&lists(n))。本实施例中,所述编解码性能参数还包括与所述编解码性能参数相关联的硬件加速参数,可以理解为,所述硬件加速参数表征相应的编解码性能参数是否支持硬件加速能力。具体可参照前述实施例中的表1所示,对于该32bit的字段中每个字段位表示的编解码性能参数均对应有硬件加速参数的标识,例如,若某编解码性能参数具有硬件加速能力,则对应的字段置为1;相应的,若某编解码性能参数不具有硬件加速能力,则对应的字段置为0。另一方面,所述服务器中存储有预设硬件加速参数,所述预设硬件加速参数表征常用编解码能力是否支撑硬件加速。则本实施例中,所述第三组编解码性能参数codeclist3满足:codeclist3=hwc(i)&hws(i);其中,hwc(i)表示用户设备i上报的与所述编解码性能参数相关联的硬件加速参数;hws(i)表示服务器中预置的与所述用户设备的类型相匹配的、且与编解码性能参数相关联的硬件加速参数;其中,hwc(i)和hws(i)中可定义有与表1中编解码性能参数相同的顺序的字段位,每个字段位中的“1”或“0”表示相应的编解码性能参数是否支持硬件加速能力;若相应用户设备不支持硬件加速能力,则每个字段位均可置为“0”。在实际应用中,所述编解码性能参数可通过例如表1的编解码能力列表表示;所述硬件加速参数可通过与表1定义的编解码参数顺序相同的硬件加速列表表示。进一步地,基于所述第二组编解码性能参数和所述第三组编解码性能参数确定第四组编解码性能参数;所述第四组编解码性能参数codeclist4满足:codeclist4=codeclist3&codeclist2;codeclist3=hwc(i)&hws(i);codeclist2=(listc(1)&lists(1))&(listc(2)&lists(2))&……(listc(n)&lists(n))。本实施例中,所述第四组编解码性能参数中所包含的编解码性能参数可能不止一个,则所述服务器选择所述第四组编解码性能参数中满足预设条件的编解码能力数据作为所述协商配置参数。所述预设条件具体可以是使用户设备的特定性能达到最优的条件。作为一种示例,所述服务器可选择压缩效率最高的编解码能力数据作为协商配置参数。例如,若所述第四组编解码性能参数中包括h.264和hevc两种编解码性能参数,则可选择hevc作为所述协商配置参数。本实施例中,所述服务器将协商确定的协商配置参数发送至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行编解码参数的配置。采用本发明实施例的技术方案,第一方面,通过编解码能力配置设备(例如服务器)与用户设备之间的一次数据交互,使服务器选择合适的编解码能力数据下发至用户设备,减少了视频编解码能力的协商次数,缩短了协商时长。第二方面,通过服务器中存储的预设编解码性能参数,实现了服务器支持后续对编解码能力的灵活控制。第三方面,通过硬件加速能力进行视频编解码处理,大大提升了视频编解码性能,降低了用户设备的cpu功耗。第四方面,通过选择满足预设条件的编解码能力数据,例如选择压缩效率最高的编解码能力数据,大大节省了带宽。本发明实施例还提供了一种编解码参数配置方法。本发明实施例的编解码参数配置方法包括:步骤401:获得第一用户设备集群上报的编解码性能参数。所述编解码性能参数包括:编解码性能参数、与所述编解码性能参数相关联的硬件加速参数和表征相应用户设备的编解码能力的第一参数。步骤402:确定所述第一用户设备集群的设备属性。步骤403:基于所述第一用户设备集群中每个用户设备的编解码性能参数确定满足所述每个用户设备的编解码能力、且满足所述设备属性的第一组编解码性能参数。步骤404:基于所述第一组编解码性能参数和预设编解码性能参数确定第二组编解码性能参数。步骤405:基于所述第一用户设备集群中每个用户设备的硬件加速参数和预设硬件加速参数确定支持硬件加速能力的第三组编解码性能参数。步骤406:基于所述第二组编解码性能参数和所述第三组编解码性能参数确定第四组编解码性能参数。步骤407:确定所述每个用户设备的第一参数的最低值,确定所述最低值对应的最大编解码性能参数。步骤408:在所述第四组编解码性能参数中选择满足预设条件的编解码性能参数,基于所述编解码性能参数和所述最大编解码性能参数生成协商配置参数。步骤409:发送所述协商配置参数至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行配置。区别于前一实施例,本实施例中,所述编解码性能参数还包括:表征相应用户设备的编解码能力的第一参数,所述第一参数可基于用户设备自身的硬件参数以及软件类型对所述用户设备自身的编解码能力进行评分,所述第一参数可区分用户设备之间的编解码性能差异。具体的,用户设备可通过以下参数的至少之一进行评分:cpu主频、cpu核数、加速指令集、硬件加速能力等。作为一种示例,所述第一参数的取值可在(0,100]之间,数值越大可表明编解码的能力越强;数值越小可表明编解码的能力越弱。则本实施例中,服务器基于用户设备上报的第一参数对所述第一用户设备集群中每个用户设备的编解码性能参数进行配置;所述编解码性能参数可包括以下参数的至少之一:最高码率、最高帧率、最高i帧间隔、最大冗余率、最大分辨率、最大画面每秒传输帧数(fps)等等。作为一种实施方式,为了兼顾所述第一用户设备集群中每个用户设备对应用户的体验,所述服务器基于获得的所述第一用户设备集群中每个用户设备的第一参数、确定所述每个用户设备对应的第一参数中的最低值(也即最小值),可通过预先配置的映射表查找所述最低值对应的最大编解性能参数,例如表2所示。所述映射表中对应于每个第一参数区间的最大编解码性能参数可通过服务质量(qos,qualityofservice)控制算法根据实时网络状态确定。表2进一步地,所述第四组编解码性能参数中所包含的编解码性能参数可能不止一个,则所述服务器选择所述第四组编解码性能参数中满足预设条件的编解码能力数据,将所述满足预设条件的编解码能力数据和所述最大编解码性能参数作为所述协商配置参数。所述预设条件具体可以是使用户设备的特定性能达到最优的条件。作为一种示例,所述服务器可选择压缩效率最高的编解码能力数据作为最终协商确定的编解码性能参数。例如,若所述第四组编解码性能参数中包括h.264和hevc两种编解码性能参数,则可选择hevc作为最终协商确定的编解码性能参数。本实施例中,所述服务器将协商确定的协商配置参数发送至所述第一用户设备集群中的每个用户设备,以使所述每个用户设备基于所述协商配置参数进行编解码参数的配置。采用本发明实施例的技术方案,第一方面,通过编解码能力配置设备(例如服务器)与用户设备之间的一次数据交互,使服务器选择合适的编解码能力数据下发至用户设备,减少了视频编解码能力的协商次数,缩短了协商时长。第二方面,通过服务器中存储的预设编解码性能参数,实现了服务器支持后续对编解码能力的灵活控制。第三方面,通过硬件加速能力进行视频编解码处理,大大提升了视频编解码性能,降低了用户设备的cpu功耗。第四方面,通过选择满足预设条件的编解码能力数据,例如选择压缩效率最高的编解码能力数据,大大节省了带宽。本发明实施例的编解码参数配置方法可应用于多种应用场景,包括但不限于视频监控、视频点播、直播、voip等多种应用场景。假设当前处于voip通话的应用场景,用户设备1和用户设备2在建立通话之前,也可以理解为用户设备1和用户设备2在传输多媒体数据(例如视频数据)之前,用户设备1和用户设备2分别将各自的编解码能力数据(这里的编解码能力数据可作为前述编解码性能参数)发送至服务器;所述编解码能力数据可包括用户设备支持的编解码性能参数(具体可采用前述32bit的字段表示)、硬件信息、软件信息、设备属性、与编解码性能参数相关联的硬件加速参数和表征编解码能力的第一参数(也即编解码能力的评分值)等等。服务器基于接收到的归属于同一组的用户设备1和用户设备2的编解码能力数据进行综合评估决策,最终选择包含有协商配置参数的配置参数下发至用户设备1和用户设备2,以使用户设备1和用户设备2基于下发的配置参数进行设置。如此,采用本发明实施例的编解码参数配置方法,通过服务器与用户设备之间的一次交互,使服务器选择合适的编解码能力数据下发至用户设备,减少了视频编解码能力的协商次数,缩短了协商时长相比于发明的编解码参数配置方法,现有技术中的协商机制,用户设备之间的视频编解码能力的协商主要采用基于会话初始化(sip,sessioninitiationprotocol)的会话描述协议(sdp,sessiondescriptionprotocol)请示/回答会话机制,会话双方(也可以是多方)来回应答协商出均支持的编解码参数。会话形式可如下所示:m=video49170rtp/avp98;a=rtpmap:98h264/90000;a=fmtp:98profile-level-id=42a01e;packetization-mode=1;sprop-parameter-sets=z0iacpztbymi,amljia。其中,m=video表明在对视频进行配置,49170表示端口号,rtp表示协议,98表示codec代号,上述第二个至第四个表达式则具体解释了视频编解码器(codec)的相关配置,如使用了h.264编码方式,level信息及序列参数集/图像参数集(sps/pps)等等。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1