当前位置:首页 期刊杂志

HTTP自适应流媒体直播系统中的用户体验质量优化

时间:2024-05-04

宋靳锞 张远 王博

摘要:分析HTTP自适应流媒体直播系统中对终端用户体验质量(QoE)产生影响的各类因素及其相互之间的作用关系,对基于服务器端、网络传输以及客户端的QoE优化策略进行总结。认为HTTP自适应流媒体直播系统的QoE优化重点在于降低延时,提出结合网络层和应用层影响因素来降低时延并提升用户QoE的建议。

关键词:流媒体直播;自适应流媒体;用户体验质量;优化策略

Abstract: The influence factors on the users quality of experience (QoE) in a hypertext transport protocol (HTTP) adaptive streaming system and the interaction between these factors are studied. Then the QoE optimization strategies from the aspects of the server, network transmission and client side are summarized. The QoE optimization of HTTP adaptive live streaming system focuses on reducing delay, and combination with network layer and application layer factors can reduce delay and improve user QoE.

Keywords: live streaming; adaptive streaming; QoE; optimization strategy

近年来,随着互联网与流媒体技术的飞速发展,游戏直播、在线教育等直播服务发展迅速。基于超文本传送协议(HTTP)的自适应流媒体技术(HAS)由于其高兼容性、高可扩展性在直播场景中得到了广泛应用。根据WOWZA发布的《2019 Streaming Video Latency Report》[1],超过50%的直播服务提供商采用了基于HAS的流媒体直播系统架构。流媒体直播服务的低延时、高质量需求给用户体验质量的优化带来了新的挑战。

1 基于HAS的流媒体直播系统框架

在HAS技术中,媒体数据源被编码成不同码率的媒体切片文件以适应不同的网络状况和客户端设备类型,客户端根据带宽或缓冲区状态请求合适码率的媒体分片,以减少卡顿事件的发生,提升带宽利用率。

如图1所示,基于HAS的流媒体直播传输系统框架包括3部分:主播端、服务器端和客户端。主播端主要用来实现媒体采集、前处理、编码和封装的功能,并将封装好的媒体流推送至服务器。服务器需要对同一媒体内容准备多种码率的媒体文件,因此需要对主播端推送的媒体流进行实时转码,并将每种码率的媒体内容进行切片处理。服务器端存储的媒体分片的码率和时长等信息都被记录在一个随直播进行且实时更新的索引文件中。客户端在从服务器拉取媒体流时会首先拉取索引文件,再根据索引文件的信息以及当前的估计带宽或缓冲区状态对下一个向服务器请求的分片码率进行自适应决策,并对已下载的媒体分片进行解码播放。

经典的HAS协议包括Microsoft公司提出的微软平滑流协议(MSS)[2]、Apple公司提出的HTTP实时流协议(HLS)[3],以及Adobe提出的HTTP动态流协议(HDS)[4]。虽然这些协议遵循的技术框架相同,但是彼此之间互不兼容;因此,动态图像专家组(MPEG)与第三代合作伙伴计划(3GPP)联合提出了开源的MPEG-动态自适应流媒体(DASH)[5]标准。目前业界广泛采用的标准是HLS和MPEGDASH,然而直播场景下两种标准的延时均在6 s以上。近两年来,针对用户日益增长的低延时需求,研究者提出了能够将延时控制在3 s以内的低延时HLS[6]以及基于用媒体应用格式(CMAF)的低延时DASH[7]解决方案。

2 HTTP自适应流媒体直播系统中的用户体验质量评估

2.1 QoE影响因素

用户体验质量(QoE)通常用来评价流媒体直播系统中终端用户对服务的满意程度,其定义为:用户在一定客观环境中对使用的服务或者业务的整体认可程度。根据QoE的定义,HTTP自适应流媒体直播系统中的QoE影响因素可分为服务、环境、用户3个方面,如表1所示。

本文中我们仅考虑服务、环境和用户层面中与技术相关的因素。如图2所示,关键业务指标、用户层、环境层可对用户QoE产生直接影响。关键业务指标可从画面质量、稳定性、流畅性以及实时性4个方面来衡量。码率和分辨率直接影响直播画面的清晰度,直播全程的平均码率和分辨率共同决定了流媒体服务的画面质量水平;码率切换的频次和幅度反映了图像质量的波动状况,进而决定了视觉观感的平稳度;卡顿导致视频内容不连续、声音断续等问题,通常以卡顿次数、频率以及持续时间来反映流媒体服务的流畅性;延时是媒体流从主播端发出到客户端接收并观看所需要的时间,是反映流媒体服务实时性的业务指标,高延时极大地降低了用户对服务的满意度;音画不同步是由于网络状况较差(延时、抖动等)及设备处理能力不足造成的视音频不同步,降低了用户的服务体验质量。

由图2可知,网络层与主播端、服务器端、客户端应用层中的影响因素相互作用,共同影响HTTP自适应流媒体直播服务的关键业务指标,这也成为QoE的间接影响因素。例如,客戶端的缓冲区状态和自适应策略直接影响了服务的关键业务指标,缓冲区状态示意如图3所示。由图3可知,客户端的网络状态与分片大小(即分片的数据量)共同决定了缓冲区数据的填充速率。通常,客户端按正常速率播放,但当缓冲区占用量即将耗尽时,可通过客户端的自适应策略调慢播放速率,以等待缓冲区数据充盈,降低卡顿事件发生的概率。而当缓冲区占用量较大时,会带来较大的播放延时,那么则需要加快播放速率以降低播放延时。客户端还可以根据缓冲区状态或当前网络状态来进行码率自适应调节,决定下一请求分片的码率级别,以尽量避免卡顿事件的发生。

在HTTP自适应流媒体直播服务中,服务器主要实现对视频进行转码和切片。如图2所示,服务器根据主播端编码码率上限和客户端自适应模块决策的分片码率调整转码策略。分片码率与分片时长共同决定了传送到客户端的数据量(即分片大小),而分片大小又与客户端网络状态共同影响了缓冲区的填充速率。除限制服务器最高转码码率外,主播端的编码码率还决定了上行网络的传输数据量,与上行网络状态共同影响源视频推流到服务器的时间,即上行延时。上行延时与下行延时(即视频分片传输到客户端的时间)共同构成了直播系统的传输延时。需要注意的是,由于前处理、转码、切片、解码等阶段的处理延时难以控制,因此图2中并没有体现处理延时对整个系统延时的影响。

2.2 QoE建模

QoE建模的目标是分析影响QoE的各项因素,并建立模型描述这些影响因素与主观测试结果的关系,从而为流媒体直播系统的优化提供参考。现有的大多数针对直播服务的QoE建模流程如图4所示,首先根据直播业务需求确定主观测试的客观环境以及媒体流样本,再通过对样本进行主观测试和数据筛选来建立主观QoE数据库,数据库应包含媒体流样本素材、样本对应的主观分数以及相应的卡顿、画面质量等客观测试数据。然后,分析直播业务需求并确定QoE的影响因素,再对各影响因素与预测QoE之间的映射关系建模,并不断调整模型结构、影响因素的选择、影响因素分配权重等,来最小化预测QoE分數与主观QoE得分之间的差距。在实际建模过程中,通常以均方根误差(RMSE)、斯皮尔曼相关系数(SROCC)以及皮尔逊相关系数(PLCC)来衡量主观QoE与预测QoE之间的相关程度。

大多数QoE建模采用了经典机器学习方法和深度学习方法。如C. G. BAMPIS等采用各种回归模型如岭回归(RR)、支持向量回归(SVR)以及随机森林(RF)等来对画面质量、码率下降等QoE影响因素与用户主观评分的映射关系建模[8];N. ESWARA等利用级联的长短期记忆网络(LSTM)来捕获用户QoE在时间轴上复杂的依赖关系以及对流媒体服务的非线性反应[9];D. GHADIVARAM等将QoE影响因素分为3类:与卡顿相关的因素、与视频内容相关的因素以及对客户端缓冲区状态的建模,并将这些影响因素分别输入到如图5所示的Hammerstein-Wiener[10]非线性模型中,以进一步提取影响QoE的深层特征,然后将提取的深层特征组合输入到SVR中以预测QoE,显著提升了主观QoE和预测QoE之间的相关性[11]。

3 HTTP自适应流媒体直播系统中的QoE优化策略

与点播相比,直播业务对QoE中的延时性能要求更高。可从流媒体直播系统中的服务器端、传输网络和客户端进行旨在提高QoE性能的优化。

3.1 服务器端优化

对于HTTP自适应流媒体直播来说,服务器的功能是提供适配客户端需求的媒体流,其重点在于如何根据客户端设备能力和网络条件来快速准备适合的码率分片,以降低延时,提高带宽利用率并减小卡顿事件发生的概率。因此,服务器端的优化主要从调整分片长度和视频编码的码率控制两个方面进行。

在网络状况不稳定时,固定不变的分片时长会引起客户端加载速率的剧烈变化,从而导致码率切换频繁,引起直播延迟与卡顿。针对上述问题,费泽松等根据客户端请求码率的变化,使切片长度在预设范围内随加载速率改变,并以流畅性作为QoE优化目标,实现了基于HLS的自适应码率视频直播的QoE监视与优化方法[12]。针对下载完整分片才能播放视频的问题,低延时直播视频传输平台(L3VTP)将视频传输粒度从分片级别降至帧级别,先将转码视频直接推流到内容分发网络(CDN),再直接推流到客户端,省去了服务器切片处理和客户端周期性请求分片的过程,从而降低直播系统的播放延时与处理延时[13]。

在流媒体系统中,视频编码器的码率控制算法通常是针对连续码流设计的,未将视频切片情况考虑在内,缺乏对视频分片层面的控制,从而导致生成的分片码率相对设定值波动较大,引起带宽浪费和卡顿。在低延时、小缓存的直播场景中,QoE表现得更差。詹亘等针对上述问题提出了基于切片级别进行比特分配的码率控制算法[14]。在切片时长固定时,按照设定码率为每个切片分配目标比特数。在给切片内所有帧分配比特时,对切片的帧类型构成进行预测,并为不同类型帧分配不同权值,再根据权值进行帧级别的比特分配。通过建立基于残差变换绝对值和(SATD)和量化系数的线性预测模型,利用模型迭代进行宏块级别的量化系数调整,从而实现单帧码率的准确控制。实验结果表明,与x264编码器相比,该编码方案将视频切片码率波动降低了76%。

3.2 网络传输优化

针对传输网络优化的研究可分为两类:通过合理部署网络架构或选择数据中心的方式来优化传输;通过优化或改变流媒体传输协议来有效降低传输延时。

在保持原有网络架构的基础上,可使用软件定义网络(SDN)来实现网络构架的灵活部署。例如,P. H. THING等将所有路由协议集成在一个SDN环境中,通过拓扑管理器收集链路拓扑信息,通过流量管理器检测各路由的网络状况,并基于上述拓扑信息和网络状况设计了一个动态最优路径选择算法,实现了基于SDN的流媒体传输最优路径的选择,提升了链路利用率[15]。直播平台通常选用租借的云服务器来提供视频转码、传输以及响应用户请求的直播服务,然而由于直播端与客户端分布广泛,使用基于云的数据中心来满足用户需求仍然具备挑战性,C. DONG等提出了一种为主播端和客户端动态选择数据中心的算法,在保证用户QoE的前提下,为直播服务提供商节省了运行成本[16]。

大多数直播传输方案在传输层均依赖于传输控制协议(TCP)。然而,TCP在数据传输前须完成3次握手以建立连接,如果使用加密Web服务,还须增加一次安全套接字协议/安全传输层协议(SSL/TLS)握手。与用户数据报协议(UDP)相比,这种按序传输的可靠连接会引入建立连接、丢包重传等延时。针对上述问题,TCP快速连接协议(TFO) [17]利用cookie信息在确认字符回到接收端前发送数据,从而在建立握手的同时还进行了有效的数据传输,有效降低了延时,但是由于兼容性较差未被广泛采用;谷歌提出快速UDP网络连接协议(QUIC),通过类似TFO的技术使传输握手和加密同时完成,实现了在一个往返延时(RTT)内建立可靠连接的功能[18]。如图6(a)所示,客户端在建立会话时可将cookie和加密数据直接发送至服务器,服务器再利用这些信息对客户端进行验证,验证通过即开始接收数据。之后客户端可在本地缓存加密认证信息,从而在与服务器恢复会话时实现零RTT的连接延迟,如图6(b)所示。此外,SHI H.等针对延时敏感业务,提出了延时敏感性传输协议(DTP),将若干数据包组成的数据单元抽象为数据块,根据数据包的接收截止时间和优先级、数据块的剩余大小以及链路网络状态来决定数据包发送的先后顺序[19]。

3.3 客户端优化

相对于自适应流媒体点播系统,直播的流媒体数据不是事先制作并保存在服务器中的,而是从主播端实时采集并推流到服务器端的。所以直播客户端的码率自适应在考虑点播QoE影响因素的基础上,还增加了延时因素,通常综合卡顿、码率質量、码率切换以及延时等影响因素来进行客户端的码率自适应决策。

客户端的码率自适应决策算法可分为启发式算法和模型法。启发式算法是一种基于直观或经验构造的算法。如XIE L.等认为在直播场景的客户端小缓冲区前提下,带宽以及带宽波动的识别至关重要,因此提出了一种基于缓冲区阈值、带宽瞬时值以及带宽波动状态的码率自适应算法,以降低卡顿率为目标,实现了低延迟条件下的无缝播放,减少了码率切换的频次,提高了用户体验质量[20]。针对码率自适应问题的模型法可以分为:控制理论、效用最优化问题以及强化学习方法等。近年来,客户端的码率自适应优化大多基于强化学习的方法,并采用动态奖励函数来实现直播流媒体码率的自适应优化。例如BitLat[21]和HD3[22]基于延时、缓冲时间、分片码率等影响因素建立QoE线性预测模型,并将预测QoE作为动态奖励函数来实现直播场景下的码率控制和延迟控制。

除了对下载分片码率进行自适应调整外,还可以通过调整播放速率来实现基于客户端的混合自适应控制策略。播放速率自适应(AMP)算法根据网络状况和客户端缓冲区占用量实时调整客户端视频的播放速度,以降低客户端的播放延时。如ZHANG G.等依据直播的低延时要求,提出了一种联合调整分片码率和播放速率的自适应算法,最终使得直播视频在保证一定画面质量的同时降低了播放时延[23]。此外,客户端通常还以丢帧的形式来引入延时控制机制,以满足直播对实时性的要求。如MILLER K.等利用基于客户端的带宽预测和对预测误差分布的估计,通过跳过部分视频片段来降低延时,并利用码率过渡函数来避免码率切换幅度过大带来的突兀感[24];HONG R.等通过跳帧的机制来最小化基于直播端到端延时的缓冲区阈值,提升了平均QoE[25];Vabis[26]是一种跨服务器端和客户端的QoE优化策略,实现了基于帧级别的细粒度码率控制,并在客户端引入了3种延时机制,将直播平均延时降低了32%~77%,并提高了28%~67%的平均QoE。然而,目前针对端到端的自适应流媒体直播系统的优化还比较少,因此在这方面有待于进一步研究与探讨。

4 结束语

本文首先介绍了HTTP自适应流媒体直播系统框架,并对其QoE影响因素进行分析,最后针对HTTP自适应流媒体直播系统中的QoE优化策略进行了总结。HTTP自适应流媒体直播系统的优化目前还存在以下问题:

(1)由于自适应机制不可避免地引入包括转码、切片、自适应决策在内的处理延时,因此不适用于“电商带货”等对超低延时有需求的直播场景。

(2)现有的QoE优化大多针对客户端应用层的影响因素,或者将传输优化和客户端优化单独考虑,没有考虑网络层和应用层相互作用的关系对QoE的影响,而网络传输延时是整个直播系统延时的重要组成部分;因此,想要从本质上降低整个系统的延时,有必要深入研究网络层与应用层之间的复杂关系,综合考虑网络层与应用层影响因素,实现对自适应流媒体直播系统的跨层QoE优化。

参考文献

[1] WOWZA. 2019 Video streamimg latency report[EB/OL]. [2020-12-10]. https://www.wowza. com/wp-content/uploads/Streaming-Video-Latency-Report-Interactive-2020.pdf

[2] Smooth streaming protocol [EB/OL]. (2020-10-30)[2020-12-10]. https://docs.microsoft.com/en-us/openspecs/windows_ protocols/ms-sstr/8383f27f-7efe-4c60-832a-387274457251

[3] HTTP live streaming [EB/OL]. [2020-12-10]. https://developer.apple.com/documentation/ http_live_streaming

[4] Configure HTTP dynamic streaming and HTTP live streaming using AMS [EB/OL]. [2020-12-10]. https://helpx.adobe.com/adobe-media-server/dev/configure-dynamic-streaming-live-streaming.html#overview_of_http_ dynamic_streaming_and_http_live_streaming

[5] SODAGAR I. The MPEG-DASH standard for multimedia streaming over the Internet[J]. IEEE multimedia, 2011, 18(4): 62-67. DOI:10.1109/mmul.2011.71

[6] Enabling low-latency HLS [EB/OL]. [2020-12-10]. https://developer.apple.com/documentation/http_live_streaming/enabling_low-latency_hls

[7] DASH-IF. Low-latency modes for DASH [EB/ OL]. [2020-12-10]. https://dashif.org/docs/ CR-Low-Latency-Live-r8.pdf

[8] BAMPIS C G, BOVIK A C. Learning to predict streaming video QoE: distortions, rebuffering and memory [EB/OL]. [2020-12-10]. https: // arxiv.org/abs/1703.00633

[9] ESWARA N, ASHIQUE S, PANCHBHAI A, et al. Streaming video QoE modeling and prediction: a long short-term memory approach[J]. IEEE transactions on circuits and systems for video technology, 2020, 30(3): 661-673. DOI:10.1109/tcsvt.2019.2895223

[10] GHADIYARAM D, PAN J, BOVIK A C. A time-varying subjective quality model for mobile streaming videos with stalling events[C]//SPIE Optical Engineering + Applications. International Society for Optics and Photonics. USA: SPIE, 2015

[11] GHADIYARAM D, PAN J, BOVIK A C. Learning a continuous-time streaming video QoE model [J]. IEEE transactions on image processing, 2018, 27(5): 2257-2271. DOI:10.1109/tip.2018.2790347

[12] 费泽松, 王飞, 孙尧, 等. 一种自适应码率视频直播的QoE监控和优化方法: CN105357591A[P]. 2016

[13] YI G, YANG D, WANG M W, et al. L3VTP: a low-latency live video transmission platform[C]//Proceedings of the ACM SIGCOMM 2019 Conference Posters and Demos on -SIGCOMM Posters and Demos, 19. New York, NY, USA: ACM Press, 2019: 138-140. DOI:10.1145/3342280.3342336

[14] 詹亙, 肖晶, 陈宇静, 等.面向自适应码率视频直播的码率控制算法 [J]. 计算机工程, 2019, 45(3): 268-272

[15] THINH P H, DAT N T, NAM P N, et al. An efficient QoE-aware HTTP adaptive streaming over software defined networking [J]. Mobile networks and applications, 2020, 25(5): 2024-2036. DOI:10.1007/s11036-020-01543-1

[16] DONG C, WEN W, XU T, et al. Joint Optimization of data-center selection and video-streaming distribution for crowdsourced live streaming in a geo-distributed cloud platform [J]. IEEE Transactions on Network and Service Management, 2019:1-1

[17] CHENG Y, CHU J, RADHAKRISHNAN S, et al. TCP fast open [R]. RFC Editor, 2014

[18] CUI Y, LI T X, LIU C, et al. Innovating transport with QUIC: design approaches and research challenges [J]. IEEE Internet computing, 2017, 21(2): 72-76. DOI:10.1109/mic.2017.44

[19] SHI H, CUI Y, QIAN F, et al. DTP: deadline-aware transport protocol [C]//Proceedings of the 3rd Asia-Pacific Workshop on Networking 2019. New York, NY, USA: ACM, 2019: 1–7. DOI:10.1145/3343180.3343191

[20] XIE L, ZHOU C, ZHANG X G, et al. Dynamic threshold based rate adaptation for HTTP live streaming [C]//2017 IEEE International Symposium on Circuits and Systems (ISCAS). Baltimore, MD, USA: IEEE, 2017. DOI:10.1109/ iscas.2017.8050574

[21] WANG C, GUAN J F, FENG T T, et al. BitLat: bitrate-adaptivity and latency-awareness algorithm for live video streaming[C]//Proceedings of the 27th ACM International Conference on Multimedia. New York, NY, USA: ACM, 2019: 2642–2646. DOI:10.1145/3343031.3356069

[22] JIANG X L, JI Y S. HD3: distributed dueling DQN with discrete-continuous hybrid action spaces for live video streaming [C]// Proceedings of the 27th ACM International Conference on Multimedia. New York, NY, USA: ACM, 2019: 2632–2636. DOI:10.1145/3343031.3356052

[23] ZHANG G H, LEE J Y B. LAPAS: latency-aware playback-adaptive streaming[C]//2019 IEEE Wireless Communications and Networking Conference (WCNC). Marrakesh, Morocco: IEEE, 2019: 1-6. DOI: 10.1109/ wcnc.2019.8885622

[24] MILLER K, AL-TAMIMI A K, WOLISZ A. QoE-based low-delay live streaming using throughput predictions [J]. ACM transactions on multimedia computing, communications, and applications, 2017, 13(1): 1-24. DOI: 10.1145/2990505

[25] HONG R Y, SHEN Q W, ZHANG L, et al. Continuous bitrate & latency control with deep reinforcement learning for live video streaming [C]//Proceedings of the 27th ACM International Conference on Multimedia. New York, NY, USA: ACM, 2019: 2637–2641. DOI:10.1145/3343031.3356063

[26] FENG T T, SUN H F, QI Q, et al. Vabis: video adaptation bitrate system for time-critical live streaming [J]. IEEE transactions on multimedia, 2020, 22(11): 2963-2976. DOI:10.1109/ tmm.2019.2962313

作者簡介

宋靳锞,中国传媒大学信息与通信工程学院在读硕士研究生;主要研究方向为流媒体系统的QoE优化。

张远,中国传媒大学媒体融合与传播国家重点实验室副主任、教授;主要研究方向为多媒体通信、智能媒体分析与处理。

王博,中国传媒大学信息与通信工程学院在读硕士研究生;主要研究方向为实时音视频通信。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!