Changes between Initial Version and Version 1 of SponsoringPrograms/GSoC/2017

Jan 13, 2017, 9:15:19 PM (3 years ago)



  • SponsoringPrograms/GSoC/2017

    v1 v1  
     4= Introduction =
     6FFmpeg is the universal multimedia toolkit: a complete, cross-platform solution to record, convert, filter, and stream audio and video. It is used by a number of media players (including VLC and MPlayer), video websites (including !YouTube and Vimeo), web browsers (including Google !Chrome/Chromium and Firefox), social media (including Facebook and Twitter) and countless other software projects in the multimedia field and beyond.
     8This is our ideas page for [ Google Summer of Code 2017]. See the [ GSoC Timeline] for important dates.
     13= Information for Students =
     15== Getting Started ==
     171. '''Get to know FFmpeg.''' If you are a student interested in contributing to FFmpeg, it is recommended to start by subscribing to the [ ffmpeg-devel] mailing-list, visiting our !FreeNode IRC channels (''#ffmpeg-devel'' and ''#ffmpeg'' although you will find most developers on the first one), and exploring both the codebase and the development workflow. Feel free to [#ContactingFFmpeg contact us] if you have any questions. Also do not hesitate to answer questions from other students on our IRC channel if you know the answer to something.
     192. '''Find a project.''' Listed on this page are mentored and un-mentored projects. Mentored projects are well-defined and mentor(s) have already volunteered. Un-mentored projects are additional ideas you may want to consider, but you will have to contact us to find a mentor. You can also propose your own project, if you can think of one that better fits your interest and skill level. If a project description is unclear or you have any questions, please get in touch with its mentor and/or join our IRC channel at ''#ffmpeg-devel''.
     213. '''Contact us.''' If you decide on a project, get in touch with the community and let us know. If you want to work on a qualification task, let the respective mentor know so we can avoid duplicated efforts.
     234. '''Apply.''' Students should apply by April 3 at the very latest. The "work" period begins on May 30 and ends in August. Take a look at [ GSoC timeline] for additional information. Note, make sure you apply to Google before the 3rd even if you have not yet finished your qualification task. And please apply as soon as possible: Applications can be improved until the 3rd but not afterwards!
     26#!div style="border: 1pt dotted; margin: 1em; background-color: #fffff9;"
     27'''Note''': A friendly reminder that while the application to GSoC is important for you and GSoC, FFmpeg mentors will not base their decision solely on the GSoC application. We will judge the applicant based on their abilities in coding, learning the tools, communication skills etc. So please do not worry about your application being perfect for us. Although it is very important to follow GSoC's application rules so they can pay you.
     30== Qualification Tasks ==
     32In order to get accepted you normally have to complete a small qualification task. FFmpeg development can be quite challenging and the qualification task helps us figure out whether you are motivated enough and have the potential to deliver successfully.
     34The qualification tasks are usually shown in the project description. Contact the respective mentor(s) for assistance on getting a related qualification task or if you want to propose your own. You can also browse the [ FFmpeg Bug Tracker] for qualification task ideas. In general qualification tasks should include submitting a patch to the [ ffmpeg-devel mailing list] which passes review and is accepted into the FFmpeg codebase. It will be common for such patches to need multiple iterations of submissions and reviews, so don't wait too long with the first submission! Note, please avoid picking a qualification task which another student is already working on, each student should work on a different qualification task.
     36== Contacting FFmpeg ==
     38If you have questions or comments feel free to contact us via our mailing list, IRC channel, or e-mail one of the FFmpeg GSoC admins:
     40* '''Mailing-list:''' [ ffmpeg-devel]
     41* '''IRC:''' ''#ffmpeg-devel'' on [ Freenode]
     42* '''FFmpeg GSoC Admins:''' Michael Niedermayer (''michaelni'' in #ffmpeg-devel on Freenode IRC,, Reynaldo Verdejo (''reynaldo'' in #ffmpeg-devel on Freenode IRC, R Verdejo on g mail), Carl Eugen Hoyos (''cehoyos'' in #ffmpeg-devel on Freenode IRC, cehoyos at ag dot or dot at)
     45You may also contact a mentor directly if you have questions specifically related to one of the projects listed on this page.
     49= Mentored Projects =
     51This section lists well-defined projects that have one or more available mentors. If you are new to FFmpeg, and have relatively little experience with multimedia, you should favor a mentored project rather than propose your own. Contact the respective mentor(s) to get more information about the project and the requested qualification task.
     53== FFA1 Codec Research ==
     55'''Description:''' Following in the footsteps of the FFv1 codec for lossless video compression, which was recently standardized and still continue to have ongoing research, the FFmpeg project has begun research on a new lossless audio codec, built upon modern technologies, with the hopes that it will be the best in the field. Research around lossless audio coding seems to have stopped in the past 10 years except for minor one-man efforts and low-resource codecs. Since then, many new techniques which help in the overall field of compression have been discovered or improved sufficiently (adaptive entropy encoding, PVQ, frequency domain intra prediction, integer DCTs, etc.). Students working on this project will help in the implementation and testing of these technologies for use in the FFA1 audio codec.
     57'''Expected results:''' The FFA1 reference encoder to produce the same efficiency or greater than FLAC without having much in common, while still maintaining bit-perfect reproduction by the decoder.
     59'''Prerequisites:''' C coding skills, basic familiarity with git, solid understanding of lossless/lossy audio coding.
     61'''Qualification Task:''' TBA
     63'''Alternative Qualification Task:''' TBA
     65'''Mentor:''' Rostislav Pehlivanov (''atomnuker'' in #ffmpeg-devel on Freenode IRC,
     67'''Backup mentor:''' TBA
     69== Your Own Project Idea ==
     71A 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 internship duration, the task must be approved by the developers, and a mentor must be assigned.
     73Students can discuss an idea in the [ ffmpeg-devel] mailing-list, the #ffmpeg-devel IRC channel, or contact the FFmpeg GSoC admins for more information.