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


Ignore:
Timestamp:
Jan 31, 2014, 3:09:14 AM (6 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.