当前位置: 首页 > news >正文

图片压缩格式自适应,真的很省流量!

导语

图片,作为信息传递的重要载体,其格式日益多样化。不管是 PC 端还是移动端,图片一直都是流量消耗的大户。在互联网的应用中,用户会上传大量的图片,而且访问频繁,如果这些图片都以传统方式存在服务器磁盘上,对 CPU、内存、磁盘空间和网络带宽等服务器资源而言,都是很大的挑战。

在七牛云多媒体处理平台上,图片处理是其中最基础的能力之一。七牛云为客户提供了灵活、高效的一站式图片解决方案,涵盖了上传、存储、处理、分发等图片生产和消费的全部链路。还特别推出了「图片压缩格式自适应」功能,能够适配终端兼容性、返回最优的压缩格式图片、有效降低图片大小。

图片压缩格式自适应

开启图片压缩格式自适应后,服务会识别终端的兼容情况、自动转换并输出压缩格式的图片,有效减少图片访问的下行流量,降低成本。七牛云支持 HEIC、AVIF 和 WebP 三种压缩格式的自适应,开启多种格式自适应时,同一个图像格式会按照优先级从高到低 HEIC > AVIF > WebP 的顺序生效,当终端同时支持 HEIC 和 WebP 格式时,会优先匹配 HEIC 自适应,将图像格式转换为 HEIC。

可节省 70% 的图片访问流量

将图片文件转换成 HEIC、AVIF、WebP 格式,可以节省高达 70% 的流量成本。

适应多样终端的最优匹配

您可以同时开启多种格式的自适应,在不同终端上实现格式最优匹配、流量成本最省,比如在 iOS 终端自适应成 HEIC 格式,Web 终端自适应成 WebP 格式。

一键开启无需开发

只需在域名上开启配置,无需业务修改代码、变更终端访问行为,即可启用压缩格式自适应,优化图片访问体验和成本。

HEIC 自适应

HEIC 格式以其图像质量高、文件体积小、支持多媒体以及易于后期处理的特点,已广泛应用在网页、APP 中。它比 JPEG 格式小 50% 左右,能够显著节省存储空间和流量成本。

开启 HEIC 自适应图片压缩功能后,满足以下条件的请求,将直接返回 HEIC 处理后的图片,若不满足下述条件,则仍返回原图:

  • HTTP 请求头中 accept 头部包含 image/heic
  • 图片 mimetype 为:image/*

AVIF 自适应

AVIF 是基于 AV1 的一种全新图片格式,支持无损压缩、HDR、动画、Alpha 通道等特性,能够在不降低图片的画质的情况下,大小减小 90% 以上,极大地提升用户体验。

开启了 AVIF 自适应图片压缩功能后,满足以下条件的请求,将直接返回 AVIF 处理后的图片,若不满足下述条件,则仍返回原图:

  • HTTP 请求头中 accept 头部包含 image/avif
  • 图片 mimetype 为:image/*

WebP 自适应

WebP 格式派生自图像编码格式 VP8。它具有较优的图像数据压缩算法,能带来更小的图片体积,而且拥有肉眼识别无差异的图像质量,同时具备无损和有损的压缩模式、Alpha 透明以及动画的特性。

开启了 WebP 自适应图片压缩功能后,满足以下条件的请求,将直接返回 WebP 处理后的图片,若不满足下述条件,则仍返回原图:

  • HTTP 请求头中 accept 头部包含 image/webp
  • 图片 mimetype 为:image/*

总结

随着图片格式的不断演进,如何给用户带来更稳定流畅的图片画质体验,性价比更高的存储和访问流量成本,是用户和企业面临的重要难题。七牛云将继续投入研发,优化我们的图片处理服务,同时持续关注图片领域的最新发展,如 AI 图片编码技术、图片增强与主观编码技术等,在给客户带来极致成本收益的同时,探索图片存储和优化的无限可能。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 鸿蒙OpenHarmony【轻量系统内核通信机制(消息队列)】子系统开发
  • --芯片测试--
  • ARM架构下的多核处理器设计?
  • 百度移动刷下拉词工具:快速出下拉词的技术分析
  • 如何来写一份开题报告?
  • docker部署Stirling-PDF
  • 大模型-模型架构-主流架构
  • 数据结构应试-树和二叉树
  • 数据结构和算法之树形结构(1)
  • SaaS架构:流程架构分析
  • web 动画库
  • C++第八节课 日期类的补充
  • Python开发深度学习常见安装包 error 解决
  • 【基于轻量型架构的WEB开发】【章节作业】
  • 上传富文本插入文件时报错:JSON parse error: Unexpected character解决办法
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • eclipse的离线汉化
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • Shadow DOM 内部构造及如何构建独立组件
  • Vim Clutch | 面向脚踏板编程……
  • Webpack入门之遇到的那些坑,系列示例Demo
  • Yeoman_Bower_Grunt
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 高度不固定时垂直居中
  • 使用parted解决大于2T的磁盘分区
  • 微信小程序--------语音识别(前端自己也能玩)
  • 追踪解析 FutureTask 源码
  • 做一名精致的JavaScripter 01:JavaScript简介
  • 《天龙八部3D》Unity技术方案揭秘
  • ​​​​​​​开发面试“八股文”:助力还是阻力?
  • ​2020 年大前端技术趋势解读
  • ​linux启动进程的方式
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • #{}和${}的区别?
  • #在 README.md 中生成项目目录结构
  • (1)(1.19) TeraRanger One/EVO测距仪
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (Java入门)抽象类,接口,内部类
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (附源码)计算机毕业设计大学生兼职系统
  • (函数)颠倒字符串顺序(C语言)
  • (十八)Flink CEP 详解
  • (实测可用)(3)Git的使用——RT Thread Stdio添加的软件包,github与gitee冲突造成无法上传文件到gitee
  • (详细版)Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models
  • .apk 成为历史!
  • .Net 8.0 新的变化
  • .Net FrameWork总结
  • .NET MVC之AOP
  • .NET Remoting Basic(10)-创建不同宿主的客户端与服务器端
  • .NET/C# 中设置当发生某个特定异常时进入断点(不借助 Visual Studio 的纯代码实现)
  • .Net7 环境安装配置
  • /etc/X11/xorg.conf 文件被误改后进不了图形化界面
  • @Autowired多个相同类型bean装配问题
  • @SuppressWarnings(unchecked)代码的作用