如何使用下一代编码技术提升流媒体体验

简介: 本文来自Bitmovin总裁及联合创始人Stefan Lederer LiveVideoStackCon2019北京大会上的分享。Stefan介绍了下一代编解码器和编码技术的实施,以及如何让观众有更好的流媒体和视频体验。另外,还进一步解释HEVC、VP9和AV1如何在不同的设备上运作。如果将这些编解码器结合,可以降低比特率获取更大的存储空间,把CDN成本降低30%。

文 / Stefan Lederer


整理 / LiveVideoStack

image.png

读者们好,今天我将使用本公司Bitmovin与Hulu合作的案例,探讨Multi-Codec Streaming, 3-pass和Per-Title encoding技术。


1. Bitmovin

image.png

首先,简单介绍一下Bitmovin,Bitmovin 是一家提供编码产品、播放器产品、分析产品的公司。我们专注于开发商以及API, 所以工具都聚焦在API开发人员的各个需求。


这对于我们以及客户是一个很重要的话题,因为我们的客户是根据特定用例配置我们的软件的开发者,所以每个用例都是独特的。


1.1 Hulu 日本社区

image.png

说到新的编码技术和编解码器,我们的研究数据和结果是以Hulu 日本社区的一个实际例子为基础。Hulu Japan是日本广泛使用的视频流平台。


Hulu Japan使用了一些新推出的编码技术,使它们能够更高效地在市场上提供更好的质量的内容。同时,通过这些新的编码方式和新的编码技术,可以降低CDN的成本。

image.png

Hulu Japan为客户提供各种设备平台接入支持

image.png

我们能想到的,比如电脑、平板电脑、智能手机、游戏机和电视都包括在内。


这从编码技术的选择的角度来看,加上实际编解码器的循环选择挺有意思。这些设备都支持H.264, 像浏览器一样支持VP9,我们知道大多数移动设备都支持VP9和HEVC。


接下来,你可以看到主要支持HEVC的电视机,还有一些支持VP9的Android的电视机。从配置的角度来看,每个设备都将面临挑战。


1.2 设备方面的挑战

image.png

比起其他的VOD流媒体服务,存储成本和CDN成本依然是最大的成本组成。尽管这样,理想的目标还是保持高质量、同时降低成本。大多数的流媒体服务都希望能够受市场驱动,因此大多数流媒体服务使用singleencoding比特率阶梯。


目前,一个single encoding比特率阶梯可能不是各媒体流服务的最佳配合。我们所播放很多不同类型的内容,比如动画,动作片等等。单个的比特率阶梯(比如one ABR比特率阶梯)不能支持所有流服务中的内容。Per-Title Approach想达到的是在于平台的per-asset和per-content的基础上提供更好的质量。


在每个市场,因为多个流媒体服务的竞争对手太多,能输出高质量的内容分布是非常重要的。在日本,我们有Hulu,Netflix及一系列的服务平台。如果能够用最新的技术区分质量和用户体验,那当然会助于产品改进。


他们也是想要使用市场上最新的技术栈,但是我们应该从设备支持的角度评估这方面的可能性。比如说,我们正在研究AV1和VVC,AV1已是成品标准而VVC还不是。大多数设备都支持AV1,但是它可以实施落地吗?


我们第一批的客户为正在对protected content(受保护的内容)部署AV1。对于Hulu Japan的运营,AV1最大的障碍之一还是因为Chrome和Firefox所使用的H.265/HEVC并不支持protected content。


1.3 Hulu Japan

image.png

我们探讨过在adaptive bitrate ladder (自适应比特率阶梯)中使用Per-Title Encoding技术。另外,我们也使用multiplecodecs (多个编解码器)。这些技术的结合让我们每月节省大约30%的 CDN总成本。

image.png

我们使用的新技术称为3-pass 编码,帮助提高编码效率。基本上,我们优化现有的编解码器,无论是H.264、HEVC还是VP9,最后决定理想比特率的阶梯。


基于per-asset,我们先把基本值的ideal bitrate configuration(理想比特率配置)定下来,过后才选择multi-codec(多编解码器):在H.264、HEVC、VP9中做出选择。


2. 3-pass 编码

image.png

3-pass 编码增加多一个pass 以便做出整个基本值的最初分析。第二,我们将分析每一阶段段的动作位数。在第三步骤,我们对会每一块chunk separate fridge进行编码,并采用分布式速率控制,并做出适当的改变。这方式与multi-passencoding和multi-weight control有很大差异。这也是我们从零开始构建的,称之为3-pass 编码。

image.png

H.264是个高效的编解码器,在市场上已应用15年,但是我们觉得可以改进的地方是weight-control。从图中,我们看到了对速率控制和3-Pass编码步骤的改进。我们可以通过不同的分辨率和比特率阶梯平均将文件大小减少大概13%。

image.png

最终的质量影响极小,你可以节省大约13%的输出文件大小,但是质量差距不大。例如,我们只损失0.05 Db PSNR,它对质量方面的影响不大,但对文件方面的影响更大。它确实在于较低的比特率输出当下,挤出相同质量的视频。


3. Per-Title Encoding

image.png

现在我们已经对编码进行了优化。之后我们再仔细看看比特率阶梯,决定哪个ABR比特率配置最适合这个特定用例。

image.png

我们都知道每个内容都不一样,如果ABR-HLS内置有一个通用的比特率阶梯,那可能会消耗带宽,以非常高的比特率或不必要的质量进行编码,我们在产生噪音。第二,我们可能在过低的比特率进行编码后引入了encoding artifacts(编码伪影)。

image.png

任何低于35 PSNR的产品都被认为是质量低劣的。任何高于45 PSNR的标准,质量可能不会有太大的下降,一般观众还能接受的。


例如,一般的比特率阶梯有许多不同的表示,其中许多表示低于35db,而大部分都高于45db。我们需要考虑其理想配置的分辨率和比特率,还有使用的比特率的数量。


这个standard profile bitrate ladder标准配置文件比特率阶梯(橙色线)可以缩减为Per-title 比特率阶梯(蓝色线),以较小的比特率在35和45 dB PSNR之间提供理想配置。


这是我们从Hulu Japan中所使用的动画内容以及漫画内容,比较极端的一个例子。这种方式显然在浪费带宽、编码算力,而我们可以将特定基本值减少到较小的表示形式。

image.png

Adaptive bitrate ladder到底有什么好处?比特率会降低;如果我们只使用对于内容有意义的比特率,我们可以保持CDN Egress 的输出。因为我们没必要对每个representation进行编码,所以会减少存储空间。


一旦有固定的质量输出,整个储存库的质量会提升。如果没有过高质量或低质量的视频,总体用户体验将变得更加顺畅。

image.png

值得注意的是,每个内容都有不同的比特率阶梯配置。上图可见,从九种不同的比特率和分辨率选择,减少到六种。


如果阶梯之间的质量差太小,最好把它删除掉。例如,我们分析了1080p视频需要达到6500 Kbps的比特率。基本上,当你计算出所有比特率的平均值时,我们从每秒2350kbps变成了平均1362.25kbps。


我们发现比特率阶梯的平均比特率降低了,因为我们平均只需要减少40%的比特率。我们创建的所有编码存储都减少了54%,由于该内容所需的存储空间更少,从而提高了用户的体验质量。1080p的最低比特率是4500kbps。使用自适应比特率阶梯,我们估计可以以2100 Kbps的速率转换1080p质量的视频。

image.png

Generic 比特率阶梯(橙色线)


Per-Title 比特率阶梯(蓝线)


如果我们根据使用的比特率和产生的质量来比较bitrate ladder,我们可以看到橙色线的GenericBitrate Ladder (通用比特率阶梯)。Per-Title的比特率阶梯(蓝线)始终产生的质量很高,每秒不超过3000 Kbps。这反过来又为观众带来了更高的平均质量。

image.png

这是每月成本汇总的原始设置。Per-Title在编码上投入了大约相同的资金,虽然额外的成本的还花在编解码器和3-Pass编码。但我们的CDN成本的确下降了不少。每个月,Hulu可以利用这个技术降低30%的总成本。


4. multiplecodecs

image.png

在中国,大约29%的移动市场份额被iOS占据,其中大部分是iOS 11或更高版本,也可以在这些设备上支持HEVC。中国78.2%的移动市场是Android,所以VP9支持Android 4.4KitKat或更高版本。


理论上,77.3%的移动设备可以使用VP9。虽然很多安卓设备都不能正确的支持VP9,但其中许多设备都是低功耗的。依据基础的理论,可以支持VP9的设备的最大数量是77.3%。


一般上,你可以为97%的移动设备提供比HEVC更高效的编解码器,而不是H.264。我们都知道HEVC的效率比H.264高50%,也知道VP9的效率不差,效率的比数比H.264高出40%。


这些移动设备只是一个例子,只想展示其使用比H.264更先进的编解码器以及无限的可能性。

image.png

以Hulu Japan为例,我们使用标准比特率阶梯并按标题制作Per-Title。这已经减少了56%的平均比特率。当我们使用H.264和VP9时,这个配置降低了大约39%平均比特率。


因此,以1080p视频为例,我们只需要800kbps就可以开始使用最低的full HD表示。虽然这是为VP9或HEVC上支持的设备保留的,但是它是迈向下一个优化级别的正确轨道。

image.png

如果你使用创建的static bitrateladder,并且年复一年地对每项资产使用,你可能就在浪费比特率和金钱。例如,1080p需要4500 Kbps。


我们可以节省空间,选择800 Kbps的第一个HD表示。通过使用更高级的编解码器,我们可以将编码的文件大小从1.5gb减少到380mb。


我们之前看到的标准比特率阶梯的橙色线,我们看到的是蓝色的优化每标题行,现在我们添加的是黄色的H.265和HEVC。我们能够产生更高的质量,并进一步降低比特率。

image.png

基本上,我们可以看到三通编码如何通过更好的权重控制来提高编码效率。我们可以看到每个标题编码如何在每个资产的基础上优化比特率阶梯,并删除不必要的表示。除此之外,更先进的编解码器的结合对很多设备更有利用价值。当然的,通过现有的VP9或HEVC,或者AV1和VVC,你可以在大多数设备上实现这个技术。

————————————————

版权声明:本文为CSDN博主「LiveVideoStack_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/vn9PLgZvnPs1522s82g/article/details/103776034


「视频云技术」你最值得关注的音视频技术公众号,每周推送来自阿里云一线的实践技术文章,在这里与音视频领域一流工程师交流切磋。

阿里云视频云@凡科快图的副本.png

相关实践学习
Serverless极速搭建Hexo博客
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
2月前
|
前端开发 Linux API
无缝融入,即刻智能[一]:Dify-LLM大模型平台,零编码集成嵌入第三方系统,42K+星标见证专属智能方案
【8月更文挑战第3天】无缝融入,即刻智能[一]:Dify-LLM大模型平台,零编码集成嵌入第三方系统,42K+星标见证专属智能方案
无缝融入,即刻智能[一]:Dify-LLM大模型平台,零编码集成嵌入第三方系统,42K+星标见证专属智能方案
|
2月前
|
机器学习/深度学习 自然语言处理 JavaScript
FunAudioLLM:全球化语音体验的跨语言支持
【8月更文第28天】随着全球化的发展,多语言支持已经成为各种技术产品和服务的基本要求之一。FunAudioLLM(虚构名称)作为一款先进的语音合成引擎,致力于提供高质量、多语言的语音体验。本文将介绍 FunAudioLLM 如何实现跨语言的支持,并通过具体的代码示例展示如何使用该引擎进行语音合成。
36 0
|
4月前
|
人工智能 自然语言处理 机器人
[AI Google] 新的生成媒体模型和工具,专为创作者设计和构建
探索谷歌最新的生成媒体模型:用于高分辨率视频生成的 Veo 和用于卓越文本生成图像能力的 Imagen 3。还可以了解使用 Music AI Sandbox 创作的新演示录音。
[AI Google] 新的生成媒体模型和工具,专为创作者设计和构建
|
语音技术 信息无障碍
直播源码搭建平台技术知识:实时语音识别字幕呈现功能
回到我们的直播源码平台开发上来,对于直播源码平台来说实时语音识别字幕呈现功能也是重要的功能之一,好了,正式进入我们今天的主题内容:直播源码搭建平台技术知识:实时语音识别字幕呈现功能!
直播源码搭建平台技术知识:实时语音识别字幕呈现功能
|
开发框架 .NET 数据处理
海思3559万能平台搭建:RTSP优化buffpool的引入
海思3559万能平台搭建:RTSP优化buffpool的引入
420 0
海思3559万能平台搭建:RTSP优化buffpool的引入
|
Web App开发 编解码 移动开发
【WebRTC原理探索】大势所趋,迈向认识 WebRTC第一步
【WebRTC原理探索】大势所趋,迈向认识 WebRTC第一步
422 0
【WebRTC原理探索】大势所趋,迈向认识 WebRTC第一步
|
机器学习/深度学习 人工智能 自然语言处理
阿里云智能编码插件,更Cosy的开发体验
阿里云智能编码插件,更Cosy的开发体验。Cosy集合了代码补全和代码搜索两大开发辅助功能,不仅能通过深度学习模型和程序分析技术,精准智能地帮助我们减少 击剑🤺 击键次数,还能基于海量代码片段和社区问答数据,让我们可以哪里不会搜哪里,沉浸在IDE内快乐开发。今天带大家感受致力于打造沉浸式开发体验的代码示例搜索功能~
634 0
阿里云智能编码插件,更Cosy的开发体验
|
人工智能 自然语言处理 算法
Facebook&哥大等推出实验性AI框架,音视频信息可自由转换文本!
近日,来自Facebook、哥伦比亚大学等高校的研究人员开发了一种可以从视频、对话历史、音频以及语音文本中生成高层次语义信息的框架——Vx2Text,该模型可以用来概括信息内容,并准确地回答相关问题。
161 0
Facebook&哥大等推出实验性AI框架,音视频信息可自由转换文本!
|
数据安全/隐私保护
关于直播平台开发中流媒体传输,重点干货分享
随着近年来直播行业的飞速发展,直播平台开发的技术日益成熟,直播系统的应用场景也越来越广泛,也离不开流媒体传输的技术支持,本文就主要介绍了当前主流的流媒体传输中推流端及播放端分别需要几步。
关于直播平台开发中流媒体传输,重点干货分享
|
视频直播 5G UED
独特的直播形式——一对一语音聊天独特的直播形式——一对一语音聊天
4G技术的发展给移动直播带来了巨大的商机,全民直播的新时代,音视频结合的一对多直播形式在直播市场中占据着各大主流媒体。然而随着直播市场逐渐饱和,单一的一对多视频直播已经不能满足观众的需求,更能贴近人们需求的一对一直播逐渐发展起来。一对一语音聊天更是有着普通的一对多视频直播无法媲美的优越性。
独特的直播形式——一对一语音聊天独特的直播形式——一对一语音聊天
下一篇
无影云桌面