Guido Vollbeding was invited to give a presentation on libjpeg reference software at a conference of the German Informatics Society (Gesellschaft für Informatik e.V. (GI)) at June 19th 2017 in Leipzig. The topic of the session was “long lasting software projects”. Celebrating its 25th birthday, libjpeg is indeed a long lasting software project. The majority of the audience were professors of computer science.
Vollbeding explained basic features of libjpeg architecture that made it survive so many years and that made it the most popular standard in image encoding. The paradigm and basic idea of JPEG, the DCT (Discrete Cosine Transformation), is even much older, it was invented in 1974. He demonstrated that the DCT still has a huge potential and that all recent extensions of the JPEG standard are unlocking this. Long lasting software means continuity and necessarily also change. Libjpeg should always be able to decode even the oldest files, but it should also be able to encode files according to newer standards, e.g. arithmetic encoding.
A reference software should not react on every new trend but should consider the broad tendencies. 80% of all desktop systems are run with Microsoft Windows. The programming language C is still very popular. Libjpeg development takes this into consideration.
The presentation found great appreciation. Questions were about the utilized development environment, considerations regarding hardware implementation, and provision for metadata definition inside JPEG files.