We're hiring!
*

JPEG-XR support on blink

ChangSeok Oh avatar

ChangSeok Oh
March 21, 2015

Share this post:

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

Related Posts

Related Posts

Comments (0)


Add a Comment






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


Search the newsroom

Latest Blog Posts

Understanding computer vision and AI, part 1

13/08/2020

Following our recent presentation at OSSummit, many showed interest in learning more about solving real-world problems with computer vision.…

Testing Weston DRM/KMS backends with virtme and VKMS

07/08/2020

Recent work in Weston, the industry-standard Wayland compositor, has enabled DRM/KMS backends to be tested in the absence of real hardware,…

An introduction to Linux kernel initcalls

14/07/2020

Initcalls, which serve to call functions during boot, were implemented early on in the development of the Linux Kernel. Read on as we take…

Deep dive into OpenGL over DirectX layering

09/07/2020

Earlier this year, we announced a new project with Microsoft: the implementation of OpenCL & OpenGL to DirectX translation layers. Here's…

Using syzkaller, part 4: Driver fuzzing

26/06/2020

Syzkaller is much needed tool for Linux kernel testing and debugging. With some work, it can also be enhanced to find bugs in specific drivers,…

Cross building Rust GStreamer plugins for the Raspberry Pi

23/06/2020

Previously, we discussed about how Rust can be a great language for embedded programming. In this article, we'll explain an easy setup to…

Open Since 2005 logo

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-2020. All rights reserved. Privacy Notice. Sitemap.