论文部分内容阅读
随着互联网技术的不断发展,消费者对视频行业的要求也在逐步提高,尤其是最近发展起来的虚拟现实技术和全景视频技术。全景视频包含了360度视角范围内的全部场景内容,用户可以仅仅依靠转换视角来观看视频,为用户提供了沉浸式的观看体验。然而,完整的全景媒体内容具有巨大的数据量,使得视频的传输受到网络带宽的限制,需要在时间和空间两个维度进行碎片化处理来有效传输。在时间维度上,传统视频的传输大多使用基于HTTP的自适应流媒体协议,将视频在时间上进行分块处理。尤其是MPEG主导的MPEG-DASH协议,已经成为国际标准并受到各大公司的支持和应用。因此,本文利用DASH协议对全景视频进行封装,在时间上将视频进行细化。同时,在空间维度上,由于用户在某个时刻只可以看到全部区域的部分内容,所以在空间上将视频划分为多个tiles,不同tile传输不同质量的视频,极大地降低了对带宽的需求,提高了网络利用率。基于此方案,本文搭建了一套全景视频传输系统,包括视频的采集和封装、服务器的搭建、以及网页播放器的实现。网页播放器不仅可以支持多tiles的DASH全景视频的播放,还可以通过鼠标拖动转换视角,为后续的研究工作打下了基础。在传输系统的基础上,本文应用了HTTP/2.0协议对全景视频的启动延时和传输延时进行了优化。HTTP/2.0协议具有推送资源的特性,在视频启动和传输过程中,服务器在响应播放器所请求的资源的同时,还会推送后续的相关资源。实验证实,推送资源的方案在降低视频的启动延时和传输延时方面效果显著。本文还对视频的预加载进行了研究,利用WebSocket的通信机制,由播放器将未来视角信息传递给服务器,提前推送目标视角的视频切片,提高了系统的传输性能。在流媒体传输过程中,播放器会根据当前的网络状态选择最适合的码率进行请求和下载,以最大化用户的观看体验,包括码率大小、重缓冲时间和视频的平稳性等。本文针对全景视频的应用场景,实现了基于缓存、基于码率和同时基于目标缓存和带宽共三种传统自适应选择算法,并提出了在全景视频上应用深度强化学习的算法。本文在相同的环境下对四种算法进行了比较,实验证明,基于强化学习的算法可以在各种网络状态下使用户的观看体验达到最佳。