Changes between Version 6 and Version 7 of SponsoringPrograms/GSoC/2014


Ignore:
Timestamp:
Jan 31, 2014, 3:09:14 AM (4 years ago)
Author:
llogan
Comment:

nits

Legend:

Unmodified
Added
Removed
Modified
  • SponsoringPrograms/GSoC/2014

    v6 v7  
    66 
    77[https://developers.google.com/open-source/soc/ Google Summer of Code (GSoC)] is a program that offers students stipends to write code for open source projects. Through the guidance of mentors, students gain valuable experience interacting with and coding for open source projects like FFmpeg. Additionally, the project and its users benefit from code created from students who often continue contributing as developers. FFmpeg participated to several past editions ([http://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2006 2006], [http://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2007 2007], [http://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2008 2008], [http://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009 2009], [http://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2010 2010], [http://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011 2011], [http://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_of_Code_2013 2013]), and we are looking forward to being involved this year. 
    8 Also please see the [http://www.google-melange.com/gsoc/events/google/gsoc2014 timeline]. 
    98 
    10 This is our ideas page for Google Summer of Code 2014. 
     9This is our ideas page for Google Summer of Code 2014. See the [http://www.google-melange.com/gsoc/events/google/gsoc2014 GSoC Timeline] for important dates. 
    1110 
    1211---- 
     
    1615== Getting Started == 
    1716 
    18 Get to know FFmpeg. If you are a student and interested in contributing to an FFmpeg GSoC project it is recommended to start by subscribing to the [http://ffmpeg.org/mailman/listinfo/ffmpeg-devel ffmpeg-devel] mailing-list, visiting our IRC channels (''#ffmpeg-devel'' and ''#ffmpeg''), and exploring the codebase and the development workflow. Feel free to [#ContactingFFmpeg contact us] if you have any questions. 
     17Get to know FFmpeg. If you are a student and interested in contributing to an FFmpeg GSoC project it is recommended to start by subscribing to the [http://ffmpeg.org/mailman/listinfo/ffmpeg-devel ffmpeg-devel] mailing-list, visiting our IRC channels (#ffmpeg-devel and #ffmpeg), and exploring the codebase and the development workflow. Feel free to [#ContactingFFmpeg contact us] if you have any questions. 
    1918 
    20191. '''Find a project.''' Listed on this page are mentored and unmentored projects. Mentored projects are well-defined and mentors have already volunteered. Unmentored projects are additional ideas that you may consider, but you will have to contact us to find a mentor. You may also propose your own project that may be a better match for your interest and skill level. 
     
    2827In order to get accepted you will be requested to complete a small task in the area you want to contribute. FFmpeg GSoC projects can be challenging, and a qualification task will show us that you are motivated and have the potential to finish a project. 
    2928 
    30 The qualification task is usually shown in the project description. Contact the appointed mentors for assistance on getting a related qualification task or if you want to propose your own. See a list of Small FFmpeg Tasks or browse the FFmpeg Bug Tracker for qualification task ideas. 
     29The qualification task is usually shown in the project description. Contact the appointed mentors for assistance on getting a related qualification task or if you want to propose your own. Browse the [https://trac.ffmpeg.org/ FFmpeg Bug Tracker] for qualification task ideas. 
    3130 
    3231== Contacting FFmpeg == 
     
    3534 
    3635* Mailing-list: [https://ffmpeg.org/mailman/listinfo/ffmpeg-devel/ ffmpeg-devel] 
    37 * IRC: ''#ffmpeg-devel'' on Freenode 
     36* IRC: #ffmpeg-devel on Freenode 
    3837* FFmpeg GSoC Admins: TBA 
    3938 
     
    4847== FFv1 P frame support == 
    4948 
    50 '''Description:''' FFv1 is one of the most efficient intra only lossless video codecs, your work will be to add support for P frames, that is for motion compensation and estimation (the existing motion estimation code in libavcodec can be reused here). And finetune it until the best compression rate is achived. 
     49'''Description:''' FFv1 is one of the most efficient intra-only lossless video codecs. Your work will be to add support for P frames with motion compensation and motion estimation support (the existing motion estimation code in libavcodec can be reused here). Then fine-tune it until the best compression rate is achieved. 
    5150 
    52 '''Expected results:''' state of the art P frame support in the FFv1 encoder and decoder implementation. 
     51'''Expected results:''' State of the art P frame support in the FFv1 encoder and decoder implementation. 
    5352 
    54 '''Prerequisites:''' C coding skills, basic familiarity with `git`, solid understanding of video coding especially with motion compensation. 
     53'''Prerequisites:''' C coding skills, basic familiarity with git, solid understanding of video coding especially with motion compensation. 
    5554 
    56 '''Qualification Task:''' Implement support for simple P frames without motion compensation in FFv1. That is so that each frame stores the difference to the previous. 
     55'''Qualification Task:''' Implement support for simple P frames without motion compensation in FFv1. That is so that each frame stores the difference to the previous frame. 
    5756 
    58 '''Mentor:''' Michael Niedermayer (michaelni on IRC) 
     57'''Mentor:''' Michael Niedermayer (michaelni at #ffmpeg-devel IRC) 
    5958 
    6059'''Backup mentor:''' TBA  
     
    6261 
    6362== Misc Libavfilter extension == 
    64  
    65 Image:Lavfi-gsoc-filter-vintage-illustration.jpg 
    6663 
    6764'''Description:''' Libavfilter is the FFmpeg filtering library. It currently supports audio and video filtering and generation support. This work may focus on porting, fixing, extending, or writing new audio and video filters from scratch. 
     
    7572   - a lua scripting filter, which allows to implement filtering custom logic in lua  
    7673 
    77 For more ideas check: trac libavfilter tickets. 
     74For more ideas check [https://trac.ffmpeg.org/query?status=!closed&component=avfilter libavfilter tickets] on the bug tracker. 
    7875 
    7976'''Expected results:''' Write or port audio and video filters and possibly fix/extend libavfilter API and design when required. 
    8077 
    81 '''Prerequisites:''' C coding skills, familiarity with git/source code control systems. Some background on DSP and image/sound processing techniques would be a bonus but is not strictly required. 
     78'''Prerequisites:''' C coding skills, basic familiarity with git. Some background on DSP and image/sound processing techniques would be a bonus but is not strictly required. 
    8279 
    8380'''Qualification Task''': write or port one or more filters 
    8481 
    85 '''Mentor:''' TBA possibly Stefano Sabatini (saste on IRC) 
     82'''Mentor:''' TBA possibly Stefano Sabatini (saste at #ffmpeg-devel IRC) 
    8683 
    87 '''Backup mentor:''' Clément Bœsch (ubitux on IRC)  
     84'''Backup mentor:''' Clément Bœsch (ubitux at #ffmpeg-devel IRC)  
    8885 
    8986== Subtitles == 
     
    9491'''Expected results:''' 
    9592 
    96    - Add support for new subtitles formats. Example: a demuxer for .SUP files, just like VobSub but for Blu-Ray, or a VobSub muxer. 
     93   - Add support for new subtitles formats. Example: a demuxer for .SUP files, just like !VobSub but for Blu-Ray, or a !VobSub muxer. 
    9794   - Improve text subtitles decoders. Typically, this can be supporting advanced markup features in SAMI or WebVTT. 
    9895   - Update the API to get rid of the clumsy internal text representation of styles 
     
    10097   - BONUS: if everything goes well, the student will be allowed to add basic support for teletext  
    10198 
    102 '''Prerequisites:''' C coding skills, familiarity with git/source code control systems. Some background in fansubbing area (notably ASS experience) would be a bonus but is not strictly required. 
     99'''Prerequisites:''' C coding skills, basic familiarity with git. Some background in fansubbing area (notably ASS experience) would be a bonus but is not strictly required. 
    103100 
    104101'''Qualification Task:''' write one subtitles demuxer and decoder (for example support for Spruce subtitles format). This is in order to make sure the subtitles chain is understood. 
    105102 
    106 '''Mentor:''' Clément Bœsch (ubitux on IRC) 
     103'''Mentor:''' Clément Bœsch (ubitux at #ffmpeg-devel IRC) 
    107104 
    108 '''Backup Mentor:''' TBA, possibly Nicolas George (Cigaes on IRC)  
     105'''Backup Mentor:''' TBA, possibly Nicolas George (Cigaes at #ffmpeg-devel IRC)  
    109106 
    110107== Postproc optimizations == 
    111 Image:PostProc.jpg 
    112108 
    113109'''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+). 
     
    119115   - Add Integer SSE2 and AVX2 optimizations for each existing MMX/MMX2/3dnow optimization in libpostproc.  
    120116 
    121 '''Prerequisites:''' C coding skills, good x86 assembly coding skills, familiarity with git/source code control systems. 
     117'''Prerequisites:''' C coding skills, good x86 assembly coding skills, basic familiarity with git. 
    122118 
    123119'''Qualification Task:''' convert 1 or 2 MMX2 functions to SSE2 and AVX2. 
    124120 
    125 '''Mentor:''' Michael Niedermayer (michaelni on IRC) 
     121'''Mentor:''' Michael Niedermayer (michaelni at #ffmpeg-devel IRC) 
    126122 
    127 '''Backup Mentor:''' TBA, possibly Stefano Sabatini (saste on IRC) 
     123'''Backup Mentor:''' TBA, possibly Stefano Sabatini (saste at #ffmpeg-devel IRC) 
    128124 
    129125 
    130126== Bayer RGB colorspaces == 
    131 Image:350px-Bayer_pattern_on_sensor.svg.png 
    132127 
    133128'''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. 
     
    150145'''Qualification Task:''' Implement a simple and working Bayer->RGB transform in libswscale 
    151146 
    152 '''Mentor:''' TBA, possibly Peter Ross (pross-au on IRC) 
     147'''Mentor:''' TBA, possibly Peter Ross (pross-au at #ffmpeg-devel IRC) 
    153148 
    154 '''Backup Mentor:''' Michael Niedermayer (michaelni on IRC) 
     149'''Backup Mentor:''' Michael Niedermayer (michaelni at #ffmpeg-devel IRC) 
    155150 
    156  
    157  
    158 == Sample Project == 
    159  
    160 '''Description:''' Describe the project. 
    161  
    162 '''Expected results:''' Create a foo decoder and add a test for the FFmpeg Automated Testing Environment (FATE). 
    163  
    164 '''Prerequisites:''' C coding skills, basic familiarity with `git`. 
    165  
    166 '''Qualification Task:''' A task that demonstrates that the student is qualified by skill and determination to proceed with the project. 
    167  
    168 '''Mentor:''' Lou Logan (llogan on IRC) 
    169  
    170 '''Backup mentor:''' TBA  
    171151 
    172152---- 
     
    180160A student can propose a project. Ideas can also be found by browsing bugs and feature requests on our bug tracker. The work should last the majority of the GSoC duration, the task must be approved by the developers, and a mentor must be assigned. 
    181161 
    182 Students can discuss an idea in the [https://ffmpeg.org/mailman/listinfo/ffmpeg-devel/ ffmpeg-devel] mailing-list, the ''#ffmpeg-devel'' IRC channel, or contact the FFmpeg GSoC admins for more information. 
     162Students can discuss an idea in the [https://ffmpeg.org/mailman/listinfo/ffmpeg-devel/ ffmpeg-devel] mailing-list, the #ffmpeg-devel IRC channel, or contact the FFmpeg GSoC admins for more information.