CN115955580B - 基于可伸缩编码的全景视频边缘缓存方法及系统 - Google Patents
基于可伸缩编码的全景视频边缘缓存方法及系统 Download PDFInfo
- Publication number
- CN115955580B CN115955580B CN202310242171.4A CN202310242171A CN115955580B CN 115955580 B CN115955580 B CN 115955580B CN 202310242171 A CN202310242171 A CN 202310242171A CN 115955580 B CN115955580 B CN 115955580B
- Authority
- CN
- China
- Prior art keywords
- video
- cache
- edge
- file
- request
- 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 41
- 230000004044 response Effects 0.000 claims abstract description 91
- 230000005540 biological transmission Effects 0.000 claims abstract description 7
- 230000008901 benefit Effects 0.000 claims description 32
- 230000008649 adaptation response Effects 0.000 claims description 9
- 230000000007 visual effect Effects 0.000 claims description 8
- 239000000872 buffer Substances 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000003139 buffering effect Effects 0.000 claims description 4
- 230000001010 compromised effect Effects 0.000 claims description 2
- 230000000694 effects Effects 0.000 claims description 2
- 230000007774 longterm Effects 0.000 abstract description 4
- 238000004590 computer program Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 239000000243 solution Substances 0.000 description 4
- 239000007853 buffer solution Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012417 linear regression Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Abstract
本发明提供了一种基于可伸缩编码的全景视频边缘缓存方法及系统,该方法包括:客户端进行视点预测得到未来视点预测结果,根据未来视点预测结果和播放视频信息向边缘服务器发送视频获取请求和视频缓存请求;边缘服务器对视频获取请求对应的视频数据进行清晰度自适应响应,根据清晰度自适应响应结果进行视频边缘缓存;边缘服务器根据视频边缘缓存结果在请求缓存文件列表中进行已缓存数据的删除;边缘服务器根据候选可缓存数量对各边缘节点进行缓存规划,直至请求缓存文件列表为空和/或各边缘节点的可缓存空间为零。本发明能自动确定需要获取的视频信息和需要缓存的视频信息,无需对基础层完成长期缓存,降低了全景视频传输过程中的冗余数据。
Description
技术领域
本发明涉及数据缓存技术领域,尤其涉及一种基于可伸缩编码的全景视频边缘缓存方法及系统。
背景技术
全景视频是一种360度拍摄、可变视角播放的特殊视频。由于传统视频播放设备生硬的交互逻辑,用户观看体验始终未达到最佳。随着虚拟现实技术(VR)的不断发展,产品化的VR设备逐渐走向市场,VR设备的交互性与沉浸感,使得全景视频迎来了又一次发展机遇,为提高全景视频的播放质量,全景视频缓存的问题越来越受人们所重视。
现有的全景视频缓存过程中,一般是在客户端对视频的基础层完成长期缓存,增强层完成短期缓存,以实现全景视频高质量播放,但由于现有技术需要对基础层完成全部缓存,导致全景视频传输过程中存在大量冗余数据,降低了全景视频缓存效率。
发明内容
本发明实施例的目的在于提供一种基于可伸缩编码的全景视频边缘缓存方法及系统,旨在解决现有的全景视频缓存过程中,存在大量冗余数据的问题。
本发明实施例是这样实现的,一种基于可伸缩编码的全景视频边缘缓存方法,所述方法包括如下步骤:
客户端对用户视点轨迹进行视点预测,得到未来视点预测结果,并根据所述未来视点预测结果和播放视频信息向边缘服务器发送视频获取请求和视频缓存请求;
所述边缘服务器对所述视频获取请求对应的视频数据进行清晰度自适应响应,并根据清晰度自适应响应结果进行视频边缘缓存;
所述边缘服务器根据所述视频缓存请求对请求缓存文件列表进行更新,并根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除;
所述边缘服务器根据候选可缓存数量对各边缘节点进行缓存规划,直至所述请求缓存文件列表为空和/或各边缘节点的可缓存空间为零。
本发明实施例的另一目的在于提出一种基于可伸缩编码的全景视频边缘缓存系统,所述系统包括:客户端和边缘服务器;
所述客户端包括:
视频播放模块,用于完成视频播放调度,将画面呈现给用户,对用户视点轨迹进行视点预测,得到未来视点预测结果;
视角预测模块,用于根据所述未来视点预测结果和播放视频信息向所述边缘服务器发送视频获取请求和视频缓存请求;
所述边缘服务器包括:
自适应响应决策模块,用于对所述视频获取请求对应的视频数据进行清晰度自适应响应,根据清晰度自适应响应结果进行视频边缘缓存,根据所述视频边缘缓存结果将对应的视频文件响应给所述客户端;
预缓存决策模块,用于根据所述视频缓存请求对请求缓存文件列表进行更新,根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除;根据候选可缓存数量对各边缘节点进行缓存规划,直至所述请求缓存文件列表为空和/或各边缘节点的可缓存空间为零。
优选的,所述边缘服务器还包括:
缓存替换模块,用于若所述边缘服务器接收到的缓存文件的数据值大于剩余存储空间,则分别计算已缓存文件的缓存替换收益;
依序删除最小所述缓存替换收益对应的已缓存文件,直至所述缓存文件的数据值小于或等于所述剩余存储空间。
本发明实施例,基于未来视点预测结果和播放视频信息能自动确定需要获取的视频信息和需要缓存的视频信息,使得无需对视频的基础层完成长期缓存,降低了全景视频传输过程中的冗余数据,提高了全景视频缓存效率,通过对视频获取请求对应的视频数据进行清晰度自适应响应,提高了视频的画质,通过候选可缓存数量对各边缘节点进行缓存规划,减少了边缘节点之间的缓存冗余,使得相同的存储空间能够缓存更多的内容,增加了缓存效率,降低了带宽需求。
附图说明
图1是本发明第一实施例提供的边缘网络结构示意图;
图2是本发明第一实施例提供的基于可伸缩编码的全景视频边缘缓存方法的流程图;
图3是本发明第二实施例提供的基于可伸缩编码的全景视频边缘缓存方法的流程图;
图4是本发明第三实施例提供的基于可伸缩编码的全景视频边缘缓存系统的结构示意图;
图5是本发明第三实施例提供的基于可伸缩编码的全景视频边缘缓存系统的具体实施步骤流程图;
图6是本发明第四实施例提供的终端设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一
本实施例采用“云-边-端”经典网络结构,云端为内容分发网络(CDN),云端存储了系统中的所有全景视频文件,在靠近用户的网络边缘设置边缘服务器,包括存储功能和计算功能。客户端为全景视频播放设备,用于播放全景视频和缓存少量视频文件。此外,一个边缘服务器覆盖服务多个用户,一定距离(路由跳数)内的边缘服务器之间共享缓存内容,边缘网络结构示意图请参阅图1。
本实施例的全景视频切分方式为:
首先对全景视频的球形格式使用立方体投影算法投影为二维视频格式,然后从时间维度、空间维度、编码维度分别进行切分得到最小的存储单位。其中时间维度是指对总时长为S秒的全景视频每隔t秒切分一次,最终会得到个视频片段,在本实施例中t=1,因此,全景视频文件的时间维度编号为0到S-1。空间维度是指对每帧视频进行分割,本实施例对立方体投影后的六个面分别等分四个面,因此,全景视频文件的空间维度编号为0到23。在编码维度方面,本实施例使用可伸缩编码方式将视频编码为一个基础层和若干个增强层,在实施例中涉及一个基础层和两个增强层,因此,全景视频文件的编码维度编号为0到2。
因此,系统中可用于传输的文件集合表示为:
特别的,本实施例选用立方体投影方式目的是为了使得不同视角所覆盖的文件数量尽可能相同,以及每个视频块所涉及的内容量尽可能平均,便于后续缓存收益的评估。选用可伸缩编码方式的目的在于减少视频文件与视频文件之间的冗余,提高缓存效率。
请参阅图2,是本发明第一实施例提供的基于可伸缩编码的全景视频边缘缓存方法的流程图,该基于可伸缩编码的全景视频边缘缓存方法可以应用于任一终端设备或系统,该基于可伸缩编码的全景视频边缘缓存方法包括步骤:
步骤S10,客户端对用户视点轨迹进行视点预测,得到未来视点预测结果,并根据所述未来视点预测结果和播放视频信息向边缘服务器发送视频获取请求和视频缓存请求。
其中,客户端对用户进行视点采集,得到用户视点轨迹,将用户视点轨迹输入预训练后的线性回归模型进行视点预测,以得到未来视点预测结果,该未来视点预测结果中包括未来预设时间内用户的视点坐标,该预设时间可以根据需求进行设置,该步骤中预设时间为3秒,即,该未来视点预测结果包括未来1秒、2秒和3秒的用户的视点坐标。
可选的,该步骤中,所述根据所述未来视点预测结果和播放视频信息向边缘服务器发送视频获取请求和视频缓存请求,包括:
分别获取所述未来视点预测结果中第一预设时长范围和第二预设时长范围内的视点坐标,得到第一视点坐标和第二视点坐标;
其中,该第一预设时长范围和第二预设时长范围可以根据需求进行设置,该步骤的第一预设时长范围设置为0-1秒,第二预设时长范围设置为2-3秒;
分别获取所述第一预设时长范围和所述第二预设时长范围对应的视频时间点,得到第一时间点和第二时间点;
其中,查询当前时间点之后1秒的视频时间点,得到第一时间点,查询当前时间点之后2-3秒的视频时间点,得到第二时间点;
获取在所述第一时间点时,所述播放视频信息在所述第一视点坐标的视频,得到视频获取信息,并根据所述视频获取信息向所述边缘服务器发送视频获取请求;
获取在所述第二时间点时,所述播放视频信息在所述第二视点坐标的视频,得到视频缓存信息,并根据所述视频缓存信息向所述边缘服务器发送视频缓存请求;
步骤S20,所述边缘服务器对所述视频获取请求对应的视频数据进行清晰度自适应响应,并根据清晰度自适应响应结果进行视频边缘缓存;
其中,边缘服务器提取并区分请求信息,针对视频获取请求进行清晰度自适应响应,可选的,该步骤中,所述边缘服务器对所述视频获取请求对应的视频数据进行清晰度自适应响应,包括:
所述边缘服务器进行带宽预测,得到带宽预测值,并根据所述带宽预测值分别计算所述视频获取请求对应的视频数据中各数据层的预测响应时长,所述视频获取请求对应的视频数据中包括基础数据层和至少一个增强数据层;
若所述基础数据层的预测响应时长小于响应时长阈值,则根据所述增强数据层的预测响应时长对所述基础数据层的预测响应时长进行求和计算,得到总响应时长;
若所述总响应时长小于所述响应时长阈值,则返回执行所述根据所述增强数据层的预测响应时长对所述基础数据层的预测响应时长进行求和计算的步骤,直至所述总响应时长大于或等于所述响应时长阈值;
若所述总响应时长大于或等于所述响应时长阈值,则在所述总响应时长对应的数据层中,删除当前求和的所述增强数据层,得到所述清晰度自适应响应结果;
若所述基础数据层的预测响应时长大于或等于所述响应时长阈值,则将所述基础数据层确定为所述清晰度自适应响应结果;
其中,根据编码层级完成分类,依次针对每类编码层级的文件计算预测响应时长,直到总响应时长超过响应时长阈值或所有文件遍历结束,最终得到清晰度自适应响应结果,预测响应时长是指根据协助缓存节点缓存情况和预测带宽情况预测出来的最小响应时间;
该步骤中,首先估算基础层视野内文件(基础数据层)的预测响应时长,如果该预测响应时长超过响应时长阈值thresholdT,则证明在响应时长阈值thresholdT内无法给予用户响应,因此,只能将基础层视野内文件传输给客户端;
若未超过响应时长阈值thresholdT,则在此基础上继续估算基础层视野外文件(增强数据层)的预测响应时长,并将其累加与响应时长阈值thresholdT做比较,若估算结果超过响应时长阈值,则放弃基础层视野外文件,否则继续依次估算增强1层视野内、增强1层视野外、增强2层视野内、增强2层视野外的预测响应时长,在本实施例中thresholdT=0.8。
进一步地,该步骤中,所述根据所述带宽预测值分别计算所述视频获取请求对应的视频数据中各数据层的预测响应时长采用的公式包括:
其中,表示预测响应时长,/>表示当前边缘节点的节点标识,/>表示边缘节点/>的协助节点标识集合,/>表示文件/>的文件大小,/>表示是否从边缘节点/>响应文件/>,/>,仅从一个边缘节点响应文件/>,且,其中/>表示边缘节点/>是否缓存了文件/>,即仅当边缘节点/>缓存了文件才能去响应,/>表示边缘节点/>发送给边缘节点/>所有文件的大小,表示边缘节点/>与边缘节点/>之间的带宽预测值;
步骤S30,所述边缘服务器根据所述视频缓存请求对请求缓存文件列表进行更新,并根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除。
其中,针对视频缓存请求定期进行边缘预缓存,本实施例中周期为0.5秒,通过视频缓存请求对请求缓存文件列表进行更新,以保障对需要缓存的文件进行缓存,并根据视频边缘缓存结果在请求缓存文件列表中进行已缓存数据的删除,方便了缓存数据的重复缓存。
步骤S40,所述边缘服务器根据候选可缓存数量对各边缘节点进行缓存规划,直至所述请求缓存文件列表为空和/或各边缘节点的可缓存空间为零。
可选的,该步骤中,所述边缘服务器根据候选可缓存数量对各边缘节点进行缓存规划,包括:
分别查询各边缘节点的候选文件数量和可缓存空间,并将候选文件数量最大的且所述可缓存空间大于0的边缘节点确定为目标节点;
分别计算所述目标节点中各候选文件的缓存收益,并根据各候选文件的缓存收益对所述目标节点的可缓存空间进行缓存动态规划;其中,可以基于0/1背包动态规划算法对目标节点的可缓存空间进行缓存动态规划;
根据所述缓存动态规划结果对所述目标节点进行缓存文件设置,并返回执行所述分别查询各边缘节点的候选文件数量和可缓存空间的步骤及后续步骤;
其中,通过缓存动态规划结果对目标节点进行缓存文件设置,使得在不超过可缓存空间限制的条件下选取总缓存收益最大的部分或全部候选文件作为目标节点的缓存文件;
所述边缘服务器根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除。
所述分别计算所述目标节点中各候选文件的缓存收益采用的公式包括:
其中,为可用缓存空间,/>为文件缓存收益,/>表示在边缘节点/>请求文件/>的可能性,/>表示边缘节点/>缓存文件/>对边缘节点/>的缓存收益,表示边缘节点到云端的带宽预测值,/>表示目标节点的基础带宽,/>为时间间隔参数,/>分别代表文件/>所属的视频编号和编码层编号,/>表示在边缘节点/>的用户对视频/>所属类的喜爱程度,/>表示文件/>是否被边缘节点/>请求缓存,/>为有上界的单增函数,/>为边缘节点/>与边缘节点/>之间的带宽预测值,表示权重参数,用于调节用户群体喜好和感知到的用户需求信息对请求可能性的影响程度,/>表示可伸缩编码时分层总数,/>表示客户端对文件需求的迫切程度。
本实施例中,可以把缓存规划决策过程描述为以下最大化可能收益问题:
将已完成缓存的文件从请求缓存文件列表中删除;
返回执行所述分别查询各边缘节点的候选文件数量和可缓存空间的步骤及后续步骤,直至请求缓存文件列表为空或所有边缘节点可缓存空间为零。
本实施例中,基于未来视点预测结果和播放视频信息能自动确定需要获取的视频信息和需要缓存的视频信息,使得无需对视频的基础层完成长期缓存,降低了全景视频传输过程中的冗余数据,提高了全景视频缓存效率,通过对视频获取请求对应的视频数据进行清晰度自适应响应,提高了视频的画质,通过候选可缓存数量对各边缘节点进行缓存规划,减少了边缘节点之间的缓存冗余,使得相同的存储空间能够缓存更多的内容,增加了缓存效率,降低了带宽需求。
实施例二
请参阅图3,是本发明第二实施例提供的基于可伸缩编码的全景视频边缘缓存方法的流程图,该实施例用于对第一实施例中步骤S40之后的步骤作进一步细化,包括步骤:
步骤S50,若所述边缘服务器接收到的缓存文件的数据值大于剩余存储空间,则分别计算已缓存文件的缓存替换收益;
其中,若边缘服务器接收到的缓存文件的数据值大于剩余存储空间,通过分别计算已缓存文件的缓存替换收益,提高了后续已缓存文件删除的准确性;
可选的,该步骤中,所述分别计算已缓存文件的缓存替换收益采用的公式包括:
其中,是缓存替换收益,/>表示历史数据中文件/>在视野内的概率,/>为权重系数,用来平衡视野重要性和用户喜好重要性,/>表示文件/>在时间时的活跃程度,/>为统计时间线,超过/>秒以前的访问记录不在计算范围内,/>表示边缘缓存中文件/>每次被请求的时间,/>表示用户群体对文件/>所属视频类的喜爱程度。
步骤S60,依序删除最小所述缓存替换收益对应的已缓存文件,直至所述缓存文件的数据值小于或等于所述剩余存储空间;
其中,通过依序删除最小缓存替换收益对应的已缓存文件,能有效地为接收到的缓存文件提供了存储空间。
本实施例,通过分别计算已缓存文件的缓存替换收益,提高了后续已缓存文件删除的准确性,通过依序删除最小缓存替换收益对应的已缓存文件,能有效地为接收到的缓存文件提供了存储空间,且保障了已缓存数据的最大收益。
实施例三
请参阅图4,是本发明第三实施例提供的基于可伸缩编码的全景视频边缘缓存系统100的结构示意图,包括:客户端10、边缘服务器11和云端12;
云端12包括第一通信模块121;
所述客户端10包括:
视频播放模块101,用于完成视频播放调度,将画面呈现给用户,对用户视点轨迹进行视点预测,得到未来视点预测结果;
视角预测模块102,用于根据所述未来视点预测结果和播放视频信息向所述边缘服务器发送视频获取请求和视频缓存请求;
第三通信模块103,用于与边缘服务器11和云端12进行通信;
所述边缘服务器11包括:
自适应响应决策模块111,用于对所述视频获取请求对应的视频数据进行清晰度自适应响应,根据清晰度自适应响应结果进行视频边缘缓存,根据所述视频边缘缓存结果将对应的视频文件响应给所述客户端;
预缓存决策模块112,用于根据所述视频缓存请求对请求缓存文件列表进行更新,根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除;根据候选可缓存数量对各边缘节点进行缓存规划,直至所述请求缓存文件列表为空和/或各边缘节点的可缓存空间为零。
带宽预测模块113,用于进行带宽预测,得到带宽预测值;
第二通信模块114,用于与客户端10和云端12进行通信。
缓存替换模块,用于若所述边缘服务器接收到的缓存文件的数据值大于剩余存储空间,则分别计算已缓存文件的缓存替换收益;
依序删除最小所述缓存替换收益对应的已缓存文件,直至所述缓存文件的数据值小于或等于所述剩余存储空间。
具体的,请参阅图5,基于可伸缩编码的全景视频边缘缓存系统100的具体实施步骤包括:
步骤S101,客户端将用户视点轨迹输入视点预测模型得到未来视点预测结果,结合播放视频信息向边缘服务器发出请求获取消息和请求缓存消息;
步骤S1011,将过去1秒用户视点的运动轨迹输入到线性回归模型中得到未来1秒、2秒、3秒的用户视点;
步骤S102,边缘服务器提取并区分请求信息;
分别执行以下操作:针对请求获取文件执行步骤S103,完成自适应内容响应;针对请求缓存文件定期执行步骤S104、步骤S105,完成边缘预缓存;
具体的,步骤S102中,边缘服务器提取并区分请求信息,分别执行:
S102a,针对请求获取文件执行S103,完成自适应内容响应;
S102b,针对请求缓存文件定期执行步骤S104、S105,完成边缘预缓存,其中,在本实施例中周期为0.5秒;
步骤S103,边缘服务器预测网络带宽,对客户端请求获取内容完成清晰度自适应响应:
将请求获取文件根据编码层级完成分类,并依次针对每类编码层级的文件计算预计最快响应时间,直到总响应时间超过阈值或所有文件遍历结束,最终得到自适应响应结果,其中,预计最快响应时间是指根据协助缓存节点缓存情况和预测带宽情况预测出来的最小响应时间;
边缘服务器根据自适应响应结果,向对应的服务器发出请求。边缘服务器收到文件后执行步骤S106,客户端收到文件后,等待再次执行步骤S101。
具体的,步骤S103包括:
步骤S1031,将请求获取文件根据编码层级完成分类,并依次针对每类编码层级的文件计算预计最快响应时间,直到总响应时间超过阈值或所有文件遍历结束,最终得到自适应响应结果。其中,所述预计最快响应时间是指根据协助缓存节点缓存情况和预测带宽情况预测出来的最小响应时间;
步骤S1032,边缘服务器根据自适应响应结果,向对应的服务器发出请求。边缘服务器收到文件后发给客户端,同时执行S106。客户端收到文件后,等待再次执行S101。
步骤S104,根据边缘缓存情况将已缓存内容从请求缓存文件列表中删除:
边缘服务器集群遍历周期内接收到的请求缓存文件列表,根据集群缓存情况删除列表中已缓存的文件信息。
步骤S105,根据候选可缓存文件数量降序对集群内的每个节点完成缓存规划:
具体的,步骤S105包括:
步骤S1051,计算每个节点的候选文件数量和每个节点的可缓存空间,选择候选文件数量最多且可缓存空间不为零的节点,计算该节点每个候选文件的缓存收益,使用0/1背包动态规划算法,在不超过可缓存空间限制的条件下选取总缓存收益最大的部分或全部候选文件作为缓存文件;
步骤S1052,将已完成缓存的文件从请求缓存文件列表中删除;
步骤S1053,反复执行S1051、S1052,直至请求缓存文件列表为空或所有节点可缓存空间为零。
步骤S1054,根据缓存文件决策,每个边缘服务器向云服务器发出请求,收到文件后执行步骤S106。
步骤S106,边缘服务器根据缓存情况与用户情况对到达文件完成缓存:
边缘服务器收到文件后,若剩余存储空间小于到达文件大小,则计算所有已缓存文件的缓存收益,依次删除收益最小的文件直至到达文件能够写入,否则直接写入存储空间。
本实施例,使用多边缘缓存协作方案,减少距离较近边缘服务器之间的缓存冗余,使得相同的存储空间能够缓存更多的内容,增加缓存效率、降低带宽需求。使用可伸缩编码技术对全景视频进行编码维度的分割,相比传统方式,减少了文件与文件之间的冗余,随着预测时间的不断靠近,每块文件是否真正被需求变得逐渐明确,在此过程中,边缘就可以率先缓存基础层,如果逐渐被确定,则可以追加缓存增强层,用以提升画质,明显追加模式明显优于替换模式。将缓存决策过程和大部分缓存空间转移至边缘,本实施例摆脱了视角预测长周期准确率低的困扰,相比传统做法,本实施例将会缓存更长时间的内容,但只缓存可能需求大的文件,并非将预测视角内全部内容都完成预缓存。
实施例四
图6是本申请第四实施例提供的一种终端设备2的结构框图。如图6所示,该实施例的终端设备2包括:处理器20、存储器21以及存储在所述存储器21中并可在所述处理器20上运行的计算机程序22,例如基于可伸缩编码的全景视频边缘缓存方法的程序。处理器20执行所述计算机程序22时实现上述各个基于可伸缩编码的全景视频边缘缓存方法各实施例中的步骤。
示例性的,所述计算机程序22可以被分割成一个或多个模块,所述一个或者多个模块被存储在所述存储器21中,并由所述处理器20执行,以完成本申请。所述一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序22在所述终端设备2中的执行过程。所述终端设备可包括,但不仅限于,处理器20、存储器21。
所称处理器20可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器21可以是所述终端设备2的内部存储单元,例如终端设备2的硬盘或内存。所述存储器21也可以是所述终端设备2的外部存储设备,例如所述终端设备2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器21还可以既包括所述终端设备2的内部存储单元也包括外部存储设备。所述存储器21用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器21还可以用于暂时地存储已经输出或者将要输出的数据。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。其中,计算机可读存储介质可以是非易失性的,也可以是易失性的。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (8)
1.一种基于可伸缩编码的全景视频边缘缓存方法,其特征在于,所述方法包括如下步骤:
客户端对用户视点轨迹进行视点预测,得到未来视点预测结果,并根据所述未来视点预测结果和播放视频信息向边缘服务器发送视频获取请求和视频缓存请求;
所述边缘服务器对所述视频获取请求对应的视频数据进行清晰度自适应响应,并根据清晰度自适应响应结果进行视频边缘缓存;
所述边缘服务器根据所述视频缓存请求对请求缓存文件列表进行更新,并根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除;
所述边缘服务器根据候选可缓存数量对各边缘节点进行缓存规划,直至所述请求缓存文件列表为空和/或各边缘节点的可缓存空间为零;
所述根据所述未来视点预测结果和播放视频信息向边缘服务器发送视频获取请求和视频缓存请求的方法包括如下步骤:
分别获取所述未来视点预测结果中第一预设时长范围和第二预设时长范围内的视点坐标,得到第一视点坐标和第二视点坐标;
其中,第一预设时长范围设置为0-1秒,第二预设时长范围设置为2-3秒;
分别获取所述第一预设时长范围和所述第二预设时长范围对应的视频时间点,得到第一时间点和第二时间点;
其中,查询当前时间点之后1秒的视频时间点,得到第一时间点,查询当前时间点之后2-3秒的视频时间点,得到第二时间点;
获取在所述第一时间点时,所述播放视频信息在所述第一视点坐标的视频,得到视频获取信息,并根据所述视频获取信息向所述边缘服务器发送视频获取请求;
获取在所述第二时间点时,所述播放视频信息在所述第二视点坐标的视频,得到视频缓存信息,并根据所述视频缓存信息向所述边缘服务器发送视频缓存请求;
所述边缘服务器根据候选可缓存数量对各边缘节点进行缓存规划的方法包括如下步骤:
分别查询各边缘节点的候选文件数量和可缓存空间,并将候选文件数量最大的且所述可缓存空间大于0的边缘节点确定为目标节点;
分别计算所述目标节点中各候选文件的缓存收益,并根据各候选文件的缓存收益对所述目标节点的可缓存空间进行缓存动态规划;
根据所述缓存动态规划结果对所述目标节点进行缓存文件设置,并返回执行所述分别查询各边缘节点的候选文件数量和可缓存空间的步骤及后续步骤;
所述边缘服务器根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除。
2.根据权利要求1所述的基于可伸缩编码的全景视频边缘缓存方法,其特征在于,所述边缘服务器对所述视频获取请求对应的视频数据进行清晰度自适应响应的方法包括如下步骤:
所述边缘服务器进行带宽预测,得到带宽预测值,并根据所述带宽预测值分别计算所述视频获取请求对应的视频数据中各数据层的预测响应时长,所述视频获取请求对应的视频数据中包括基础数据层和至少一个增强数据层;
若所述基础数据层的预测响应时长小于响应时长阈值,则根据所述增强数据层的预测响应时长对所述基础数据层的预测响应时长进行求和计算,得到总响应时长;
若所述总响应时长小于所述响应时长阈值,则返回执行所述根据所述增强数据层的预测响应时长对所述基础数据层的预测响应时长进行求和计算的步骤,直至所述总响应时长大于或等于所述响应时长阈值;
若所述总响应时长大于或等于所述响应时长阈值,则在所述总响应时长对应的数据层中,删除当前求和的所述增强数据层,得到所述清晰度自适应响应结果;
若所述基础数据层的预测响应时长大于或等于所述响应时长阈值,则将所述基础数据层确定为所述清晰度自适应响应结果。
3.根据权利要求2所述的基于可伸缩编码的全景视频边缘缓存方法,其特征在于,所述根据所述带宽预测值分别计算所述视频获取请求对应的视频数据中各数据层的预测响应时长采用的公式包括:
其中,表示预测响应时长,/>表示当前边缘节点的节点标识,/>表示边缘节点/>的协助节点标识集合,/>表示文件/>的文件大小,/>表示是否从边缘节点响应文件/>,/>,仅从一个边缘节点响应文件/>,且/>,其中/>表示边缘节点/>是否缓存了文件/>,即仅当边缘节点/>缓存了文件/>才能去响应,表示边缘节点/>发送给边缘节点/>所有文件的大小,/>表示边缘节点/>与边缘节点/>之间的带宽预测值;
4.根据权利要求3所述的基于可伸缩编码的全景视频边缘缓存方法,其特征在于,所述分别计算所述目标节点中各候选文件的缓存收益采用的公式包括:
5.根据权利要求1所述的基于可伸缩编码的全景视频边缘缓存方法,其特征在于,所述根据清晰度自适应响应结果进行视频边缘缓存之后,所述方法还包括:
若所述边缘服务器接收到的缓存文件的数据值大于剩余存储空间,则分别计算已缓存文件的缓存替换收益;
依序删除最小所述缓存替换收益对应的已缓存文件,直至所述缓存文件的数据值小于或等于所述剩余存储空间。
7.一种基于可伸缩编码的全景视频边缘缓存系统,其特征在于,应用如权利要求1至6任一项所述的基于可伸缩编码的全景视频边缘缓存方法,所述系统包括:客户端和边缘服务器;
所述客户端包括:
视频播放模块,用于完成视频播放调度,将画面呈现给用户,对用户视点轨迹进行视点预测,得到未来视点预测结果;
视角预测模块,用于根据所述未来视点预测结果和播放视频信息向所述边缘服务器发送视频获取请求和视频缓存请求;
所述边缘服务器包括:
自适应响应决策模块,用于对所述视频获取请求对应的视频数据进行清晰度自适应响应,根据清晰度自适应响应结果进行视频边缘缓存,根据所述视频边缘缓存结果将对应的视频文件响应给所述客户端;
预缓存决策模块,用于根据所述视频缓存请求对请求缓存文件列表进行更新,根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除;根据候选可缓存数量对各边缘节点进行缓存规划,直至所述请求缓存文件列表为空和/或各边缘节点的可缓存空间为零;
所述视角预测模块还用于:
分别获取所述未来视点预测结果中第一预设时长范围和第二预设时长范围内的视点坐标,得到第一视点坐标和第二视点坐标;
其中,第一预设时长范围设置为0-1秒,第二预设时长范围设置为2-3秒;
分别获取所述第一预设时长范围和所述第二预设时长范围对应的视频时间点,得到第一时间点和第二时间点;
其中,查询当前时间点之后1秒的视频时间点,得到第一时间点,查询当前时间点之后2-3秒的视频时间点,得到第二时间点;
获取在所述第一时间点时,所述播放视频信息在所述第一视点坐标的视频,得到视频获取信息,并根据所述视频获取信息向所述边缘服务器发送视频获取请求;
获取在所述第二时间点时,所述播放视频信息在所述第二视点坐标的视频,得到视频缓存信息,并根据所述视频缓存信息向所述边缘服务器发送视频缓存请求;
所述预缓存决策模块用于:
分别查询各边缘节点的候选文件数量和可缓存空间,并将候选文件数量最大的且所述可缓存空间大于0的边缘节点确定为目标节点;
分别计算所述目标节点中各候选文件的缓存收益,并根据各候选文件的缓存收益对所述目标节点的可缓存空间进行缓存动态规划;
根据所述缓存动态规划结果对所述目标节点进行缓存文件设置,并返回执行所述分别查询各边缘节点的候选文件数量和可缓存空间的步骤及后续步骤;
所述边缘服务器根据视频边缘缓存结果,在所述请求缓存文件列表中进行已缓存数据的删除。
8.根据权利要求7所述的基于可伸缩编码的全景视频边缘缓存系统,其特征在于,所述边缘服务器还包括:
缓存替换模块,用于若所述边缘服务器接收到的缓存文件的数据值大于剩余存储空间,则分别计算已缓存文件的缓存替换收益;
依序删除最小所述缓存替换收益对应的已缓存文件,直至所述缓存文件的数据值小于或等于所述剩余存储空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310242171.4A CN115955580B (zh) | 2023-03-14 | 2023-03-14 | 基于可伸缩编码的全景视频边缘缓存方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310242171.4A CN115955580B (zh) | 2023-03-14 | 2023-03-14 | 基于可伸缩编码的全景视频边缘缓存方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115955580A CN115955580A (zh) | 2023-04-11 |
CN115955580B true CN115955580B (zh) | 2023-06-06 |
Family
ID=85906974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310242171.4A Active CN115955580B (zh) | 2023-03-14 | 2023-03-14 | 基于可伸缩编码的全景视频边缘缓存方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115955580B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106028057A (zh) * | 2016-05-05 | 2016-10-12 | 北京邮电大学 | 一种移动ccn中可伸缩编码的自适应流媒体内容的缓存方法 |
US10062414B1 (en) * | 2017-08-22 | 2018-08-28 | Futurewei Technologies, Inc. | Determining a future field of view (FOV) for a particular user viewing a 360 degree video stream in a network |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6369812B1 (en) * | 1997-11-26 | 2002-04-09 | Philips Medical Systems, (Cleveland), Inc. | Inter-active viewing system for generating virtual endoscopy studies of medical diagnostic data with a continuous sequence of spherical panoramic views and viewing the studies over networks |
WO2016191694A1 (en) * | 2015-05-27 | 2016-12-01 | Google Inc. | Streaming spherical video |
US20170186219A1 (en) * | 2015-12-28 | 2017-06-29 | Le Holdings (Beijing) Co., Ltd. | Method for 360-degree panoramic display, display module and mobile terminal |
CN112714315B (zh) * | 2019-10-24 | 2023-02-28 | 上海交通大学 | 基于全景视频的分层缓冲方法及系统 |
CN112929691B (zh) * | 2021-01-29 | 2022-06-14 | 复旦大学 | 多用户全景视频传输方法 |
CN113282786B (zh) * | 2021-05-12 | 2022-09-30 | 河海大学 | 一种基于深度强化学习的全景视频边缘协作缓存替换方法 |
CN114786034B (zh) * | 2022-03-21 | 2023-06-06 | 鹏城实验室 | 一种基于边缘计算的全景视频优化传输方法和系统 |
-
2023
- 2023-03-14 CN CN202310242171.4A patent/CN115955580B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106028057A (zh) * | 2016-05-05 | 2016-10-12 | 北京邮电大学 | 一种移动ccn中可伸缩编码的自适应流媒体内容的缓存方法 |
US10062414B1 (en) * | 2017-08-22 | 2018-08-28 | Futurewei Technologies, Inc. | Determining a future field of view (FOV) for a particular user viewing a 360 degree video stream in a network |
Also Published As
Publication number | Publication date |
---|---|
CN115955580A (zh) | 2023-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5408257B2 (ja) | コンテンツ配信システム、コンテンツ配信方法、コンテンツ配信プログラム | |
KR100952190B1 (ko) | 캐쉬 관리를 이용한 서버와 클라이언트 단말기 사이의오브젝트 전송 방법 및 대응하는 전송 시스템, 서버 및단말기 | |
CN102165775A (zh) | 可缩放媒体递送的精细粒度的客户机侧控制 | |
US20230051652A1 (en) | Point cloud data encoding method and decoding method, device, medium, and program product | |
CN109819336B (zh) | 一种基于播放缓存大小分片下载的方法及系统 | |
CN113282786B (zh) | 一种基于深度强化学习的全景视频边缘协作缓存替换方法 | |
CN110809167B (zh) | 一种视频播放方法、装置、电子设备及存储介质 | |
CN112584119B (zh) | 一种基于强化学习的自适应全景视频传输方法及系统 | |
CN113315978A (zh) | 一种基于联邦学习的协作式在线视频边缘缓存方法 | |
Wu et al. | Paas: A preference-aware deep reinforcement learning approach for 360 video streaming | |
CN109639813B (zh) | 视频文件传输处理方法及装置、电子设备和存储介质 | |
JP6638145B2 (ja) | ネットワークシステム、ノード装置、キャッシュ方法及びプログラム | |
CN115955580B (zh) | 基于可伸缩编码的全景视频边缘缓存方法及系统 | |
JP2010191774A (ja) | コンテンツ配信システム、コンテンツ配信装置及びコンテンツ配信方法ならびにそのプログラム、データストレージ装置とその処理方法およびプログラム | |
CN112672227B (zh) | 基于边缘节点的业务处理方法、装置、节点以及存储介质 | |
US10320874B2 (en) | Site-based server selection | |
Li et al. | Utility-driven joint caching and bitrate allocation for real-time immersive videos | |
CN111770152A (zh) | 一种边缘数据管理方法、介质、边缘服务器和系统 | |
JP2018511131A (ja) | オンライン媒体のための階層的なコストベースのキャッシング | |
KR102235622B1 (ko) | IoT 환경에서의 협력 에지 캐싱 방법 및 그를 위한 장치 | |
US20160112534A1 (en) | Hierarchical caching for online media | |
CN107609039B (zh) | 基于cdn的热门影片在近端缓存服务器的空间分配方法 | |
CN115278290B (zh) | 一种基于边缘节点的虚拟现实视频缓存方法及装置 | |
CN116996661B (zh) | 三维视频展示方法、装置、设备及介质 | |
WO2023125970A1 (zh) | 一种码率分配方法、存储方法、装置、设备及存储介质 |
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 |