FFmpeg / Libav Summer Of Code

From MultimediaWiki
Revision as of 06:12, 31 August 2008 by DonDiego (talk | contribs) (Reword E-AC-3 decoder entry.)
Jump to navigation Jump to search

The FFmpeg project has been a participant in the Google Summer of Code program since 2006.

Each accepted project is developed in its own sandbox, separate from the main FFmpeg codebase. Naturally, the end goal of each of the accepted FFmpeg projects ought to be to have that code in shape for acceptance into the production codebase. This page tracks the status of each project and how well each student did.

2006 Projects

VC-1 Decoder

AMR-NB Decoder

  • Student: Robert Swain
  • Mentor: Benjamin Larsson
  • Student Status: FFmpeg committer. Project not finished during SoC. Development is continued as time permits.
  • Code Status: Floating point code has been implemented up to synthesis. The next step is to debug the synthesis input and code. Documented on AMR-NB.

AC-3 Decoder

AAC Decoder

  • Student: Maxim Gavrilov
  • Mentor: Oded Shimon
  • Student Status: disappeared, project unfinished
  • Code Status: Picked up by Andreas Öman and Robert Swain and committed to FFmpeg. Robert intends to add HE AAC v1/v2 support.

Vorbis Encoder

  • Student: Mathew Philip
  • Mentor: Oded Shimon
  • Student Status: disappeared, project barely started
  • Code Status: Picked up by Oded Shimon and committed to FFmpeg.

2007 Projects

RealVideo 4 Decoder

  • Student: Kostya Shishkov
  • Mentor: Mike Melanson
  • Student Status: FFmpeg committer
  • Code Status: Accepted into the FFmpeg codebase. The project goal has also morphed to include a RealVideo 3 decoder since the 2 schemes are so similar. Both RV30 and RV40 are decodeable with visual artifacts.

QCELP Decoder

Matroska Muxer

  • Student: David Conrad
  • Mentor: Aurélien Jacobs
  • Student Status: FFmpeg committer
  • Code Status: Accepted into the FFmpeg codebase.

Video Filter API (AKA libavfilter)

  • Student: Bobby Bingham
  • Mentor: Benjamin Larsson and Michael Niedermayer
  • Student Status: project not finished during SoC but continues working on it
  • Code Status: in the process of being committed to FFmpeg. Still in development (albeit slowly) by Bobby Bingham and Vitor.

E-AC-3 Decoder

  • Student: Bartlomiej Wolowiec
  • Mentor: Justin Ruggles
  • Student Status: FFmpeg committer; code produced worked for most available samples, but there were some unimplemented features.
  • Code Status: Picked up by Justin Ruggles, finished and committed to FFmpeg.

JPEG 2000 Encoder and Decoder

  • Student: Kamil Nowosad
  • Mentor: Loren Merritt
  • Student Status: disappeared, project unfinished
  • Code Status: The code is working but not all features are supported.

Dirac Encoder and Decoder

  • Student: Marco Gerards
  • Mentor: Luca Barbato
  • Student Status: project not finished during SoC but continues working on it, just slower than before due to other tasks taking priority. (Winter vacations approaching!)
  • Code Status: The decoder is in good shape, the encoder still needs more work. Both need to be updated to the latest spec.

TS Muxer

  • Student: Xiaohui Sun
  • Mentor: Baptiste Coudurier
  • Student Status: disappeared, project unfinished
  • Code Status: Changes requested during the review process for FFmpeg inclusion were never made. Now Baptiste Coudurier is cleaning it up for inclusion in FFmpeg.

2008 Projects

Generic frame-level multithreading support

  • Student: Alexander Strange
  • Mentor: Kristian Jerpetjoen
  • Student Status: active
  • Code Status: in process

Nellymoser Encoder

  • Student: Bartlomiej Wolowiec
  • Mentor: Benjamin Larsson
  • Student Status: active
  • Code Status: in process

Apple Lossless Encoder for FFmpeg

  • Student: Jai Menon
  • Mentor: Justin Ruggles
  • Student Status: FFmpeg committer
  • Code Status: Accepted into the FFmpeg codebase.

LGPL reimplementation of GPL sws_scale parts

  • Student: Keiji Costantini
  • Mentor: Luca Barbato
  • Student Status: active
  • Code Status: in process

AAC-LC Encoder

MLP/TrueHD encoder

  • Student: Ramiro Polla
  • Mentor: Justin Ruggles
  • Student Status: active
  • Code Status: in process, the first stage, getting the MLP decoder into shape and committed, has been accomplished.

WMA Pro Decoder

  • Student: Sascha Sommer
  • Mentor: Benjamin Larsson
  • Student Status: active
  • Code Status: in process

MXF Muxer