首页 > 其他分享 >理解ABR及其工作原理

理解ABR及其工作原理

时间:2023-06-13 12:32:37浏览次数:50  
标签:播放器 视频 片段 码率 带宽 ABR 理解 原理


翻译 | Alex

技术审校 | 赵军

本文来自OTTVerse,作者为Krishna Rao Vijayanagar。

ABR

Easy Tech

#007#

ABR表示Adaptive Bitrate(自适应码率),它广泛地描述了这样一个过程:视频和音频的质量和码率会根据当前网络状况的波动而发生自适应变化,以确保网络传输流畅。

ABR明显不同于CBR(Constant Bitrate)和VBR(Variable Bitrate),理解ABR将有助于我们理解视频流化中的各种概念。

  我们为什么需要ABR?

为了理解对于ABR的需求,我们先要认识到互联网上的流媒体都是“尽力而为(best-effort)”的服务。对于这些流媒体而言,无论是速度/带宽、效率,还是错误恢复能力,都无法做到绝对保证。

这与通过有线网络(传统cable网络一般被认为是可控网络)提供给机顶盒的电视不同:电视有线网络可以确保正常运行时间,并极少出现视频中断以及视频质量出现急剧变化的情况。如果你订阅了Fox的高清1080p新闻,你肯定会看到高清1080p的视频(绝对能保证)。

但是,当视频通过互联网传输时,情况就大不相同了。为什么会这样?

  带宽波动的简单解释

假设你家里的互联网带宽是10mbps。

你的电视使用一个Cat 5网线直接连接到路由器上。你有三个手机、两个平板都连接在同一网络上,你的孩子做家庭作业也要用这个网!

考虑一下所有设备都在同一时间连到同一互联网上,那它们需要消耗多少带宽?

现在,你坐下来观看自己最喜欢的节目。你的电视这时可能消耗了3mbps的带宽来播放节目。10分钟后,你的太太打开了她iPad的上的YouTube,也开始看她最喜欢的节目。

这时,电视的可用带宽突然下降(也许下降到2mbps),因为你太太也在使用同一WiFi。需要明确的是,带宽发生了突然变化(从3 mbps到2 mbps)——33%的下降!

现在最重要的问题来了——你的电视正在下载什么,以什么码率,质量呈现如何?如果你有一个单一的视频版本(Rendition, 指内容相同,但编码、分辨率、码率等不同的视频),会做什么样的选择?

让我们来反问内容提供商,为了满足不同家庭的不同带宽需求,他们应该以何种码率编码?

这基本是个不可能的任务:提供单一版本的视频或者视频编码来满足所有用户的不同带宽需求和限制。

 ABR来帮忙

根据ABR的工作原理,输入视频有多种版本(在不同码率、分辨率和帧率下),可以使用不同编解码器来满足大量带宽条件、屏幕尺寸和各种设备。

码率阶梯、配置文件和不同的视频版本     

拿到一个源视频,第一件事就是在不同版本或者配置文件下将其编码,从而形成码率阶梯。

比如,你可能要将视频在以下配置文件中进行编码:

1.    1080p 5.0 mbps

2.    720p 4.0 mbps

3.    640p 3.2 mbps

4.    480p 2.0 mbps

5.    270p 1 mbps

你可以选择任意你想要的编解码器、码率、分辨率、编解码器分辨率或帧率,但是做决策时需要格外谨慎。

比如,如果你向世界上某些地区提供视频服务,假设这些地区中99%的人都无法使用超过2mbps带宽的网络,那么编码码率超过2mbps就是在浪费时间、金钱和存储空间,对吧?

在这些配置文件中选择码率阶梯和编码后,你将这些视频打包,然后通过使用视频流协议(如DASH、HLS、HDS和MSS等)的清单或者播放列表将视频提供给播放器,即终端用户。

打包

视频打包是指将一个视频分割成多个小的片段(视频块),以便每个片段都能单独被交付或者传输给播放器,而不是一次下载整部电影。

播放器使用这个清单来理解视频是如何下载并呈现给用户的。

带宽自适应视频播放

假设视频按照上文中的码率阶梯编码,当播放器开始播放视频时,它感知到的可用带宽为20mbps(我们假设),这远大于最高码率5mbps。所以播放器可以安全地下载第一个最高码率为5mbps的视频片段(也许时长6秒钟)。然后播放器再次感知带宽,如果依然很高,那么它将再请求最高码率的视频片段。

如果带宽突然下降到5mbps,播放器将向服务器请求码率为4mbps的视频片段,因为请求5mbps的片段会有风险。然后播放器会接收并播放4mbps的视频片段。

这个过程会一直持续,直到将所有视频播放完。

我刚才所介绍的是一种简单的带宽估计和质量/码率切换方法。显然现在有多种复杂的算法用来控制和决定播放器的切换(BOLA就是其中一种)。

维基百科上有一张很有意思的图片,这张图描绘了带宽的变化以及播放器请求的视频片段码率是如何适应带宽变化的。

理解ABR及其工作原理_人工智能

图片来源:By Daseddon –Own work, CC BY-SA 3.0

   总   结

在结束这篇ABR视频流文章之前,让我们复习下本文所学到的一些知识:

  • ABR表示Adaptive Bit Rate,即自适应码率
  • 它指的是媒体交付的自适应特性,其中播放器根据可用带宽请求不同码率的媒体
  • ABR技术的成功需要编码器、打包器、CDN和播放器的通力协作

对于本篇文章,你如果有想要补充的内容,欢迎在下方评论区评论。 


致谢

本文已获得作者Krishna Rao Vijayanagar授权翻译和发布,特此感谢。

原文链接:

https://ottverse.com/what-is-abr-video-streaming/




标签:播放器,视频,片段,码率,带宽,ABR,理解,原理
From: https://blog.51cto.com/u_13530535/6468919

相关文章

  • this 之谜揭底:从浅入深理解 JavaScript 中的 this 关键字(二)
    前言系列首发于公众号『前端进阶圈』,若不想错过更多精彩内容,请“星标”一下,敬请关注公众号最新消息。this之谜揭底:从浅入深理解JavaScript中的this关键字(二)调用位置在理解this的绑定过程之前,首先要理解调用位置:调用位置就是函数在代码中被调用的位置(而不是声明的......
  • 01 卢京潮《自动控制原理》学习笔记转
    原文:https://zhuanlan.zhihu.com/p/262021993先上一份821的考试大纲,四年大学出来的应该都知道课本会将知识点分为重点、一般、掌握、熟练、理解、熟悉、了解等几个等级:正确理解自动控制原理课程中的有关概念。掌握结构图等效变换方法和梅森公式。能根据结构图熟练求取系统的传......
  • 看懂这八大技术战役,你会理解今天的阿里
    “今天阿里巴巴已经变成一家技术公司。”在刚刚结束的阿里20周年年会上,马老师这样说,“阿里人明明有很好的路可以走,但是却选择没有人走过的路,但又必须要去走的路。”成为一家技术公司,大概是阿里做过的最跟自己过不去的决定。看懂阿里技术二十年的八大战役,也许你会理解今天的阿里。二......
  • 智慧医药安全管理解决方案助力医药监管实现重大突破
    智慧医药安全管理解决方案助力医药监管实现重大突破一、背景分析药品安全事关国计民生,一直以来都是公众最关心、最现实、最重视的大事。药品监管是人们安全食用药物的保护屏障,加大执行力度,提高监管能力,保障公众食用药品安全,提高全民健康水平,是医药监管部门的职责所在。本文主要分析......
  • MOS管基础知识:轻松理解MOS管工作原理
    MOS管是一种利用电场效应来控制其电流大小的半导体三端器件,很多特性和应用方向都与三极管类似。这种器件不仅体积小、质量轻、耗电省、寿命长、而且还具有输入阻抗高、噪声低、热稳定性好、抗辐射能力强等优点,应用广泛,特别是在大规模的集成电路中。根据导电沟道的不同,MOS管可分为......
  • kafka工作原理
    1.工作流程以及文件存储机制​ kafka中的消息是以topic进行分类的,生产消费消息都是面向topic。​ topic是逻辑上的概念,partition分区是物理上的概念,每个分区对应一个log文件,该log文件存储的就是producer生产的log数据。producer生产的数据会追加到文件末端。消费者组中的每......
  • MUSIC 直观理解
                  封底......
  • 深入理解 DAO,DTO,DO,VO,AO,BO,POJO,PO,Entity,Model,View 各个模型对象的概念
    参考文档:https://blog.csdn.net/SR02020/article/details/105821816 深入理解DAO,DTO,DO,VO,AO,BO,POJO,PO,Entity,Model,View的概念DAO(DataAccessObject)数据访问对象DTO(DataTransferObject)数据传输对象DO(DomainObject)领域对象VO(ViewObject)视图模型AO(ApplicationObject)应用对象......
  • RC4算法原理 && IDA识别RC4算法
    RC4算法原理&&IDA识别RC4算法RC4简介&&对称密码介绍在密码学中,RC4是一种流加密算法,密钥长度可变。加解密使用相同的密钥,隶属于对称加密算法。流密码属于对称密码算法一种,基本特征是加解密双方使用一串与明文长度相同的密钥流,与明文流组合来进行加解密密钥流通常是由某一确......
  • Linux日志切割神器logrotate原理介绍和配置详解
    1、原理介绍create这也就是默认的方案,可以通过create命令配置文件的权限和属组设置;这个方案的思路是重命名原日志文件,创建新的日志文件。详细步骤如下:重命名正在输出日志文件,因为重命名只修改目录以及文件的名称,而进程操作文件使用的是inode,所以并不影响原程序继续输出日志......