V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
t4we
V2EX  ›  Android

问一个关于 webp 图片转换的问题

  •  
  •   t4we · 2022-01-19 19:31:46 +08:00 · 4523 次点击
    这是一个创建于 820 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一张 400kb 的 jpeg 图片,用 android studio 自带的“convert to webp”功能,转换成 75%质量的 webp 后大小是 200kb ,但是如果在手机上使用 Bitmap.compress 同样压缩成 75% 的 webp ,大小反而比原图还要大( 500kb ),两种压缩产物大小不同,是什么原因,是 Android 系统和 Android Studio 的压缩算法不同吗?

    第 1 条附言  ·  2022-01-20 15:25:38 +08:00
    问题已找到,使用 Bitmap.compress 测试的时候,Bitmap 解码自 drawable 文件夹下的资源,Android 系统会根据 dpi 对图片进行放大。直接从文件解码后正常,产物大小和 Android Studio 转换产物一致。
    5 条回复    2022-01-20 09:19:52 +08:00
    mxT52CRuqR6o5
        1
    mxT52CRuqR6o5  
       2022-01-19 19:34:12 +08:00
    手机上可能是走了硬件加速?
    lvsemi1
        2
    lvsemi1  
       2022-01-19 19:57:56 +08:00
    规范没写明的各种实现出现不同结果很正常,但是 75%反而变大建议你看看色深之类的东西有没有变化
    ykrank
        3
    ykrank  
       2022-01-19 20:40:48 +08:00
    感觉是透明度和色彩位数的问题
    xmumiffy
        4
    xmumiffy  
       2022-01-19 20:47:18 +08:00
    AS 上的 webp 压缩器 对绝大部分 png 图 70~99% 质量的图片大小会大于 100%质量的图片大小,而且同等大小的 100%质量和有损压缩有肉眼可见的差距,也是非常神奇了
    okakuyang
        5
    okakuyang  
       2022-01-20 09:19:52 +08:00
    解码成 Bitmap 可能当成了 RGBA ,JPG 转 webp 缩小成一半体积是比较正常的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3460 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 10:39 · PVG 18:39 · LAX 03:39 · JFK 06:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.