码率切换的方法和装置与流程

文档序号:22554776发布日期:2020-10-17 02:35阅读:146来源:国知局
码率切换的方法和装置与流程
本申请涉及通讯
技术领域
,具体涉及一种码率切换的方法和装置。
背景技术
:现在,人们可以方便的在自己的手机或电脑上观看各种各样的直播节目(如体育赛事),以达到日常娱乐的目的。但是,有时候发布的直播节目对终端的解码性能要求可能过高,或者,终端因终端状态的不同而导致终端的解码能力有较大的变化,导致人们在观看直播节目时出现卡顿或清晰度低的现象,使得用户的观看体验极差。相关技术中采用的方案是,编码多个不同码率档次的直播节目,并且发布多个直播链接(如标清、高清等),由用户根据自己终端的解码能力选择合适的链接进行播放。在实现本申请的过程中,发明人发现相关技术至少存在以下问题:相关技术中的方案要求用户具有足够的专业知识,当用户选择链接错误时,用户不能获得良好的观看体验,同时,还要求用户手工选择确认,用户操作起来较麻烦。技术实现要素:为了解决相关技术中存在的技术问题,本申请实施例提供了一种码率切换的方法和装置。所述码率切换的方法和装置的技术方案如下:第一方面,提供了一种码率切换的方法,所述方法包括:基于检测的处理器在至少一个历史时刻的负载信息,预测所述处理器在目标时刻的负载信息;分别确定各负载信息对应的最大码率,其中,所述各负载信息包括所述至少一个历史时刻的负载信息和预测的负载信息;基于确定出的各最大码率,确定预设的每个待选择的码率对应的溢出概率,其中,所述溢出概率是在所述目标时刻待选择的码率大于预测的负载信息对应的最大码率的概率;基于所述每个待选择的码率对应的溢出概率,在待选择的码率中,选择在所述目标时刻使用的目标码率。可选的,所述基于检测的处理器在至少一个历史时刻的负载信息,预测所述处理器在目标时刻的负载信息,包括:基于检测的处理器在至少一个历史时刻的负载信息,以及之前预测的所述处理器在所述至少一个历史时刻的负载信息,预测所述处理器在目标时刻的负载信息。可选的,所述基于检测的处理器在至少一个历史时刻的负载信息,以及之前预测的所述处理器在所述至少一个历史时刻的负载信息,预测所述处理器在目标时刻的负载信息,包括:根据公式预测所述处理器在目标时刻的负载信息,其中,rt表示预测的所述处理器在目标时刻的负载信息,c表示预设的预测稳定性常量,εt表示随机误差常量,rt-i表示之前预测的所述处理器在t-i时刻的负载信息,εt-j表示预测的所述处理器在t-j时刻的负载信息与检测的所述处理器在t-j时刻的负载信息的误差值,ρi表示预设的加权系数,θj表示预设的加权系数。可选的,所述分别确定各负载信息对应的最大码率,包括:根据公式rmax(r)=ar+b,分别确定各负载信息对应的最大码率,其中,r表示负载信息,a和b均为预设常量,rmax(r)表示负载信息r对应的最大码率。可选的,所述基于确定出的各最大码率,确定预设的每个待选择的码率对应的溢出概率,包括:基于确定出的各最大码率,确定所述各最大码率的均值和方差;根据公式确定预设的每个待选择的码率对应的溢出概率,其中,risku[s]表示待选择的码率rs对应的溢出概率,rt表示预设的所述处理器在所述目标时刻的负载信息,rmax(rt)表示负载信息rt对应的最大码率,rs表示待选择的码率,pr{rmax(r)<rs}表示rmax(r)<rs的概率,示所述各最大码率的均值,var表示所述各最大码率的方差,φ(·)表示正态分布的累积分布函数。可选的,所述基于所述每个待选择的码率对应的溢出概率,在待选择的码率中,选择在所述目标时刻使用的目标码率,包括:根据预先存储的码率和质量收益值的对应关系,确定每个待选择的码率对应的质量收益值;分别确定每个待选择的码率与当前使用的码率的差值;根据预先存储的差值和切换损失值的对应关系,以及每个待选择的码率对应的差值,确定每个待选择的码率对应的切换损失值;基于所述每个待选择的码率对应的溢出概率、质量收益值和切换损失值,以及预设的溢出损失值,在待选择的码率中,选择在所述目标时刻使用的目标码率。可选的,所述基于所述每个待选择的码率对应的溢出概率、溢出损失值、质量收益值和切换损失值,在待选择的码率中,选择在所述目标时刻使用的目标码率,包括:根据公式gain[n]m=qn-risku[n]×costu-costn,选择综合收益最高的待选择的码率,作为在所述目标时刻使用的目标码率,其中,gain[n]m为由当前使用的码率m切换到待使用的码率n的综合收益,qn为码率n对应的质量收益值,risku[n]为码率n对应的溢出概率,costu为码率n对应的溢出损失值,costn为码率n对应的切换损失值。第二方面,提供了一种码率切换的装置,所述装置包括:预测模块,用于基于检测的处理器在至少一个历史时刻的负载信息,预测所述处理器在目标时刻的负载信息;对应模块,用于分别确定各负载信息对应的最大码率,其中,所述各负载信息包括所述至少一个历史时刻的负载信息和预测的负载信息;确定模块,用于基于确定出的各最大码率,确定预设的每个待选择的码率对应的溢出概率,其中,所述溢出概率是在所述目标时刻待选择的码率大于预测的负载信息对应的最大码率的概率;选择模块,用于基于所述每个待选择的码率对应的溢出概率,在待选择的码率中,选择在所述目标时刻使用的目标码率。可选的,所述预测模块,用于:基于检测的处理器在至少一个历史时刻的负载信息,以及之前预测的所述处理器在所述至少一个历史时刻的负载信息,预测所述处理器在目标时刻的负载信息。可选的,所述预测模块,用于:根据自回归滑动平均模型预测所述处理器在目标时刻的负载信息,其中,rt表示预测的所述处理器在目标时刻的负载信息;c表示预设的预测稳定性常量;εt表示预设的目标时刻的预测误差常量;rt-i表示预测的所述处理器在t-i时刻的负载信息;εt-j表示所述处理器在t-j时刻的负载信息的预测值与历史值的误差值;p表示参与计算的预测的负载信息的数量;q表示参与计算的εt-j的数量;ρi表示对rt-i的时间加权系数;θj表示对εt-j的时间加权系数。可选的,所述对应模块,用于:根据公式rmax(r)=ar+b,分别确定各负载信息对应的最大码率,其中,r表示负载信息,a和b均为预设常量,rmax(r)表示负载信息r对应的最大码率。可选的,所述确定模块,用于:基于确定出的各最大码率,确定所述各最大码率的均值和方差;根据公式确定预设的每个待选择的码率对应的溢出概率,其中,risku[s]表示待选择的码率rs对应的溢出概率,rt表示预设的所述处理器在所述目标时刻的负载信息,rmax(rt)表示负载信息rt对应的最大码率,rs表示待选择的码率,示所述各最大码率的均值,var表示所述各最大码率的方差,φ(·)表示正态分布的累积分布函数。可选的,所述选择模块,用于:根据预先存储的码率和质量收益值的对应关系,确定每个待选择的码率对应的质量收益值;分别确定每个待选择的码率与当前使用的码率的差值;根据预先存储的差值和切换损失值的对应关系,以及每个待选择的码率对应的差值,确定每个待选择的码率对应的切换损失值;基于所述每个待选择的码率对应的溢出概率、质量收益值和切换损失值,以及预设的溢出损失值,在待选择的码率中,选择在所述目标时刻使用的目标码率。可选的,所述选择模块,用于:根据公式gain[n]m=qn-risku[n]×costu-costn,选择综合收益最高的待选择的码率,作为在所述目标时刻使用的目标码率,其中,gain[n]m为由当前使用的码率m切换到待使用的码率n的综合收益,qn为码率n对应的质量收益值,risku[n]为码率n对应的溢出概率,costu为码率n对应的溢出损失值,costn为码率n对应的切换损失值。第三方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上述第一方面所述的码率切换的方法。第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上述第一方面所述的码率切换的方法。本申请实施例提供的技术方案带来的有益效果至少包括:本申请实施例提供的方法,可以应用在终端上。当终端用户观看直播节目时,终端基于处理器在至少一个历史时刻的负载信息,预测处理器在目标时刻的负载信息。然后确定各负载信息对应的最大码率,并基于各最大码率,确定预设的每个待选择的码率对应的溢出概率。最后,基于每个待选择的码率对应的溢出概率,选择在目标时刻使用的目标码率。通过上述方法,终端基于处理器的负载信息,自动确定目标时刻切换的码率,不需用户具有足够的专业知识,用户不用进行选择就可以获得良好的观看体验,并且不要求用户手工选择确认,也就不会存在用户操作起来较麻烦的问题。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的一种码率切换的方法的流程图;图2是本申请实施例提供的一种码率切换的装置的结构示意图;图3是本申请实施例提供的一种终端的结构框图;图4是本申请实施例提供的终端向服务器请求视频包的示意图;图5是本申请实施例提供的一种负载信息数据清理的示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。本申请实施例提供了一种码率切换的方法,该方法可以由计算机设备实现。其中,该计算机设备可以是手机、平板电脑和笔记本等移动终端,也可以是台式计算机等固定终端。本申请实施例提供的方法,可以应用在终端上。服务器中可以存储有多个不同码率的视频包,当终端用户观看视频节目时,终端可以基于处理器的负载信息,确定目标时刻使用的目标码率,然后,向服务器请求目标码率下的视频包(如图4所示),从而到达终端自动切换码率的目的,减少卡顿和马赛克等情况的出现,为用户提供一个良好的观看体验。如图1所示,该方法的处理流程可以包括如下的步骤:在步骤101中,基于检测的处理器在至少一个历史时刻的负载信息,预测处理器在目标时刻的负载信息。其中,负载信息可以包括cpu利用率、内存利用率和网络带宽利用率中的一种或多种。在实施中,预测的逻辑是过去的负载信息会对将来的负载信息产生一定的影响。可以通过/proc文件系统检测处理器的负载信息,并记录负载信息对应的历史时刻,也即负载信息的采集时间。为了使得预测更加精确,可以采集处理器在多个历史时刻的负载信息,并且可以以一个固定频率进行负载信息的采集,使得各个历史时刻(即采集时间)之间的时间间隔均相等,目标时刻与相邻的历史时刻的时间间隔,与各个历史时刻之间的时间间隔也相等。由于采集的负载信息有时会出现空值或错误值等异常情况,因此,为了使预测的结果更加精确,可以对采集的负载信息进行数据清洗,去除负载信息中的空值、过大值和过小值等异常数据,如图5所示。然后基于清洗后的负载信息,预测处理器在目标时刻的负载信息。可选的,为了使得预测的结果更加精确,步骤101相应的处理过程可以如下:基于检测的处理器在至少一个历史时刻的负载信息,以及之前预测的处理器在至少一个历史时刻的负载信息,预测处理器在目标时刻的负载信息。在实施中,将之前预测的处理器的负载信息,与对应的检测到的负载信息进行比较,从而不断修正预测的方法,提高预测的准确度。为了使得预测更加精确,可以采集处理器在多个历史时刻的负载信息,并且可以以一个固定频率进行负载信息的采集,使得各个历史时刻(即采集时间)之间的时间间隔均相等,目标时刻与相邻的历史时刻的时间间隔,与各个历史时刻之间的时间间隔也相等。可选的,可以通过自回归滑动平均模型对目标时刻的负载信息进行预测。则步骤101相应的处理过程可以如下所述:根据公式预测处理器在目标时刻的负载信息。其中,rt表示预测的处理器在目标时刻的负载信息,c表示预设的预测稳定性常量,εt表示随机误差量,rt-i表示之前预测的处理器在t-i时刻的负载信息,εt-j表示之前预测的处理器在t-j时刻的负载信息与检测的处理器在t-j时刻的负载信息的误差值,ρi表示预设的加权系数,θj表示预设的加权系数。公式为自回归滑动平均模型。rt可以是cpu利用率、内存利用率或网络带宽利用率中任一利用率的量化值。rt也可以是对cpu利用率、内存利用率和网络带宽利用率的综合量化值,例如,cpu利用率的量化值为30,内存利用率的量化值为20,网络带宽利用率的量化值为10,则负载信息rt=60。c表示预设的预测稳定性常量,可以根据实际经验自主设置。εt表示随机误差量,是一个以0为平均值,预设常数为方差的正态分布随机数,预设常数可以根据实际经验自主设置。p表示参与计算的预测的负载信息的数量。q表示参与计算的εt-j的数量。在实施中,自回归滑动平均模型运行开始前,首先给定初始r1与ε1,然后就可算出r2,然后基于r2与对应的检测得到的负载信息得出ε2,可选的,可以用之前检测得到的负载信息减去r2。然后继续重复上述步骤,模型即可运转起来。在步骤102中,分别确定各负载信息对应的最大码率。其中,各负载信息包括至少一个历史时刻的负载信息和预测的负载信息。负载信息对应的最大码率是指,计算机设备的处理器处于该负载信息的情况下,计算机设备可以解码并流畅播放的最大码率。在实施中,可以通过大量实验确定各负载信息对应的最大码率,然后,将这一对应关系以表格的形式存储下来,如表1所示,其中,第一列r1、r2和r3表示不同的负载信息;第二列r1、r2和r3表示不同负载信息对应的不同的最大码率。负载信息最大码率r1r1r2r2r3r3......表1因此,当确定各负载信息后,可以通过查表的方式分别确定各负载信息对应的最大码率。当确定出的负载信息在表1中查找不到时,可以通过插值法得出这些负载信息对应的最大码率。还可以通过大量实验确定各负载信息对应的最大码率,然后对负载信息和其对应的最大码率进行线性拟合,从而得到关于负载信息和其对应的最大码率的经验公式。此时,当确定各负载信息后,可以通过将各负载信息带入经验公式的方式,得出各负载信息对应的最大码率,具体的公式可以如下所述。可选的,可以根据经验公式分别确定各负载信息对应的最大码率,步骤102相应的处理过程可以如下:根据公式rmax(r)=ar+b,分别确定各负载信息对应的最大码率。其中,r表示负载信息,a和b均为预设常量,rmax(r)表示负载信息r对应的最大码率。在实施中,可以通过大量的实验得出大量的负载信息与其对应的最大码率,并基于上述负载信息和其对应的最大码率,得出a和b的具体数值。当确定各负载信息后,可以将各负载信息分别带入公式rmax(r)=ar+b,从而得出各负载信息对应的最大码率。例如,将负载信息r1带入公式rmax(r)=ar+b,从而得出负载信息r1对应的最大码率rmax(r1)为ar1+b。在步骤103中,基于确定出的各最大码率,确定预设的每个待选择的码率对应的溢出概率。其中,溢出概率是在目标时刻待选择的码率大于预测的负载信息对应的最大码率的概率。在实施中,首先计算出各最大码率对应的均值和方差,然后基于均值和方差确定预设的每个待选择的码率对应的溢出概率,具体的计算过程如下所述。可选的,可以基于各最大码率的均值和方差,确定每个待选择的码率对应的溢出概率,步骤103相应的处理过程可以如下:基于确定出的各最大码率,确定各最大码率的均值和方差。根据公式确定预设的每个待选择的码率对应的溢出概率。其中,risku[s]表示待选择的码率rs对应的溢出概率,rt表示预设的处理器在目标时刻的负载信息,rmax(rt)表示负载信息rt对应的最大码率,rs表示待选择的码率,示各最大码率的均值,var表示各最大码率的方差,φ(·)表示正态分布的累积分布函数。在实施中,根据公式和确定各最大码率的均值和方差。然后,将确定出的均值和方差,以及待选择码率带入到公式中,从而得到各待选择码率对应的溢出概率。在步骤104中,基于每个待选择的码率对应的溢出概率,在待选择的码率中,选择在目标时刻使用的目标码率。其中,溢出概率是在目标时刻待选择的码率大于预测的负载信息对应的最大码率的概率。在实施中,获取每个待选择的码率对应的溢出概率之后,可以将各个溢出概率与预设的概率进行对比,然后,确定所有小于预设概率的溢出概率,最后,在所有小于预设概率的溢出概率中确定最大的溢出概率,并选择该最大的溢出概率对应的待选择的码率,作为在目标时刻使用的目标码率。若是溢出概率大于预设概率,则说明该溢出概率对应的待选择的码率,大于预测的负载信息对应的最大码率的概率较大,选择该待选择的码率,容易超出负载的解码能力;若是溢出概率远小于预设概率,则说明该溢出概率对应的待选择的码率,大于预测的负载信息对应的最大码率的概率较小,但是播放的视频的清晰度相对来说比较差,因此,在小于预设概率的所有溢出概率中,选择最大的溢出概率对应的待选择的码率,作为在目标时刻使用的目标码率比较合适。其中,预设概率可以根据实际经验自主设置。例如,有四个待选择的码率,四个待选择的码率对应的溢出概率分别为0.05、0.08、0.11和0.12,预设概率为0.1,则确定小于预设概率0.1的溢出概率为0.05和0.08,确定0.05和0.08中的最大值为0.08,则选择溢出概率0.08对应的待选择的码率,作为在目标时刻使用的目标码率。可选的,可以基于溢出概率、质量收益值、切换损失值和溢出损失值,选择在目标时刻使用的目标码率,步骤104相应的处理过程可以如下:根据预先存储的码率和质量收益值的对应关系,确定每个待选择的码率对应的质量收益值。分别确定每个待选择的码率与当前使用的码率的差值。根据预先存储的差值和切换损失值的对应关系,以及每个待选择的码率对应的差值,确定每个待选择的码率对应的切换损失值。基于每个待选择的码率对应的溢出概率、质量收益值和切换损失值,以及预设的溢出损失值,在待选择的码率中,选择在目标时刻使用的目标码率。其中,切换损失值表征码率切换时引起的视频清晰度的跳动,给用户带来的观看体验的损失。质量收益值表征不同码率下播放视频时用户的观看体验。在实施中,终端预先存储有待选择的码率和质量收益值的对应关系,可选的,该对应关系可以是以表格的形式存储下来,如表2所示。其中,第一列中的y1、y2和y3表示码率的数值;第二例中的y1、y2和y3表示质量收益值的数值。码率质量收益值y1y1y2y2y3y3......表2终端还预先存储有码率差值和切换损失值的对应关系,可选的,该对应关系可以以表格的形式存储下来,如表3所示。其中,第一列的x1、x2和x3表示码率差值的数值;第二列中的x1、x2和x3表示差值对应的切换损失值的数值。码率差值切换损失值x1x1x2x2x3x3......表3假设待选择的码率为y1,与当前码率的差值为x1。首先,根据待选择的码率y1,在存储有码率和质量收益值的对应关系的表格中(如表2中),找到待选择的码率y1对应的质量收益值y1。然后,根据待选择的码率y1与当前的码率的差值x1,在存储有码率差值与切换损失值的对应关系的表格中(如表3中),找到码率差值x1对应的切换损失值x1。然后,将y1和x1带入到预设公式中,基于预设公式的结果选择在目标时刻使用的目标码率,具体的预设公式和计算过程如下所述:根据公式gain[n]m=qn-risku[n]×costu-costn,选择综合收益最高的待选择的码率,作为在目标时刻使用的目标码率,其中,gain[n]m为由当前使用的码率m切换到待使用的码率n的综合收益,qn为码率n对应的质量收益值,risku[n]为码率n对应的溢出概率,costu为码率n对应的溢出损失值,costn为码率n对应的切换损失值。计算时分别将待使用码率对应的溢出概率、质量收益值和切换损失值,以及预设的溢出损失值,带入到公式中,然后选择综合收益最大的待选择的码率,作为在目标时刻使用的目标码率。基于相同的技术构思,本申请实施例还提供了一种码率切换的装置,该装置可以为上述实施例中的计算机设备,如图2所示,该装置包括:预测模块201,用于基于检测的处理器在至少一个历史时刻的负载信息,预测处理器在目标时刻的负载信息;对应模块202,用于分别确定各负载信息对应的最大码率,其中,各负载信息包括至少一个历史时刻的负载信息和预测的负载信息;确定模块203,用于基于确定出的各最大码率,确定预设的每个待选择的码率对应的溢出概率,其中,溢出概率是在目标时刻待选择的码率大于预测的负载信息对应的最大码率的概率;选择模块204,用于基于每个待选择的码率对应的溢出概率,在待选择的码率中,选择在目标时刻使用的目标码率。可选的,预测模块201,用于:基于检测的处理器在至少一个历史时刻的负载信息,以及之前预测的处理器在至少一个历史时刻的负载信息,预测处理器在目标时刻的负载信息。可选的,预测模块201,用于:根据公式预测处理器在目标时刻的负载信息,其中,rt表示预测的处理器在目标时刻的负载信息,c表示预设的预测稳定性常量,εt表示随机误差量,rt-i表示之前预测的处理器在t-i时刻的负载信息,εt-j表示之前预测的处理器在t-j时刻的负载信息与检测的处理器在t-j时刻的负载信息的误差值,ρi表示预设的加权系数,θj表示预设的加权系数。可选的,对应模块202,用于:根据公式rmax(r)=ar+b,分别确定各负载信息对应的最大码率,其中,r表示负载信息,a和b均为预设常量,rmax(r)表示负载信息r对应的最大码率。可选的,确定模块203,用于:基于确定出的各最大码率,确定各最大码率的均值和方差;根据公式确定预设的每个待选择的码率对应的溢出概率,其中,risku[s]表示待选择的码率rs对应的溢出概率,rt表示预设的处理器在目标时刻的负载信息,rmax(rt)表示负载信息rt对应的最大码率,rs表示待选择的码率,示各最大码率的均值,var表示各最大码率的方差,φ(·)表示正态分布的累积分布函数。可选的,选择模块204,用于:根据预先存储的码率和质量收益值的对应关系,确定每个待选择的码率对应的质量收益值;分别确定每个待选择的码率与当前使用的码率的差值;根据预先存储的差值和切换损失值的对应关系,以及每个待选择的码率对应的差值,确定每个待选择的码率对应的切换损失值;基于每个待选择的码率对应的溢出概率、质量收益值和切换损失值,以及预设的溢出损失值,在待选择的码率中,选择在目标时刻使用的目标码率。可选的,选择模块204,用于:根据公式gain[n]m=qn-risku[n]×costu-costn,选择综合收益最高的待选择的码率,作为在目标时刻使用的目标码率,其中,gain[n]m为由当前使用的码率m切换到待使用的码率n的综合收益,qn为码率n对应的质量收益值,risku[n]为码率n对应的溢出概率,costu为码率n对应的溢出损失值,costn为码率n对应的切换损失值。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。需要说明的是:上述实施例提供的码率切换的装置在进行码率切换时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的码率切换的装置与码率切换的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。图3是本申请实施例提供的一种终端的结构框图。该终端300可以是便携式移动终端,比如:智能手机、平板电脑。终端300还可能被称为用户设备、便携式终端等其他名称。通常,终端300包括有:处理器301和存储器302。处理器301可以包括一个或多个处理核心,比如4核心处理器、4核心处理器等。处理器301可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器301可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器301还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。存储器302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器301所执行以实现本申请中提供的码率切换的方法。在一些实施例中,终端300还可选包括有:外围设备接口303和至少一个外围设备。具体地,外围设备包括:射频电路304、触摸显示屏305、摄像头306、音频电路307、定位组件308和电源309中的至少一种。外围设备接口303可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器301和存储器302。在一些实施例中,处理器301、存储器302和外围设备接口303被集成在同一芯片或电路板上;在一些其他实施例中,处理器301、存储器302和外围设备接口303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。射频电路304用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路304包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路304还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。触摸显示屏305用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。触摸显示屏305还具有采集在触摸显示屏305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器301进行处理。触摸显示屏305用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,触摸显示屏305可以为一个,设置终端300的前面板;在另一些实施例中,触摸显示屏305可以为至少两个,分别设置在终端300的不同表面或呈折叠设计;在再一些实施例中,触摸显示屏305可以是柔性显示屏,设置在终端300的弯曲表面上或折叠面上。甚至,触摸显示屏305还可以设置成非矩形的不规则图形,也即异形屏。触摸显示屏305可以采用lcd(liquidcrystaldisplay,液晶显示器)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。摄像头组件306用于采集图像或视频。可选地,摄像头组件306包括前置摄像头和后置摄像头。通常,前置摄像头用于实现视频通话或自拍,后置摄像头用于实现照片或视频的拍摄。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能,主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能。在一些实施例中,摄像头组件306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。音频电路307用于提供用户和终端300之间的音频接口。音频电路307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器301进行处理,或者输入至射频电路304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器301或射频电路304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路307还可以包括耳机插孔。定位组件308用于定位终端300的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件308可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。电源309用于为终端300中的各个组件进行供电。电源309可以是交流电、直流电、一次性电池或可充电电池。当电源309包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。在一些实施例中,终端300还包括有一个或多个传感器310。该一个或多个传感器310包括但不限于:加速度传感器311、陀螺仪传感器312、压力传感器313、指纹传感器314、光学传感器315以及接近传感器316。加速度传感器311可以检测以终端300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器311可以用于检测重力加速度在三个坐标轴上的分量。处理器301可以根据加速度传感器311采集的重力加速度信号,控制触摸显示屏305以横向视图或纵向视图进行用户界面的显示。加速度传感器311还可以用于游戏或者用户的运动数据的采集。陀螺仪传感器312可以检测终端300的机体方向及转动角度,陀螺仪传感器312可以与加速度传感器311协同采集用户对终端300的3d动作。处理器301根据陀螺仪传感器312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。压力传感器313可以设置在终端300的侧边框和/或触摸显示屏305的下层。当压力传感器313设置在终端300的侧边框时,可以检测用户对终端300的握持信号,根据该握持信号进行左右手识别或快捷操作。当压力传感器313设置在触摸显示屏305的下层时,可以根据用户对触摸显示屏305的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。指纹传感器314用于采集用户的指纹,以根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器314可以被设置终端300的正面、背面或侧面。当终端300上设置有物理按键或厂商logo时,指纹传感器314可以与物理按键或厂商logo集成在一起。光学传感器315用于采集环境光强度。在一个实施例中,处理器301可以根据光学传感器315采集的环境光强度,控制触摸显示屏305的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏305的显示亮度;当环境光强度较低时,调低触摸显示屏305的显示亮度。在另一个实施例中,处理器301还可以根据光学传感器315采集的环境光强度,动态调整摄像头组件306的拍摄参数。接近传感器316,也称距离传感器,通常设置在终端300的正面。接近传感器316用于采集用户与终端300的正面之间的距离。在一个实施例中,当接近传感器316检测到用户与终端300的正面之间的距离逐渐变小时,由处理器301控制触摸显示屏305从亮屏状态切换为息屏状态;当接近传感器316检测到用户与终端300的正面之间的距离逐渐变大时,由处理器301控制触摸显示屏305从息屏状态切换为亮屏状态。本领域技术人员可以理解,图3中示出的结构并不构成对终端300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。在示例性实施例中,还提供了一种计算机可读存储介质,存储介质中存储有至少一条指令,至少一条指令由处理器加载并执行以实现上述实施例中的码率切换的方法。例如,所述计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1