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

Engaging in an "Open First" remote internship at Collabora

20/10/2020

The concept of a remote internship may raise some doubts, or even red flags, for many students, as would remote jobs for professionals.…

Building GStreamer text rendering and overlays on Windows with gst-build

28/09/2020

GStreamer relies on various 2D font rendering and layout libraries such as Pango and Cairo to generate text for the Pango plugin, which…

Initcalls, part 2: Digging into implementation

25/09/2020

In this second part of this blog post series on Linux kernel initcalls, we'll go deeper into implementation, with a look at the colorful…

Open Source meets Super Resolution, part 1

21/09/2020

Introducing an accurate and light-weight deep network for video super-resolution upscaling, running on a completely open source software…

Integrating libcamera into PipeWire

11/09/2020

PipeWire continues to evolve with the recent integration of libcamera, a library to support complex cameras. In this blog post, I'll explain…

Pushing pixels to your Chromebook

31/08/2020

A high-level introduction of the Linux graphics stack, how it is used within ChromeOS, and the work done to improve software rendering (while…

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.