Android 版微信朋友圈上传图片压缩的问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wangwang24
V2EX    Android

Android 版微信朋友圈上传图片压缩的问题

  •  
  •   wangwang24 2017-07-24 21:58:17 +08:00 24565 次点击
    这是一个创建于 3000 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天传了一张比较长的图片,分辨率大概是 1080*20000+,手机自带便签 APP 里的一条纯文字的便签生成的图片,Android 微信上传后查看,发现文字基本不可看清的状态,同一张图片用 iOS 微信再上传一遍,效果杠杠的。

    把 iOS 和 Android 两台设备上传到朋友圈之后的图片分别下载对比后发现,Android 版微信不仅降低了图片质量,还压缩了图片大小,而 iOS 版微信的图片大小和原图一致,开始以为就是原图,后来查看发现 iOS 的这张图片是 2.7M ,而原图只有 2.09M 。iOS 的图片在 Android 手机自带图库里看起来观感也非常好,双击放大操作时,肉眼看到直接就是清晰的,而原图在图库里放大时,显示有明显的延迟,肉眼可见的从模糊到清晰的过程,估摸得有两三秒…… 820 在现在也算是中端偏上的 SoC 吧,自带图库看张图竟然是这样的体验……

    所以现在事情就很奇怪,iOS 微信上传后的图片,观感好就算了,但是猜测大概也会压缩吧,怎么会比原图还大呢?之前看过某乎上有个回答讲到可能是 Android 采用的 libjpeg 图像库的问题,不确定是否属实,非常疑惑,到底是谷歌的问题,还是腾讯的问题?
    30 条回复    2018-08-14 17:40:13 +08:00
    EricCartman
        1
    EricCartman  
       2017-07-24 22:16:45 +08:00 via Android
    明显是微信垃圾,telegram 就不会出现这种情况
    EricCartman
        2
    EricCartman  
       2017-07-24 22:17:21 +08:00 via Android
    而且我记得 PNG, GIF 之类的格式就不会被压缩
    woocean
        3
    woocean  
       2017-07-24 22:23:30 +08:00
    关于 IOS 和安卓图片质量不同的问题好像在科技美学见过,结论是安卓端微信就是这么设置的,IOS 就是质量好些。
    morethansean
        4
    morethansean  
       2017-07-24 22:25:21 +08:00
    其实一定要说, 这两个和底层都可以没什么关系。

    P.S. 自带图库是个什么 APP ?
    shoaly
        5
    shoaly  
       2017-07-24 22:36:37 +08:00
    这也是我一直很疑惑的问题, 现在安卓无论是内存 cpu 还是摄像头 硬件方便都已经非常高级了, 但是这个微信压缩质量从来没升级过... 知乎上那个文章根本不让人信服, 安卓原生库就算有问题, 自己换一个库就可以了...
    wangwang24
        6
    wangwang24  
    OP
       2017-07-24 22:37:30 +08:00
    @EricCartman 不见得啊,一般拍的照片可能肉眼看不太明显,像文字为主的图片,而且分辨率比较长的图片的话才能比较直观发现区别,TG 我也试过,同样这张便签生成的图片,TG 根本发不出去,Mac 端和 Android 端都会显示叹号,重试 N 次都一样,JPEG 和 PNG 都不行,我猜测是因为 TG 想到了这种图片压缩后效果不会好,所以特地做出的限制
    wangwang24
        7
    wangwang24  
    OP
       2017-07-24 22:39:04 +08:00
    @morethansean 就是手机的系统的图库啊。。
    facetest
        8
    facetest  
       2017-07-24 22:45:26 +08:00 via Android
    微信用户量摆在那里,海量图片存储、带宽的成本相当高,目前的图片参数可以满足日常大部分的需求就 ok 了
    abmin521
        9
    abmin521  
       2017-07-24 22:55:58 +08:00 via Android
    Macbooker
        10
    Macbooker  
       2017-07-24 22:57:07 +08:00 via iPhone
    @facetest 够用了够用了
    abmin521
        11
    abmin521  
       2017-07-24 23:02:29 +08:00 via Android
    Android 微信 老毛病了
    楼主的图 https://i.loli.net/2017/07/24/59760bc6975ef.png
    有空用 tg 试试
    abmin521
        12
    abmin521  
       2017-07-24 23:03:50 +08:00 via Android   1
    @facetest 那为啥不压缩 iOS 的呢
    wangwang24
        13
    wangwang24  
    OP
       2017-07-24 23:10:46 +08:00
    @abmin521 怎么这都被你发现了。。。
    lzhr
        14
    lzhr  
       2017-07-24 23:23:11 +08:00
    安卓机从三四百到三四千
    morethansean
        15
    morethansean  
       2017-07-24 23:26:40 +08:00
    @wangwang24 好歹说一下什么 ROM 吧……市面上那么多 Android 手机,默认图库少说也有几十个……
    Deeer
        16
    Deeer  
       2017-07-24 23:38:54 +08:00
    我没试验过,但是理论上都是会进行压缩的,同时除去一些图片。
    wangwang24
        17
    wangwang24  
    OP
       2017-07-24 23:49:18 +08:00
    @morethansean 一加 3,官方氢 OS,我没说是因为觉得不需要说,因为各家的系统图库基本大同小异,而且氧 OS 的图库跟原生 Android 也比较像,这是第一点原因。第二点原因是,这张原图,即使在 iOS 系统的照片里查看,也没有经过 iOS 微信朋友圈处理过的图片清晰。
    wangwang24
        18
    wangwang24  
    OP
       2017-07-24 23:58:37 +08:00
    @Deeer 一般手机相机拍摄的 4 比 3 比例的那种照片我也试过,两个系统的微信都会不同程度的压缩,但是这种长条的图片好像不是简单的压缩
    wangwang24
        20
    wangwang24  
    OP
       2017-07-25 00:03:25 +08:00
    这个图床好像也对图片进行了处理。。。不过肉眼观感上基本没变
    morethansean
        21
    morethansean  
       2017-07-25 00:33:16 +08:00   1
    @wangwang24 不一样啊,亲儿子自带图库是 Google Photos,曾经很长一段时间 Photos 看高清照片那叫一个卡我都是直接用别的图库看的……不过现在好多了貌似这个 bug 已经修复了……

    我在手机上用图片编辑软件打开了之后随便 save 了一下, 上传 imgur : , 大小比你楼上给的原图(1.9mb) 大(2.2mb). 其实说白了就是 jpg 保存时的参数的不同导致的啊…… 微信 Android 给的压缩率太大了呗……
    MASAILA
        22
    MASAILA  
       2017-07-25 00:39:26 +08:00
    微信的照片的确是太模糊的 微博厚道多了
    ivechan
        23
    ivechan  
       2017-07-25 01:12:44 +08:00
    因为 Android 在腾讯眼里是二等公民, 比如王者荣耀, 新出的 iPhone 默认都有高帧率,
    Android 手机就必须交保护费.
    autulin
        24
    autulin  
       2017-07-25 01:18:05 +08:00 via Android
    系统不一样,程序开发时所用的图片压缩的工具包也不一样,没有什么好比较的吧

    怪也怪 Android 开发者的决定呗,扯不到系统和手机头上吧
    chanssl
        25
    chanssl  
       2017-07-25 03:58:51 +08:00 via Android
    Android 版发长图确实极其恶心,这个锅必须得腾讯背
    ahjsrhj
        26
    ahjsrhj  
       2017-07-25 07:14:04 +08:00 via Android
    你说的图库问题,是因为你的图片尺寸过大,图库使用了 BitmapRegionDecoder 来获取一块块区域进行展示,类似瓦片地图给拼接起来,同时存储缩略图,先展示缩略图,再用清晰的对应区块替换,所以会有模糊到清晰的过程,不过两三秒确实有点夸张了
    facetest
        27
    facetest  
       2017-07-25 08:45:49 +08:00 via Android
    @abmin521 ios 可能有特殊逻辑,但压缩转码这种做法在鹅厂里是普遍存在的,不仅仅是微信,几乎所有鹅系 app 都是这种做法。
    facetest
        28
    facetest  
       2017-07-25 08:53:42 +08:00 via Android
    @abmin521 我之前说的“存储、带宽成本”其实不是很对,应该说带宽成本第一,其他成本次之,一张图片传到后台会被转成多种规格,比如朋友圈小图是小尺寸,点开大图是大尺寸,下载时是原始尺寸
    badcode
        29
    badcode  
       2017-07-25 13:09:50 +08:00
    不知道是不是历史原因

    https://www.zhihu.com/question/29975901
    weyou
        30
    weyou  
       2018-08-14 17:40:13 +08:00
    挖个坟, 这个问题没有鹅厂朋友出来解释下真是原因么?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5488 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 08:45 PVG 16:45 LAX 01:45 JFK 04:45
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86