Live streaming point--Adaptive Bitrate Algorithm

本文探讨了个性化自适应比特率(ABR)算法在移动网络条件下的应用,通过结合用户的历史生活轨迹来提高网络吞吐量预测的准确性,从而优化视频播放质量。同时,文章还介绍了如何使用强化学习解决ABR决策中QoE指标之间的冲突,以及基于帧的流媒体传输框架提升决策的灵活性和精准性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Adaptive Bitrate Algorithm

Adaptive bitrate (ABR) algorithms are the primary tool that content providers use to optimize video quality. These algorithms run on client-side video players and dynamically choose a bitrate for each video chunk (e.g., 4-second block). It can make full use of the computing resources of the client, and can make bitrate decision based on all state information of the client, reduce control overhead and obtain an optimal and personalized user experience. ABR algorithms make bitrate decisions based on various observations such as the estimated network throughput and playback buffer occupancy. Their goal is to maximize the user’s QoE by adapting the video bitrate to the underlying network conditions. However, selecting the right bitrate can be very challenging due to that.

  • challenge:
  1. the variability of network throughput. Network conditions can fluctuate over time and can vary significantly across environments. This complicates bitrate selection as different scenarios may require different weights for input signals. For example, on time-varying cellular links, throughput prediction is often inaccurate and cannot account for sudden fluctuations in network bandwidth—inaccurate predictions can lead to underutilized networks (lower video quality) or inflated download delays (rebuffering). To overcome this, ABR algorithms must prioritize more stable input signals like buffer occupancy in these scenarios.
  2. the conflicting video QoE requirements (high bitrate, minimal rebuffering, smoothness, etc.) ABR algorithms must balance a variety of QoE goals such as maximizing video quality, (i.e., highest average bitrate), minimizing rebuffering events (i.e., scenarios where the client’s playback buffer is empty), and maintaining video quality smoothness (i.e., avoiding constant bitrate fluctuations).
  3. the cascading effects of bitrate decisions . Bitrate selection for a given chunk can have cascading effects on the state of the video player.
  4. the coarse-grained nature of ABR decisions. The control decisions available to ABR algorithms are coarsegrained as they are limited to the available bitrates for a given video. Thus, there exist scenarios where the estimated throughput falls just below one bitrate, but well above the next available bitrate. In these cases, the ABR algorithm must decide whether to prioritize higher quality or the risk of rebuffering.

Point 1

  • 方法: 移动网络条件下,根据用户的生活轨迹,利用历史生活轨迹中的网络吞吐量统计辅助下一时刻网络吞吐量的预测, 实现用户的个性化网络吞吐量预测,进而提高用的QoE.
  • 描述: 由于上下班,工作等,很多时间都是在移动场景下进行观看直播视频数据.本来wifi网络就相对于宽带网络更加的不稳定,再加上用户的移动,由于周边基站的切换,人群的密集程度,高大的建筑物,地铁等屏蔽信号的设备存在,导致网络吞吐量的预测将更加不准确.这将导致ABR算法所面临的挑战会更加剧烈性. 为了更好的获取个性的用户体验,我们针对移动用户观看视频,提出了一个个性化ABR算法.首先这些外部因素与地点和时间有密切的关系,同一时刻同一地点,网络吞吐量会相对稳定,并且人们的生活轨迹相对固定,所以如果我们可以事先采集到我们日常经过地点的网络吞吐量,然后通过历史网络吞吐量数据辅助现有的网络吞吐量预测,这将极大的增加网络吞吐量预测的准确性,进而实现更加个性化的ABR算法性能.
  • 优势: ABR决策的核心依据就是下一时刻网络吞吐量的估计和当前时刻的buffer大小.网络吞吐量的估计越准确,效果越好.
  • 灵感 来自于4G/LTE数据集中的througthput受移动用户的周围环境影响巨大,并且提供地理位置(经纬度数据).
  • 算法:
    U U U表示全部用户的集合, S u h t r a c e S_u^{htrace} Suhtrace表示用户 u ∈ U u\in U uU采集一周的生活轨迹点, G t h t r a c e ( u , s ) G_{t}^{htrace}(u,s) Gthtrace(u,s)表示生活轨迹点对应的网络吞吐量,其中 s ∈ S u h t r a c e s\in S_u^{htrace} sSuhtrace, G t h r e c o r d ( u ) G_{t}^{hrecord}(u) Gthrecord(u)表示历史网络吞吐量的记录.
  1. 用户 u u u t t t时刻,在 s ∈ S u h t r a c e s\in S_u^{htrace} sSuhtrace点,根据历史生活轨迹预测 t + 1 t+1 t+1时刻的网络吞吐量:
    G t + 1 a ( u , s ) = E [ P t u ( s , s ′ ) G t + 1 h t r a c e ( u , s ′ ) ] G_{t+1}^a(u,s)=E[P_t^u(s,s^{'})G_{t+1}^{htrace}(u,s^{'})] Gt+1a(u,s)=E[Ptu(s,s)Gt+1htrace(u,s)]
    P t u ( s , s ′ ) = N t u ( s , s ′ ) N t u ( s ) P_t^u(s,s^{'})=\frac{N_t^u(s,s')}{N_t^u(s)} Ptu(s,s)=Ntu(s)Ntu(s,s)
  2. 用户 u u u t t t时刻,在any point a a a点,根据历史网络吞吐量记录预测 t + 1 t+1 t+1时刻的网络吞吐量:
    G t + 1 b ( u ) = 1 n ∑ i = t − n − 1 t G i h r e c o r d ( u ) ] G_{t+1}^{b}(u)=\frac{1}{n} \sum_{i=t -n-1}^{t} G_i^{hrecord}(u)] Gt+1b(u)=n1i=tn1tGihrecord(u)]
  3. 用户 u u u t t t时刻,在any point a a a点,计算 a a a点离生活轨迹 S h t r a c e S^{htrace} Shtrace中的点的距离.其中 Ω ( a , s ) \varOmega(a,s) Ω(a,s)表示点 a a a与点 s s s之间的欧式距离, s n e a r s^{near} snear表示生活轨迹中离点 a a a最近的点.
    d ( a , S u h t r a c e ) = m i n s ∈ S h t r a c e Ω ( a , s ) d(a,S_u^{htrace})=min_{s\in{S^{htrace}}}{\varOmega(a,s)} d(a,Suhtrace)=minsShtraceΩ(a,s)
    s n e a r = a r g m i n s ∈ S h t r a c e Ω ( a , s ) s^{near}=argmin_{s\in{S^{htrace}}}{\varOmega(a,s)} snear=argminsShtraceΩ(a,s)
  4. 用户 u u u t t t时刻,在any point 判断 a a a点, a a a点是否在生活轨迹 S h t r a c e S^{htrace} Shtrace中:
    P t ( a , S u h t r a c e ) = { 0 d ( a , S u h t r a c e ) ≤ ϵ 1 d ( a , S u h t r a c e ) > ϵ P_t(a,S_u^{htrace})=\left\{ \begin{array}{rcl} 0 & & {d(a,S_u^{htrace}) \leq \epsilon}\\ \\ 1 & & {d(a,S_u^{htrace}) >\epsilon}\\ \end{array} \right. Pt(a,Suhtrace)=01d(a,Suhtrace)ϵd(a,Suhtrace)>ϵ
  5. 用户 u u u t t t时刻,在any point a a a点,根据 G t + 1 a ( u , s n e a r ) G_{t+1}^{a}(u,s^{near}) Gt+1a(u,snear) G t + 1 b ( u ) G_{t+1}^{b}(u) Gt+1b(u)选择 t + 1 t+1 t+1时刻的网络吞吐量:
    G t + 1 ( u ) = { G t + 1 a ( u , s n e a r ) P t ( a , S u h t r a c e ) = 1 G t + 1 b ( u ) P t ( a , S u h t r a c e ) = 0 G_{t+1}(u)=\left\{ \begin{array}{rcl} G_{t+1}^{a}(u,s^{near}) & & {P_t(a,S_u^{htrace}) = 1}\\ \\ G_{t+1}^{b}(u) & & {P_t(a,S_u^{htrace}) = 0}\\ \end{array} \right. Gt+1(u)=Gt+1a(u,snear)Gt+1b(u)Pt(a,Suhtrace)=1Pt(a,Suhtrace)=0

point 2(目前正在做的)

  1. 利用强化学习解决QoE各个指标之间的冲突问题
  2. 利用基于帧的流媒体传输框架(I帧对齐),解决ABR决策粗粒度的问题,降低视频传输时延和客户端的等待时延,提高码率决策的灵活性和精准性.由于决策更灵活,所以码率决策更加大胆,用户的体验更好.
  3. 降低转码服务器的多次转码时延,解决基于I帧不对齐的码率自适应问题.
  4. 利用逆强化学习和客户端日志解决QoE个性化自适应问题

如有任何问题,欢迎留言.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值