Changes between Version 13 and Version 14 of SponsoringPrograms/GSoC/2018/Results


Ignore:
Timestamp:
Aug 13, 2018, 10:27:55 PM (8 months ago)
Author:
Danil_Iashchenko
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SponsoringPrograms/GSoC/2018/Results

    v13 v14  
    5757== OpenCL support for Libavfilter ==
    5858
    59 '''Description:''' FFmpeg has good support for offloading decoding and encoding from the CPU, but not such good support for doing anything else with that video without using the CPU. Therefore it would be beneficial to increase libavfilter's support for OpenCL filters, which would allow to offload more operations to the GPU, making the CPU less busy. The project aimed to add more OpenCL filters to libavfilter.
     59'''Description:''' FFmpeg has good support for offloading decoding and encoding from the CPU, but not such good support for doing anything else with video without using the CPU. Therefore it would be beneficial to increase libavfilter's support for OpenCL filters, which would allow to offload more operations to the GPU, making the CPU less busy. The project aimed to add more OpenCL filters to libavfilter.
    6060
    6161'''Results:''' During the GSoC period, the following contributions to the project have been submitted:
    62 * boxblur_opencl filter. Status: [[https://github.com/FFmpeg/FFmpeg/commit/714da1fd898f83c7bef38fe427af3692917cbcb2|commit]]. This filter applies [[https://en.wikipedia.org/wiki/Box_blur| BoxBlur algorithm]] to the input video.
    63 * sobel_opencl filter.    Status: [[https://github.com/FFmpeg/FFmpeg/commit/581bafa83b9cb4f438940e0b10a9f9832ebd57b6|commit]]. This filter applies [[https://en.wikipedia.org/wiki/Sobel_operator| Sobel operator]] to the input video.
    64 * prewitt_opencl filter.  Status: [[https://github.com/FFmpeg/FFmpeg/commit/581bafa83b9cb4f438940e0b10a9f9832ebd57b6|commit]]. This filter applies [[https://en.wikipedia.org/wiki/Prewitt_operator| Prewitt operator]] to the input video.
    65 * roberts_opencl filter.  Status: [[https://github.com/FFmpeg/FFmpeg/commit/581bafa83b9cb4f438940e0b10a9f9832ebd57b6|commit]]. This filter applies [[https://en.wikipedia.org/wiki/Roberts_cross | Roberts cross operator]] to the input video.
     62* boxblur_opencl filter. Status: [[http://git.videolan.org/?p=ffmpeg.git;a=commit;h=714da1fd898f83c7bef38fe427af3692917cbcb2|commit]]. This filter applies [[https://en.wikipedia.org/wiki/Box_blur| BoxBlur algorithm]] to the input video.
     63* sobel_opencl filter.    Status: [[http://git.videolan.org/?p=ffmpeg.git;a=commit;h=581bafa83b9cb4f438940e0b10a9f9832ebd57b6|commit]]. This filter applies [[https://en.wikipedia.org/wiki/Sobel_operator| Sobel operator]] to the input video.
     64* prewitt_opencl filter.  Status: [[http://git.videolan.org/?p=ffmpeg.git;a=commit;h=581bafa83b9cb4f438940e0b10a9f9832ebd57b6|commit]]. This filter applies [[https://en.wikipedia.org/wiki/Prewitt_operator| Prewitt operator]] to the input video.
     65* roberts_opencl filter.  Status: [[http://git.videolan.org/?p=ffmpeg.git;a=commit;h=581bafa83b9cb4f438940e0b10a9f9832ebd57b6|commit]]. This filter applies [[https://en.wikipedia.org/wiki/Roberts_cross | Roberts cross operator]] to the input video.
    6666* lumakey_opencl filter.  Status: [[http://ffmpeg.org/pipermail/ffmpeg-devel/2018-August/232879.html| review in progress]]. This filter turns certain luma values into transparency.
    67 * dilation_opencl filter. Status: [[https://github.com/FFmpeg/FFmpeg/commit/5423fe29da6bbf28f5253800cace133ac8343a7e| commit]]. This filter applies [[https://www.cs.auckland.ac.nz/courses/compsci773s1c/lectures/ImageProcessing-html/topic4.htm#erosion| Dilation effect]] to the input video.
    68 * erosion_opencl filter.  Status: [[https://github.com/FFmpeg/FFmpeg/commit/5423fe29da6bbf28f5253800cace133ac8343a7e| commit]]. This filter applies [[https://www.cs.auckland.ac.nz/courses/compsci773s1c/lectures/ImageProcessing-html/topic4.htm#erosion| Erosion effect]] to the input video.
    69 * Infrastructural patch.  Status: [[https://github.com/FFmpeg/FFmpeg/commit/b41b6b323417ce1e79bf818f91d60526697954f1|commit]]. This infrastructural patch contains macro, which  significantly reduce boilerplate code when setting OpenCL arguments to specific kernel.   
     67* dilation_opencl filter. Status: [[http://git.videolan.org/?p=ffmpeg.git;a=commit;h=5423fe29da6bbf28f5253800cace133ac8343a7e| commit]]. This filter applies [[https://www.cs.auckland.ac.nz/courses/compsci773s1c/lectures/ImageProcessing-html/topic4.htm#erosion| Dilation effect]] to the input video.
     68* erosion_opencl filter.  Status: [[http://git.videolan.org/?p=ffmpeg.git;a=commit;h=5423fe29da6bbf28f5253800cace133ac8343a7e| commit]]. This filter applies [[https://www.cs.auckland.ac.nz/courses/compsci773s1c/lectures/ImageProcessing-html/topic4.htm#erosion| Erosion effect]] to the input video.
     69* Infrastructural patch.  Status: [[http://git.videolan.org/?p=ffmpeg.git;a=commit;h=b41b6b323417ce1e79bf818f91d60526697954f1|commit]]. This infrastructural patch contains macro, which  significantly reduce boilerplate code when setting OpenCL arguments to specific kernel.   
    7070* Documentation for the whole OpenCL subsection, including not only newly added filters, but also for existing OpenCL filters. Status: [[http://ffmpeg.org/pipermail/ffmpeg-devel/2018-August/232856.html| review in progress]]
    71 * Additional minor improvements of the documentation. Status: [[https://github.com/FFmpeg/FFmpeg/commit/9d6efefaf41ae349e8c8ad4bb2d76dd27561efab| commit]].
     71* Additional minor improvements of the documentation. Status: [[http://git.videolan.org/?p=ffmpeg.git;a=commit;h=9d6efefaf41ae349e8c8ad4bb2d76dd27561efab| commit]].
    7272
    7373'''Future work:''' Seeing the patches that are still in review to the end, implementing additional OpenCL support and optimizing the already existing OpenCL filters.