Introduction
This page shows the results from the student projects that were part of GSoC 2022.
Projects
High-Throughput JPEG 2000 (HTJ2K) decoder
Description:
The project was to add support for HTJ2K decoding to the native FFmpeg JPEG 2000 decoder (avcodec/jpeg2000). This involves adding a new entropy coder to the existing JPEG 2000 framework. The new entropy coder (specified in ISO/IEC 15444-15 | Rec. ITU-T T.814) significantly speeds up JPEG 2000 encoding and decoding. It is relatively challenging to implement.
Results:
The project was successful and resulted in a patchset which is under review: https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=8078
When patched, FFmpeg can decode JPEG 2000 codestreams that were encoded using the HTJ2K entropy coder.
Future work:
- Decoder performance optimizations
- Encoder implementation
- Support for the JPH file format, which extends the JP2 file format
Mentor: Pierre-Anthony Lemieux (pal@palemieux.com) with assistance of Chris Hafey, Aous Naman and Osamu Watanabe.
Student: Caleb Etemesi (etemesicaleb@gmail.com)
GPU (CUDA) accelerate common software video filters
Description:
FFmpeg already had a couple CUDA based video filters, but for a lot of commonly used functionality you have to fall back to software processing. This project was about to extend the amount of filters ready to run on CUDA hardware devices.
Results:
In a nutshell the project was successful and resulted in two new CUDA accellerated filters that had been applied:
A more way elaborate summary can be found at the students summary page on github.
Future work:
- Create even more filters!
Mentor: Timo Rothenpieler
Student: Mohamed Khaled