Tuesday, January 23rd 2018

Google and Mozilla Push for AV1 Image Format Adoption, Beats JPEG and HEIC

Google and Mozilla, the companies behind the Chrome and Firefox cross-platform web-browsers; are pushing for the adoption of a new web image format to replace the ageing and inefficient JPEG, and the license-ridden HEIC. The two companies are leading a consortium of Internet businesses, called the Alliance for Open Media, to push for the proliferation and standardization of the new AV1 image file format. Early testing shows AV1 files to be 15 percent smaller than HEIC for comparable quality, which in turn promises half the file-size of JPEG for comparable quality. Apple uses HEIC as the default image file format for iOS and MacOS, while JPEG, PNG, and GIF continue to be the dominant web image formats, and have been prevalent for over two decades now.

"It seems downright silly that we're still relying on compression tech from 20 years ago," said Kelly Thompson, general manager at 500px, a photo sharing and sales site. "The equipment we're using to capture and display images is now exceeding JPEG's upper limits." JPEG is not just inefficient, but also has severe color palette limitations, and lack of support for transparency. Adoption of newer image file formats could significantly reduce Internet bandwidth usage benefiting both end-users running on slower/metered connections; and for infrastructure providers, such as ISPs.
Source: CNet
Add your own comment

48 Comments on Google and Mozilla Push for AV1 Image Format Adoption, Beats JPEG and HEIC

#2
btarunr
Editor & Senior Moderator
"R-T-B said:
The wikipedia on it suggessts it is a video format, not just a still image format:

https://en.wikipedia.org/wiki/AOMedia_Video_1
Just as HEIC was derived from HEVC, the consortium is trying to develop a still image format based on AV1-Video. In the web-based demo, they're comparing a 1-frame AV1 file to a 1-frame x265 file for image quality.
Posted on Reply
#4
Ubersonic
Wait, .PNG was supposed to be the new/improved successor to .JPG, what happened to .PNG? lol
Posted on Reply
#5
CounterZeus
"Ubersonic said:
Wait, .PNG was supposed to be the new/improved successor to .JPG, what happened to .PNG? lol
PNG is more the newer GIF and JPEG 2000 was too complex and had patent issues.
Posted on Reply
#6
Xajel
If it doesn't support both lossy & lossless + alpha channels + standard & custom color palette (like 256 colors, 16.7M, HDR 10 & 12bit) then it's not modern enough.
Posted on Reply
#7
RejZoR
The reason why JPEG sticked is because of wide support. If you don't provide that, it really doesn't matter how superior the format is if you can't use it with anything. The same reason why otherwise inferior MP3 is still so popular. There is literally not a single device in existence that cannot play MP3's. PNG was adopted relatively quickly because of superior alpha support and is now basically a defacto lossless standard for web.

I remember Microsoft having a JPEG like algorithm with better compression and quality. But that also never took off. Similar fate is with OGG Vorbis. It's a great open standard, but it hasn't really been adopted beyond some music streaming stations and chat apps and in some game engines like Unreal. It's light years away from even coming anywhere near MP3. Or JPEG for that matter.

We'll eventually get a replacement, but it'll take time, mostly because of hardware devices that cannot be updated, but need to be replaced. And no vendor wants to gamble on it, making expenses and then not benefiting from it. Which is why everything takes so long...
Posted on Reply
#8
bug
I'm all for a new image format, but suggesting we should move off JPEG just because it's old, is downright silly. Here's what other knowledgeable guy say about JPEG: https://people.xiph.org/~xiphmont/demo/daala/update1.shtml

And at this point, displacing JPEG will be as easy as displacing IPv4, JS or HTTP.
Posted on Reply
#9
Parn
Need support from camera and phone manufacturers for this work.
Posted on Reply
#10
Vya Domus
Storage is plenty nowadays , so is internet speed.

To hell with lossy compression for pictures.
Posted on Reply
#11
bug
"Vya Domus said:
Storage is plenty nowadays , so is internet speed.

To hell with lossy compression for pictures.
You can still offer better quality within the same storage constraints ;)
Posted on Reply
#12
dorsetknob
"YOUR RMA REQUEST IS CON-REFUSED"
Security Features ? or will we have to expect sooner or later for this format to be compromised with embedded nastily as Some Current formats "Can BE".
Posted on Reply
#13
bug
"dorsetknob said:
Security Features ? or will we have to expect sooner or later for this format to be compromised with embedded nastily as Some Current formats "Can BE".
Wth are you talking about? You can't exploit an image format. You can exploit an implementation (i.e. an encoder/decoder), which has little to do with this article.
Posted on Reply
#14
R0H1T
"Parn said:
Need support from camera and phone manufacturers for this work.
Just phones will do as there's probably 10x as many phones sold today as there are dedicated cameras, including dumb phones.
Posted on Reply
#16
Vya Domus
Jesus Christ , an image loaded into memory can contain without doubt code which can then execute on it's own. Just like pretty much everything else.
Posted on Reply
#17
bug
"dorsetknob said:
Unfortunatly YES YOU CAN

https://www.pcworld.com/article/2105408/3/watch-out-for-photos-containing-malware.html
Where's the image exploit? It's data embedded as an image, nothing can prevent that. But opening such an image will not cause any harm. This particular exploit requires the receiving side to extract the extra info from the image file(s) and then do something with it. At this point we're looking at a common virus which is the job of the AV.
Posted on Reply
#18
Caqde
"dorsetknob said:
Unfortunatly YES YOU CAN

https://www.pcworld.com/article/2105408/3/watch-out-for-photos-containing-malware.html
Like was said this is an implementation issue not really anything to do with the actual format itself. The format specifies how the data will be laid out in the file. The implementation decides how it is read from the file and from there can look for things like malicious code during the reading process. (which would be the security part). But if you read the article you linked to you would notice that a good portion of what is mentioned has to do with fooling the user into executing an executable disguised as an image file or other such tactics. Very little of what was mentioned dealt with images that actually contained malware that executed upon being displayed.
Posted on Reply
#19
dorsetknob
"YOUR RMA REQUEST IS CON-REFUSED"
"Vya Domus said:
an image loaded into memory can contain without doubt code which can then execute on it's own. Just like pretty much everything else.
^^^ See Above post ^^^ and note your Browser / O/S / programs will load the pic into mem where if it contains such malicious code " May Run "
I'm not a Programmer but i understand its Technically possible
Posted on Reply
#20
bug
"dorsetknob said:
^^^ See Above post ^^^ and note your Browser / O/S / programs will load the pic into mem where if it contains such malicious code " May Run "
I'm not a Programmer but i understand its Technically possible
Code does not run by itself. Not simply because it's loaded into memory. Even as a non-programmer you can understand that.
On the other hand, programs executing portions of the memory that shouldn't be executed are what viruses are all about. However, in order to execute a part of the memory, the virus/bootstrap sequence has to reside elsewhere (not in the image, in this case).

Edit: For clarity, in memory executable code and other data are indistinguishable (i.e. they are essentially a succession of hex codes, if you want). Executing code means simply pointing to some location in the memory and telling the process: start running from here.
Posted on Reply
#21
dorsetknob
"YOUR RMA REQUEST IS CON-REFUSED"
"bug said:
Code does not run by itself. Not simply because it's loaded into memory. Even as a non-programmer you can understand that.
Oops Sorry you need to brush up on a few things
if image is loaded or Data into a Browser then the Browser runs the data
Or Do You Dispute that this can Happen ?
Remember the Crypto Coin Mining Browser Contraversity currently Circulating
Posted on Reply
#22
RejZoR
"bug said:
I'm all for a new image format, but suggesting we should move off JPEG just because it's old, is downright silly. Here's what other knowledgeable guy say about JPEG: https://people.xiph.org/~xiphmont/demo/daala/update1.shtml

And at this point, displacing JPEG will be as easy as displacing IPv4, JS or HTTP.
I wonder what quality is JPEG sample using. Seems to be quite high compression because I can see the artifacts around clouds rather easily. I've noticed you can get exceptional JPEG quality at 99%. The difference in size between 99% and 100% is almost double, but in quality, I can't see any. 95% is default in Paint.NET which seems reasonable, but I usually bump it to 99%. JPEG used to be crap in the past because of slow connections, everyone used really high compression ratios. It's a lot different today.
Posted on Reply
#23
Dante Uchiha
There should be something similar in the games, currently games are ridiculously large (50-100GB) :d
Posted on Reply
#24
Vya Domus
There a lot of way to to run an code from within a a file that has the signature of an image (or pretty much everything else) by exploiting the vulnerabilities of the software used to view them. One of the most basic methods is screwing with buffers and overwriting data at locations in memory that are marked as being executable. That's how code gets to "run by itself by simply loading it into memory" , it ain't that complicated.

Posted on Reply
#25
bug
"dorsetknob said:
Oops Sorry you need to brush up on a few things
if image is loaded or Data into a Browser then the Browser runs the data
Or Do You Dispute that this can Happen ?
Remember the Crypto Coin Mining Browser Contraversity currently Circulating
When a browser loads an image, it will never, under any circumstances need to execute that part of the memory. It knows it's data, therefore it does not need to be executed. It's why we have languages like Rust and DEP at a hardware level: to make sure data memory regions are not "executed".

And let's leave mining out of this, it really has nothing to do with the subject.
"Vya Domus said:
There a lot of way to to run an code from within a a file that has the signature of an image (or pretty much everything else) by exploiting the vulnerabilities of the software used to view them. One of the most basic methods is screwing with buffers and overwriting data at locations in memory that are marked as being executable. That's how code gets to "run by itself by simply loading it into memory" , it ain't that complicated.


Thank you, this is what I've been saying from the start: it's the decoders that should be under scrutiny here, not the image format itself.
Posted on Reply
Add your own comment