首页 / 专利库 / 多媒体工具与应用 / 媒体流 / 视频流 / 调节视频码率的方法和装置

调节视频码率的方法和装置

阅读:801发布:2020-05-08

专利汇可以提供调节视频码率的方法和装置专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种调节视频码率的方法和装置,属于通信技术领域。该方法包括:向目标客户端通过双向通信链接发送第一码率的 视频流 ;在接收到所述目标客户端发送的降低码率的 请求 后,确定所述目标客户端接入的网络的网络带宽情况;如果确定所述目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流,其中,所述第二码率低于所述第一码率;向所述目标客户端通过所述双向通信链接发送所述第二码率的视频流。采用本申请提供的方法,可以有效解决相关技术中调节视频码率时,容易发生跳 帧 或画面回跳的技术问题,提高了用户的观看体验。,下面是调节视频码率的方法和装置专利的具体信息内容。

1.一种调节视频码率的方法,其特征在于,所述方法包括:
向目标客户端通过双向通信链接发送第一码率的视频流
在接收到所述目标客户端发送的降低码率的请求后,确定所述目标客户端接入的网络的网络带宽情况;
如果确定所述目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流,其中,所述第二码率低于所述第一码率;
向所述目标客户端通过所述双向通信链接发送所述第二码率的视频流。
2.根据权利要求1所述的方法,其特征在于,所述确定所述目标客户端接入的网络的网络带宽情况,包括:
确定所述目标客户端对应的发送缓冲区的数据量;
基于所述目标客户端对应的发送缓冲区的数据量,确定所述目标客户端接入的网络的网络带宽情况。
3.根据权利要求2所述的方法,其特征在于,所述基于所述目标客户端对应的发送缓冲区的数据量,确定所述目标客户端接入的网络的网络带宽情况,包括:
确定所播放的视频与所述目标客户端播放的视频相同的所有客户端对应的发送缓冲区的数据量的平均值;
如果所述目标客户端对应的发送缓冲区的数据量与所述平均值的差值大于目标阈值,则确定所述目标客户端接入的网络的网络带宽不足。
4.根据权利要求1所述的方法,其特征在于,所述降低码率的请求中携带有播放视频的标识和播放进度;
所述获取待发送的第二码率的视频流,包括:
基于所述播放视频的标识和播放进度,在所述播放视频的标识对应的视频流中,确定所述播放进度之后的视频流为所述待发送的第二码率的视频流。
5.根据权利要求1所述的方法,其特征在于,所述确定所述目标客户端接入的网络的网络带宽情况之后,还包括:
向所述目标客户端发送携带有所述网络情况的消息。
6.根据权利要求1所述的方法,其特征在于,所述降低码率的请求是在所述目标客户端检测到视频播放缓存区的剩余可播放视频的时长小于目标时长时发送的。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述向目标客户端通过双向通信链接发送第一码率的视频流之后,还包括:
在接收到所述目标客户端发送的升高码率的请求后,获取待发送的第三码率的视频流,其中,所述第三码率高于所述第一码率;
向所述目标客户端通过所述双向通信链接发送所述第三码率的视频流。
8.一种调节视频码率的装置,其特征在于,所述装置包括:
发送模,用于向目标客户端通过双向通信链接发送第一码率的视频流;
确定模块,用于在接收到所述目标客户端发送的降低码率的请求后,确定所述目标客户端接入的网络的网络带宽情况;
获取模块,用于如果确定所述目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流,其中,所述第二码率低于所述第一码率;
所述发送模块,还用于向所述目标客户端通过所述双向通信链接发送所述第二码率的视频流。
9.一种服务器,其特征在于,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1-7任一项所述的调节视频码率的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1-7任一项所述的调节视频码率的方法。

说明书全文

调节视频码率的方法和装置

技术领域

[0001] 本申请涉及通信技术领域,具体涉及一种调节视频码率的方法和装置。

背景技术

[0002] 为了保证用户观看的视频的流畅性,许多客户端都具有动态调整视频码率的功能。当用户网络质量较好时,播放较高码率的视频,以保证视频的高画质;当用户网络较差时,播放较低码率的视频,以保证视频的流畅性。
[0003] 相关技术中,在播放视频过程中,使用HTTP协议获取直播流,客户端请求播放,服务端收到客户端请求后,持续发送音视频流,HTTP协议单向通信。当客户端检测到可能发生卡顿时,客户端直接将播放地址切换为低码率视频地址,建立新的链接请求播放低码率音视频流。
[0004] 在实现本申请的过程中,发明人发现相关技术至少存在以下问题:
[0005] 相关技术中调节视频码率的方法,由于需要建立新的链接来发送较低码率的视频流,所以可能会发生画面回跳或者跳的问题,使得画面不连续,影响用户的观看体验。

发明内容

[0006] 本申请实施例提供了一种调节视频码率的方法和装置,可以解决相关技术中存在的技术问题。所述调节视频码率的方法和装置的技术方案如下:
[0007] 第一方面,提供了一种调节视频码率的方法,所述方法包括:
[0008] 向目标客户端通过双向通信链接发送第一码率的视频流;
[0009] 在接收到所述目标客户端发送的降低码率的请求后,确定所述目标客户端接入的网络的网络带宽情况;
[0010] 如果确定所述目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流,其中,所述第二码率低于所述第一码率;
[0011] 向所述目标客户端通过所述双向通信链接发送所述第二码率的视频流。
[0012] 在一种可能的实现方式中,所述确定所述目标客户端接入的网络的网络带宽情况,包括:
[0013] 确定所述目标客户端对应的发送缓冲区的数据量;
[0014] 基于所述目标客户端对应的发送缓冲区的数据量,确定所述目标客户端接入的网络的网络带宽情况。
[0015] 在一种可能的实现方式中,所述基于所述目标客户端对应的发送缓冲区的数据量,确定所述目标客户端接入的网络的网络带宽情况,包括:
[0016] 确定所播放的视频与所述目标客户端播放的视频相同的所有客户端对应的发送缓冲区的数据量的平均值;
[0017] 如果所述目标客户端对应的发送缓冲区的数据量与所述平均值的差值大于目标阈值,则确定所述目标客户端接入的网络的网络带宽不足。
[0018] 在一种可能的实现方式中,所述降低码率的请求中携带有播放视频的标识和播放进度;
[0019] 所述获取待发送的第二码率的视频流,包括:
[0020] 基于所述播放视频的标识和播放进度,在所述播放视频的标识对应的视频流中,确定所述播放进度之后的视频流为所述待发送的第二码率的视频流。
[0021] 在一种可能的实现方式中,所述确定所述目标客户端接入的网络的网络带宽情况之后,还包括:
[0022] 向所述目标客户端发送携带有所述网络情况的消息。
[0023] 在一种可能的实现方式中,所述降低码率的请求是在所述目标客户端检测到视频播放缓存区的剩余可播放视频的时长小于目标时长时发送的。
[0024] 在一种可能的实现方式中,所述向目标客户端通过双向通信链接发送第一码率的视频之后,还包括:
[0025] 在接收到所述目标客户端发送的升高码率的请求后,获取待发送的第三码率的视频流,其中,所述第三码率高于所述第一码率;
[0026] 向所述目标客户端通过所述双向通信链接发送所述第三码率的视频流。
[0027] 第二方面,提供了一种调节视频码率的装置,所述装置包括:
[0028] 发送模,用于向目标客户端通过双向通信链接发送第一码率的视频流;
[0029] 确定模块,用于在接收到所述目标客户端发送的降低码率的请求后,确定所述目标客户端接入的网络的网络带宽情况;
[0030] 获取模块,用于如果确定所述目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流,其中,所述第二码率低于所述第一码率;
[0031] 所述发送模块,还用于向所述目标客户端通过所述双向通信链接发送所述第二码率的视频流。
[0032] 在一种可能的实现方式中,所述确定模块,用于:
[0033] 确定所述目标客户端对应的发送缓冲区的数据量;
[0034] 基于所述目标客户端对应的发送缓冲区的数据量,确定所述目标客户端接入的网络的网络带宽情况。
[0035] 在一种可能的实现方式中,所述确定模块,用于:
[0036] 确定所播放的视频与所述目标客户端播放的视频相同的所有客户端对应的发送缓冲区的数据量的平均值;
[0037] 如果所述目标客户端对应的发送缓冲区的数据量与所述平均值的差值大于目标阈值,则确定所述目标客户端接入的网络的网络带宽不足。
[0038] 在一种可能的实现方式中,所述降低码率的请求中携带有播放视频的标识和播放进度;
[0039] 所述获取模块,用于:
[0040] 基于所述播放视频的标识和播放进度,在所述播放视频的标识对应的视频流中,确定所述播放进度之后的视频流为所述待发送的第二码率的视频流。
[0041] 在一种可能的实现方式中,所述发送模块,还用于:
[0042] 向所述目标客户端发送携带有所述网络情况的消息。
[0043] 在一种可能的实现方式中,所述降低码率的请求是在所述目标客户端检测到视频播放缓存区的剩余可播放视频的时长小于目标时长时发送的。
[0044] 在一种可能的实现方式中,所述获取模块,还用于:
[0045] 在接收到所述目标客户端发送的升高码率的请求后,获取待发送的第三码率的视频流,其中,所述第三码率高于所述第一码率;
[0046] 所述发送模块,还用于:
[0047] 向所述目标客户端通过所述双向通信链接发送所述第三码率的视频流。
[0048] 第三方面,提供了一种终端,所述终端包括存储器和处理器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如第一方面所述的调节视频码率的方法。
[0049] 第四方面,提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如第一方面所述的调节视频码率的方法。
[0050] 本申请实施例提供的技术方案带来的有益效果至少包括:
[0051] 本申请实施例提供了一种调节视频码率的方法,可以用于视频码率的调节。在向目标客户端通过双向通信链接发送第一码率的视频流的过程中,接收到目标客户端发送的降低码率的请求后,确定目标客户端接入的网络的网络带宽情况。如果确定目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流,并向目标客户端通过原有的双向通信链接发送第二码率的视频流。可见,本申请实施例提供的调节视频码率的方法,通过双向通信链接来发送视频流,从而,当客户端检测到可能发生卡顿时,可以通过双向通信链接向服务器端发送降低码率的请求,则服务器可以直接通过原有的双向通信链接发送视频流给客户端,不需要建立新的链接,所以减小了画面回跳和跳帧出现的可能性,有效提高了用户的观看体验。附图说明
[0052] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0053] 图1是本申请实施例提供的一种调节视频码率的方法的流程图
[0054] 图2是本申请实施例提供的一种调节视频码率的装置的结构示意图;
[0055] 图3是本申请实施例提供的一种服务器的结构示意图;
[0056] 图4是本申请实施例提供的一种调节视频码率的方法的实施环境图。

具体实施方式

[0057] 为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
[0058] 请参考图4,其示出了本申请实施例提供的调节视频码率的方法的实施环境的示意图。该实施环境可以包括服务器01以及一个或多个终端02(例如图4中示出了2个终端02)。每个终端02均可以通过有线或无线的方式与该服务器02建立双向通信链接,例如,可以是RTMP(Real Time Messaging Protocol,实时消息传输协议)链接。
[0059] 其中,该终端02可以为智能手机、平板电脑、MP4(moving picture experts group audio layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机或者台式计算机等。并且,每个终端02中安装有能够播放视频的客户端(该客户端也可以称为应用程序),例如直播客户端。该服务器01可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个计算服务中心。并且,该服务器01可以为该终端02中安装的客户端的后台服务器。
[0060] 在本申请实施例中,服务器01向终端02发送视频流,以使目标客户端播放视频。在播放视频过程中,当目标客户端检测到视频播放将要发生卡顿,或者,人为选择降低码率时,目标客户端可以向服务器01发送降低码率的请求。则服务器01检测目标客户端接入的网络的网络带宽情况,以确定是否需要降低码率,并在确定网络带宽不足时,向服务器发送降低码率的视频流,以保证目标客户端所播放视频的流畅。
[0061] 如图1所示,本申请实施例提供的调节视频码率的方法的处理流程可以包括如下步骤:
[0062] 在步骤101中,向目标客户端通过双向通信链接发送第一码率的视频流。
[0063] 其中,双向通信链接可以为RTMP链接。建立双向通信链接的服务端和客户端均能主动发起通信,发送通知信令数据或者发送视频流数据。
[0064] 视频流可以为直播视频流,如体育赛事等,也可以不为直播视频流,如电影和电视剧等。视频流可以既包括音频数据,也包括图像数据。
[0065] 在实施中,服务端通过双向通信链接实时发送第一码率的视频流给目标客户端,则目标客户端可以播放该视频流对应的视频。可以理解的是,由于需要降低码率,所以第一码率应当大于可以达到的最低码率。
[0066] 在步骤102中,在接收到目标客户端发送的降低码率的请求后,确定目标客户端接入的网络的网络带宽情况。
[0067] 其中,网络带宽情况可以包括网络带宽不足和网络带宽充足。
[0068] 在实施中,目标客户端可以开启有动态调整码率的功能,以保证播放视频的流畅。在播放视频过程中,目标客户端实时监测视频播放缓存区的剩余可播放视频的时长,如果该时长小于目标时长,则判断可能即将发生卡顿,则此时,可以向服务端发送降低码率的请求。也即,降低码率的请求是在目标客户端检测到视频播放缓存区的剩余可播放视频的时长小于目标时长时发送的。
[0069] 或者,用户在观看视频的过程中,也可以手动选择降低视频的码率。此时,用户可以在终端上操作,触发降低码率的指令,当目标客户端检测到降低码率的指令时,向服务端发送降低码率的请求。
[0070] 在接收到目标客户端发送的降低码率的请求后,服务端需要确定目标客户端接入的网络的网络带宽情况,然后决定是否降低码率。因为,在某些情况下,目标客户端可能会在错误的情况下发出降低码率的请求,此时即使降低码率也不能解决问题。例如,目标客户端检测到缓存区可播放数据为空时,向服务端发送降低码率的请求,但是,缓冲区为空可能是接收/下载速率较慢,也可能是因为视频源发生问题无数据可下载,或者是服务器任务比较繁忙,负载高导致发送数据慢,与码率无关,所以在有些情况下不需要降低码率,即使降低码率也不能解决问题。所以,需要由服务端确定目标客户端接入的网络的网络带宽情况,视频源情况,服务器资源情况。
[0071] 在一种可能的实现方式中,服务端确定目标客户端接入的网络的网络带宽情况的方法可以如下所述,确定目标客户端对应的发送缓冲区的数据量。基于目标客户端对应的发送缓冲区的数据量,确定目标客户端接入的网络的网络带宽情况。
[0072] 其中,服务端为多个与之连接的客户端分别设置有发送缓冲区,发送缓冲区用于写入服务端将要发送给客户端的数据,在收到客户端返回的响应消息(用于指示客户端已收到某数据)后,服务端删除发送缓冲区中对应该响应消息的数据。所以,在服务端写入各个发送缓冲区的速度相同的情况下,某一发送缓冲区的数据量越大,说明该发送缓冲区对应的发送速度较慢,该发送缓冲区对应的目标客户端的网络带宽不足。
[0073] 在实施中,首先,确定目标客户端对应的发送缓冲区的数据量。
[0074] 然后,在一种可能的实现方式中,可以将该数据量与一个设定的目标数据量阈值相比,当数据量大于目标数据量阈值时,可以确定该目标客户端接入的网络的网络带宽不足;当数据量小于目标数据量阈值时,可以确定该目标客户端接入的网络的网络带宽充足。
[0075] 或者,在另一种可能的实现方式中,确定所播放的视频与目标客户端播放的视频相同的所有客户端对应的发送缓冲区的数据量的平均值。如果目标客户端对应的发送缓冲区的数据量与该平均值的差值大于目标阈值,则确定目标客户端接入的网络的网络带宽不足。
[0076] 其中,目标客户端对应的发送缓冲区的数据量与该平均值的差值大于目标阈值,是指该数据量减去该平均值的差值大于目标阈值。
[0077] 在实施中,通过将所播放的视频与目标客户端播放的视频相同的所有客户端对应的发送缓冲区的数据量的平均值作为比较基准,可以减轻视频源本身的影响(例如,视频源较差则发送速率普遍较差,发送缓冲区的数据量普遍较大)。如果目标客户端对应的发送缓冲区的数据量大于该平均值,则可以说明目标客户端的接收速度比较慢,当数据量超过该平均值的数据量达到目标阈值时,说明目标客户端接入的网络的网络带宽不足。如果目标客户端对应的发送缓冲区的数据量小于该平均值,则说明该目标客户端的接收速度较快,所接入的网络的网络带宽充足。
[0078] 在一种可能的实现方式中,为了便于用户了解网络带宽情况,在确定目标客户端接入的网络的网络带宽情况之后,还可以向目标客户端发送携带有网络情况的消息。
[0079] 在实施中,如果服务端确定目标客户端接收的网络的网络带宽充足,则即使降低视频的码率,也不会使得视频播放变得流畅,所以在这种情况下可以不做视频码率的调节处理。为了让用户了解不降低视频码率的原因(例如,对于用户自己选择降低码率的情况,可以对用户进行相应的提示),可以向目标客户端发送携带有网络情况的消息,例如,该消息可以为“此时网络带宽充足,不需要降低码率”。另外,为了增强用户的自主性,在目标客户端显示该消息的界面中,还可以显示有“是否继续降低码率”的选项。
[0080] 如果服务端确定目标客户端接收的网络带宽不足,也可以向目标客户端发送携带有网络情况的信息,例如,在这种情况下该信息可以为“此时网络带宽不足,将要降低码率”。
[0081] 在步骤103中,如果确定目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流。
[0082] 其中,第二码率低于第一码率。
[0083] 降低码率的请求中携带有播放视频的标识和播放进度。
[0084] 服务端可以预先存储有多个码率的视频流。
[0085] 在实施中,当确定目标客户端接入的网络的网络带宽不足时,需要向目标客户端发送第二码率的视频流。并且,发送的第二码率的视频流的第一帧应当准确,以避免画面回退或者跳帧。
[0086] 在一种可能的实现方式中,获取待发送的第二码率的视频流的方法可以如下所述,基于播放视频的标识和播放进度,在播放视频的标识对应的视频流中,确定播放进度之后的视频流为待发送的第二码率的视频流。
[0087] 其中,播放进度可以为客户端发送降低码率的请求时,正在播放的视频帧的时间戳。
[0088] 在实施中,服务端可以根据降低码率的请求中携带的视频的标识确定总的第二码率的视频流。然后,根据携带的视频帧的时间戳,在总的第二码率的视频流中,确定时间戳与携带的时间戳相同的视频帧。最后,将确定出的视频帧之后的所有视频流确定为待发送的视频流。从而,减小了画面回跳或者跳帧出现的可能性。
[0089] 在步骤104中,向目标客户端通过双向通信链接发送第二码率的视频流。
[0090] 在实施中,在获取到待发送的第二码率的视频流之后,即可以将待发送的第二码率的视频流发送给目标客户端。
[0091] 在一种可能的实现方式中,为了使得用户了解到当前码率已经降低,还可以向目标客户端发送携带有码率已降低的信息的消息。
[0092] 需要补充的是,除了上述降低码率的情况之外,还包含升高码率的情况,具体过程可以如下所述:
[0093] 第一步,在接收到目标客户端发送的升高码率的请求后,获取待发送的第三码率的视频流。
[0094] 其中,如果该升高码率的请求是在目标客户端通过双向通信链接发送第一码率的视频流之后发送的,则第三码率高于第一码率。如果该升高码率的请求是在目标客户端通过双向通信链接发送第二码率的视频流之后发送的,则第三码率高于第二码率。
[0095] 升高码率的请求中还携带有播放视频的标识和播放进度。播放进度可以为客户端发送升高码率的请求时,正在播放的视频帧的时间戳。
[0096] 在实施中,在播放视频过程中,目标客户端实时监测视频播放缓存区的剩余可播放视频的时长,如果该时长在一段时间内均大于目标时长,则目标客户端可以尝试升高视频码率。则此时,可以向服务端发送升高视频码率的请求。
[0097] 或者,用户在观看视频的过程中,也可以手动选择升高视频的码率。此时,用户可以在终端上操作,触发升高码率的指令,当目标客户端检测到升高码率的指令时,向服务端发送升高码率的请求。
[0098] 在接收到升高码率的请求时,需要确定待发送的第三码率的视频流。
[0099] 首先,可以根据升高码率的请求中携带的视频的标识确定总的第三码率的视频流。然后,根据携带的视频帧的时间戳,在总的第三码率的视频流中,确定时间戳与携带的时间戳相同的视频帧。最后,将确定出的视频帧之后的所有视频流确定为待发送的视频流。从而,减小了画面回跳或者跳帧出现的可能性。
[0100] 第二步,向目标客户端通过双向通信链接发送第三码率的视频流[0101] 在实施中,在获取到待发送的第三码率的视频流之后,即可以将待发送的第三码率的视频流发送给目标客户端。
[0102] 为了便于用户了解到当前码率已经升高,还可以向目标客户端发送携带有码率已经升高的信息的消息。
[0103] 本申请实施例提供了一种调节视频码率的方法,与相关技术中的降低码率的方法相比,由于相关技术中的客户端通过HTTP获取直播流,而HTTP协议单向通信,所以客户端很难向服务端发送通知消息,客户端在检测到需要调节码率时,只能重新发起播放请求,将播放地址切换为低码率视频地址,建立新的链接请求播放低码率音视频流。这不可避免的会导致画面回跳或跳帧问题的发生。
[0104] 而本申请实施例提供的调节视频码率的方法,在向目标客户端通过双向通信链接发送第一码率的视频流的过程中,接收到目标客户端发送的降低码率的请求后,确定目标客户端接入的网络的网络带宽情况。如果确定目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流,并向目标客户端通过原有的双向通信链接发送第二码率的视频流。可见,本申请实施例提供的调节视频码率的方法,通过双向通信链接来发送视频流和信令传递,从而,当客户端检测到可能发生卡顿时,可以通过双向通信链接向服务器端发送降低码率的请求,则服务器可以直接通过原有的双向通信链接发送视频流给客户端,不需要建立新的链接,减小了画面回跳和跳帧出现的可能性,有效提高了用户的观看体验。
[0105] 另外,通过在接收到降低码率的请求时,由服务端判断客户端接入的网络的网络带宽情况,可以减少在网络带宽充足时降低码率的情况的发生。
[0106] 下面,以一个具体的实例对本申请实施例提供的调节视频码率的方法进行叙述。
[0107] (1)目标客户端初始播放第一码率的视频。
[0108] (2)目标客户端实时检测视频播放缓冲区的剩余可播放视频的时长大小,在时长小于目标时长时,判断可能会发生卡顿,此时可以通过RTMP通知消息告知服务端需要降低码率。
[0109] (3)服务端收到目标客户端发送的降低码率的请求后,对目标客户端接入的网络的网络带宽情况进行检测和确认,检测方案如下:
[0110] a:服务端实时统计所有客户端对应的发送缓冲区的数据量的平均值;
[0111] b:检测目标客户端对应的发送缓冲区的数据量的大小,当该数据量与平均值的差值大于目标阈值时,确认网络带宽不足,需要降低码率播放。
[0112] (4)服务端检查确认后,会告知客户端检测结果。
[0113] (5)确认需要降低码率后,服务端启动视频帧替换功能,获取提前编码的第二码率的视频流,查找发送位置,基于原有双向通信链接,发送待发送的第二码率的视频流,同时通知客户端当前实际码率已经发生变化。
[0114] (6)降低码率之后,目标客户端检测到视频播放缓存区的剩余可播放视频持续稳定一段时间后尝试提升播放画质,通知服务端需要提升码率。
[0115] (7)服务端接收到升高码率的请求后,关闭视频帧动态替换功能,按照原有的双向通信链接发送第一码率的视频流。
[0116] 基于相同的技术构思,本申请实施例还提供了一种调节视频码率的装置,该装置可以为上述实施例中的服务器,如图2所示,该装置包括:
[0117] 发送模块201,用于向目标客户端通过双向通信链接发送第一码率的视频流;
[0118] 确定模块202,用于在接收到目标客户端发送的降低码率的请求后,确定目标客户端接入的网络的网络带宽情况;
[0119] 获取模块203,用于如果确定目标客户端接入的网络的网络带宽不足,则获取待发送的第二码率的视频流,其中,第二码率低于第一码率;
[0120] 发送模块201,还用于向目标客户端通过双向通信链接发送第二码率的视频流。
[0121] 在一种可能的实现方式中,确定模块202,用于:
[0122] 确定目标客户端对应的发送缓冲区的数据量;
[0123] 基于目标客户端对应的发送缓冲区的数据量,确定目标客户端接入的网络的网络带宽情况。
[0124] 在一种可能的实现方式中,确定模块202,用于:
[0125] 确定所播放的视频与目标客户端播放的视频相同的所有客户端对应的发送缓冲区的数据量的平均值;
[0126] 如果目标客户端对应的发送缓冲区的数据量与平均值的差值大于目标阈值,则确定目标客户端接入的网络的网络带宽不足。
[0127] 在一种可能的实现方式中,降低码率的请求中携带有播放视频的标识和播放进度;
[0128] 获取模块203,用于:
[0129] 基于播放视频的标识和播放进度,在播放视频的标识对应的视频流中,确定播放进度之后的视频流为待发送的第二码率的视频流。
[0130] 在一种可能的实现方式中,发送模块201,还用于:
[0131] 向目标客户端发送携带有网络情况的消息。
[0132] 在一种可能的实现方式中,降低码率的请求是在目标客户端检测到视频播放缓存区的剩余可播放视频的时长小于目标时长时发送的。
[0133] 在一种可能的实现方式中,获取模块203,还用于:
[0134] 在接收到目标客户端发送的升高码率的请求后,获取待发送的第三码率的视频流,其中,第三码率高于第一码率;
[0135] 发送模块201,还用于:
[0136] 向目标客户端通过双向通信链接发送第三码率的视频流。
[0137] 关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0138] 需要说明的是:上述实施例提供的调节视频码率的装置在进行视频码率的调节时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的调节视频码率的装置与调节视频码率的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0139] 图3是本申请实施例提供的一种服务器的结构示意图,该服务器300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)301和一个或一个以上的存储器302,其中,存储器302中存储有至少一条指令,该至少一条指令由处理器301加载并执行以实现上述调节视频码率的方法。
[0140] 在示例性实施例中,还提供了一种计算机可读存储介质,计算机可读存储介质中存储有至少一条指令,至少一条指令由处理器加载并执行以实现上述实施例中的调节视频码率的方法。例如,所述计算机可读存储介质可以是ROM(Read-Only Memory)、随机存取存储器(Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
[0141] 本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0142] 以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈