| | 110 | == Postproc optimizations == |
| | 111 | Image:PostProc.jpg |
| | 112 | |
| | 113 | '''Description:''' FFmpeg contains libpostproc, which is used to postprocess 8x8 DCT-MC based video and images (jpeg, mpeg-1/2/4, H.263 among others). The code though has been written a long time ago and its SIMD optimizations need to be updated to what modern CPUs support (AVX2 and SSE2+). |
| | 114 | |
| | 115 | '''Expected results:''' |
| | 116 | |
| | 117 | - Convert all gcc inline asm in libpostproc to YASM. |
| | 118 | - Restructure the code so that it works with block sizes compatible with modern SIMD. |
| | 119 | - Add Integer SSE2 and AVX2 optimizations for each existing MMX/MMX2/3dnow optimization in libpostproc. |
| | 120 | |
| | 121 | '''Prerequisites:''' C coding skills, good x86 assembly coding skills, familiarity with git/source code control systems. |
| | 122 | |
| | 123 | '''Qualification Task:''' convert 1 or 2 MMX2 functions to SSE2 and AVX2. |
| | 124 | |
| | 125 | '''Mentor:''' Michael Niedermayer (michaelni on IRC) |
| | 126 | |
| | 127 | '''Backup Mentor:''' TBA, possibly Stefano Sabatini (saste on IRC) |
| | 128 | |
| | 129 | |
| | 130 | == Bayer RGB colorspaces == |
| | 131 | Image:350px-Bayer_pattern_on_sensor.svg.png |
| | 132 | |
| | 133 | '''Description:''' Several image and video format store pixels using Bayer-pattern colorspaces. Supporting these format would broaden FFmpeg's applicability to RAW still and video photography processing. |
| | 134 | |
| | 135 | '''Expected Results:''' |
| | 136 | |
| | 137 | - Rebase existing patches |
| | 138 | - Implement high quality bayer transformations in libswscale (plain C) |
| | 139 | - Add bayer formats to the libavutil pixfmt enumeration routines |
| | 140 | - SIMD optimizations of the libswscale transformations |
| | 141 | - Complete PhotoCINE demuxer to support Bayer format; (or another format of your choosing) |
| | 142 | |
| | 143 | Optional goodies: |
| | 144 | |
| | 145 | - Extend TIFF decoder to support DNG-Bayer format |
| | 146 | - Support a popular proprietary camera format (many to choose from; see dcraw project) |
| | 147 | |
| | 148 | '''Prerequisites:''' C coding skills, familiarity with git/source code control systems. |
| | 149 | |
| | 150 | '''Qualification Task:''' Implement a simple and working Bayer->RGB transform in libswscale |
| | 151 | |
| | 152 | '''Mentor:''' TBA, possibly Peter Ross (pross-au on IRC) |
| | 153 | |
| | 154 | '''Backup Mentor:''' Michael Niedermayer (michaelni on IRC) |
| | 155 | |
| | 156 | |