CN112714315B - 基于全景视频的分层缓冲方法及系统 - Google Patents

基于全景视频的分层缓冲方法及系统 Download PDF

Info

Publication number
CN112714315B
CN112714315B CN201911017244.XA CN201911017244A CN112714315B CN 112714315 B CN112714315 B CN 112714315B CN 201911017244 A CN201911017244 A CN 201911017244A CN 112714315 B CN112714315 B CN 112714315B
Authority
CN
China
Prior art keywords
code rate
video
downloading
block
buffer area
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
CN201911017244.XA
Other languages
English (en)
Other versions
CN112714315A (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.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong 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 Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201911017244.XA priority Critical patent/CN112714315B/zh
Publication of CN112714315A publication Critical patent/CN112714315A/zh
Application granted granted Critical
Publication of CN112714315B publication Critical patent/CN112714315B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明提供了一种基于全景视频的分层缓冲方法及系统,包括:缓冲区状态观测步骤、网络带宽估计步骤、用户视角预测步骤、分块视频码率分配步骤和分块视频下载调度步骤。根据当前的网络状况和缓冲区状态,决定下载分块视频的总码率并根据已下载分块视频的码率进行分块视频的更新与下载;将缓冲区分为两层,由一个阈值控制;当缓冲区长度低于该阈值时,根据用户视角预测结果分配每个分块视频的码率并下载;当缓冲区长度高于该阈值时,以平均码率下载所有分块视频,并根据用户视角预测的变化,对低于阈值的已缓存的分块视频进行更新。采用分层缓冲机制,在保证用户观看质量的同时,极大地提高了全景视频传输的网络鲁棒性。

Description

基于全景视频的分层缓冲方法及系统
技术领域
本发明涉及多媒体传输技术领域,具体地,涉及一种基于全景视频的分层缓冲方法及系统。
背景技术
全景视频等新兴的沉浸式媒体可以为用户提供个性化的观看角度和实时交互而广受欢迎。尤其对于全景视频,其可以采用头戴式显示器进行体验与交互,并且在一些主要的视频平台已经可以提供相应的视频服务。但是,与传统视频相比,全景视频要提供真正的身临其境的体验,分辨率要高于4K,这对传输带宽提出了更高的要求。调查显示,到2021年全景视频流量可能会增长20倍。此外,用户的观看视角可能会发生随机改变,使得全景视频的传输对时延更加敏感。为解决上述问题,近年来,已经提出了多种全景视频流化传输方案。
全景视频在特定时间只能看到部分视频,传输整个视频将会极大地浪费带宽。为了解决全景视频的传输问题,基于分块的全景视频自适应传输方法已被广泛应用,通过历史观看轨迹预测几秒内用户的观看视角,根据用户的观看视角进行视角区域与非视角区域分块视频的码率分配。覆盖整个场景的视频分块将以较低比特率编码,而视角内的分块视频将以较高的比特率编码,这样可以有效的节省带宽同时防止用户视角变化引起的黑屏。但是基于分块的全景视频自适应传输方法存在以下几个问题:
1.目前的视角预测方法主要通过用户的历史观看轨迹,预测接下来几秒内用户的观看视角,但是这些方法的预测结果只在2-3秒内较为准确,难以预测用户长时间的视角方向。
2.基于吞吐量的码率自适应方法根据历史网络状况估计下一时刻视频段的比特率,是一种简单有效的算法,但基于吞吐量的算法在很大程度上取决于吞吐量估计的准确性,估计错误可能会导致缓冲区下溢,出现播放卡顿的情况。
3.基于缓冲区的码率自适应算法根据缓冲区占用率请求每个视频段的比特率。当缓冲区占用率较低时,缓冲区可能会下溢,客户端请求低比特率来快速下载视频段以增加缓冲区的持续时间。当缓冲区有足够的视频段可播放时,客户端可以请求更高的视频比特率得到更好的视频质量。但是,基于缓冲区的算法需要较长的缓冲区持续时间才能保持稳定。
与传统视频相比,全景视频对延迟更敏感并且具有更多的交互性。有效的全景视频传输方案需要准确的视角预测。对于短缓冲区,由于视角预测结果相对准确,可以使分块视频码率分配精确的匹配用户视角。但是,当网络波动时,可能会导致频繁的卡顿。对于长缓冲区,它具有更好的网络稳定性。但是,由于当缓冲区持续时间较长时,视角预测准确性性能会明显下降。随着缓冲区中的视频播放,视角中的视频质量可能会因预测误差而下降。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于全景视频的分层缓冲方法及系统。
根据本发明提供的一种基于全景视频的分层缓冲方法,包括:
缓冲区状态观测步骤:获取当前的缓冲区状态,包括当前的缓冲区长度以及缓冲区内已下载的各个分块视频的码率;
网络带宽估计步骤:根据历史的下载情况,估计当前的网络状况;
用户视角预测步骤:根据用户的历史观看轨迹预测下一时刻每个分块视频被观看到的概率;
分块视频码率分配步骤:根据当前的网络状况和缓冲区状态,决定下载分块视频的总码率并根据已下载分块视频的码率进行分块视频的更新与下载;将缓冲区分为两层,由一个阈值控制;当缓冲区长度低于该阈值时,根据用户视角预测结果分配每个分块视频的码率并下载;当缓冲区长度高于该阈值时,以平均码率下载所有分块视频,并根据用户视角预测的变化,对低于阈值的已缓存的分块视频进行更新;
分块视频下载调度步骤:根据不同分块视频的优先级下载分块视频并缓存到缓冲区。
优选地,当缓冲区长度高于该阈值时:对于低于阈值的部分对缓冲区的分块视频进行更新,对于高于阈值的部分确定是否需要下载分块视频段以及对应的码率。
优选地,当缓冲区长度高于该阈值时,具体包括:
根据当前缓冲区的长度和最大缓冲区长度确定可下载视频数量,根据可下载视频数量和可选择码率数量得到所有下载状态,选择其中一种下载状态,计算缓冲区域内每个分块视频的效用代价函数,选择效用代价函数最大的分块视频进行码率更新并计算当前总码率;
判断当前总码率是否小于总码率,若是,则继续选择效用代价函数最大的分块视频进行码率更新,若否则,记录当前下载和更新的状态,并重复上述过程;
根据所有记录的下载和更新的状态,计算每种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择;
在确定下载与更新的分快视频及相应的码率后,对所有的分块视频进行下载调度;
对于低于阈值的分块视频,采用串行下载的方式,分别在时域与空域两个方面划分优先级;对于高于阈值的分块视频,采用并行下载的方式。
优选地,当缓冲区长度低于该阈值时:根据用户视角预测结果分配每个分块视频的码率并下载,同时对已经存储在缓冲区的分块视频进行码率的更新。
优选地,当缓冲区长度低于该阈值时,具体包括:
给每个要下载的分块视频分配基础码率,计算每个分块视频的效用代价函数,选择效用代价函数最大的分块视频进行码率更新并计算当前总码率;
判断当前总码率是否小于总码率,若是,则继续选择效用代价函数最大的分块视频进行码率更新,若否则,记录当前下载和更新的状态,并重复上述过程;
根据所有记录的下载和更新的状态,计算每种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择;
在确定下载与更新的分快视频及相应的码率后,对所有的分块视频进行下载调度;
对于低于阈值的分块视频,采用串行下载的方式,分别在时域与空域两个方面划分优先级。
根据本发明提供的一种基于全景视频的分层缓冲系统,包括:
缓冲区状态观测模块:获取当前的缓冲区状态,包括当前的缓冲区长度以及缓冲区内已下载的各个分块视频的码率;
网络带宽估计模块:根据历史的下载情况,估计当前的网络状况;
用户视角预测模块:根据用户的历史观看轨迹预测下一时刻每个分块视频被观看到的概率;
分块视频码率分配模块:根据当前的网络状况和缓冲区状态,决定下载分块视频的总码率并根据已下载分块视频的码率进行分块视频的更新与下载;将缓冲区分为两层,由一个阈值控制;当缓冲区长度低于该阈值时,根据用户视角预测结果分配每个分块视频的码率并下载;当缓冲区长度高于该阈值时,以平均码率下载所有分块视频,并根据用户视角预测的变化,对低于阈值的已缓存的分块视频进行更新;
分块视频下载调度模块:根据不同分块视频的优先级下载分块视频并缓存到缓冲区。
优选地,当缓冲区长度高于该阈值时:对于低于阈值的部分对缓冲区的分块视频进行更新,对于高于阈值的部分确定是否需要下载分块视频段以及对应的码率。
优选地,当缓冲区长度高于该阈值时,具体包括:
根据当前缓冲区的长度和最大缓冲区长度确定可下载视频数量,根据可下载视频数量和可选择码率数量得到所有下载状态,选择其中一种下载状态,计算缓冲区域内每个分块视频的效用代价函数,选择效用代价函数最大的分块视频进行码率更新并计算当前总码率;
判断当前总码率是否小于总码率,若是,则继续选择效用代价函数最大的分块视频进行码率更新,若否则,记录当前下载和更新的状态,并重复上述过程;
根据所有记录的下载和更新的状态,计算每种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择;
在确定下载与更新的分快视频及相应的码率后,对所有的分块视频进行下载调度;
对于低于阈值的分块视频,采用串行下载的方式,分别在时域与空域两个方面划分优先级;对于高于阈值的分块视频,采用并行下载的方式。
优选地,当缓冲区长度低于该阈值时:根据用户视角预测结果分配每个分块视频的码率并下载,同时对已经存储在缓冲区的分块视频进行码率的更新。
优选地,当缓冲区长度低于该阈值时,具体包括:
给每个要下载的分块视频分配基础码率,计算每个分块视频的效用代价函数,选择效用代价函数最大的分块视频进行码率更新并计算当前总码率;
判断当前总码率是否小于总码率,若是,则继续选择效用代价函数最大的分块视频进行码率更新,若否则,记录当前下载和更新的状态,并重复上述过程;
根据所有记录的下载和更新的状态,计算每种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择;
在确定下载与更新的分快视频及相应的码率后,对所有的分块视频进行下载调度;
对于低于阈值的分块视频,采用串行下载的方式,分别在时域与空域两个方面划分优先级。
与现有技术相比,本发明具有如下的有益效果:
1、提出了一种基于全景视频的分层缓冲机制,在保证用户观看质量的同时,极大地提高了全景视频传输的网络鲁棒性。
2、采用分层缓冲机制,当缓冲区长度较低时,可以充分利用较为准确的视角预测信息,保证用户的观看视频质量,提高带宽利用率。
3、采用分层缓冲机制,提高了缓冲区的长度并根据网络状态动态调整缓冲区长度,保证最适用于当前网络状态的请求码率,提高了该方法在网络波动下的鲁棒性,减小了播放卡顿的次数。
4、提供了分块视频的下载调度策略,根据分块视频的优先级下载分块视频,减小了网络波动对视频质量的影响。
5、针对复杂的码率分配优化问题,提出了快速有效的码率分配算法,所提出的分配码率分配算法相较于最优分配方案性能略有下降,但其大大降低了时间复杂度,提高了算法效率。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的系统结构框图;
图2为缓冲区长度超过阈值时码率分配流程图;
图3为缓冲区长度低于阈值时码率分配流程图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
本发明针对全景视频流化传输,提出了一种基于全景视频的分层缓冲方法,其具体框架如图1所示,其中BTh表示设置的阈值,Bmax表示最大的缓冲区长度。共分为五个部分,其中网络带宽估计根据历史的下载情况,估计当前的网络状况,在预估带宽时,可以根据历史下载的m个视频段的大小以及下载时间得到下载每个视频的带宽,如下所示:
Figure BDA0002246088650000061
其中Ti表示下载第i个视频段时的带宽,Si表示视频段的大小,ti表示下载视频段的时间。通过计算m个Ti的算术平均数或调和平均数得到下一时刻的预估带宽。
用户视角预测根据用户的历史观看轨迹,记录每个时刻分块视频被观看的情况,若该分块视频出现在视角内则计数一次,统计历史时刻每个分块视频被观看的次数,得到每个分块被观看的概率,作为下一时刻每个分块视频被观看到的概率。
缓冲区状态监测步骤对客户端下载的分块视频的码率进行记录,并根据视频的播放时间Tp与视频的下载时间Td以及视频段持续时间来计算缓冲区长度,从而获得当前的缓冲区长度以及缓冲区内已下载的各个分块视频的码率,如下所示:
L=D-Tp-Td
其中L表示缓冲区长度,D表示视频段的持续时间。
分块视频码率分配步骤会根据当前网络状况以及缓冲区状态,决定下载分块视频的总码率并根据已下载分块视频的码率进行分块视频的更新与下载,将缓冲区分为两层由一个阈值控制,当缓冲区长度低于该阈值时,客户端将会根据视角预测结果分配每个分块视频的码率并下载;当缓冲区长度高于该阈值时,客户端将会以平均码率下载所有分块视频,并根据预测视角的变化,对低于阈值的已缓存的分块视频进行更新;最后分块视频下载调度步骤会根据不同分块视频的优先级下载分块视频并缓存到缓冲区。
终端根据历史的分块视频下载情况,例如利用已下载的20个分块视频下载码率的调和平均数来估计当前的网络带宽bw。同时为了防止由于网络带宽预估误差出现的卡顿情况,在计算请求的总码率时,还应充分考虑缓冲区长度的变化,当缓冲区长度较短时,请求的码率相对较低,保证缓冲区的长度能够快速增长。当缓冲区长度较长时,请求的码率相对较高,保证视频的质量。因此可以采用如下的公式计算请求码率:
R=0.9Bmax-Bcur·bw
其中Bcur表示当前的缓冲区长度。
根据得到总请求码率结合当前的已下载分块视频进行码率的分配。码率分配的原则是在当前总请求码率的约束下最大化视角内分块视频的码率,同时考虑视角内不同分块的码率差异,降低视角内的质量波动。该优化问题可以用如下公式表示:
Figure BDA0002246088650000062
s.t.∑i,k∈vuRi,k+∑i,k∈vdRi,k≤R(td)
Figure BDA0002246088650000071
Ri,k∈{R1,R2,...,RM}
其中k表示视频段索引,i表示一个视频段内不同分块视频的索引,vb表示缓冲区内所有分块视频的集合,wi,k表示视频段k的分块视频i被用户观看的概率,U表示效用函数,Ri,k表示视频段k的分块视频i的码率,vu表示缓冲区中更新的所有分块视频的集合,vd表示缓冲区中下载的所有分块视频的集合,R1~RM表示分块视频不同的码率。
上述优化问题是一个NP问题,无法直接求得最优解,因此在进行码率分配时将其划分为两个子问题:确定需要更新的分块视频以及其更新后的码率和确定需要下载的分块视频以及其相应的码率。以下实施例说明在不同情况下的码率分配方法。
实施例1
当前缓冲区长度超过阈值:
对于缓冲区长度超过阈值的情况,低于阈值的部分需要对缓冲区的分块视频进行更新,高于阈值的部分需要确定是否需要下载新的视频段及其相应的码率。
首先,根据当前缓冲区的长度和最大缓冲区长度确定可以下载的视频段的数量0-
Figure BDA0002246088650000072
其中L表示每个视频段的持续时间。根据可以下载的视频段数量以及可选择的M种码率得到所有下载状态。为了降低搜索空间,更接近于播放时间的视频段的下载码率应更高。
其次,在确定某一种下载状态的前提下,进一步确定更新的分块视频及其码率,计算每一个分块视频的效用代价函数,如下所示:
Figure BDA0002246088650000073
其中
Figure BDA0002246088650000074
表示效用代价函数,
Figure BDA0002246088650000075
表示码率等级为q时视频段k分块视频i的码率,
Figure BDA0002246088650000076
表示当前在缓冲区的视频段k分块视频i的码率等级为q’。根据效用代价函数,每次选择效用代价函数最高的分块视频,将其码率等级更新为q,并按照上述公式更新效用代价函数。此时计算当前的总码率Rsum与所求的总码率R进行比较,若Rsum<R,则继续比较效用代价函数并选择最大的分块视频更新,若Rsum>R,则记录此时下载和更新的状态。更换下载状态,重复上述过程。
最后,根据上述所有记录的下载与更新状态,计算每一种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择,得到优化问题的最终解。其具体流程图如图2所示。
在确定下载与更新的分块视频及其相应的码率后,对所有的分块视频进行下载调度。对于低于阈值的分块视频,由于其码率分配基于预测的用户视角且更接近于播放时间,对其采用串行下载的方式。分别在时域与空域两个方面划分优先级。时域方面根据每个分块视频实际播放时间与下载时间的差值进行判定,差值越小优先级越高;在空域方面根据每个分块视频预测的观看概率进行判定,观看概率越高优先级越高。结合以上两个方面对阈值以内需要更新的分块视频按照优先级由高到低进行排序,并按照该顺序串行下载。对于高于阈值的分块视频,采用并行下载的方式。
实施例2
当前缓冲区长度低于阈值:
对于缓冲区长度低于阈值时,需要根据视角预测信息下载新的视频段,同时要对已经存储在缓冲区的分块视频进行码率的更新。
首先,对于下载的视频段,为了保证每个分块视频都被下载,给每个要下载的分块视频分配基础码率(最低码率)。
其次,计算每一个分块视频的效用代价函数,如下所示:
Figure BDA0002246088650000081
其中
Figure BDA0002246088650000082
表示效用代价函数,
Figure BDA0002246088650000083
表示码率等级为q时视频段k分块视频i的码率,
Figure BDA0002246088650000084
表示当前在缓冲区的视频段k分块视频i的码率等级为q’。根据效用代价函数,每次选择效用代价函数最高的分块视频,将其码率等级更新为q,并按照上述公式更新效用代价函数。此时计算当前的总码率Rsum与所求的总码率R进行比较,若Rsum<R,则继续比较效用代价函数并选择最大的分块视频更新,若Rsum>R,则记录此时下载和更新的状态。更换下载状态,重复上述过程。
最后,根据上述所有记录的下载与更新状态,计算每一种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择,得到优化问题的最终解。其具体流程图如图3所示。
在确定下载与更新的分块视频及其相应的码率后,对所有的分块视频进行下载调度。对于低于阈值的分块视频,由于其码率分配基于预测的用户视角且更接近于播放时间,对其采用串行下载的方式。分别在时域与空域两个方面划分优先级。时域方面根据每个分块视频实际播放时间与下载时间的差值进行判定,差值越小优先级越高;在空域方面根据每个分块视频预测的观看概率进行判定,观看概率越高优先级越高。结合以上两个方面对阈值以内需要更新的分块视频按照优先级由高到低进行排序,并按照该顺序串行下载。
实施例3
缓冲区最大长度的优化:
请求总码率R不仅与当前缓冲区长度相关,也受到缓冲区最大长度的影响。因此对缓冲区最大长度的优化可以在降低卡顿的同时最大化请求码率以提高视频质量。根据对网络状态变化的观察,可以得到估计的网络带宽与下载时的平均带宽之间的关系,从而在进行流化传输时,根据历史的网络状态动态调整缓冲区最大长度,保证在减小卡顿的情况下最优化总请求码率,缓冲区最大长度可以由如下公式确定:
Figure BDA0002246088650000091
其中C表示平均下载带宽。根据Bmax的值确定请求总码率,进一步根据缓冲区的不同状态进行码率的分配。
在上述一种基于全景视频的分层缓冲方法的基础上,本发明还提供一种基于全景视频的分层缓冲系统,包括:
缓冲区状态观测模块:获取当前的缓冲区状态,包括当前的缓冲区长度以及缓冲区内已下载的各个分块视频的码率;
网络带宽估计模块:根据历史的下载情况,估计当前的网络状况;
用户视角预测模块:根据用户的历史观看轨迹预测下一时刻每个分块视频被观看到的概率;
分块视频码率分配模块:根据当前的网络状况和缓冲区状态,决定下载分块视频的总码率并根据已下载分块视频的码率进行分块视频的更新与下载;将缓冲区分为两层,由一个阈值控制;当缓冲区长度低于该阈值时,根据用户视角预测结果分配每个分块视频的码率并下载;当缓冲区长度高于该阈值时,以平均码率下载所有分块视频,并根据用户视角预测的变化,对低于阈值的已缓存的分块视频进行更新;
分块视频下载调度模块:根据不同分块视频的优先级下载分块视频并缓存到缓冲区。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

Claims (8)

1.一种基于全景视频的分层缓冲方法,其特征在于,包括:
缓冲区状态观测步骤:获取当前的缓冲区状态,包括当前的缓冲区长度以及缓冲区内已下载的各个分块视频的码率;
网络带宽估计步骤:根据历史的下载情况,估计当前的网络状况;
用户视角预测步骤:根据用户的历史观看轨迹预测下一时刻每个分块视频被观看到的概率;
分块视频码率分配步骤:根据当前的网络状况和缓冲区状态,决定下载分块视频的总码率并根据已下载分块视频的码率进行分块视频的更新与下载;将缓冲区分为两层,由一个阈值控制;当缓冲区长度低于该阈值时,根据用户视角预测结果分配每个分块视频的码率并下载;当缓冲区长度高于该阈值时,以平均码率下载所有分块视频,并根据用户视角预测的变化,对低于阈值的已缓存的分块视频进行更新;
分块视频下载调度步骤:根据不同分块视频的优先级下载分块视频并缓存到缓冲区;
当缓冲区长度高于该阈值时:对于低于阈值的部分对缓冲区的分块视频进行更新,对于高于阈值的部分确定是否需要下载分块视频段以及对应的码率。
2.根据权利要求1所述的基于全景视频的分层缓冲方法,其特征在于,当缓冲区长度高于该阈值时,具体包括:
步骤S11:根据当前缓冲区的长度和最大缓冲区长度确定可下载视频数量,根据可下载视频数量和可选择码率数量得到所有下载状态;
步骤S12:选择其中一种下载状态,计算缓冲区域内每个分块视频的效用代价函数,选择效用代价函数最大的分块视频进行码率更新并计算当前总码率;
步骤S13:判断当前总码率是否小于总码率,若是,则继续选择效用代价函数最大的分块视频进行码率更新,若否则,记录当前下载和更新的状态,并返回步骤S12;同时,
根据所有记录的下载和更新的状态,计算每种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择;
在确定下载与更新的分快视频及相应的码率后,对所有的分块视频进行下载调度;
对于低于阈值的分块视频,采用串行下载的方式,分别在时域与空域两个方面划分优先级;对于高于阈值的分块视频,采用并行下载的方式。
3.根据权利要求1所述的基于全景视频的分层缓冲方法,其特征在于,当缓冲区长度低于该阈值时:根据用户视角预测结果分配每个分块视频的码率并下载,同时对已经存储在缓冲区的分块视频进行码率的更新。
4.根据权利要求3所述的基于全景视频的分层缓冲方法,其特征在于,当缓冲区长度低于该阈值时,具体包括:
步骤S21:给每个要下载的分块视频分配基础码率;
步骤S22:计算每个分块视频的效用代价函数,选择效用代价函数最大的分块视频进行码率更新并计算当前总码率;
步骤S23:判断当前总码率是否小于总码率,若是,则继续选择效用代价函数最大的分块视频进行码率更新,若否则,记录当前下载和更新的状态,并返回步骤S22;同时,
根据所有记录的下载和更新的状态,计算每种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择;
在确定下载与更新的分快视频及相应的码率后,对所有的分块视频进行下载调度;
对于低于阈值的分块视频,采用串行下载的方式,分别在时域与空域两个方面划分优先级。
5.一种基于全景视频的分层缓冲系统,其特征在于,包括:
缓冲区状态观测模块:获取当前的缓冲区状态,包括当前的缓冲区长度以及缓冲区内已下载的各个分块视频的码率;
网络带宽估计模块:根据历史的下载情况,估计当前的网络状况;
用户视角预测模块:根据用户的历史观看轨迹预测下一时刻每个分块视频被观看到的概率;
分块视频码率分配模块:根据当前的网络状况和缓冲区状态,决定下载分块视频的总码率并根据已下载分块视频的码率进行分块视频的更新与下载;将缓冲区分为两层,由一个阈值控制;当缓冲区长度低于该阈值时,根据用户视角预测结果分配每个分块视频的码率并下载;当缓冲区长度高于该阈值时,以平均码率下载所有分块视频,并根据用户视角预测的变化,对低于阈值的已缓存的分块视频进行更新;
分块视频下载调度模块:根据不同分块视频的优先级下载分块视频并缓存到缓冲区;
当缓冲区长度高于该阈值时:对于低于阈值的部分对缓冲区的分块视频进行更新,对于高于阈值的部分确定是否需要下载分块视频段以及对应的码率。
6.根据权利要求5所述的基于全景视频的分层缓冲系统,其特征在于,当缓冲区长度高于该阈值时,具体包括:
步骤S11:根据当前缓冲区的长度和最大缓冲区长度确定可下载视频数量,根据可下载视频数量和可选择码率数量得到所有下载状态;
步骤S12:选择其中一种下载状态,计算缓冲区域内每个分块视频的效用代价函数,选择效用代价函数最大的分块视频进行码率更新并计算当前总码率;
步骤S13:判断当前总码率是否小于总码率,若是,则继续选择效用代价函数最大的分块视频进行码率更新,若否则,记录当前下载和更新的状态,并返回步骤S12;同时,
根据所有记录的下载和更新的状态,计算每种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择;
在确定下载与更新的分快视频及相应的码率后,对所有的分块视频进行下载调度;
对于低于阈值的分块视频,采用串行下载的方式,分别在时域与空域两个方面划分优先级;对于高于阈值的分块视频,采用并行下载的方式。
7.根据权利要求5所述的基于全景视频的分层缓冲系统,其特征在于,当缓冲区长度低于该阈值时:根据用户视角预测结果分配每个分块视频的码率并下载,同时对已经存储在缓冲区的分块视频进行码率的更新。
8.根据权利要求7所述的基于全景视频的分层缓冲系统,其特征在于,当缓冲区长度低于该阈值时,具体包括:
步骤S21:给每个要下载的分块视频分配基础码率;
步骤S22:计算每个分块视频的效用代价函数,选择效用代价函数最大的分块视频进行码率更新并计算当前总码率;
步骤S23:判断当前总码率是否小于总码率,若是,则继续选择效用代价函数最大的分块视频进行码率更新,若否则,记录当前下载和更新的状态,并返回步骤S22;同时,
根据所有记录的下载和更新的状态,计算每种状态的效用函数,选择效用函数最大的状态作为最终更新与下载的选择;
在确定下载与更新的分快视频及相应的码率后,对所有的分块视频进行下载调度;
对于低于阈值的分块视频,采用串行下载的方式,分别在时域与空域两个方面划分优先级。
CN201911017244.XA 2019-10-24 2019-10-24 基于全景视频的分层缓冲方法及系统 Active CN112714315B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911017244.XA CN112714315B (zh) 2019-10-24 2019-10-24 基于全景视频的分层缓冲方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911017244.XA CN112714315B (zh) 2019-10-24 2019-10-24 基于全景视频的分层缓冲方法及系统

Publications (2)

Publication Number Publication Date
CN112714315A CN112714315A (zh) 2021-04-27
CN112714315B true CN112714315B (zh) 2023-02-28

Family

ID=75540660

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911017244.XA Active CN112714315B (zh) 2019-10-24 2019-10-24 基于全景视频的分层缓冲方法及系统

Country Status (1)

Country Link
CN (1) CN112714315B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114338571B (zh) * 2022-03-15 2022-05-17 人民法院信息技术服务中心 一种数据处理方法、装置、电子设备及存储介质
CN114979762B (zh) * 2022-04-12 2024-06-07 北京字节跳动网络技术有限公司 视频下载、传输方法、装置、终端设备、服务器及介质
CN114979089B (zh) * 2022-04-25 2023-03-24 北京邮电大学 一种实时传输全景视频的系统和方法
CN115955580B (zh) * 2023-03-14 2023-06-06 江西财经大学 基于可伸缩编码的全景视频边缘缓存方法及系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030172131A1 (en) * 2000-03-24 2003-09-11 Yonghui Ao Method and system for subject video streaming
US7079160B2 (en) * 2001-08-01 2006-07-18 Stmicroelectronics, Inc. Method and apparatus using a two-dimensional circular data buffer for scrollable image display
US9756142B2 (en) * 2013-03-14 2017-09-05 The Regents Of The University Of California System and method for delivering video data from a server in a wireless network by caching the video data
CN104995923B (zh) * 2013-12-18 2019-03-08 华为技术有限公司 视频加速方法、客户端及网元
CN107026856A (zh) * 2017-03-30 2017-08-08 上海七牛信息技术有限公司 一种网络推流质量的优化方法及优化系统
CN109286855B (zh) * 2017-07-19 2020-10-13 北京大学 全景视频的传输方法、传输装置和传输系统
CN110149542B (zh) * 2018-02-13 2021-12-03 华为技术有限公司 传输控制方法
CN109587094A (zh) * 2019-01-03 2019-04-05 钟祥博谦信息科技有限公司 一种基于gd算法的非线性失真信号解调方法及系统

Also Published As

Publication number Publication date
CN112714315A (zh) 2021-04-27

Similar Documents

Publication Publication Date Title
CN112714315B (zh) 基于全景视频的分层缓冲方法及系统
JP5302463B2 (ja) デジタルコンテンツの配布のための適応型ストリーミング
US9769505B2 (en) Adaptive streaming for digital content distribution
CN112953922B (zh) 一种自适应流媒体控制方法、系统、计算机设备及应用
CN107211193B (zh) 感知体验质量估计驱动的智能适应视频流传输方法和系统
US9736202B2 (en) Parallel streaming
US8997160B2 (en) Variable bit video streams for adaptive streaming
EP3022884B1 (en) Quality optimization with buffer and horizon constraints in adaptive streaming
TWI511544B (zh) 用於可調適視訊串流之技術
US20170034233A1 (en) Pre-Buffering Audio Streams
US20130304934A1 (en) Methods and systems for controlling quality of a media session
CN112954385B (zh) 一种基于控制论和数据驱动的自适应分流决策方法
WO2011010688A1 (ja) コンテンツ配信システム、コンテンツ配信方法、コンテンツ配信プログラム
CN110809167B (zh) 一种视频播放方法、装置、电子设备及存储介质
CN110099294B (zh) 一种针对360度视频的保持时空一致性的动态自适应流媒体码率分配方法
US9232249B1 (en) Video presentation using repeated video frames
CN113905221A (zh) 一种立体全景视频非对称传输流自适应方法及系统
US8848785B2 (en) Compact cumulative bit curves
US9313243B2 (en) Video streaming over data networks
JP2022545623A (ja) ビデオプレイバックにおける予測ベースドロップフレームハンドリング論理
KR101966588B1 (ko) 모바일 단말의 비디오 콘텐츠 수신 방법 및 장치
Nguyen et al. DoFP+: an HTTP/3-based adaptive bitrate approach using retransmission techniques
WO2014066975A1 (en) Methods and systems for controlling quality of a media session
CN114095756B (zh) 基于长期视野预测的自适应全景视频流传输系统及其方法
CN111586414A (zh) 一种基于svc和dash的360°视频流调度方法

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