Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >这个开发者易忽略的优化点,腾讯视频竟靠它省上千万元

这个开发者易忽略的优化点,腾讯视频竟靠它省上千万元

作者头像
云存储
发布于 2023-03-29 10:11:06
发布于 2023-03-29 10:11:06
7470
举报

👉腾小云导读

在互联网行业降本增效的大背景下,如何结合业务自身情况降低成本是每个业务都需要思考的问题。腾讯视频业务产品全平台日均覆盖人数超2亿。图片作为流媒体之外最核心的传播介质,庞大的业务量让静态带宽成本一直居高不下——腾讯视频各端日均图片下载次数超过 100 亿次,平均图片大小超 100kb,由此带来的图片静态带宽成本月均超千万。本文将详细介绍腾讯视频业务产品借助腾讯云数据万象来优化静态带宽成本过程中的挑战与解决方案,输出同领域通用的经验方法,希望可以对广大开发爱好者有所启发。

👉看目录,点收藏

1 背景

2 图片处理重要概念

    2.1 图片压缩

    2.2 图片格式

3 腾讯视频图片存储2大绝招

    3.1 AVIF压缩-悄悄变”小“,压缩率超50%

    3.2 图片采样-最合适的窗口,显示最合适的图片

4 总结

01

 前言

在降本增效的互联网大背景下,如何结合自身业务情况降低成本是许多业务都需要思考的命题。

腾讯视频作为我国领先的在线视频媒体平台,全平台日均覆盖人数超 2 亿,付费会员数超过 1 亿。作为处于行业领先地位的产品,腾讯视频实现了对热门剧集、电影、综艺、动漫、体育等各内容的全面覆盖。同时腾讯视频业务很复杂、业务分布很广泛。除了移动端,还有 Web 端、PC 端、客厅和 H5 等多个产品形态。

在这众多形态之中,图片是除了流媒体之外最核心的传播媒介。如此庞大复杂的业务,势必会导致图片爆炸式的增长。据不完全统计,腾讯视频各端日均图片下载次数超过 100 亿次,平均图片大小超 100kb,由此带来的图片静态带宽成本月均超千万。如何在保证用户体验的前提下降低图片带宽成本,便成为了团队的重点课题。

本文在科普图片处理的通识知识后,将详细介绍腾讯视频业务借助腾讯云数据万象进行静态带宽成本优化过程中的挑战与解决方案,输出通用的经验方法。希望可以对诸位看官有所启发。

02

 图片处理重要概念

现有的图片格式有哪些?什么是有损压缩、无损压缩?在介绍方案之前,我们有必要了解下相关的基础概念。

2.1 图片压缩

  • 无损压缩

简介

无损压缩是对文件本身的压缩,和其它数据文件的压缩一样,是对文件的数据存储方式进行优化。采用某种算法表示重复的数据信息,文件可以完全还原,不会影响文件内容。对于数码图像而言,也就不会使图像细节有任何损失。

原理

无损压缩的基本原理是相同的颜色信息只需保存一次。压缩图像的软件首先会确定图像中哪些区域是相同的,哪些是不同的。包括了重复数据的图像(如蓝天) 就可以被压缩,只有蓝天的起始点和终结点需要被记录下来。但是蓝色可能还会有不同的深浅,天空有时也可能被树木、山峰或其他的对象掩盖,这些就需要另外记录。

从本质上看,无损压缩的方法可以删除一些重复数据,大大减少要在磁盘上保存的图像尺寸。但是,无损压缩的方法并不能减少图像的内存占用量,这是因为,当从磁盘上读取图像时,软件又会把丢失的像素用适当的颜色信息填充进来。如果要减少图像占用内存的容量,就必须使用有损压缩方法。

常用算法

游程编码、熵编码法:如 LZW 这样的自适应字典算法。

  • 有损压缩

简介

有损压缩是对图像本身的改变,在保存图像时保留了较多的亮度信息,而将色相和色纯度的信息和周围的像素进行合并。

合并的比例不同,压缩的比例也不同,由于信息量减少了,所以压缩比可以很高,图像质量也会相应下降。

原理

有损压缩可以减少图像在内存和磁盘中占用的空间,在屏幕上观看图像时,不会发现它对图像的外观产生太大的不利影响。

因为人的眼睛对光线比较敏感,光线对景物的作用比颜色的作用更为重要,这就是有损压缩技术的基本依据。

常用算法

色彩空间:这是化减到图像中常用的颜色。所选择的颜色定义在压缩图像头的调色板中,图像中的每个像素都用调色板中颜色索引表示。这种方法可以与抖动一起使用以模糊颜色边界。色度抽样:这利用了人眼对于亮度变化的敏感性远大于颜色变化,这样就可以将图像中的颜色信息减少一半甚至更多。变换编码:这是最常用的方法。首先使用如离散余弦变换(DCT)或者小波变换这样的傅立叶相关变换,然后进行量化和用熵编码法压缩。分形压缩:是一种以碎形为基础的图像压缩,适用于纹理及一些自然影像。

2.2 图片格式

格式

介绍

JPEG

JPEG 是用于连续色调静态图像压缩的一种标准,文件后缀名为 .jpg 或 .jpeg,是最常用的图像文件格式。它采用联合编码方式,以去除冗余的图像和彩色数据,属于有损压缩格式,能够将图像压缩在很小的储存空间,但一定程度上会造成图像数据的损伤。JPEG 编码中 quality 越小,图片体积就越小,质量越也差,编码时间也越短。

PNG

PNG 是一种采用无损压缩算法的位图格式。其设计目的是试图替代 GIF 和 TIFF 文件格式,同时增加一些 GIF 文件格式所不具备的特性,它本身的设计目的是替代 GIF 格式,所以它与 GIF 有更多相似的地方。无损压缩 PNG 文件采用 LZ77 算法的派生算法进行压缩,其结果是获得高的压缩比,不损失数据。它利用特殊的编码方法标记重复出现的数据,因而对图像的颜色没有影响,也不可能产生颜色的损失,这样就可以重复保存而不降低图像质量。相对于 JPEG 和 GIF 来说,它最大的优势在于支持完整的透明通道。因为支持透明效果,PNG可以为原图像定义 256 个透明层次,使得彩色图像的边缘能与任何背景平滑地融合,从而彻底地消除锯齿边缘,这种功能是 GIF 和 JPEG 没有的。

GIF

全称 Graphics Interchange Format,它是无损的、采用索引色的点阵图。GIF 通常情况下只支持 256 种颜色、透明通道只有 1 bit、文件压缩比不高。它唯一的优势就是支持多帧动画。它通常只支持 256 色索引颜色,导致只能通过抖动、差值等方式模拟较多丰富的颜色,Alpha 通道只有 1 bit,这意味着一个像素只能是完全透明或者完全不透明,会有毛边效果。

APNG

APNG(Animated Portable Network Graphics)顾名思义是基于 PNG 格式扩展的一种动画格式,可以实现 PNG 格式的动态图片效果,旨在替换掉画质低劣的 GIF 动画。它增加了对动画图像的支持,同时加入了 24 位图像和 8 位 Alpha 透明度的支持,这意味着动画将拥有更好的质量,其诞生的目的是为了替代老旧的 GIF 格式。

WEBP

WEBP 是 Google 开发以更高的压缩比替代 JPEG。它用 VP8 视频帧内编码作为其算法基础,拥有很不错的压缩效果,同时提供了有损压缩与无损压缩(可逆压缩)的方式。

SHARPP

SHARPP 是腾讯音视频实验室自研的基于新一代视频编码标准H.265的图片压缩技术。压缩效率相对其他图片格式具有很明显的优势。

AVIF

AVIF 是一种基于 AV1 视频编码的新图像格式。相对于JPEG,WEBP 这类图片格式来说,它的压缩率更高,并且画面细节更好。AVIF 支持多种色彩空间,包括高动态范围影像(HDR),还包括标准动态范围影像(SDR),以及经由独立编码码位的色彩空间讯号或符合 ICC 色彩特性文件。同时它支持 8 位元、10 位元、12 位元和更高的色彩深度。

基于腾讯视频现有的业务,对比了多组同一图片在相同质量的前提下,不同格式的图片的压缩情况:

使用 AVIF 压缩图片是否会造成体验上的影响?肉眼观感较为主观,无法量化。所以我们也引用了一些客观的指标来进行对比。这里使用 PSNR(峰值信噪比)和 SSIM(结构相似性)来衡量 AVIF 压缩之后的图片质量:其中 PSNR 越高,压缩后失真越小,SSIM 值越大,图像质量越高。

腾讯云数据万象经过不断调整和优化,实现:在相同质量下,AVIF 的 PSNR 和 SSIM 会比 WEBP 更接近甚至更高,但 AVIF 会比 WEBP 降低体积 30% 以上。这是在 95 质量下对图片进行 AVIF 压缩后的 PSNR 和 SSIM 数据对比。

因此,想要降低静态带宽成本,使用 AVIF 格式图片是最优的选择。

03

腾讯视频图片存储两大绝招

3.1 绝招一:AVIF压缩-悄悄变”小“,压缩率超50%
  • AVIF格式简介

AVIF 是一种基于 AV1 视频编码的新图像格式。相对于 JPEG,WEBP 这类图片格式来说,它的压缩率更高,画面细节更好。关于 AVIF 的介绍和调研,业内有很多文章介绍。例如:Netflix 的 AVIF for Next-Generation Image Coding。

如下图所示,AVIF 相比较 WEBP 压缩率 52%左右,相比较 PNG 可以达到惊人的 90% 以上,并且画面效果几乎无影响。

而腾讯云数据万象已早早支持avif转码功能,其所使用的底层编解码是腾讯自研的 AV1 编解码器——TXAV1 编码器。在 2021 年 MSU 比赛中,关于 AV1 的比赛指标,TXAV1 参加了 29 项,取得了 28 项领先,获得综合最佳。

  • 图片压缩方案

有了上述强力的功能支持,腾讯视频选择了数据万象实现图片 AVIF 转码。为了验证效果,我们也进行了图片大小的横向对比调研:

对比验证中我们采取了不同大小的图片作为样本,分别对比了压缩成 SHARPP 和 AVIF 格式的图片大小。从图表中可以明显看出AVIF图的大小对比原图有着显著降低,甚至相较SHARPP 图都有很大的优化幅度。

在端内我们通过 hook 图片请求,在请求头的 accept 中携带 image/avif 标记当前环境支持 AVIF 类型图片。相比直接在 URL 后缀拼接 format 参数,在把域名适配支持 AVIF 后,Web 端可以直接生效,也节省 Web 端的图片带宽成本,实施流程如下:

在使用方式上,数据万象的 AVIF 压缩功能也极其方便易用。只需在原访问链接上添加压缩参数即可,业务应用及切换十分便捷。此外,腾讯云数据万象与CDN服务实现了打通,仅需在腾讯云CDN控制台开启配置开关,即可实现域名级别的批量图片优化,十分便捷:

在端内图片解码上,由腾讯云数据万象提供的腾讯自研解码库,可以免费集成。有自研实验室提供的编解码配套服务,性能与稳定性都有了可靠的保证。

  • 实际效果

现如今,腾讯视频线上 80% 的图片已经切换成 AVIF 格式,日均 AVIF 请求达到 35 亿次,整体上平均图片大小降低 70%,平均解码耗时降低 20%。

根据搭建的看板数据,我们也对比了 AVIF 和其他类型图片的数据:

可以直观看到 AVIF 图片平均大小 20kb 左右,远低于 PNG/WEBP/SHARPP 等其他图片。

3.2 绝招二:图片采样-最合适的窗口,显示最合适的图片
  • 图片采样简介

图片采样逻辑,简单来说就是利用腾讯云数据万象的图片缩放及裁剪能力,在请求图片时根据 View 的实际宽高下载尺寸相对合适的图片,从而避免因图片的原尺寸过大超过渲染图片的宽高,造成了带宽浪费和内存浪费。

通过图片裁剪能力的支持,腾讯视频端侧可以根据业务指定的尺寸实时裁剪生成任意尺寸的图片,流程如下:

该策略的一大特点是整个压缩裁剪过程全部在云上完成、支持自定义尺寸。保证图片实际下载时能展示最合适的宽高,从而降低图片传输的带宽成本,同时还能降低本地图片内存峰值。

  • 方案优势

云端缩放裁剪,无需业务后端介入,开发成本低。图片体验无影响,View 渲染尺寸等于图片下载时尺寸。灵活度高,可以缩放裁剪成任意尺寸,更好适配各个分辨率客户端。降低网络运输成本,降低客户端内存占用。

  • 实际效果

在图片下采样策略上线之后,经过线上数据统计:

平均图片下载大小——降低 53%

平均图片内存大小——降低 24.3%

平均图片下载耗时——降低 7.8%

平均图片解码耗时——降低 35.3%

04

 总结

静态带宽成本优化是一个非常复杂的项目,涉及到图片、Push、文件下载三个主要大方向,每个方向的方案各不相同。腾讯视频给出的答卷,可以简单总结为以下两个部分:

AVIF图片压缩:对线上图片进行AVIF转码,端侧集成AVIF解码能力,从源头降低图片大小。图片采样策略:根据实际请求时的窗口大小对图片进行相应的裁剪及缩放,避免带宽及内存的浪费。

AVIF 图片压缩及图片采样策略作为整个腾讯视频静态带宽成本优化的一部分,对整体成本的下降起到了举足轻重的作用。在两大绝招双管齐下后,我们对整体的流量数据也作了一个对比统计:在不考虑用户增长的前提下,腾讯视频业务头部前 10 个图片域名月均流量从 650G 降低到 250G 左右,降幅超过 60%,单位成本也从 22 年 6 月到 22 年 10 月降低了 57%,22 年 H2 节约超千万成本。

目前腾讯视频业务基本已全量应用了 AVIF 和图片采样的技术方案,同时也将项目经验共享给腾讯动漫、腾讯新闻等业务,帮助更多产品高效的降低静态带宽成本。读到这里,希望我们的案例也能够帮助到你,解决图片带宽成本的头疼问题。

-End-

原创作者|余锋、王致铭

技术责编|余锋、王致铭

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯云存储 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
腾讯AVIF技术介绍
前言 2021年8月,腾讯OAV1正式赋能腾讯云数据万象, 为其提供最前沿的AVIF图片压缩技术,在图片主观质量相同的情况下大幅降低码率,节省储存空间。  背景介绍 腾讯云数据万象(Cloud Infinite,CI)是依托腾讯云对象存储的数据处理平台,涵盖图片处理、内容审核、内容识别、媒体处理、文档服务等功能,能够实现对云上的图片、视频、音频、文档等数据的处理,为客户提供专业一体化的数据处理解决方案,满足客户多种场景维度的需求。作为腾讯云集大成的数据处理产品, 很早前便推出了图片压缩服务 [1]。
腾讯多媒体实验室
2021/09/14
2K0
《数据万象带你玩转视图场景》第三期:图片极智压缩
前言 在本系列的第一期我们介绍了图片 AVIF 压缩,作为最前沿的压缩技术,AVIF 确实有着无数的优点。但时代的进步是循序渐进的,在一些较老的终端或设备上,可能短时间内确实无法支持 AVIF 格式,那如何能让这部分业务享受到时代的红利? 对此,数据万象推出了基于最通用的jpg、png、gif等图片格式的压缩能力——图片极智压缩,可以在不改变图片格式的情况下,大幅减小图片大小,并保证图片视觉上的无损查看。  图片压缩与主观视觉 最早期的时候,最先出现的图片压缩算法是无损压缩算法,这些无损压缩算法使用lz77
云存储
2023/05/29
3590
《数据万象带你玩转视图场景》第三期:图片极智压缩
对象存储 AVIF 图片压缩,邀您参与免费内测!
现在硬件设备越来越强大,随手拍个照的图片可能就有几MB大小!图片在保存、传播的过程中,成本及效率应该成为你最关注的问题。
云存储
2021/08/24
1.5K0
对象存储 AVIF 图片压缩,邀您参与免费内测!
对象存储 AVIF 图片压缩,即将公测!
​2021年8月,腾讯云数据万象以内测方式推出了最前沿的 AVIF 图片压缩服务,可以在图片主观质量相同的情况下大幅降低码率,节省储存空间。 经过3个月时间的内测,我们收集到了很多热心用户的反馈,AVIF 图片压缩服务也在不断优化改进。
云存储
2021/11/22
8330
对象存储 AVIF 图片压缩,即将公测!
《数据万象带你玩转视图场景》第一期:avif图片压缩详解
随着硬件的发展,不管是手机还是专业摄像设备拍出的图片随便可能就有几M,甚至几十M,并且现在我们处于随处可及的信息海洋里,海量的图片带来了存储问题、带宽问题、加载时延问题等等。对图片信息进行有效的压缩处理无疑会极大的降低存储成本、流量压力,并且还能显著提升页面加载速度。
jimmy老师
2023/03/06
7630
《数据万象带你玩转视图场景》第一期:avif图片压缩详解
现代图片性能优化及体验优化指南 - 图片类型及 Picture 标签的使用
图片资源,在我们的业务中可谓是占据了非常大头的一环,尤其是其对带宽的消耗是十分巨大的。
Sb_Coco
2023/03/01
1.1K0
现代图片性能优化及体验优化指南 - 图片类型及 Picture 标签的使用
数据万象 CI 图片瘦身,实现超高压缩与视觉无损两全
据统计,一个人获得的信息大约有75%来自视觉,而图片是人们最主要的信息源。进入信息化时代,人们越来越依靠计算机获取和利用信息,而数字化后的多媒体信息具有海量性,大量的图片信息会给存储器的存储容量,通信干线信道的带宽,页面加载速度,以及计算机的处理速度增加极大的压力。这时对图片信息进行有效的压缩处理无疑会极大的降低压力,并且显著提升页面加载速度。
云存储
2020/10/21
1.3K0
数据万象 CI 图片瘦身,实现超高压缩与视觉无损两全
成本优化:新一代图片编码AVIF在手Q应用实践
图片瀑布流是我们手Q个性化业务最主要的表现形式,很多页面的图片资源都十分庞大。虽然之前已经做了一些优化,将除首屏模块外的所有图片进行懒加载,但是页面所需加载的资源仍然不小。
用户7958116
2023/05/19
1.2K0
成本优化:新一代图片编码AVIF在手Q应用实践
数据万象AVIF图片压缩 - 小程序省流量利器
微信小程序因其便捷的开发环境和天然的微信生态,使得越来越多企业平台通过小程序建立自己的业务。在小程序上使用图片非常广泛,但传统格式图片(如 JPG/PNG)占用空间大,加载速度慢,可能导致昂贵的图片流量支出。近年来,AVIF 图片以高压缩率、优良画质成为省流量的新选择。本文将介绍如何通过数据万象(CI,Cloud Infinite)的图片压缩能力,解决使用 AVIF 图片的疑虑,助力快速升级小程序,节省图片流量。
云存储
2023/07/16
4530
数据万象AVIF图片压缩 - 小程序省流量利器
探索现代图片格式:从GIF到HEIF,优势与适用场景一览
每个像素所能显示的彩色数为2的8次方,即256种颜色。这种彩色深度适用于较古老的显示设备和简单的图像场景。它在色彩表现方面相对较弱,颜色过渡可能显得不够平滑,导致图像呈现出颗粒感,不适合表现细腻的色彩变化。
linwu
2023/07/27
8890
探索现代图片格式:从GIF到HEIF,优势与适用场景一览
全面掌握移动端主流图片格式的特点、性能、调优等
图片通常是移动端应用流量耗费最多的部分,并且占据着重要的视觉空间。以大家最常用的即时通讯IM应用为例,应用中存在大量的图片数据往来(比如图片消息、用户相册、用户头像等等)。合理的图片格式选用和优化不仅能减小图片传递过程中的数据量、提升视觉效果,还能显著降低服务端的带宽、计算资源等基础设施成本,一举多得。
JackJiang
2018/08/29
2K0
如何选择正确的图片格式
图片是网站、app不可或缺的重要组成部分,其中位图更是占了图片的绝大多数,本文主要讨论各种位图格式的特点和适用场景,希望能为大家选择图片格式提供一些帮助。
milom-淼
2020/03/09
3K0
如何选择正确的图片格式
前端图片优化机制
IMWeb前端团队
2017/12/28
3.2K0
前端图片优化机制
现代图片性能优化及体验优化指南
图片资源,在我们的业务中可谓是占据了非常大头的一环,尤其是其对带宽的消耗是十分巨大的。
Sb_Coco
2023/04/01
1.6K0
现代图片性能优化及体验优化指南
【对象存储COS】利用数据万象CI对影像内容空间进行优化
业务量的不断扩大,导致对象存储的存储空间以及流量迅速增大,尤其是图片业务,web中最关键的部分,由于html的同步加载特性,通常是一张加载完才能加载下一张,在本地降低分辨率会丢失图片大部分细节,那么除了让本地图片一张张压缩之外,还有什么办法大幅度减小图片体积呢?
Ar-Sr-Na
2022/03/22
1.7K1
【对象存储COS】利用数据万象CI对影像内容空间进行优化
每个前端工程师都应该了解的图片知识(长文建议收藏)
随着web的发展,网站资源的流量也变得越来越大。据统计,60% 的网站流量均来自网站图片,可见对图片合理优化可以大幅影响网站流量,减小带宽消耗和服务器压力。
桃翁
2019/05/31
1.5K0
WebP原理和Android支持现状介绍
1.背景 目前网络中图片仍然是占用流量较大的一部分,对于移动端更是如此,因此,如何在保证图片视觉不失真前提下缩小体积,对于节省带宽和电池电量十分重要。 然而目前对于JPEG、PNG、GIF等常用图片格式的优化已几乎达到极致,因此Google于2010年提出了一种新的图片压缩格式 — WebP,给图片的优化提供了新的可能。 WebP为网络图片提供了无损和有损压缩能力,同时在有损条件下支持透明通道。据官方实验显示:无损WebP相比PNG减少26%大小;有损WebP在相同的SSIM(Structural Simi
腾讯Bugly
2018/03/23
4.6K0
9.27【前端开发】图片文件格式:常见的图片格式对比有何优劣以及如何使用Google的webp格式?
总结一下,对于色彩与图像内容比较丰富,变化比较多端的,适合使用jpg,例如大型背景、头像、人物照片等。对于颜色单一,有大色块的图像,例如图标等,适合用png,压缩效率高,并且有透明。小动画可以使用gif,便不适合使用复杂的视频。
LIYI
2020/10/09
2.4K0
9.27【前端开发】图片文件格式:常见的图片格式对比有何优劣以及如何使用Google的webp格式?
腾讯社交网络图片带宽优化技术演进之路
作者介绍:游佳龙,腾讯高级工程师,目前专注于SNG组件运维工作。6年运维领域相关工作经验,具备中间、云计算、接入组件、CDN网络等建设优化能力。 前言 腾讯社交网络相关产品,例如腾讯课堂、增值会员、动漫、直播、游戏商城、音乐、Qzone校园等,主要目标群体定位为年轻一代,属于对新事物接受比较高也更喜欢新鲜个性内容的群体,产品设计上必然使用大量的图片展示;同时核心产品QQ也涉及大量的图片存储及展示,例如QQ群图、群相册等。图片在产品中的大量使用拥有诸多好处的同时,也带来以下几点问题: 服务器端出口流量
织云平台团队
2018/01/26
3.1K1
腾讯云数据万象CI助力企业解决图片处理需求!
数据上云已经成为了一个必然趋势。企业将数据上传至“对象存储COS”,确保数据的高可用高可靠,随时随地管理,并使用本文的主人公“数据万象CI”解决了各式各样的图片处理需求。
云存储
2020/03/16
3.5K0
推荐阅读
相关推荐
腾讯AVIF技术介绍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档