确定视频流推送码率的方法、装置与服务器的制造方法
【专利摘要】本发明公开了一种确定视频流推送码率的方法与装置。该方法包括接收客户端发起的播放视频请求,并将发起播放视频请求的时间确定为当前时刻;根据客户端网络接入点的信息确定客户端的当前位置;向客户端推送测速内容,以测量客户端在当前时刻的网络下行瞬时速度;根据当前时刻和客户端的当前位置计算当前时刻的历史速度和当前位置的历史速度;基于所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度确定客户端在当前时刻的网络下行传输速度;从设置的多个码率中选取不大于并且与所确定的当前时刻的网络下行传输速度最接近的码率作为向客户端推送视频流的码率。本发明可以为用户提供最优的视频播放质量。
【专利说明】确定视频流推送码率的方法、装置与服务器
【技术领域】
[0001]本发明涉及移动互联网,特别地,涉及一种确定视频流推送码率的方法、装置与服务器。
【背景技术】
[0002]随着移动互联网的发展,基于对云计算的大规模视频转换系统的研究与开发,目前电信的大部分手机客户端可以通过连接无线网络实时观看网络视频。这些网络视频文件大多提供了对流畅、标清和高清三种播放模式的选择,这三种模式使用不同的视频码率,用户根据自身经验判断当前网络环境来选择播放模式。
[0003]就目前来看,影响无线网络传输速度的因素很多,无法让客户端与服务器端协同进行持续检测、也无法通过以往的使用情况来决定当前时刻的网络质量。此外,流畅、标清和高清三种定制好的码率不一定能全面地、较好地适配当前时刻网络环境下的播放要求, 用户在未知当前时刻的网络传输速度的情况下,默认选择标清模式会出现视频播放质量差、不顺畅等问题,影响了用户的观看与体验。
【发明内容】
[0004]本发明要解决的一个技术问题是提供一种确定视频流推送码率的方法、装置与服务器,能够在当前时刻网络状况下为用户提供最优的视频播放质量。
[0005]根据本发明的一方面,提出了一种确定视频流推送码率的方法,包括接收客户端发起的播放视频请求,并将发起播放视频请求的时间确定为当前时刻;根据客户端网络接入点的信息确定客户端的当前位置;向客户端推送测速内容,以测量客户端在当前时刻的网络下行瞬时速度;根据当前时刻和客户端的当前位置计算当前时刻的历史速度和当前位置的历史速度;基于所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度确定客户端在当前时刻的网络下行传输速度;从设置的多个码率中选取不大于并且与所确定的当前时刻的网络下行传输速度最接近的码率作为向客户端推送视频流的码率。`
[0006]根据本发明的另一方面,还提出了一种确定视频流推送码率的装置,包括接收单元,用于接收客户端发起的播放视频请求,并将发起播放视频请求的时间确定为当前时刻; 位置信息确定单元,用于根据客户端网络接入点的信息确定客户端的当前位置;瞬时速度测量单元,用于向客户端推送测速内容,以测量客户端在当前时刻的网络下行瞬时速度?’历史速度计算单元,用于根据当前时刻和客户端的当前位置计算当前时刻的历史速度和当前位置的历史速度;传输速度计算单元,用于基于所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度确定客户端在当前时刻的网络下行传输速度;推送码率确定单元,用于从设置的多个码率中选取不大于并且与所确定的当前时刻的传输速度最接近的码率作为向客户端推送视频流的码率。
[0007]根据本发明的又一方面,还提出了一种服务器,包括前述的确定视频流推送码率的装置。
[0008]本发明提供的确定视频流推送码率的方法、装置与服务器,基于当前时刻的网络 状况、历史上当前时刻的网络状况以及历史上当前位置的网络状况计算得出客户端在当前 时刻的网络下行传输速度,并基于计算出的网络下行传输速度确定视频流的推送码率,与 现有的根据用户个人经验判断网络状况来选取播放模式的方式相比,本发明确定的视频流 推送码率更客观、更可靠。因此,本发明可以为用户提供尽可能适合在当前时刻网络环境下 播放的视频流码率,以为用户提供最优的视频播放质量。
【专利附图】
【附图说明】
[0009]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分。在附 图中:
[0010]图1是本发明确定视频流推送码率的方法的一个实施例的流程示意图。
[0011]图2是本发明确定视频流推送码率的方法的另一实施例的流程示意图。
[0012]图3是本发明确定视频流推送码率的装置的一个实施例的结构示意图。
[0013]图4是本发明确定视频流推送码率的装置的另一实施例的结构示意图。
[0014]图5是本发明确定视频流推送码率的装置的又一实施例的结构示意图。
【具体实施方式】
[0015]下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。本 发明的示例性实施例及其说明用于解释本发明,但并不构成对本发明的不当限定。
[0016]以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明 及其应用或使用的任何限制。
[0017]图1是本发明确定视频流推送码率的方法的一个实施例的流程示意图。
[0018]如图1所示,该实施例可以包括以下步骤:
[0019]S102,接收客户端发起的播放视频请求,并将发起播放视频请求的时间确定为当 前时刻;
[0020]S104,根据客户端的网络接入点的信息确定客户端的当前位置;
[0021]S106,向客户端推送测速内容,以测量客户端在当前时刻的网络下行瞬时速度;
[0022]S108,根据当前时刻和客户端的当前位置计算当前时刻的历史速度和当前位置的 历史速度;
[0023]S110,基于所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出 的当前时刻的网络下行瞬时速度确定客户端在当前时刻的网络下行传输速度;
[0024]S112,从设置的多个码率中选取不大于并且与所确定的当前时刻的传输速度最接 近的码率作为向客户端推送视频流的码率。
[0025]该实施例基于当前时刻的网络状况、历史上当前时刻的网络状况以及历史上当前 位置的网络状况计算得出客户端在当前时刻的网络下行传输速度,并基于计算出的网络下 行传输速度确定视频流的推送码率,与现有的根据用户个人经验判断网络状况来选取播放 模式的方式相比,本发明确定的视频流推送码率更客观、更可靠。因此,本发明可以为用户 提供尽可能适合在当前时刻网络环境下播放的视频流推送码率,以为用户提供最优的视频播放质量。
[0026]在一个实例中,步骤S106可以包括:服务器向客户端推送多个测速内容,将获取 到的客户端下载各个测速内容的速度进行算术平均,以计算出当前时刻的网络下行瞬时速度。
[0027]在另一实例中,步骤S108可以包括以当前时刻为筛选基准,在包括当前时刻的一 个时间段内,从数据库中读取基于当前位置所设定的区域内与当前时刻最接近的N个时间 点对应的速度值;利用加权平均的方法根据所读取的N个时间点对应的速度值确定当前时 刻的历史速度;以当前位置为筛选基准,在基于当前位置所设定的区域内,从数据库中读取 在包括当前时刻的一个时间段内与当前位置最接近的M个位置点对应的速度值;利用加权 平均的方法根据所读取的M个位置点对应的速度值确定当前位置的历史速度;其中,M和N 均为正整数。
[0028]在又一实例中,步骤SllO可以具体化为:利用加权平均的方法根据所计算出的当 前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度 计算客户端在当前时刻的网络下行传输速度。
[0029]由上述实例可以看出,影响无线网络速度的因素很多,一方面可能会受到客观环 境的影响,另一方面也可能会随时间的变化而变化。当前时刻的网络下行瞬时速度体现的 是当时瞬时的网络速度,但不能体现持续的网络速度;当前位置的历史速度将当前位置点 一定范围内的多个历史速度进行加权计算,得出的速度值体现的是在覆盖当前位置点的环 境下的速度的综合情况;当前时刻的历史速度将当前时刻一定范围内的多个历史速度进行 加权计算,得出的速度值体现的是当前时间段近期的网络速度的综合情况。所以,本发明在 估算客户端无线网络的下行传输速度时,同时考虑了瞬时、环境与时间的综合因素,因而能 够较好地计算出当前时刻网络持续的平均速度,从而可以准确地选择合适的码率进行视频 流的推送。
[0030]图2是本发明确定视频流推送码率的方法的另一实施例的流程示意图。
[0031]如图2所示,该实施例可以包括以下步骤:
[0032]S202,手机客户端向服务器发送观看视频的请求,在接收到该请求后,服务器将发 起请求的时间点确定为当前时刻,并根据客户端的网络接入点的信息通过google或百度 的接口获得手机客户端当前位置信息,例如,客户端所在位置的经纬度。
[0033]S204,手机在播放视频前,服务器为其提供两个或两个以上的图片进行下载,将各 图片的下载速度进行算术平均计算出当前时刻的网络下行瞬时速度fH5需要指出的是,用 于测速的内容并不限于图片格式,还可以是任何的其他格式数据。考虑到安全问题,所推送 的某些格式的内容可能会被拦截,因此,可以选择恰当大小的图片用于测量当前时刻的瞬 时速度。由于仅仅用于测速,所以可以使用IOk至20k之间的图片,既能保证测速的准确性 而且又不会为用户增加较多额外的流量。
[0034]S206,服务器根据获知的当前位置和当前时刻筛选历史速度数据进行加权计算得 到当前位置的历史速度只。甴前位置的历史速度的计算以当前位置所在的位置点为筛选基 准,在以当前位置为中心的一定范围内(例如,500米),并且在指定时间段内(例如,当前时 刻所在日期的10天以内),从数据库中读取距离当前位置最近的3个位置点的速度值,将这 3个速度值进行加权计算,从而得出当前位置的历史速度。[0035]具体地,服务器可以根据当前位置读取以当前位置为中心的一定范围内(500米以内)并且在指定时间段内(10天以内)距离当前位置最近的三个位置点的历史速度,例如,叼1、%2、叼3,进行加权计算得出当前位置的历史速度: 14 = Vll史11+ rHl ^12+ ^13史13,其中,史11、史12和史13为与三个位置点对应的权值。由于距离当前位置越近的位置点参考价值较大,因此权值之间的关系可以为: 1>(?1<P\2> 史 13〉0,且<?11 + (Pl2+ ^PlJ = I。
[0036]S208,服务器根据获知的当前时刻和当前位置筛选历史速度数据进行加权计算得出当前时刻的历史速度少2。当前时刻的历史速度的计算以当前时刻这个时间点为筛选基准,在包含当前时刻的时间段内(例如,日期满足当前时刻所在日期的10天以内,时间满足当前时刻前后各I个小时共2小时的时间段),并且在以当前位置为中心的一定范围内(例如,以当前位置为中心的500米范围内),从数据库中读取距离当前时刻最近的3个时间点的速度值,将这3个速度值进行加权计算,从而得出当前时刻的历史速度。
[0037]具体地,服务器可以根据当前时刻读取以当前时刻为中心的一个时间段内(10天以内并且在当前时刻前后各I个小时共2小时的时间段内)并且在以当前位置为中心的一定范围内(500米以内)距离当前时刻最近的三个时间点的历史速度,例如,少21、%2、处3,进行加权计算得出当前时刻的历史速度: T4 = ^Pll + c^Tl (?22 + ^23奶3,其中,tPll '史22和史23为与二个时间点对应的权值。由于距离当前时刻越近的时间点参考价值较大,因此权值之间的关系可以为: 1>(?2|> 朽2> 史23〉0,且+ 史22 +史23=1。
[0038]S210,将当前时刻的瞬时速度位置点历史速度与时间点历史速度少2进行加权,得出客户端在当前时刻的网络下行传输速度妒。具体地,
% (Po ++ ,其中,钸、奶和釣分别为当前时刻的瞬时速度、当前位置
的历史速度和当前时刻的历史速度的权值,满足:0< <Pn<l,<Po+ (Pi+扔=1。由于瞬时速度比较直观地体现了当前的下载速度,当前位置的历史速度与当前时刻的历史速度可以综合地体现持续的网络速度,而客观环境对网络速度的影响比时间段内网络速度的变化更直接与明显,因此,权值的选定为:(Po> <P\> (P2Min,<Po=0.6,(Pt = 0.25,? = 0.15,则 V= %x 0.6+e^iX 0,25+V1X0.15o
[0039]S212,服务器将计算出的传输速度值与常用的码率取值进行比较,选取最合适的码率对视频进行实时转码并向客户端推送视频流。其中,常用的码率为56k,64k,96k,128k, 150k,196k等。将传输速度与这些设定的常用码率进行比较,将不大于并且与网络下行传输速度最接近的码率作为推送视频流的码率。如果计算出的传输速率为140k,由于128k小于 140k并且与140k最接近,因此,选取128k作为推送码率。
[0040]S214,手机客户端在当前无线网络环境下播放效果最好的视频。
[0041]该实施例通过下载小数据量图片来测量当前时刻的网络下行瞬时速度,并将该瞬时速度与历史速度相结合从而计算出客户端在当前时刻的网络下行传输速度,并基于该传输速度确定推送视频流的码率,以达到视频播放流畅的目的。
[0042]本领域普通技术人员可以理解,实现上述方法实施例的全部和部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算设备可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤,而前述的存储介质可以包括ROM、RAM、磁碟 和光盘等各种可以存储程序代码的介质。
[0043]图3是本发明确定视频流推送码率的装置的一个实施例的结构示意图。
[0044]如图3所示,该实施例中的装置30可以包括接收单元302、位置信息确定单元 304、瞬时速度测量单元306、历史速度计算单元308、传输速度计算单元310和推送码率确 定单元312。
[0045]其中,接收单元302接收客户端发起的播放视频请求,并将发起播放视频请求的 时间确定为当前时刻;位置信息确定单元304根据客户端的网络接入点的信息确定客户端 的当前位置;瞬时速度测量单元306向客户端推送测速内容,以测量客户端在当前时刻的 网络下行瞬时速度;历史速度计算单元308根据当前时刻和客户端的当前位置计算当前时 刻的历史速度和当前位置的历史速度;传输速度计算单元310基于所计算出的当前时刻的 历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度确定客户 端在当前时刻的网络下行传输速度;推送码率确定单元312从设置的多个码率中选取不大 于并且与所确定的当前时刻的传输速度最接近的码率作为向客户端推送视频流的码率。
[0046]该实施例通过估算的传输速度来选择合适的视频流推送码率,从而可以提高视频 播放的质量与流畅性,进而增强用户的体验。
[0047]图4是本发明确定视频流推送码率的装置的另一实施例的结构示意图。
[0048]如图4所示,与图3中的实施例相比,该实施例中的装置40中的瞬时速度测量单 元402可以包括测速内容推送子单元402a和瞬时速度计算子单元402b。
[0049]其中,测速内容推送子单元402a向客户端推送多个测速内容并记录客户端下载 各个测速内容的瞬时速度;瞬时速度计算子单元402b对所记录的各个瞬时速度进行算术 平均以计算出当前时刻的网络下行瞬时速度。
[0050]图5是本发明确定视频流推送码率的装置的又一实施例的结构示意图。
[0051]如图5所示,与图3中的实施例相比,该实施例中的装置50中的历史速度计算单 元502可以包括当前时刻历史速度确定子单元502a和当前位置历史速度确定子单元502b。
[0052]其中,当前时刻历史速度确定子单元502a以当前时刻为筛选基准,在包括当前时 刻的一个时间段内,从数据库中读取基于当前位置所设定的区域内与当前时刻最接近的N 个时间点对应的速度值,利用加权平均的方法根据所读取的N个时间点对应的速度值确定 当前时刻的历史速度;当前位置历史速度确定子单元502b以当前位置为筛选基准,在基于 当前位置所设定的区域内,从数据库中读取在包括当前时刻的一个时间段内与当前位置最 接近的M个位置点对应的速度值,利用加权平均的方法根据所读取的M个位置点对应的速 度值确定当前位置的历史速度;其中,M和N均为正整数。
[0053]在本发明确定视频流推送码率的装置的再一实施例中,传输速度计算单元可以利 用加权平均的方法根据所计算出的当前时刻的历史速度和当前位置的历史速度以及所测 量出的当前时刻的网络下行瞬时速度计算客户端在当前时刻的网络下行传输速度。
[0054]此外,还可以将上述图3-图5中的确定视频流推送码率的装置置于服务器中,以 使服务器能够为客户端提供更高速、更流畅的视频。
[0055]本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其 他实施例的不同之处,各个实施例之间相同和相似的部分可以相互参见。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处可以参见方法实施例 部分的说明。
[0056]虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技 术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技 术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发 明的范围由所附权利要求来限定。
【权利要求】
1.一种确定视频流推送码率的方法,其特征在于,包括:接收客户端发起的播放视频请求,并将发起所述播放视频请求的时间确定为当前时刻;根据所述客户端的网络接入点的信息确定所述客户端的当前位置;向所述客户端推送测速内容,以测量客户端在当前时刻的网络下行瞬时速度;根据所述当前时刻和所述客户端的当前位置计算当前时刻的历史速度和当前位置的历史速度;基于所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度确定客户端在当前时刻的网络下行传输速度;从设置的多个码率中选取不大于并且与所确定的当前时刻的网络下行传输速度最接近的码率作为向所述客户端推送视频流的码率。
2.根据权利要求1所述的确定视频流推送码率的方法,其特征在于,向所述客户端推送测速内容,以测量客户端在当前时刻的网络下行瞬时速度的步骤包括:向客户端推送多个测速内容并记录客户端下载各个测速内容的瞬时速度;对所记录的各个瞬时速度进行算术平均以计算出当前时刻的网络下行瞬时速度。
3.根据权利要求1所述的确定视频流推送码率的方法,其特征在于,根据所述当前时刻和所述客户端的当前位置计算当前时刻的历史速度和当前位置的历史速度的步骤包括:以当前时刻为筛选基准,在包括当前时刻的一个时间段内,从数据库中读取基于当前位置所设定的区域内与当前时刻最接近的N个时间点对应的速度值;`利用加权平均的方法根据所读取的N个时间点对应的速度值确定当前时刻的历史速度;以当前位置为筛选基准,在基于当前位置所设定的区域内,从数据库中读取在包括当前时刻的一个时间段内与当前位置最接近的M个位置点对应的速度值;利用加权平均的方法根据所读取的M个位置点对应的速度值确定当前位置的历史速度;其中,M和N均为正整数。
4.根据权利要求1所述的确定视频流推送码率的方法,其特征在于,基于所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度确定客户端在当前时刻的网络下行传输速度的步骤具体为:利用加权平均的方法根据所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度计算客户端在当前时刻的网络下行传输速度。
5.一种确定视频流推送码率的装置,其特征在于,包括:接收单元,用于接收客户端发起的播放视频请求,并将发起所述播放视频请求的时间确定为当前时刻;位置信息确定单元,用于根据所述客户端的网络接入点的信息确定所述客户端的当前位置;瞬时速度测量单元,用于向所述客户端推送测速内容,以测量客户端在当前时刻的网络下行瞬时速度;历史速度计算单元,用于根据所述当前时刻和所述客户端的当前位置计算当前时刻的历史速度和当前位置的历史速度;传输速度计算单元,用于基于所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度确定客户端在当前时刻的网络下行传输速度;推送码率确定单元,用于从设置的多个码率中选取不大于并且与所确定的当前时刻的网络下行传输速度最接近的码率作为向所述客户端推送视频流的码率。
6.根据权利要求5所述的确定视频流推送码率的装置,其特征在于,所述瞬时速度测量单元包括:测速内容推送子单元,用于向客户端推送多个测速内容并记录客户端下载各个测速内容的瞬时速度;瞬时速度计算子单元,用于对所记录的各个瞬时速度进行算术平均以计算出当前时刻的网络下行瞬时速度。
7.根据权利要求5所述的确定视频流推送码率的装置,其特征在于,所述历史速度计算单元包括:当前时刻历史速度确定子单元,用于以当前时刻为筛选基准,在包括当前时刻的一个时间段内,从数据库中读取基于当前位置所设定的区域内与当前时刻最接近的N个时间点对应的速度值,利用加权平均的方法根据所读取的N个时间点对应的速度值确定当前时刻的历史速度;当前位置历史速度确定子单元,用于以当前位置为筛选基准,在基于当前位置所设定的区域内,从数据库中读取在包括当前时刻的一个时间段内与当前位置最接近的M个位置点对应的速度值,利用加权平均的方法根据所读取的M个位置点对应的速度值确定当前位置的历史速度;其中,M和N均为正整数。
8.根据权利要求5所述的确定视频流推送码率的装置,其特征在于,所述传输速度计算单元利用加权平均的方法根据所计算出的当前时刻的历史速度和当前位置的历史速度以及所测量出的当前时刻的网络下行瞬时速度计算客户端在当前时刻的网络下行传输速度。
9.一种服务器,其特征在于,包括权利要求5-8中任一项所述的确定视频流推送码率的装置。
【文档编号】H04N21/238GK103458272SQ201210173632
【公开日】2013年12月18日 申请日期:2012年5月30日 优先权日:2012年5月30日
【发明者】林立宇, 朱凯, 陈云海, 刘晓玲, 铁兵 申请人:中国电信股份有限公司