» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

微信团队员工全部换成苹果机了

posted by wap, platform: iPhone
引用:
原帖由 @532  于 2016-1-22 17:08 发表
妈的什么时候能显示16g tlc 三爽U 阴阳尿屏电池冬天尿崩的粉木耳6s在线啊!
别激动,激动的样子太难看。


TOP

posted by wap, platform: iPhone
引用:
原帖由 @para  于 2016-1-22 22:52 发表
说了一百遍了,都会压缩只不过是调用系统自己的压缩处理,偏偏ios的压缩比Android压缩的效果好一点而已。
放屁



TOP

posted by wap, platform: iPhone
引用:
原帖由 @para  于 2016-1-25 00:01 发表
为什么微信android图片质量会比iphone的差?

我们团队最初也纠结过这个问题,费了半天劲、绕了好大圈,直到最后才发现,原来这是谷歌犯得一个“小”错误,而且一直错到了今天。
为什么微信android图片质量会比iphone的差?

谷歌的错就在于:libjpeg。

libjpeg是广泛使用的开源JPEG图像库(参考 http://en.wikipedia.org/wiki/Libjpeg ),安卓也依赖libjpeg来压缩图片。通过查看源码,我们会发现安卓并不是直接封装的libjpeg,而是基于了另一个叫Skia的开源项目(http://en.wikipedia.org/wiki/Skia_Graphics_Engine)来作为的图像处理引擎。Skia是谷歌自己维护着的一个大而全的引擎,各种图像处理功能均在其中予以实现,并且广泛的应用于谷歌自己和其它公司的产品中(如:Chrome、Firefox、Android等)。Skia对libjpeg进行了良好的封装,基于这个引擎可以很方便为操作系统、浏览器等开发图像处理功能。

libjpeg在压缩图像时,有一个参数叫optimize_coding,关于这个参数,libjpeg.doc有如下解释:

为什么微信android图片质量会比iphone的差?

这段话大概的意思就是如果设置optimize_coding为TRUE,将会使得压缩图像过程中基于图像数据计算哈弗曼表(关于图片压缩中的哈弗曼表,请自行查阅相关资料),由于这个计算会显著消耗空间和时间,默认值被设置为FALSE。

http://files.jb51.net/file_images/article/201408/201408291059166.jpg

这段解释乍看起来没有任何问题,libjpeg的代码也经受了十多年的考验,健壮而高效。但很多人忽略了这一点,那就是,这段解释是十多年前写的,对于当时的计算设备来说,空间和时间的消耗可能是显著的,但到今天,这似乎不应再是问题,相反,我们应该更多的考虑图片的品质(越来越好的显示技术)和图片的大小(越来越依赖于云服务)。

谷歌的Skia项目工程师们最终没有设置这个参数,optimize_coding在Skia中默认的等于了FALSE,这就意味着更差的图片质量和更大的图片文件,而压缩图片过程中所耗费的时间和空间其实反而是可以忽略不计的。那么,这个参数的影响究竟会有多大呢?

经我们实测,使用相同的原始图片,分别设置optimize_coding=TRUE和FALSE进行压缩,想达到接近的图片质量(用Photoshop放大到像素级逐块对比),FALSE时的图片大小大约是TRUE时的510倍。换句话说,如果我们想在FALSE和TRUE时压缩成相同大小的JPEG图片,FALSE的品质将大大逊色于TRUE的(虽然品质很难量化,但我们不妨说成是差510 ...
别自己骗自己了。这种肉眼就能一眼发现的严重Bug你和我说谷歌几年了都没修复?
既然谷歌没修复,又知道问题所在,微信几年了,也没像你文章中说的自己修复?
这明显就是一个人为的决定,还有什么好洗的。


TOP

发新话题
     
官方公众号及微博