*

JPEG-XR support on blink

Posted on 21/03/2015 by ChangSeok Oh

I’m a lazy guy. I can’t but admit it. When I’m absorbed in something, I can’t do the others. My brain can’t really work in parallel. I had to leave this note last December though, I put it off for a while and then I’ve absolutely forgotten.
Anyhow somebody might be interested in my work on JPEG-XR(jxr) support on blink/webkit so that I leave a short note.

The first time when I was interested in the format was the days of WebEngineHackfest 2014. At that time, I was looking around blink project to find out valuable items to contribute for the project.
As many other newbies do, I simply run popular test suites for web engine e.g internal layout tests, sunspider, html5test etc. Especially in html5test.com I noticed a red hole of jpeg-xr support. That was a naive motivation.

After giving efforts to understand jxr image format, sample code, encoder/decoder module in blink/webkit and how the libjxr works, I could complete an initial implementation for jxr decoder. IIRC, it took nearly 4 weeks. (Thanks Collabora for supporting me!)
I thought I was ready to propose my patch to blink community so I wrote an ‘intent to’ mail and sent the community it before submitting the patch. And then… I just felt frustrated of very skeptical responses. OTL

The main reason of the objections was that webp which was an alternative modern image format and driven by Google was better than other competitors in various aspects. Yeah.. since I could agree on the view at some point and also didn’t want to persist which format is better or not, I had no option but to lay down my jxr work unfortunately. Debating superiority between the new image formats already happens several times. I read some of them so that I thought another iteration would be just waste of time. I respect blink community’s decision.

Though I don’t have such strong enthusiasm of jxr. it is still doubtful that technical superiority is a really matter for adopting a new web image format into web engine. WebP shows quite outstanding quality and performance now, but it doesn’t mean it can replace gif, jpeg and png already spreading out in the world. And who knows any better challenger will come out and throw its hat in the ring? In such a context, I think just giving more options for content authors to choose is the best we can do as a web developer…

Well blink community refused the jxr support, but you can use and evolve the functionality based on my patch by your self. I uploaded it to collabora git server so you can download it or else you can clone it from github if you have an account there.

Original post

Comments (0)


Add a Comment





Allowed tags: <b><i><br>Add a new comment:


Latest Blog Posts

FOSDEM - Links to recorded presentations (videos)

21/02/2018

From an introduction to Flatpak, to managing build infrastructure of a Debian derivative, to modern tools to debug GStreamer, Collaborans…

SRT, typical examples

20/02/2018

Released earlier this month, the latest version of VLC, the free & open source multimedia player (which also uses the GStreamer framework)…

SRT in GStreamer

16/02/2018

Transmitting low delay, high quality video over the Internet is hard. The trade-off is normally between video quality and transmission delay…

LVEE Winter Edition 2018

13/02/2018

Following a great weekend in Brussels for FOSDEM, Collaborans headed east to Belarus to attend & speak at the winter session of the international…

Virtualizing GPU Access

12/02/2018

For the past few years a clear trend of containerization of applications and services has emerged. Having processes containerized is beneficial…

Kernelci.org automated bisection

16/01/2018

The kernelci.org project aims at continuously testing the mainline Linux kernel, from stable branches to linux-next on a variety of platforms.…

Open Since 2005

We use cookies on this website to ensure that you get the best experience. By continuing to use this website you are consenting to the use of these cookies. To find out more please follow this link.

Collabora Ltd © 2005-2018. All rights reserved. Website sitemap.