Projects that we maintain:
- libva : https://github.com/01org/libva
- libva-utils: https://github.com/01org/libva-utils
- vaapi-intel-driver : https://github.com/01org/intel-vaapi-driver
- gstreamer-vaapi : https://cgit.freedesktop.org/gstreamer/gstreamer-vaapi/
- libyami: https://github.com/01org/libyami
- libyami-utils: https://github.com/01org/libyami-utils
- libxcam: https://github.com/01org/libxcam
List of Project Ideas:
- Implement a simple HEVC(h265) encoder
We have similar h264 encoder as a part of libva, add similar encoder program for HEVC codec too. H264/AVC encoder application code is here: https://github.com/01org/libva-utils/blob/master/encode/avcenc.c
- Implement a minimal VP8 encoder
Implement a simple vp8 encoder similar to the avcenc implementation. H264/AVC encoder application code is here: https://github.com/01org/libva-utils/blob/master/encode/avcenc.c
- Implement a minimal VP9 encoder
Implement a simple vp9 encoder similar to the avcenc implementation. H264/AVC encoder application code is here: https://github.com/01org/libva-utils/blob/master/encode/avcenc.c
- Optimize/speed-up the test filter routine for the
test_va_apitest suite. This test suite uses the googletest framework (https://github.com/google/googletest) and its test filter routine is slow. The
test_va_apisuite has over 15k test cases and executing each test in its own process (via --gtest_filter option) can be much slower than executing the entire suite as a whole... this appears to be caused by the test filtering operation. Any solution to speed it up should be contributed back to the googletest project.
- Develop more test cases for the
- Implement Packed header support for slices in MPEG2 encoder.
Some drivers require packed headers for slices, but we currently only support packed headers for sequence and picture parameters in intel driver.
- Develop more test cases for the
test_i965_drv_videounit test suite.
- Improve Defog/Dehaze quality and performance. Design and tune algorithm based on Dark Channel Prior to improve image quality, especially on Halo removal and color balance. Also need to consider performance improvement based on OpenCL in IA platform.
- Porting gstxcamfilter and gstxcamsrc from libxcam into gst-plugins-bad Fix Gstreamer related issues in gstxcamfilter/src and submit patches to gst-plugins-bad, Also need follow up and even refine each patch in Gstreamer review. Currenlty both of these plugins are implemented as part of libxcam. The idea is to port the plugin to upstream gstreamer project : https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/
- Enable a deblocking feature with OpenCL accelerated Design and implement algorithm to remove block boundary issues for Wavelet noise reduction. It can work as a single class CLDeblokHandler or enable algorithm in a cl kernel in CLNewWaveletDenoiseImageHandler class. Also need add test-case.
- Enable a debluring feature with OpenCL Design and implement CLDeblurHandler class to reduce waves caused by denoise or camera shaking in videos. Also need to add test-case.
- Add Scalable Video Encoding (SVC) support in H264 encoder
- Add more tuning options for adjusting the encoding quality
- Add support for inter-view prediction in h264 MVC encoder
- Add support for decoding MVC base views only in H264 decoder
- Add temporal and spatial encoding support in VP9 Encoder
- Add runtime check for all hardware supported features
- Add C APIs for Video Post Processing
- Add feature to share buffers between camera and encoders
- Add C API demo application for video postprocessing and encoder