CN113099273B - 一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质 - Google Patents

一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质 Download PDF

Info

Publication number
CN113099273B
CN113099273B CN202110372284.7A CN202110372284A CN113099273B CN 113099273 B CN113099273 B CN 113099273B CN 202110372284 A CN202110372284 A CN 202110372284A CN 113099273 B CN113099273 B CN 113099273B
Authority
CN
China
Prior art keywords
video block
opportunity
client
code rate
normal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110372284.7A
Other languages
English (en)
Other versions
CN113099273A (zh
Inventor
黄家玮
苏琪琛
李威赫
刘卓然
王建新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Central South University
Original Assignee
Central South University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Central South University filed Critical Central South University
Priority to CN202110372284.7A priority Critical patent/CN113099273B/zh
Publication of CN113099273A publication Critical patent/CN113099273A/zh
Application granted granted Critical
Publication of CN113099273B publication Critical patent/CN113099273B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质,该方法中客户端分别以高低优先级同时向服务器请求低码率和高码率视频块。当客户端收到低优先级的高码率视频块后,用其替换客户端缓冲区中的低码率视频块。由于低优先级的高码率视频块不会阻塞高优先级的低码率视频块传输,本发明可以利用网络中的剩余带宽提高网络资源利用率和视频的平均码率,同时可以有效降低视频块之间的码率切换,从而改善用户的观影体验。

Description

一种基于机会策略的视频块替换方法、客户端、服务器、系统 及可读存储介质
技术领域
本发明属于视频流媒体技术,具体涉及一种基于机会策略的视频块替换方法、客户端,服务器、系统及可读存储介质。
背景技术
通信技术的快速发展推动了智能终端设备与音视频多媒体业务的普及和发展,也使得视频业务流量在近年来持续高速增长。在这一背景下,基于HTTP的动态自适应视频流媒体技术(Dynamic Adaptive Streaming over HTTP,DASH)应运而生。在DASH系统中,同一视频被编码为不同的码率,并以固定的时间间隔切片(一般为2-10秒),存放在HTTP服务器上。客户端播放时,通过实时监测网络带宽变化或缓冲区占用率,向不同码率的视频切片发送HTTP GET请求,从而动态地切换视频质量,达到对网络带宽的最大利用,并且保证播放的流畅度。
为了优化用户的观影体验(Quality of Experience,QoE),学者们提出了许多的自适应码率算法(Adaptive Bitrate Algorithm,ABR),以根据网络实时状况或缓冲区占用率为每个视频块选择合适的码率。但是在互联网中,客户端和服务器之间的网络状况具有多样性和不可预测性。尽管ABR算法可以根据实时网络状况等信息灵活地为每个视频块切换码率,但是由于可用带宽的高度可变性,现有的ABR算法很难在所有的网络场景下均选择合适的码率。因此,视频在播放过程中仍然会出现频繁的码率切换和视频卡顿,严重地影响用户的观影体验。若ABR算法选择的码率过于保守,则会导致客户端缓冲区被提前填满。当客户端的缓冲区被填满,客户端将暂停向服务器发送视频块请求,使得客户端与服务器之间的底层TCP连接将恢复到慢启动阶段,客户端难以充分利用网络中的可用带宽,存在剩余带宽浪费的现象。
发明内容
针对ABR算法在复杂网络环境中所存在的问题,本发明提供一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质,该方法利用网络中存在的剩余带宽传输机会视频块,并使用传输完成的机会视频块替换缓冲区中相应的低码率视频块。同时本发明将正常视频块和机会视频块分别标记为高优先级和低优先级,使得机会视频块的并行传输不会造成正常视频块的额外排队延时。通过该机会替换机制,可以减少网络中的带宽浪费,同时可以提高视频平均码率,降低视频块之间的码率切换,进而改善用户的观影体验。
一方面,本发明提供的一种基于机会策略的视频块替换方法,包括如下步骤:
步骤1:客户端向服务器请求正常视频块和机会视频块;
所述机会视频块用于替代客户端缓冲区中安全阈值之后最小码率的视频块,所述机会视频块的码率高于所述最小码率;所述正常视频块的码率是按照既定的自适应码率算法选择的;
步骤2:服务器接收客户端的视频块请求,并传送对应码率的正常视频块和机会视频块;
其中,所述正常视频块为高优先级,所述机会视频块为低优先级;
步骤3:客户端若接收了正常视频块,则将接收的正常视频块加入至缓冲区;若接收了机会视频块,且所述机会视频块对应的待替换视频块暂未播放,则将所述机会视频块替换所述待替换视频块;若所述待替换视频块已播放,丢弃所述机会视频块。
第二方面,本发明提供一种基于机会策略的视频块替代方法,应用于客户端,客户端执行过程分为视频块请求过程和视频块接收过程;
所述视频块请求过程包括:
S1:更新客户端缓冲区的数据;
S2:判断客户端是否请求了缓冲区中安全阈值后的正常视频块,若是,执行步骤S3;
S3:选择缓冲区中安全阈值之后具有最小码率的视频块作为待替换视频块,并基于待替换视频块的码率确定机会视频块的码率,所述机会视频块的码率高于所述最小码率;
S4:客户端向服务器请求对应码率的机会视频块;
其中,客户端执行机会视频块请求过程,同步按照既定的自适应码率算法选择正常视频块的码率,并向服务器请求正常视频块;
所述视频块接收过程包括:
S5:判断接收的视频块是否是机会视频块;若是,判断机会视频块对应的待替换视频块是否暂未播放,若是,将所述机会视频块替换所述待替换视频块;若所述待替换视频块已播放,丢弃所述机会视频块;若接收的视频块不是机会视频块,将接收的正常视频块加入至缓冲区;
其中,所述正常视频块为高优先级,所述机会视频块为低优先级。
第三方面,本发明提供一种基于机会策略的视频块替代方法,应用于服务器,包括如下步骤:
Step 1:接收来自客户端的视频块请求,转至Step 2;
Step 2:判断客户端请求的视频块为机会视频块还是正常视频块;
其中,客户端请求的视频块分为机会视频块和正常视频块,所述机会视频块用于替代客户端缓冲区中安全阈值之后最小码率的视频块,所述机会视频块的码率高于所述最小码率;所述正常视频块的码率是按照既定的自适应码率算法选择的;
Step 3:服务端将客户端请求的机会视频块标记为低优先级,转至Step 4;以及服务端将客户端请求的正常视频块标记为高优先级,转至Step 5;
Step 4:服务端向客户端发送低优先级的机会视频块;
Step5:服务端向客户端发送高优先级的正常视频块。
可选地,所述机会视频块的码率为:可选码率中与待替换视频块Cr前后两个视频块的平均码率Bavg的差值最小的码率。
可选地,客户端请求所述机会视频块时需判断客户端是否请求了缓冲区中安全阈值后的正常视频块,其中,若客户端缓冲区中所述安全阈值之后存在已下载完成的正常视频块或者处于下载过程的正常视频块,视为客户端请求了缓冲区中安全阈值后的正常视频块。
即客户端缓冲区中所述安全阈值之后存在已下载完成的正常视频块或者处于下载过程的正常视频块是视为已请求了安全阈值后正常视频块的情况。
可选地,高优先级的正常视频块和低优先级的机会视频块在传输过程中会分别进入交换机的高优先级队列和低优先级队列,且当高优先级队列为空时,再发送低优先级队列中的视频块。
第四方面,本发明提供的一种客户端,包括:
更新模块,用于更新客户端缓冲区的数据;
判断模块,用于判断客户端是否请求了缓冲区中安全阈值后的正常视频块;
待替换视频块获取模块,用于若客户端请求了缓冲区中安全阈值后的正常视频块,选择缓冲区中安全阈值之后具有最小码率的视频块作为待替换视频块;
机会视频块码率获取模块,用于基于待替换视频块的码率确定机会视频块的码率;
请求模块,用于向服务器请求对应码率的机会视频块以及请求基于自适应码率算法确定码率的正常视频块;
接收模块,用于从服务器接收机会视频块和待替换视频块;
鉴别模块,用于判断接收的视频块是否是机会视频块以及判断机会视频块对应的待替换视频块是否暂未播放;
处理模块,用于若接收的视频块为机会视频块且对应的待替换视频块暂未播放时,将所述机会视频块替换所述待替换视频块;
丢弃模块,用于若所述待替换视频块已播放时,丢弃所述机会视频块;
缓存模块,用于将接收的正常视频块加入至缓冲区。
第五方面,本发明提供的一种服务器,包括:
请求接收模块,用于接收来自客户端的视频块请求,其中,请求的视频块分为机会视频块和正常视频块,所述机会视频块用于替代客户端缓冲区中安全阈值之后最小码率的视频块,所述机会视频块的码率高于所述最小码率;所述正常视频块的码率是按照既定的自适应码率算法选择的;
请求类型鉴别模块,用于判断客户端请求的视频块是否为机会视频块;
标记模块,用于将客户端请求的机会视频块标记为低优先级以及将客户端请求的正常视频块标记为高优先级;
视频块传送模块,用于向客户端发送低优先级的机会视频块以及向客户端发送高优先级的正常视频块。
第六方面,本发明提供的一种系统,包括上述应用所述基于机会策略的视频块替代方法的客户端和上述应用基于机会策略的视频块替代方法的服务器,所述客户端与所述服务器通信连接。
第七方面,本发明提供的一种可读存储介质,存储了计算机程序,所述计算机程序被处理器调用以执行所述基于机会策略的视频块替代方法的步骤。
有益效果
本发明提出了一种名为OCRM(Opportunistic Chunk Replacement Mechanism)的基于机会策略的视频块替换机制,以达到充分利用网络带宽,提高用户观影体验的目标。为了保证不对正常视频块造成额外的排队延时,OCRM利用剩余带宽以低优先级传输机会视频块,使得机会视频块的并行传输不会造成正常视频块的额外排队延时;并用机会视频块替换缓冲区中相应的低码率视频块。与最新的ABR算法相结合,OCRM可以明显地提高网络资源利用率和和视频平均码率,又能降低视频块之间的码率切换,从而提升用户的观影体验。
附图说明
图1为本发明的流程图(客户端)。
图2位本发明的流程图(服务器)。
图3为不同类型的ABR算法与OCRM相结合的实时码率测试图。OCRM即本发明技术方案,即基于机会策略的视频块替换机制(Opportunistic Chunk Replacement Mechanism,OCRM)。图3(a)为基于缓冲区占用率的ABR算法与OCRM相结合的实时码率测试图,图3(b)为基于吞吐量的ABR算法与OCRM相结合的实时码率测试图,图3(c)为基于混合控制论的ABR算法与OCRM相结合的实时码率测试图。
图4为不同网络抖动场景下的性能测试图,其中图4(a)为网络利用率随带宽抖动系数差异变化的示意图,图4(b)为视频平均码率随带宽抖动系数差异变化的示意图,图4(c)为视频的平均码率切换随带宽抖动系数差异变化的示意图,图4(d)为平均QoE随带宽抖动系数差异变化的示意图。OCRM即本发明技术方案。
图5为不同ABR算法下的性能测试图,其中图5(a)为不同ABR算法下网络利用率的累积分布图,图5(b)不同ABR算法下码率的累积分布图,图5(c)为不同ABR算法下码率切换的累积分布图,图5(d)不同ABR算法下平均QoE的累积分布图。OCRM即本发明技术方案。
图6为典型网络场景下不同QoE定义形式的性能测试图,其中,图6(a)为不同网络场景下,使用QoE_lin表示视频的整体QoE,图6(b)为不同网络场景下,使用QoE_log表示视频的整体QoE,图6(c)为不同网络场景下,使用QoE_hd表示视频的整体QoE。OCRM即本发明技术方案。
具体实施方式
下面将结合实施例对本发明做进一步的说明。
实施例1:
如图1所示,本实施例中所述视频块替代方法应用在客户端,其包括以下步骤:
步骤1-1:更新客户端缓冲区的各项数据,其中,各项数据包括缓冲区的占用率、风险区的视频块数量、安全区的视频块数量,转至步骤2-1和步骤3-1。
其中,步骤2-1是表示客户端向服务器请求机会视频块的流程的起始步骤,步骤3-1是表示客户端向服务器请求正常视频块的流程的起始步骤。两者是并列进行的。
步骤2-1:判断客户端是否请求了安全阈值后的正常视频块,如果是,转至步骤2-2;否则转至步骤1-1;
步骤2-2:选择缓冲区安全阈值后具有最小码率的视频块Cr作为待替换视频块,转至步骤2-3;
步骤2-3:计算待替换视频块Cr前后两个视频块的平均码率Bavg,选择最接近Bavg的码率Br作为机会视频块Co的码率,转至步骤2-4;
步骤2-4:客户端向服务器请求码率为Br的机会视频块Co,转至步骤4-1;
步骤3-1:根据指定的自适应码率算法选择正常视频块的码率,并向服务器请求正常视频块,转至步骤4-1;
客户端接收来自服务器的视频块按以下步骤操作:
步骤4-1:判断接收到来自服务器的视频块是否为机会视频块,如果是,转至步骤4-2;否则转至步骤4-5;
其中,机会视频块的优先级为低优先级,正常视频块的优选机为高优先级,依据高低优先级确定传输顺序。
步骤4-2:判断机会视频块Co对应的待替换视频块Cr是否暂未播放,如果是,转至步骤4-3;否则转至步骤4-4;
步骤4-3:使用机会视频块Co替换缓冲区中的待替换视频块Cr,转至步骤4-6;
步骤4-4:丢弃当前机会视频块Co,转至步骤1-1;
步骤4-5:将接收到的正常视频块按照顺序加入到缓冲区中,转至步骤4-6;
步骤4-6:判断播放器中视频是否播放完成,如果是,结束本操作主体;否则转至步骤1-1。
需要说明的是,本实施例中优选机会视频块的码率按照步骤2-3来确定,即可选码率中与待替换视频块Cr前后两个视频块的平均码率Bavg的差值最小的码率;其中,可选码率是依据实际应用需求可以进行设置或者约束,其表示当前可以选择的码率范围,其他可行的实施例中,不局限于此,可以对其进行适应性调整,总归机会视频块的码率是高于待替换视频块的码率。
实施例2:本实施例中所述视频块替代方法应用在服务器,其包括以下步骤:
S1-1:接收来自客户端的视频块请求,转至S2-1;
S2-1:判断客户端请求的视频块是否为机会视频块,如果是,则转至S3-1;否则转至S5-1;
S3-1:服务端将客户端请求的机会视频块标记为低优先级,转至S4-1;
S4-1:服务端向客户端发送低优先级的机会视频块,转至S1-1继续接收来自客户端的视频块请求;
S5-1:服务端将客户端请求的正常视频块标记为高优先级,转至S6-1;
S6-1:服务端向客户端发送高优先级的正常视频块,转至S1-1继续接收来自客户端的视频块请求。
需要说明的是,本实施例中,服务器接收的机会视频块请求和正常视频块请求中,客户端分别按照自适应码率算法选择正常视频块的码率以及根据待替换的视频块的码率确定,具体可以参照前述实施例1的描述。
实施例3:
实施例1和实施例2分别以客户端和服务器的角度进行陈述,本实施例以包含客户端和服务器的系统为目标进行阐述。本实施例中所述方法包括:
步骤1:客户端向服务器请求正常视频块和机会视频块;
所述机会视频块用于替代客户端缓冲区中安全阈值之后最小码率的视频块,所述机会视频块的码率高于所述最小码率;所述正常视频块的码率是按照既定的自适应码率算法选择的;
步骤2:服务器接收客户端的视频块请求,并传送对应码率的正常视频块和机会视频块;
其中,所述正常视频块为高优先级,所述机会视频块为低优先级;
步骤3:客户端若接收了正常视频块,则将接收的正常视频块加入至缓冲区;若接收了机会视频块,且所述机会视频块对应的待替换视频块暂未播放,则将所述机会视频块替换所述待替换视频块;若所述待替换视频块已播放,丢弃所述机会视频块。
其中,各个步骤的具体实现的细节可以参照实施例1和实施例2的详细阐述。
需要说明的是,本发明进一步优选在执行请求机会视频块时,需判断客户端是否请求了缓冲区中安全阈值后的正常视频块,其中,通过判断客户端缓冲区的安全阈值后是否已有下载完成的正常视频块或正在下载过程中的正常视频块(缓冲区大小设置为240秒,安全阈值设置为30秒)。若存在,则视为客户端请求了缓冲区中安全阈值后的正常视频块。再选择安全阈值后具有最小码率的视频块Cr(已完成下载或正在下载的视频块)作为待替换的视频块。然后计算待替换视频块Cr的前后两个视频块的平均码率Bavg,选择最接近Bavg的码率Br作为机会视频块Co的码率。最后客户端向服务器请求码率为Br的机会视频块Co
其中,在服务器将正常视频块标记为高优先级并发送,将该机会视频块标记为低优先级并发送的过程中,高优先级的正常视频块和低优先级的机会视频块在传输过程中会分别进入交换机的高优先级队列和低优先级队列,使得正常视频块以更高的优先级发送。只有当高优先级队列为空时,位于低优先级队列的机会视频块才会发送,保证了机会视频块不会造成正常视频块的额外排队延时。
实施例4.
基于前述实施例1所述方法,本实施例还提供一种客户端,其包括:相互连接的更新模块,判断模块,待替换视频块获取模块,机会视频块码率获取模块,请求模块,接收模块,鉴别模块,处理模块,丢弃模块,缓存模块。
其中,更新模块,用于更新客户端缓冲区的数据;
判断模块,用于判断客户端是否请求了缓冲区中安全阈值后的正常视频块;
待替换视频块获取模块,用于若客户端请求了缓冲区中安全阈值后的正常视频块,选择缓冲区中安全阈值之后具有最小码率的视频块作为待替换视频块;
机会视频块码率获取模块,用于基于待替换视频块的码率确定机会视频块的码率;
请求模块,用于向服务器请求对应码率的机会视频块以及请求基于自适应码率算法确定码率的正常视频块;
接收模块,用于从服务器接收机会视频块和待替换视频块;
鉴别模块,用于判断接收的视频块是否是机会视频块以及判断机会视频块对应的待替换视频块是否暂未播放;
处理模块,用于若接收的视频块为机会视频块且对应的待替换视频块暂未播放时,将所述机会视频块替换所述待替换视频块;
丢弃模块,用于若所述待替换视频块已播放时,丢弃所述机会视频块;
缓存模块,用于将接收的正常视频块加入至缓冲区。
其中,各个单元模块的具体实现过程请参照前述方法的对应过程。应当理解,上述单元模块的具体实现过程参照方法内容,本发明在此不进行具体的赘述,且上述功能模块单元的划分仅仅是一种逻辑功能的划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。同时,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
在一些可行的方式中,其客户端包括处理器和存储器,存储器存储了计算机程序,所述处理器调用所述计算机程序以执行:应用于客户端的所述基于机会策略的视频块替代方法的步骤。其中,各个步骤的具体实现过程请参照前述方法的阐述。
实施例5:
基于前述实施例2的描述,本实施例提供一种服务器,其包括:请求接收模块,请求类型鉴别模块,标记模块以及视频块传送模块。
请求接收模块,用于接收来自客户端的视频块请求,其中,请求的视频块分为机会视频块和正常视频块,所述机会视频块用于替代客户端缓冲区中安全阈值之后最小码率的视频块,所述机会视频块的码率高于所述最小码率;所述正常视频块的码率是按照既定的自适应码率算法选择的;
请求类型鉴别模块,用于判断客户端请求的视频块是否为机会视频块;
标记模块,用于将客户端请求的机会视频块标记为低优先级以及将客户端请求的正常视频块标记为高优先级;
视频块传送模块,用于向客户端发送低优先级的机会视频块以及向客户端发送高优先级的正常视频块。
其中,各个单元模块的具体实现过程请参照前述方法的对应过程。应当理解,上述单元模块的具体实现过程参照方法内容,本发明在此不进行具体的赘述,且上述功能模块单元的划分仅仅是一种逻辑功能的划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。同时,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
在一些可行的方式中,该服务器包括处理器和存储器,存储器存储了计算机程序,所述处理器调用计算机程序以执行:应用于服务器的该基于机会策略的视频块替代方法的步骤。其中,各个步骤的具体实现过程请参照前述方法的阐述。
实施例6:
本实施例提供一种可读存储介质,其存储了计算机程序,计算机程序被处理器调用以执行:应用于客户端或应用于服务器或应用于包含客户端和服务器的系统上的所述基于机会策略的视频块替代方法的步骤。
各个步骤的具体实现过程请参照前述方法的阐述。
应当理解,在本发明实施例中,所称处理器可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
所述可读存储介质为计算机可读存储介质,其可以是前述任一实施例所述的控制器的内部存储单元,例如控制器的硬盘或内存。所述可读存储介质也可以是所述控制器的外部存储设备,例如所述控制器上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述可读存储介质还可以既包括所述控制器的内部存储单元也包括外部存储设备。所述可读存储介质用于存储所述计算机程序以及所述控制器所需的其他程序和数据。所述可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明利用轻量级的sabre测试床来实现,并进行了性能测试。其中,播放器的缓冲区设置为240秒,安全阈值设置为30秒,即0-30秒为风险区,30-240秒为安全区。测试过程采用开源的视频Big Bunk Bunny(BBB)和开源的3G网络trace(HSDPA数据集),4G网络trace(4G/LTE数据集)和有线带宽trace(FCC数据集)。
图3为不同类型的ABR算法与OCRM相结合的实时码率测试图,包括基于缓冲区占用率的BOLA算法,基于吞吐量的FESTIVE算法,基于缓冲区占用率和吞吐量预测的RobustMPC算法。该测试使用开源的3G网络trace(HSDPA数据集)。从图中可以看出,BOLA算法比FESTIVE算法和RobustMPC算法具有更高的码率切换,而Festive则以牺牲平均码率为代价,降低了码率的切换。总之,OCRM与三种类型的ABR算法相结合,均减少了视频块之间的码率切换,并提高了视频的整体码率。
图4为不同网络抖动场景下的性能测试图,由于网络带宽的变化服从高斯分布,分别生成符合N(1500Kbps,0Kbps),N(1500Kbps,250Kbps),N(1500Kbps,500Kbps),N(1500Kbps,750Kbps),N(1500Kbps,1000Kbps)分布的带宽trace,同时将网络延时均设置为100ms。
从图4(a)可以看出,随着网络抖动系数的增加,各个ABR算法的网络利用率逐渐下降,由于OCRM可以充分利用网络中的剩余带宽,因此,各ABR算法使用OCRM后的网络利用率均有不同程度的提升。图4(b)显示,由于OCRM可以使用高码率的机会视频块替换低码率的视频块,因此各ABR算法使用OCRM后,平均码率均有提升。如图4(c)所示,由于OCRM选择待替换视频块前后两个视频块的平均码率为机会视频块的码率,因此会明显降低视频块之间的码率切换。如图4(d)所示,综合上述指标,OCRM对用户观影体验QoE也有明显的提升效果。
图5为不同ABR算法下的性能测试图,在该测试中,使用了公开的3G网络数据集(HSDPA数据集)。图5(a)显示了网络利用率的累积分布函数,从图中可以看出,OCRM可以明显提升不同ABR算法的网络利用率,尤其对于BOLA算法的提升效果最为明显。图5(b)和图5(c)分别显示了码率和码率切换的累积分布函数,由于OCRM充分利用剩余带宽下载机会视频块,并且选择合适的码率替换缓冲区中的低码率视频块,因此,OCRM提升视频的平均码率的同时,可以大幅降低视频块之间的码率切换。如图5(d)所示,综合OCRM的上述机制,不同的ABR算法结合OCRM后可明显提升用户的观影体验。
图6为不同网络场景与不同QoE定义形式下的性能测试图。实验采用三个公开的网络数据集:第一个是3G网络数据集(HSDPA数据集),第二个是4G网络数据集(4G/LTE数据集),第三个是有线带宽数据集(FCC数据集)。其中线性QoE表示对影响QoE的三个指标:码率,码率切换,视频卡顿有同样的权重分配,对数QoE则降低了高码率视频块对用户感知质量的提升效果,而高清QoE为高码率的视频块分配更高的权重,满足了高清视频对码率的特殊需求。
图6(a)为不同ABR算法在三种网络场景下,使用线性QoE定义形式的用户观影体验。从图中可以看出,由于在有线带宽网络的场景中,剩余带宽较小,因此OCRM对不同ABR算法的性能提升不明显。相比于4G网络场景,OCRM在3G网络场景下对各ABR算法的性能提升最明显。从图6(b)和图6(c)可以看出,相比对数QoE,高清QoE对高码率的视频块更加敏感,因此OCRM在高清QoE下的取得最佳的性能提升。
需要强调的是,本发明所述的实例是说明性的,而不是限定性的,因此本发明不限于具体实施方式中所述的实例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,不脱离本发明宗旨和范围的,不论是修改还是替换,同样属于本发明的保护范围。

Claims (10)

1.一种基于机会策略的视频块替换方法,其特征在于:包括如下步骤:
步骤1:客户端向服务器请求正常视频块和机会视频块;
所述机会视频块用于替代客户端缓冲区中安全阈值之后最小码率的视频块,所述机会视频块的码率高于所述最小码率;所述正常视频块的码率是按照既定的自适应码率算法选择的;
步骤2:服务器接收客户端的视频块请求,并传送对应码率的正常视频块和机会视频块;
其中,所述正常视频块为高优先级,所述机会视频块为低优先级;
步骤3:客户端若接收了正常视频块,则将接收的正常视频块加入至缓冲区;若接收了机会视频块,且所述机会视频块对应的待替换视频块暂未播放,则将所述机会视频块替换所述待替换视频块;若所述待替换视频块已播放,丢弃所述机会视频块。
2.一种基于机会策略的视频块替代方法,应用于客户端,其特征在于:客户端执行过程分为视频块请求过程和视频块接收过程;
所述视频块请求过程包括:
S1:更新客户端缓冲区的数据;
S2:判断客户端是否请求了缓冲区中安全阈值后的正常视频块,若是,执行步骤S3;
S3:选择缓冲区中安全阈值之后具有最小码率的视频块作为待替换视频块,并基于待替换视频块的码率确定机会视频块的码率,所述机会视频块的码率高于所述最小码率;
S4:客户端向服务器请求对应码率的机会视频块;
其中,客户端执行机会视频块请求过程,同步按照既定的自适应码率算法选择正常视频块的码率,并向服务器请求正常视频块;
所述视频块接收过程包括:
S5:判断接收的视频块是否是机会视频块;若是,判断机会视频块对应的待替换视频块是否暂未播放,若是,将所述机会视频块替换所述待替换视频块;若所述待替换视频块已播放,丢弃所述机会视频块;若接收的视频块不是机会视频块,将接收的正常视频块加入至缓冲区;
其中,所述正常视频块为高优先级,所述机会视频块为低优先级。
3.一种基于机会策略的视频块替代方法,应用于服务器,其特征在于:包括如下步骤:
Step 1:接收来自客户端的视频块请求,转至Step 2;
Step 2:判断客户端请求的视频块为机会视频块还是正常视频块;
其中,客户端请求的视频块分为机会视频块和正常视频块,所述机会视频块用于替代客户端缓冲区中安全阈值之后最小码率的视频块,所述机会视频块的码率高于所述最小码率;所述正常视频块的码率是按照既定的自适应码率算法选择的;
Step 3:服务端将客户端请求的机会视频块标记为低优先级,转至Step 4;以及服务端将客户端请求的正常视频块标记为高优先级,转至Step 5;
Step 4:服务端向客户端发送低优先级的机会视频块;
Step5:服务端向客户端发送高优先级的正常视频块。
4.根据权利要求1-3任一项所述的方法,其特征在于:所述机会视频块的码率为:可选码率中与待替换视频块Cr前后两个视频块的平均码率Bavg的差值最小的码率。
5.根据权利要求1-3任一项所述的方法,其特征在于:客户端请求所述机会视频块时需判断客户端是否请求了缓冲区中安全阈值后的正常视频块,其中,若客户端缓冲区中所述安全阈值之后存在已下载完成的正常视频块或者处于下载过程的正常视频块,视为客户端请求了缓冲区中安全阈值后的正常视频块。
6.根据权利要求1-3任一项所述的方法,其特征在于:高优先级的正常视频块和低优先级的机会视频块在传输过程中会分别进入交换机的高优先级队列和低优先级队列,且当高优先级队列为空时,再发送低优先级队列中的视频块。
7.一种客户端,其特征在于:包括:
更新模块,用于更新客户端缓冲区的数据;
判断模块,用于判断客户端是否请求了缓冲区中安全阈值后的正常视频块;
待替换视频块获取模块,用于若客户端请求了缓冲区中安全阈值后的正常视频块,选择缓冲区中安全阈值之后具有最小码率的视频块作为待替换视频块;
机会视频块码率获取模块,用于基于待替换视频块的码率确定机会视频块的码率;
请求模块,用于向服务器请求对应码率的机会视频块以及请求基于自适应码率算法确定码率的正常视频块;
接收模块,用于从服务器接收机会视频块和待替换视频块;
鉴别模块,用于判断接收的视频块是否是机会视频块以及判断机会视频块对应的待替换视频块是否暂未播放;
处理模块,用于若接收的视频块为机会视频块且对应的待替换视频块暂未播放时,将所述机会视频块替换所述待替换视频块;
丢弃模块,用于若所述待替换视频块已播放时,丢弃所述机会视频块;
缓存模块,用于将接收的正常视频块加入至缓冲区。
8.一种服务器,其特征在于:包括:
请求接收模块,用于接收来自客户端的视频块请求,其中,请求的视频块分为机会视频块和正常视频块,所述机会视频块用于替代客户端缓冲区中安全阈值之后最小码率的视频块,所述机会视频块的码率高于所述最小码率;所述正常视频块的码率是按照既定的自适应码率算法选择的;
请求类型鉴别模块,用于判断客户端请求的视频块是否为机会视频块;
标记模块,用于将客户端请求的机会视频块标记为低优先级以及将客户端请求的正常视频块标记为高优先级;
视频块传送模块,用于向客户端发送低优先级的机会视频块以及向客户端发送高优先级的正常视频块。
9.一种基于机会策略的视频块替换系统,其特征在于:包括权利要求7所述的客户端和权利要求8所述的服务器,所述客户端与所述服务器通信连接。
10.一种可读存储介质,其特征在于:存储了计算机程序,所述计算机程序被处理器调用以执行权利要求1-3任一项所述方法的步骤。
CN202110372284.7A 2021-04-07 2021-04-07 一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质 Active CN113099273B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110372284.7A CN113099273B (zh) 2021-04-07 2021-04-07 一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110372284.7A CN113099273B (zh) 2021-04-07 2021-04-07 一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质

Publications (2)

Publication Number Publication Date
CN113099273A CN113099273A (zh) 2021-07-09
CN113099273B true CN113099273B (zh) 2021-12-14

Family

ID=76674542

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110372284.7A Active CN113099273B (zh) 2021-04-07 2021-04-07 一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质

Country Status (1)

Country Link
CN (1) CN113099273B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103765905A (zh) * 2011-09-02 2014-04-30 汤姆逊许可公司 多媒体流的自适应转码的方法和装置
CN110087109A (zh) * 2019-04-19 2019-08-02 中国科学院信息工程研究所 视频码率自适应方法及装置
CN110430453A (zh) * 2019-08-28 2019-11-08 咪咕视讯科技有限公司 视频多码率切换处理方法、装置、电子设备及存储介质
CN110636339A (zh) * 2019-09-30 2019-12-31 北京字节跳动网络技术有限公司 基于码率的调度方法、装置及电子设备
CN110798709A (zh) * 2019-11-01 2020-02-14 腾讯科技(深圳)有限公司 视频处理方法和装置、存储介质及电子装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020035732A1 (en) * 2018-08-13 2020-02-20 Lenovo (Singapore) Pte. Ltd. Network slice authentication

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103765905A (zh) * 2011-09-02 2014-04-30 汤姆逊许可公司 多媒体流的自适应转码的方法和装置
CN110087109A (zh) * 2019-04-19 2019-08-02 中国科学院信息工程研究所 视频码率自适应方法及装置
CN110430453A (zh) * 2019-08-28 2019-11-08 咪咕视讯科技有限公司 视频多码率切换处理方法、装置、电子设备及存储介质
CN110636339A (zh) * 2019-09-30 2019-12-31 北京字节跳动网络技术有限公司 基于码率的调度方法、装置及电子设备
CN110798709A (zh) * 2019-11-01 2020-02-14 腾讯科技(深圳)有限公司 视频处理方法和装置、存储介质及电子装置

Also Published As

Publication number Publication date
CN113099273A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
Spiteri et al. From theory to practice: Improving bitrate adaptation in the DASH reference player
KR101716071B1 (ko) 적응적 스트리밍 기법
JP6054427B2 (ja) プレイバックレート選択を伴う改良されたdashクライアントおよび受信機
CN109302623B (zh) 一种基于QoE模型动态自适应视频的传输方法
US11527264B2 (en) Systems and methods for adaptive streaming of multimedia content
US20120195362A1 (en) System and Method for Managing Cache Storage in Adaptive Video Streaming System
CN104967884B (zh) 一种码流切换方法和装置
CN110933517B (zh) 码率切换方法、客户端和计算机可读存储介质
US11451603B2 (en) Selective pre-caching of media streams
US20120194534A1 (en) System and Method for Managing Cache Storage in Adaptive Video Streaming System
CN102204272A (zh) 流媒体中播放时间点跳转后的处理方法及装置
CN110198495A (zh) 一种视频下载和播放的方法、装置、设备和存储介质
CN105556922B (zh) 网络中的dash表示自适应
CN113411643B (zh) 一种视频质量优化方法、系统、电子设备及存储介质
CN107147921A (zh) 基于切片与智能cdn调度的视频播放加速方法和设备
Zahran et al. OSCAR: An optimized stall-cautious adaptive bitrate streaming algorithm for mobile networks
CN113099273B (zh) 一种基于机会策略的视频块替换方法、客户端、服务器、系统及可读存储介质
US20170163555A1 (en) Video file buffering method and system
US10609111B2 (en) Client-driven, ABR flow rate shaping
CN111918134A (zh) 修正视讯串流流量的方法、机顶盒及计算机可读存储介质
EP2798848A1 (en) Multi-layer rate control
CN111225243B (zh) 一种视频块调度方法及系统
CN115336283B (zh) 客户机装置和向客户机装置流传送媒体内容的方法
CN114302189A (zh) 直播清晰度处理方法及装置
US20230388556A1 (en) Banding artifact detector

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant