Sorry, you need to enable JavaScript to visit this website.

Feedback

Your feedback is important to keep improving our website and offer you a more reliable experience.

Projects that we maintain:

 

List of Project Ideas:

libva/libva-utils

            Difficulty: Medium
            Skill Required: C
            Optional Skills: Understanding of H265/HEVC codec
            Hardware requirement: Intel Skylake, Broxton or Kabylake microarchitecture based PC
            Possible Mentor: Sreerenj Balachandran <bsreerenj@gmail.com>
            IRC: sree_ on freenode/gstreamer
            Slack: sree on https://intel-media.slack.com/

      

            Difficulty: Medium
            Skill Required: C
            Optional Skills: Understanding of VP8 codec
            Hardware Requrement: Intel CherryView, Skylake, Broxton or Kabylake Microarchitecture based PC
            Possible Mentor: Sreerenj Balachandran <bsreerenj@gmail.com>
            IRC: sree_ on freenode/gstreamer
            Slack: sree on https://intel-media.slack.com/
 
            Difficulty: Medium
            Skill Required: C
            Optional Skills: Understanding of VP9 codec
            Hardware Requrement: Intel  Kabylake Microarchitecture based PC
            Possible Mentor: Sreerenj Balachandran <bsreerenj@gmail.com>
            IRC: sree_ on freenode/gstreamer
            Slack: sree on https://intel-media.slack.com/
 
  • Optimize/speed-up the test filter routine for the test_va_api test suite. This test suite uses the googletest framework (https://github.com/google/googletest) and its test filter routine is slow. The test_va_api suite 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.
            Difficulty: Medium
            Skill Required: C, C++
            Optional Skills: GTest framework
            Possible Mentor: Eoff, Ullysses A <ullysses.a.eoff@intel.com>
            Slack: uartie on https://intel-media.slack.com/
 
  • Develop more test cases for the test_va_api test suite
            Difficulty: Medium
            Skill Required: C, C++
            Optional Skills: GTest framework
            Possible Mentor: Eoff, Ullysses A <ullysses.a.eoff@intel.com>
            Slack: uartie on https://intel-media.slack.com/

 

intel-vaapi-driver:

  • 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_video unit test suite.

 

libxcam:

  • 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.
     Difficulty: Medium
 
     Skill Required: C/C++, OpenCL
     Optional Skills: Familiar with image processing
     Hardware required: IvyBridge+ PC
     Possible Mentor: Wind Yuan <feng.yuan@intel.com>
     Slack: fengyuan on https://intel-media.slack.com/

 

  •  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/

 

     Difficulty: Easy-Medium
     Skill Required: C/C++
     Optional Skills: Familiar with gstreamer
     Hardware required: IvyBridge+ PC
     Possible Mentor: Wind Yuan <feng.yuan@intel.com>
     Slack: fengyuan on https://intel-media.slack.com/

 

  • 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.

 

     Difficulty: Difficult
     Skill Required: C/C++, OpenCL
     Optional Skills: Familiar with image processing
     Hardware required: IvyBridge+ PC
     Possible Mentor: Wind Yuan <feng.yuan@intel.com>
     Slack: fengyuan on https://intel-media.slack.com/
 
  • 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.

 

      Difficulty: Difficult
      Skill Required: C/C++, OpenCL
      Optional Skills: Familiar with image processing
       Hardware required: IvyBridge+ PC
       Possible Mentor: Wind Yuan <feng.yuan@intel.com>
       Slack: fengyuan on https://intel-media.slack.com/
 

gstreamer-vaapi

  • Add Scalable Video Encoding (SVC) support in H264 encoder
 
    * Difficulty: High
    * Skills Required: C
    * Useful skills: video processing
    * Hardware/Software required: Intel CPU Sandybridge or newer
    * Description: Finish the implementation of SVC support in the gstreamer-vaapi
      H264 encoder. The initial implementation needs to be cleaned up and tested,
      which is only supporting temporal svc. Implement the spatial svc encoding and
      adding bit rate control over different temporal layers are the major tasks involved.  
 
 
 
      Possible mentors: Sreerenj Balachandran (sree on IRC/gnome) and
                  Víctor Jáquez (ceyusa on IRC/gnome)
 
 
  • Add more tuning options for adjusting the encoding quality
 
    * Difficulty: Medium
    * Skills Required:
    * Useful skills: video processing
    * Hardware/Software required: Intel CPU Sandybridge or newer
    * Description: Expose as many tuning options to the gstreamer-vaapi encoders as current software encoders expose
      Possible mentors: Sreerenj Balachandran (sree_ on IRC/gnome) and Víctor Jáquez (ceyusa on IRC/gnome)
 
 
  • Add support for inter-view prediction in h264 MVC encoder
 
     * Difficulty: High
     * Skills Required: C
     * Useful skills: video processing
     * Hardware/Software required: Intel CPU Skylake or newer
     * Description: Multiview video contains a large amount of inter-view
       statistical dependencies, since all cameras capture the same scene from
       different viewpoints. Therefore, combined temporal and inter-view prediction
       is important for efficient MVC encoding. A frame from a certain camera can
      be predicted not only from temporally related frames from the same camera,
      but also from the frames of neighboring cameras. These interdependencies can
      be used for efficient prediction.
      Possible mentors: Sreerenj Balachandran (sree_ on IRC/gnome) and Víctor Jáquez (ceyusa on IRC/gnome)
 
 
 
  • Add support for decoding MVC base views only in H264 decoder
 
     * Difficulty: Medium
     * Skills Required: C
     * Useful skills: video processing
     * Hardware/Software required: Intel CPU Sandybridge or newer
     * Description: A standard AVC conformant decoder should be able to decode the
       base view of MVC encoded streams. vaapih264dec should be able to negotiate
       MVC profiles and decode the base view if the hardware doesn't support MVC
       decoding.
       Possible mentors: Sreerenj Balachandran (sree_ on IRC/gnome) and
                    Víctor Jáquez (ceyusa on IRC/gnome)

libyami:

  • Add temporal and spatial encoding support in VP9 Encoder
           Difficulty: Medium
           Skill Required: C++
           Optional Skills: Understanding of VP9 codec
           Hardware required: Intel KabyLake+ PC
           Possible Mentor: Xu Guangxin <Guagnxin.Xu@gmail.com>
           Slack: guangxin on https://intel-media.slack.com/
 
  • Add runtime check for all hardware supported features
            We have compile time capability query function here(https://github.com/01org/libyami/blob/apache/decoder/vaapidecoder_host.c...). It will report supported decoder/encoder. Extent the API and query driver capability using vaQueryConfigEntrypoints, and report driver supported decoder/encoder.
            Difficulty: Medium
            Skill Required: C++
            Optional Skills: Understanding of VAAPI
            Hardware required: Intel SandyBridge+ PC
            Possible Mentor: Xu Guangxin <Guagnxin.Xu@gmail.com>
            Slack: guangxin on https://intel-media.slack.com/
 
  • Add C APIs for Video Post Processing
            We have C API for decoder(https://github.com/01org/libyami/blob/apache/capi/VideoDecoderCapi.h)  and encoder        (https://github.com/01org/libyami/blob/apache/capi/VideoEncoderCapi.h) C API P. Similarly Add video post process C API.
            Difficulty: Easy to Medium
            Skill Required: C++
            Hardware required: IvyBridge+ PC
            Possible Mentor: Xu Guangxin <Guagnxin.Xu@gmail.com>
            Slack: guangxin on https://intel-media.slack.com/
 
 

 

libyami-utils:

 

  • Add feature to share buffers between camera and encoders
            We can read yuv frames from the camera (https://github.com/01org/libyami-utils/blob/master/tests/encodeInputCame...) but it will copy yuv data many times. Add zero copy functions to the camera input.
            Difficulty: Medium
            Skill Required: C++
            Optional Skills: Understanding of V4L2
            Possible Mentor: Xu Guangxin <Guagnxin.Xu@gmail.com>
            Slack: guangxin on https://intel-media.slack.com/
 
  • Add C API demo application for video postprocessing and encoder
            We have decoder capi test application(https://github.com/01org/libyami-utils/blob/master/tests/vppinputdecodec...). Add vpp and encoder C API test application.
            Difficulty: Easy to Medium
            Skill Required: C++
            Optional Skills:
            Possible Mentor: Xu Guangxin <Guagnxin.Xu@gmail.com>
            Slack: guangxin on https://intel-media.slack.com/