Open sauciness
Are the Microsoft, Google and MPEG/ITU offerings also open source? If not, is there any possibility of Mozilla being hit by patent sueballs?
Just four months after loosing the mozjpeg encoder on a waiting world, Mozilla has updated it to version 2.0, at the same time announcing that Facebook is testing the new iteration. The Social NetworkTM has also slung Mozilla $US60,000 towards the development effort in anticipation of mozjpeg 3.0. Mozjpeg, first released in …
Microsoft's JPEG-XR is not open source but it's also not worth bothering about. WebP via mod_pagespeed is probably the only sane thing to do (store a nice quality image and mod_pagespeed will handle compression and serve WebP if the browser can read it). HEVC is encumbered not sure about any restrictions on a spun-out bitmap format but I don't expect it to have legs over WebP.
As far as I can tell Facebook uses very high compression settings for relatively little gain.
I wouldn't discount any minor gains for Facebook. A while ago they stated that they serve 600,000 images per second. That's 51.8bn images per day. If they manage to shave even half a kb off each, they save 24TB of bandwidth costs per day.
Basically, minor saving scale massively.
I wouldn't discount any minor gains for Facebook. A while ago they stated that they serve 600,000 images per second. That's 51.8bn images per day. If they manage to shave even half a kb off each, they save 24TB of bandwidth costs per day.
Sounds good but it's not that simple and the results of the compression are pretty disappointing in my view. Being able to server WebP where possible (ie. all Chrome users so about 40 %) will save a damn sight more without screwing the images much. But it may be something as simple as having a shitty library do the compressing (the tradeoff between speed and quality may actually be more important than bandwidth). Hence the interest in Mozilla's work.
But really, Mozilla, get with it and learn to love WebP.
...but why snip off 10-15% from images! when you know that half the web will consider the 10-15% saved will allow around 30% more advertising?
Running AdblockPlus and NoScript, my web is extremely nice. On the tablet, where such options don't exist - and would really be appreciated - the difference in speed is notable.
On the tablet, where such options don't exist
Only if "the tablet" is an iPad. On my Android tablet I'm running Firefox with Adblock Plus, as well as having the following entries in my hosts file:
# Google Analytics
0.0.0.0 google-analytics.com
0.0.0.0 ssl.google-analytics.com
0.0.0.0 www.google-analytics.com
0.0.0.0 www-google-analytics.l.google.com
0.0.0.0 www.googletagservices.com
" Running AdblockPlus and NoScript, my web is extremely nice. On the tablet, where such options don't exist - and would really be appreciated - the difference in speed is notable."
I use mitmproxy ( mitmproxy.org ) on my router to let me control the pages my tablet sees.....
I basicslly use it as a server-based 'greasemonkey' - ad block and noscript are doable too.
I know you used the Joke icon, but in case this was a serious question:
- Trellis codes are, in general, a way to create error-correcting codes. Wikipedia and other sources can provide more detailed explanations, but basically with a trellis code you create a state machine, where a state is a couple of bits you've already received, and the transitions from that state are labeled 0 and 1 for the next bit you receive. The machine only allows some states, so if you believe you've received a sequence that's not allowed by that machine, that indicates an error, and the smallest change to the sequence that gives you a path that is allowed by the machine is the most-probably-correct correction.
- In this context, we're talking about trellis quantization1, which is an application of trellis coding to discrete cosine transformations (DCTs). DCTs are a kind of Finite Fourier Transform. Lossy image compression, as in JPEG, generally involves transforming the input into the frequency domain with a DCT, then discarding the components that don't carry much information. Then the receiver can perform the reverse transformation and recover most of the information from the original.
- With the DCT, you have a lot of choices about how to parameterize it by selecting coefficients. Trellis quantization applies the idea of trellis coding to selecting those coefficients so you maximize the signal-to-noise ratio.
At any rate, that's my understanding. I've played with some of this stuff and the underlying mathematics, but it's not my area.
1s/z/s if you must.