CN108551586B - 多用户360度视频流服务器端码率自适应分配方法及系统 - Google Patents
多用户360度视频流服务器端码率自适应分配方法及系统 Download PDFInfo
- Publication number
- CN108551586B CN108551586B CN201810211169.XA CN201810211169A CN108551586B CN 108551586 B CN108551586 B CN 108551586B CN 201810211169 A CN201810211169 A CN 201810211169A CN 108551586 B CN108551586 B CN 108551586B
- Authority
- CN
- China
- Prior art keywords
- user
- code rate
- server
- slice
- slices
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000005516 engineering process Methods 0.000 claims abstract description 14
- 230000000007 visual effect Effects 0.000 claims abstract description 10
- 238000005457 optimization Methods 0.000 claims description 54
- 230000003044 adaptive effect Effects 0.000 claims description 29
- 230000004886 head movement Effects 0.000 claims description 5
- 230000002123 temporal effect Effects 0.000 claims description 5
- 230000001174 ascending effect Effects 0.000 claims description 2
- 239000000126 substance Substances 0.000 claims description 2
- 238000005192 partition Methods 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 abstract description 7
- 230000033001 locomotion Effects 0.000 abstract description 4
- 239000013598 vector Substances 0.000 description 5
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 101150049349 setA gene Proteins 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/262—Content 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/26208—Content 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/26216—Content 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44209—Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44213—Monitoring of end-user related data
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Social Psychology (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供了一种多用户360度视频流服务器端码率自适应分配方法及系统,所述方法结合服务器处的动态自适应流媒体技术将360度视频流切分为一连串的视频流时间切片,每一个时间切片又切分为多个空间切片,每一个空间切片编码为多个不同码率的版本并缓存,同时兼顾了各个视频时间切片和空间切片之间联合码率‑失真性能的差异、每个用户端的网络连接情况、预测观看视野范围、头部运动状态以及视频点播概率分布,采用服务器端码率自适应分配算法确定各个用户所需下载的视频空间切片码率版本,最终实现多用户总体视频观看体验的最大化。本发明提高了360度视频流传输的带宽利用率,为用户提供更好的视频服务质量。
Description
技术领域
本发明涉及一种视频通信技术领域的方法,具体的,涉及一种适用于多用户360度视频流服务器端码率自适应分配方法及系统。
背景技术
360度视频是一种虚拟现实技术的应用,它采用全方位的摄像头去捕捉每一个方位的景象并将这些景象汇集成一个画面以此给用户提供沉浸式的体验。用户在使用过程中将会佩戴一个头盔式的显示器用来观看视频,并且随着头部的方位移动,用户观看的视角也会发生变化。与传统的视频相比,为了达到相同的用户观看清晰度,360度视频流往往需要4-6倍的传输带宽。
为了更有效地传输360度视频流,服务器端可以采取只传输当前时刻用户观看视野范围内视频内容来减少带宽消耗的策略。此外,考虑到用户的观看视角会随着用户头部的快速移动而进行快速切换,部分用户观看视野范围之外的视频内容也需要进行传输,但可以编码成非常低的码率版本。用户的观看视野范围由用户头部的位置决定,在对视频内容进行传输之前,需要进行用户头部方位的预测。然而,现有的技术很难精准预测到用户头部运动的方位。为了保证用户观看体验,用户头部方位预测的准确性越低,服务器端所需传输的视频内容就越大,传输所需的带宽也越大。多用户360度视频流的服务器端码率自适应分配技术能在多用户环境下做出视频不同区域的自适应码率选择来平衡用户的观看体验和带宽利用率。
经过对现有技术的检索发现,S.Rossi等人在2017年的《IEEE InternationalWorkshop on Multimedia Signal Processing》会议上发表了题为“Navigation-awareadaptive streaming strategies for omnidirectional video”的文章,该文章利用了视频空间切片技术,进行了动态自适应流策略研究,并提出了一种为每一个空间切片分配下载传输码率的解决方案,以最大化用户的观看体验为目标。但是该文章涉及的应用场景没有考虑用户头部方位的预测,无法适用多用户360度视频流的服务器端码率自适应分配。
经检索还发现,A.Ghost等人2017年在arXiv网站上(arXiv preprint arXiv:1704.08215)发表了题为“A rate adaptation algorithm for tile-based 360-degreevideo streaming”的文章,该文章在给定预测的用户观看视野范围和带宽预测的条件下提出了不同的用户观看体验度量方法,并设计出360度视频流的码率自适应分配算法,但是该文章主要考虑单一用户的情形。
此外,上述工作都是考虑用户端的码率自适应分配,在此类状况下,用户端基于带宽和缓存占用状况决定最佳的空间切片码率分配。当应用于多用户环境时,由于用户之间对带宽的相互竞争,上述方法不能取得最优的用户观看体验。
发明内容
针对现有技术中的缺陷/之一,本发明的目的是提供一种适用于多用户360度视频流的服务器端码率自适应分配的方法及系统。
为了实现以上目的,本发明采用的技术方案是:结合服务器处的动态自适应流媒体技术将360度视频流切分为一连串的视频流时间切片,每一个时间切片又切分为多个空间切片,每一个空间切片编码为多个不同码率的版本并缓存,同时兼顾了各个视频时间切片和空间切片之间联合码率-失真性能的差异、每个用户端的网络连接情况、预测观看视野范围、头部运动状态以及视频点播概率分布,采用服务器端码率自适应分配方法确定各个用户所需下载的视频空间切片码率版本,最终实现多用户总体视频观看体验的最大化。本发明提高了360度视频流传输的带宽利用率,为用户提供更好的视频服务质量。
根据本发明的第一方面,提供一种多用户360度视频流服务器端码率自适应分配方法,包括:
在服务器处,使用动态自适应流媒体技术将360度视频流切分为一连串的视频流时间切片,每一个时间切片又切分为多个空间切片,每一个空间切片编码为多个不同码率的版本并缓存;
在用户端处,将各用户端的网络条件和用户观看信息反馈给服务器,从服务器上下载分配给当前用户的视频流版本;
基于上述,采用参数:服务器处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络资源限制、用户端的网络资源限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题,采用快速高效的码率分配方法,得到分配给每个用户端最优的空间切片码率版本子集,该子集即各用户端下载的视频流版本。
优选地,所述服务器,使用动态自适应流媒体编码技术将任意一个360度视频文件切分为任意长度的时间切片和任意数目的空间切片,每个时间切片的播放时间长度相同或不相同,每个空间切片有相同或不同的编码码率,并且所有视频文件缓存在服务器中供所有用户端下载。
优选地,所述的用户观看信息,可以包括用户的头部运动轨迹,该信息反馈回服务器后,可以预测出用户下一时间端的观看范围,从而得出下一时间段360度视频每个空间切片的被观看概率。
优选地,所述适用于多用户360度视频流的服务器端码率自适应分配的优化问题,结合了服务器处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络带宽限制、用户端的网络带宽限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,并使用用户观看体验最大化建模方法得到。
更优选地,所述建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题,具体如下:
目标优化问题:
其中,为用户集合,为空间切片集合,为时间切片集合,定义第t个时间切片中包含下一时刻预测出的用户观看视野范围的空间切片集合为为弥补预测误差,周围一部分区域的空间切片定义为集合用户可能观看到空间切片集合定义为优化变量为:R表示空间切片码率版本向量,具体的,某一个元素Ri,k,t表示第k个用户播放的第t个时间切片中的第i个空间切片的码率版本,定义Pi,k,t为第t个时间切片中第i个空间切片的被第k个用户观看的概率;{R1,R2,…,Rm}为服务器处得到的360度视频不同码率版本的时间和空间切片组成的全集;
定义函数U(·)为效用函数,服务器的网络带宽容量为Bs,用户端k处的网络带宽容量为Bk;
优化目标为:最大化所有用户的预期效用函数之和;
约束条件为:1)网络带宽限制条件,即服务器端带宽约束和用户端带宽约束;2)码率版本限制条件,即码率版本为离散变量,用户不可能观看区域的空间切片保持最低的码率版本,而在最可能观看的区域中,应该尽可能地分配高码率版本并保持码率版本一致。
优选地,所述的码率分配方法,在为各用户分配每个空间切片具体的码率版本时,采用具有多项式时间复杂度和高近似优化性能的最速梯度上升算法,最终快速高效地得到分配给每个用户最优的空间切片码率版本子集。
更优选地,所述的码率分配方法,具体执行步骤为:
初始化:设置初始局部最优解集合为满足优化问题所有约束条件且能使算法收敛的最小可行解集合、初始搜索集合为所有用户当前时刻所需传输的360度视频时间切片中空间切片组成的全集,以及初始步数为1;
迭代搜索步骤:根据已有的局部最优解集合,在搜索集合中寻找使得总用户观看体验增量与码率代价的比值最大的元素,所述搜索集合中的一个元素对应于360度视频的所属某一用户的某一空间切片;
更新步骤:若将迭代搜索步骤中搜索得到的元素对应的码率提升一个版本仍能满足优化问题的所有约束,则将提升版本后的可行解更新为新的局部最优解集合,并且搜索集合保持不变;若该元素对应的码率提升一个版本不能满足优化问题的所有约束,则局部最优解集合保持不变,将该元素从搜索集合中移除;
判定步骤:若搜索集合为空集,停止迭代并将当前的局部最优解集合输出为最优结果;否则,令搜索步数加一并返回迭代搜索步骤。
根据本发明的第二方面,提供一种多用户360度视频流的服务器端码率自适应分配系统,包括:
服务器端,使用动态自适应流媒体技术将360度视频流切分为一连串的视频流时间切片,每一个时间切片又切分为多个空间切片,每一个空间切片编码为多个不同码率的版本并缓存;
用户端,将各用户端的网络条件和用户观看信息反馈给服务器端,从服务器端上下载分配给当前用户的视频流版本;
码率分配优化装置,在上述服务器端、用户端的基础上,采用参数:服务器端处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络资源限制、用户端的网络资源限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题,采用快速高效的码率分配方法,得到分配给每个用户端最优的空间切片码率版本子集,该子集即各用户端下载的视频流版本。
与现有技术相比,本发明具有如下的有益效果:
本发明为了适应360度视频传输的需要,提供了一种在多用户在满足自身观看需求和网络资源限制条件下竞争服务器端网络资源以达到总用户观看体验最大化的服务器端自适应速率分配方法,提高了服务器端和用户端的网络资源利用率,为用户提供了更佳的视频服务质量。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例的方法流程图;
图2为本发明一实施例用户观看360度视频时空间切片示意图。
具体实施方法
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
参照图1所示,一种适用于多用户360度视频流服务器端码率自适应分配方法的实施例的流程,具体实现包括如下步骤:
1、服务器处的动态自适应流媒体切分与编码
以下对多用户360度视频流在服务器端的切分和编码进行实例分析,在本实施例中,假设服务器的网络带宽容量为Bs,服务器中存储的视频文件被切分为F个播放时间长度均为T的时间切片(F为任意大于2的正整数),记为时间切片集合在每一个时间切片中,将360度视频每一帧又切分为L个相同尺寸的空间切片(L为任意大于2的正整数),记为空间切片集合如图2所示。
使用动态自适应流媒体编码技术,将任意一个空间切片编码为M个不同码率的版本(M为任意大于2的正整数),记为空间切片版本集合并且该集合按照编码码率呈降序排列,即R1<R2<…<RM。假设服务器将360度视频内容同时传输至用户集合则第k个用户播放的第t个时间切片中的第i个空间切片的码率可以表示为Ri,k,t。
2、用户处的360度视频请求、信息反馈与视频下载
假设有随机分布的K个用户同时向服务器发送360度视频播放请求。请求信息需要将当前用户端网络带宽的状况和用户观看当前视频时的头部运动状况包括在内。假设用户k处的网络带宽容量为Bk,且对用户k而言,如图2所示,头部运动状况即用户当前时刻的实际观看视野范围。服务器接受到以上用户端的信息后,负责预测用户下一时刻观看视野范围的模块会预测出用户下一时刻的可能观看视野范围(见图2中预测的观看视野范围)并计算出下一时刻空间切片的被观看概率分布,定义第t个时间切片中第i个空间切片的被第k个用户观看的概率为Pi,k,t。如图2所示,对第k个用户而言,假设第t个时间切片中包含下一时刻预测出的用户观看视野范围的空间切片集合为且为了保证用户在预测不准确的情况下的观看体验,弥补预测误差,周围区域的空间切片,即集合同样也需要传输给当前用户,用户可能观看到空间切片集合为预测结果越准确,Vk,t越小,用户消耗的带宽也越小。用户端从服务器处下载360视频流时,该视频流由分配给对应每个空间切片的最佳码率版本组合而成。
3、建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题,提出快速高效的码率分配方法
建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题如下(其中每个参数的含义可在上下文中对应获取):
目标优化问题:
其中,函数U(·)表示效应函数,优化变量为:R表示空间切片码率版本向量。具体的,某一个元素Ri,k,t表示第k个用户播放的第t个时间切片中的第i个空间切片的码率版本。
优化目标为:最大化所有用户的预期效用函数之和。
约束条件为:
1)网络带宽限制条件,即服务器端带宽约束(第一条)和用户端带宽约束(第二条);
2)码率版本限制条件,即码率版本为离散变量(第三条),用户不可能观看区域的空间切片保持最低的码率版本(第四条),而在可能观看的区域中,集合内的空间切片被观看的概率最大,应该尽可能地分配高码率版本并保持码率版本一致(第五条)。集合内的空间切片被观看的概率较小,所分配的码率版本应该小于集合内的空间切片分配的码率版本,以达到节省冗余带宽消耗的效果(第六条)。
具有多项式时间复杂度和高近似优化性能的最速梯度上升算法,最终快速高效地实现空间切片的码率版本分配。所述码率版本分配方法的执行过程如下(其中每个参数的含义可在上下文中对应获取):
(1)初始化:将限制条件Ri,k,t∈{R1,R2,…,Rm}松弛为R1≤Ri,k,t≤Rm,利用标准凸优化解法解出松弛问题的最优解并将所述最优解的所有元素向下取整数得到原优化问题的可行解Rrelax,该可行解按用户顺序排列为一维向量作为算法的初始局部最优解初始搜索集合为初始步数n=1。
(2)迭代搜索步骤(n=1,2,3…):
(3)更新步骤:
如果则集合内的所有空间切片的码率全部提升一个版本得到解R';否则,只将索引m对应空间切片的码率提升一个版本得到解R′。上述操作后,如果得到的解R′满足优化问题的约束条件,则令搜索集合保持不变;否则,(即将索引m从搜索集合中移除)。
(4)判断步骤:
对应于上述的适用于多用户360度视频流的服务器端码率自适应分配的方法,本发明还提供对应的适用于多用户360度视频流的服务器端码率自适应分配系统的一实施例,该系统包括:
服务器端,使用动态自适应流媒体技术将360度视频流切分为一连串的视频流时间切片,每一个时间切片又切分为多个空间切片,每一个空间切片编码为多个不同码率的版本并缓存;
用户端,将各用户端的网络条件和用户观看信息反馈给服务器端,从服务器端上下载分配给当前用户的视频流版本;
码率分配优化装置,在上述服务器端、用户端的基础上,采用参数:服务器端处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络资源限制、用户端的网络资源限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题,采用快速高效的码率分配方法,得到分配给每个用户端最优的空间切片码率版本子集,该子集即各用户端下载的视频流版本。
所述码率分配优化装置,包括优化模块,所述优化模块适用于多用户360度视频流的服务器端码率自适应分配的优化问题,该优化问题结合了所述服务器处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络带宽限制、用户端的网络带宽限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,并使用用户观看体验最大化建模方法得到。
所述码率分配优化装置进一步包括码率分配模块,该模块在为各用户分配每个空间切片具体的码率版本时,采用具有多项式时间复杂度和高近似优化性能的最速梯度上升算法,最终快速高效地得到分配给每个用户最优的空间切片码率版本子集。
更好地,所述码率分配模块包括初始化子模块、迭代搜索子模块、更新子模块、判定子模块,其中:
初始化子模块:设置初始局部最优解集合为满足优化问题所有约束条件且能使算法收敛的最小可行解集合、初始搜索集合为所有用户当前时刻所需传输的360度视频时间切片中空间切片组成的全集,以及初始步数为1;
迭代搜索子模块:根据已有的局部最优解集合,在搜索集合中寻找使得总用户观看体验增量与码率代价的比值最大的元素,所述搜索集合中的一个元素对应于360度视频的所属某一用户的某一空间切片;
更新子模块:若将迭代搜索子模块中搜索得到的元素对应的码率提升一个版本仍能满足优化问题的所有约束,则将提升版本后的可行解更新为新的局部最优解集合,并且搜索集合保持不变;若该元素对应的码率提升一个版本不能满足优化问题的所有约束,则局部最优解集合保持不变,将该元素从搜索集合中移除;
判定模块:若搜索集合为空集,停止迭代并将当前的局部最优解集合输出为最优结果;否则,令搜索步数加一并返回迭代搜索模块。
本发明上述系统实施例中,各个模块的实现技术可以采用对应的多用户360度视频流服务器端码率自适应分配方法中的技术,在此不再赘述。
本发明为适应动态自适应多用户360度视频流媒体传输需要,建立了基于切片技术的多用户多码率版本最优分配问题,并且相应地提供了一种高效快速的服务器端码率分配方法,实现了多用户下载观看360度视频总体观看体验的最大化。本发明提高了多用户观看360度视频环境下网络带宽利用率,为用户提供了更佳的视频服务质量。
需要说明的是,本发明提供的多用户360度视频流服务器端码率自适应分配方法中的步骤,可以利用所述多用户360度视频流的服务器端码率自适应分配系统中对应的模块、装置、单元等予以实现,本领域技术人员可以参照所述系统的技术方案实现所述方法的步骤流程,即,所述系统中的实施例可理解为实现所述方法的优选例,在此不予赘述。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
Claims (6)
1.一种多用户360度视频流服务器端码率自适应分配方法,其特征在于,包括:
在服务器处,使用动态自适应流媒体技术将360度视频流切分为一连串的视频流时间切片,每一个时间切片又切分为多个空间切片,每一个空间切片编码为多个不同码率的版本并缓存;
在用户端处,将各用户端的网络条件和用户观看信息反馈给服务器,从服务器上下载分配给当前用户的视频流版本;
基于上述,采用参数:服务器处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络资源限制、用户端的网络资源限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题,采用快速高效的码率分配方法,得到分配给每个用户端最优的空间切片码率版本子集,该子集即各用户端下载的视频流版本;
所述适用于多用户360度视频流的服务器端码率自适应分配的优化问题,结合了所述服务器处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络带宽限制、用户端的网络带宽限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,并使用用户观看体验最大化建模方法得到;
所述码率分配方法,在为各用户分配每个空间切片具体的码率版本时,采用具有多项式时间复杂度和高近似优化性能的最速梯度上升算法,最终快速高效地得到分配给每个用户最优的空间切片码率版本子集。
2.根据权利要求1所述的多用户360度视频流服务器端码率自适应分配方法,其特征在于,所述服务器,使用动态自适应流媒体编码技术将任意一个360度视频文件切分为任意长度的时间切片和任意数目的空间切片,每个时间切片的播放时间长度相同或不相同,每个空间切片有相同或不同的编码码率,并且所有视频文件缓存在服务器中供所有用户端下载。
3.根据权利要求1所述的多用户360度视频流服务器端码率自适应分配方法,其特征在于,所述用户观看信息包括用户的头部运动轨迹,该信息反馈回所述服务器后,能预测出用户下一时间段的观看范围,从而得出下一时间段360度视频每个空间切片的被观看概率。
4.根据权利要求1所述的多用户360度视频流服务器端码率自适应分配方法,其特征在于,所述建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题,具体如下:
目标优化问题:
其中,为用户集合,为空间切片集合,为时间切片集合,定义第t个时间切片中包含下一时刻预测出的用户观看视野范围的空间切片集合为为弥补预测误差,周围一部分区域的空间切片定义为集合用户可能观看到空间切片集合定义为
优化变量为:R表示空间切片码率版本向量,具体的,某一个元素Ri,k,t表示第k个用户播放的第t个时间切片中的第i个空间切片的码率版本,定义Pi,k,t为第t个时间切片中第i个空间切片的被第k个用户观看的概率;{R1,R2,…,Rm}为服务器处得到的360度视频不同码率版本的时间和空间切片组成的全集;
定义函数U(·)为效用函数,服务器的网络带宽容量为Bs,用户端k处的网络带宽容量为Bk;
优化目标为:最大化所有用户的预期效用函数之和;
约束条件为:1)网络带宽限制条件,即服务器端带宽约束和用户端带宽约束;2)码率版本限制条件,即码率版本为离散变量,用户不可能观看区域的空间切片保持最低的码率版本,而在最可能观看的区域中,应该尽可能地分配高码率版本并保持码率版本一致。
5.根据权利要求1所述的多用户360度视频流服务器端码率自适应分配方法,其特征在于,所述码率分配方法,具体执行步骤为:
初始化:设置初始局部最优解集合为满足优化问题所有约束条件且能使算法收敛的最小可行解集合、初始搜索集合为所有用户当前时刻所需传输的360度视频时间切片中空间切片组成的全集,以及初始步数为1;
迭代搜索步骤:根据已有的局部最优解集合,在搜索集合中寻找使得总用户观看体验增量与码率代价的比值最大的元素,所述搜索集合中的一个元素对应于360度视频的所属某一用户的某一空间切片;
更新步骤:若将迭代搜索步骤中搜索得到的元素对应的码率提升一个版本仍能满足优化问题的所有约束,则将提升版本后的可行解更新为新的局部最优解集合,并且搜索集合保持不变;若该元素对应的码率提升一个版本不能满足优化问题的所有约束,则局部最优解集合保持不变,将该元素从搜索集合中移除;
判定步骤:若搜索集合为空集,停止迭代并将当前的局部最优解集合输出为最优结果;否则,令搜索步数加一并返回迭代搜索步骤。
6.一种多用户360度视频流的服务器端码率自适应分配系统,包括:
服务器端,使用动态自适应流媒体技术将360度视频流切分为一连串的视频流时间切片,每一个时间切片又切分为多个空间切片,每一个空间切片编码为多个不同码率的版本并缓存;
用户端,将各用户端的网络条件和用户观看信息反馈给服务器端,从服务器端上下载分配给当前用户的视频流版本;
码率分配优化装置,在上述服务器端、用户端的基础上,采用参数:服务器端处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络资源限制、用户端的网络资源限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,建立适用于多用户360度视频流的服务器端码率自适应分配的优化问题,采用快速高效的码率分配方法,得到分配给每个用户端最优的空间切片码率版本子集,该子集即各用户端下载的视频流版本;
所述码率分配优化装置,包括优化模块,所述优化模块适用于多用户360度视频流的服务器端码率自适应分配的优化问题,该优化问题结合了所述服务器处得到的360度视频不同码率版本的时间和空间切片组成的全集、服务器端的网络带宽限制、用户端的网络带宽限制、基于用户观看信息得到的所有用户预测观看视野范围和所有空间切片被观看的概率分布,并使用用户观看体验最大化建模方法得到;
所述码率分配优化装置进一步包括码率分配模块,该模块在为各用户分配每个空间切片具体的码率版本时,采用具有多项式时间复杂度和高近似优化性能的最速梯度上升算法,最终快速高效地得到分配给每个用户最优的空间切片码率版本子集;
所述码率分配模块包括初始化子模块、迭代搜索子模块、更新子模块、判定子模块,其中:
初始化子模块:设置初始局部最优解集合为满足优化问题所有约束条件且能使算法收敛的最小可行解集合、初始搜索集合为所有用户当前时刻所需传输的360度视频时间切片中空间切片组成的全集,以及初始步数为1;
迭代搜索子模块:根据已有的局部最优解集合,在搜索集合中寻找使得总用户观看体验增量与码率代价的比值最大的元素,所述搜索集合中的一个元素对应于360度视频的所属某一用户的某一空间切片;
更新子模块:若将迭代搜索子模块中搜索得到的元素对应的码率提升一个版本仍能满足优化问题的所有约束,则将提升版本后的可行解更新为新的局部最优解集合,并且搜索集合保持不变;若该元素对应的码率提升一个版本不能满足优化问题的所有约束,则局部最优解集合保持不变,将该元素从搜索集合中移除;
判定模块:若搜索集合为空集,停止迭代并将当前的局部最优解集合输出为最优结果;否则,令搜索步数加一并返回迭代搜索模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810211169.XA CN108551586B (zh) | 2018-03-14 | 2018-03-14 | 多用户360度视频流服务器端码率自适应分配方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810211169.XA CN108551586B (zh) | 2018-03-14 | 2018-03-14 | 多用户360度视频流服务器端码率自适应分配方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108551586A CN108551586A (zh) | 2018-09-18 |
CN108551586B true CN108551586B (zh) | 2020-06-05 |
Family
ID=63516384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810211169.XA Active CN108551586B (zh) | 2018-03-14 | 2018-03-14 | 多用户360度视频流服务器端码率自适应分配方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108551586B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109413448A (zh) * | 2018-11-05 | 2019-03-01 | 中山大学 | 基于深度强化学习的移动设备全景视频播放系统 |
CN109413431B (zh) * | 2018-11-09 | 2023-01-03 | 深圳威尔视觉传媒有限公司 | 自适应多tile编码码率控制方法、装置、设备和存储介质 |
CN109582351B (zh) * | 2019-01-09 | 2021-10-29 | 江西理工大学应用科学学院 | 一种基于云计算与人工智能的版本兼容方法和机器人系统 |
CN111787336B (zh) * | 2019-04-04 | 2022-05-20 | 杭州海康威视数字技术股份有限公司 | 码率切换的方法和装置 |
CN110248212B (zh) * | 2019-05-27 | 2020-06-02 | 上海交通大学 | 多用户360度视频流服务器端码率自适应传输方法及系统 |
CN110248210B (zh) * | 2019-05-29 | 2020-06-30 | 上海交通大学 | 视频传输优化方法 |
CN110099294B (zh) * | 2019-06-11 | 2021-05-07 | 山东大学 | 一种针对360度视频的保持时空一致性的动态自适应流媒体码率分配方法 |
CN110248178B (zh) * | 2019-06-18 | 2021-11-23 | 深圳大学 | 利用物体跟踪和历史轨迹全景视频的视口预测方法及系统 |
CN111586414B (zh) * | 2020-04-07 | 2022-04-15 | 南京师范大学 | 一种基于svc和dash的360°视频流调度方法 |
CN112055263B (zh) * | 2020-09-08 | 2021-08-13 | 西安交通大学 | 基于显著性检测的360°视频流传输系统 |
CN112911347B (zh) * | 2020-11-09 | 2021-11-23 | 北京大学 | 虚拟现实视频传输方法、系统、服务器端和客户端 |
CN112995636B (zh) * | 2021-03-09 | 2022-03-25 | 浙江大学 | 基于边缘计算和主动缓存的360度虚拟现实视频传输系统及参数优化方法 |
CN113115077B (zh) * | 2021-03-12 | 2022-04-26 | 上海交通大学 | 一种静态点云服务器码率自适应传输方法及系统 |
CN113411643B (zh) * | 2021-05-26 | 2022-11-11 | 中国人民解放军国防科技大学 | 一种视频质量优化方法、系统、电子设备及存储介质 |
CN116419016A (zh) * | 2021-12-30 | 2023-07-11 | 中兴通讯股份有限公司 | 一种码率分配方法、存储方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104918134A (zh) * | 2015-04-16 | 2015-09-16 | 上海大学 | 一种基于纳什议价的交互式多视点视频的数据包调度方法 |
CN106713956A (zh) * | 2016-11-16 | 2017-05-24 | 上海交通大学 | 动态自适应视频流媒体的码率控制与版本选择方法及系统 |
-
2018
- 2018-03-14 CN CN201810211169.XA patent/CN108551586B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104918134A (zh) * | 2015-04-16 | 2015-09-16 | 上海大学 | 一种基于纳什议价的交互式多视点视频的数据包调度方法 |
CN106713956A (zh) * | 2016-11-16 | 2017-05-24 | 上海交通大学 | 动态自适应视频流媒体的码率控制与版本选择方法及系统 |
Non-Patent Citations (3)
Title |
---|
Arnob Ghosh 等.A rate adaptation algorithm for tile-based 360-degree video streaming.《arXiv:1704.08215 Multimedia (cs.MM);Networking and Internet Architecture (cs.NI) 》.2017, * |
Navigation-aware adaptive streaming strategies for omnidirectional video;Silvia Rossi 等;《2017 IEEE 19th International Workshop on Multimedia Signal Processing (MMSP),Date of Conference: 16-18 Oct. 2017》;20171018;第II-III部分 * |
Shooting a moving target: Motion-prediction-based transmission f;Yanan Bao 等;《2016 IEEE International Conference on Big Data (Big Data), December 2016.》;20161231;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108551586A (zh) | 2018-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108551586B (zh) | 多用户360度视频流服务器端码率自适应分配方法及系统 | |
Xie et al. | CLS: A cross-user learning based system for improving QoE in 360-degree video adaptive streaming | |
CN106713956B (zh) | 动态自适应视频流媒体的码率控制与版本选择方法及系统 | |
CN110248210B (zh) | 视频传输优化方法 | |
Xiao et al. | Bas-360: Exploring spatial and temporal adaptability in 360-degree videos over http/2 | |
US9571827B2 (en) | Techniques for adaptive video streaming | |
Zhang et al. | Video super-resolution and caching—An edge-assisted adaptive video streaming solution | |
Hooft et al. | Tile-based adaptive streaming for virtual reality video | |
CN110248212B (zh) | 多用户360度视频流服务器端码率自适应传输方法及系统 | |
Yuan et al. | Spatial and temporal consistency-aware dynamic adaptive streaming for 360-degree videos | |
US20170359580A1 (en) | Content Adaptation for Streaming | |
WO2020067592A1 (ko) | 컨텐츠 인지 신경망을 이용하여 실시간으로 적응형 비디오를 전송하는 방법 및 장치 | |
Kan et al. | Deep reinforcement learning-based rate adaptation for adaptive 360-degree video streaming | |
Yadav et al. | Tile rate allocation for 360-degree tiled adaptive video streaming | |
KR102313136B1 (ko) | 실시간 비디오 스트리밍에서의 초해상화 가속을 위한 장치 및 방법 | |
Park et al. | Navigation graph for tiled media streaming | |
US20130039419A1 (en) | Method for Accessing a Spatio-Temporal Part of a Compressed Video Sequence | |
Zhou et al. | QoE-aware 3D video streaming via deep reinforcement learning in software defined networking enabled mobile edge computing | |
US20110305278A1 (en) | Method of accessing a spatio-temporal part of a video sequence of images | |
Sun et al. | Live 360 degree video delivery based on user collaboration in a streaming flock | |
Chen et al. | Optimized viewport‐adaptive 360‐degree video streaming | |
Yahia et al. | Http/2-based streaming solutions for tiled omnidirectional videos | |
Hu et al. | VAS360: QoE-driven viewport adaptive streaming for 360 video | |
KR102129115B1 (ko) | 컨텐츠 인지 신경망을 이용하여 실시간으로 적응형 비디오를 전송하는 방법 및 장치 | |
Li et al. | Towards optimal real-time volumetric video streaming: A rolling optimization and deep reinforcement learning based approach |
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 |