FFmpeg Summer Of Code 2006

From MultimediaWiki
Revision as of 11:31, 28 April 2006 by Multimedia Mike (talk | contribs) (→‎libavformat: expand task description)
Jump to navigation Jump to search

Google is sponsoring its second Summer of Code. FFmpeg has been selected as one of the approved mentoring organizations. Here are a few project ideas:

VC-1

Implement the VC-1 codec based on the emerging open specification document and coming roadmap.

Mentor: Mike Melanson

AAC

Implement a new, optimized AAC decoder based on the emerging open specification document.

Mentor: Mike Melanson

FFmpeg Refactoring

Modularize the FFmpeg libraries so that each individual codec and muxer/demuxer modules can be easily enabled and disabled at compile time.

Mentor: Mike Melanson

Improving libavformat

libavformat is the interface of FFmpeg that is responsible for splitting apart encoded audio and video data from multimedia files (demuxing) and putting it together in new multimedia files (muxing). While libavcodec -- the FFmpeg component that encodes and decodes audio and video data -- enjoys widespread use among an impressive array of multimedia projects libavformat has not seen the same level of adoption. This task would entail investigating how to improve the libavformat API, how it interacts with client applications and input layers, developing proof of concept code for a new API and working to port existing muxers and demuxers to the new API.

Mentor: Mike Melanson

Dirac

Implement the Dirac codec based on the upcoming new specification from Dirac site

Mentor: Luca Barbato

NUT

Update the NUT container format support (the current one implements an ancient specification), check the current one here

Mentor: Luca Barbato

SNOW

Optimize and document SNOW wavelet codec

Mentor: Luca Barbato

AC3

Implement a LGPL (E)AC3 decoder

Mentor: Benjamin Larsson

Profiling and Optimization

Profile and optimize memory usage

Vorbis

Implement a Vorbis encoder

AMR

Implement a LGPL AMR decoder (encoder)

MP3

Implement a simple MP3 encoder

Pyschoacoustics

Implement a good pychoacoustic model. Support the usage of this model from the AC3, MP2 and other audio encoders.