<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multimedia.cx/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Merbanan</id>
	<title>MultimediaWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multimedia.cx/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Merbanan"/>
	<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php/Special:Contributions/Merbanan"/>
	<updated>2026-04-25T08:47:25Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.5</generator>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Libav_Summer_Of_Code_2012&amp;diff=13825</id>
		<title>Libav Summer Of Code 2012</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Libav_Summer_Of_Code_2012&amp;diff=13825"/>
		<updated>2012-02-01T10:34:35Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Add als as task&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How it works ==&lt;br /&gt;
&lt;br /&gt;
Google's Summer of Code program is simple: you (the student) work on a project, full-time, during the whole summer, and you get assistance (advice, mentoring) from a seasoned FFmpeg/Libav developer who knows his way around the project and has considerable standing in the community. By doing so, you'll learn to operate in an opensource project, you'll get relevant coding experience, and you'll have a chance at earning money while doing fun stuff during the summer. So, you need a project, a mentor, do a qualification task (see below) so we can quickly assess how good a candidate we feel you'll be for the program, and then you can apply.&lt;br /&gt;
&lt;br /&gt;
=== Selecting a project ===&lt;br /&gt;
Below, you'll find two lists of projects:&lt;br /&gt;
* Projects with a mentor&lt;br /&gt;
* Projects without a mentor&lt;br /&gt;
If you choose a project with a mentor, talk to that mentor (see below) and select a suitable qualification task. Once completed, you're eligible for participating in our Summer of Code program. If you choose a project without a mentor, your first job is to find a mentor (see below). Then, once you've found a mentor, continue as before. If you don't like any of the projects, you're free to define your own project and find a mentor as mentioned before (see below for caveats).&lt;br /&gt;
&lt;br /&gt;
=== Contacting developers/mentors ===&lt;br /&gt;
Once you've found a project (with or without mentor), start talking to the developers of the FFmpeg and Libav projects. We can often be found on IRC, and you can talk to us on mailinglists also. Hop on irc.freenode.net channels #ffmpeg-devel or #libav-devel, or talk to us on libav-devel@libav.org or ffmpeg-devel@ffmpeg.org. (At this point, you're probably wondering why there are 2 IRC channels and 2 mailinglists. Ask your mentor, it'll make for a good first conversation topic.) Here, you'll be able to ask around for mentors for projects without a mentor if you need to. If you're trying to define your own project, explain (with reasonable amount of detail) what you intend to achieve and why you think your project should be in our Summer of Code program. Once you've found a mentor, you're good to start your qualification task.&lt;br /&gt;
&lt;br /&gt;
Note that the self-selected mentor needs to have considerable standing in the community to be eligible for mentoring. Likewise, if you choose to define your own Summer of Code project, some community members of considerable standing need to vouch for your project.&lt;br /&gt;
&lt;br /&gt;
=== Your qualification task ===&lt;br /&gt;
The goal of a qualification task is to see if the mentor and student feel that together, they will be able to finish the project of their choice. More specifically, the mentor will want to test whether he thinks that the student has the skills and work ethics to complete a large coding project in a limited amount of time. The student will want to make sure that the mentor provides (useful) assistance when necessary. Therefore, students should select a mentor and a Summer of Code project before starting their work on a qualification task. The qualification task is often (but not necessarily) related to the selected project. For example, if your project will be to reverse engineer a new video codec, the qualification task may be to write a partial bitstream parser for that codec. If your project is to write a muxer for a container format, the qualification task may be to write the code to write the stream header.&lt;br /&gt;
&lt;br /&gt;
=== Applying ===&lt;br /&gt;
While you're working on your qualification task, apply at http://www.google-melange.com/. The degree (and detail) with which you've finished your qualification task will determine how likely your project is to be selected. In the past few years, students that completely finished their qualification task always got selected as Summer of Code students, but that may vary depending on the number of spots we get assigned by Google, and the number of students that apply.&lt;br /&gt;
&lt;br /&gt;
=== Videolan qualification tasks ===&lt;br /&gt;
A completed FFmpeg/Libav qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== HEVC/H265 decoder ===&lt;br /&gt;
&lt;br /&gt;
* HEVC is the next-generation video standard from the MPEG standards committee. Your job is to write a decoder that can playback HEVC files.&lt;br /&gt;
* It does not need to be SIMD-optimized, but preferably has relevant functions separated in DSP contexts so they're easy to optimize later on.&lt;br /&gt;
* This task will depend on the current standardisation status of HEVC. Final publication is in 2013 but there may be parts which will not change much anyway.&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Ronald_S._Bultje|Ronald S. Bultje]]''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== DTS-HD decoder ===&lt;br /&gt;
&lt;br /&gt;
* ETSI released specifcations (http://www.etsi.org/deliver/etsi_ts/102100_102199/102114/01.03.01_60/ts_102114v010301p.pdf). Your job is to complete the existing decoder with the following features.&lt;br /&gt;
&lt;br /&gt;
 (1) Add support for mixed Core + DTS-HD stream structure&lt;br /&gt;
     (DtsCoreFrame+DtsHdFrame+DtsCoreFrame+DtsHdFrame+...), used by Blu-Ray main&lt;br /&gt;
     and commentary tracks.&lt;br /&gt;
 (2) Add support for XXCh extension (6.1 and 7.1 channels).&lt;br /&gt;
 (3) Add support for X96 extension (96khz).&lt;br /&gt;
 (4) Add support for XLL extension (lossless).&lt;br /&gt;
 (5) Add support for a pure DTS-HD stream structure&lt;br /&gt;
     (DtsHdFrame+DtsHdFrame+DtsHdFrame+...), used by Blu-Ray PiP tracks.&lt;br /&gt;
 (6) Add support for XBR extension (extra bitrate).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== MPEG-4 ALS Roundup ===&lt;br /&gt;
&lt;br /&gt;
This task is to update and enhance the existing ALS decoder as well as integrate&lt;br /&gt;
and enhance the rudimentary encoder found at:&lt;br /&gt;
https://github.com/justinruggles/FFmpeg-alsenc&lt;br /&gt;
&lt;br /&gt;
Possible features are:&lt;br /&gt;
&lt;br /&gt;
* implement rls-lms in the decoder&lt;br /&gt;
* do correct channel layout/sort handling in the decoder&lt;br /&gt;
* update to current master&lt;br /&gt;
* use codec private options&lt;br /&gt;
* implement encode2(), setting pts and duration&lt;br /&gt;
* document options and examples in encoders.texi&lt;br /&gt;
* come up with a good set of encoding tests for FATE&lt;br /&gt;
* implement mcc/channel sort in the encoder&lt;br /&gt;
* implement rls-lms in the encoder&lt;br /&gt;
* implement float support&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Mentor: Justin Ruggles''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier (need mentor) Project Proposals ==&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task is to get libbluray integrated with ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Libav_Summer_Of_Code_2012&amp;diff=13821</id>
		<title>Libav Summer Of Code 2012</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Libav_Summer_Of_Code_2012&amp;diff=13821"/>
		<updated>2012-01-31T15:45:16Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: add dts-hd task&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How it works ==&lt;br /&gt;
&lt;br /&gt;
Google's Summer of Code program is simple: you (the student) work on a project, full-time, during the whole summer, and you get assistance (advice, mentoring) from a seasoned FFmpeg/Libav developer who knows his way around the project and has considerable standing in the community. By doing so, you'll learn to operate in an opensource project, you'll get relevant coding experience, and you'll have a chance at earning money while doing fun stuff during the summer. So, you need a project, a mentor, do a qualification task (see below) so we can quickly assess how good a candidate we feel you'll be for the program, and then you can apply.&lt;br /&gt;
&lt;br /&gt;
=== Selecting a project ===&lt;br /&gt;
Below, you'll find two lists of projects:&lt;br /&gt;
* Projects with a mentor&lt;br /&gt;
* Projects without a mentor&lt;br /&gt;
If you choose a project with a mentor, talk to that mentor (see below) and select a suitable qualification task. Once completed, you're eligible for participating in our Summer of Code program. If you choose a project without a mentor, your first job is to find a mentor (see below). Then, once you've found a mentor, continue as before. If you don't like any of the projects, you're free to define your own project and find a mentor as mentioned before (see below for caveats).&lt;br /&gt;
&lt;br /&gt;
=== Contacting developers/mentors ===&lt;br /&gt;
Once you've found a project (with or without mentor), start talking to the developers of the FFmpeg and Libav projects. We can often be found on IRC, and you can talk to us on mailinglists also. Hop on irc.freenode.net channels #ffmpeg or #libav, or talk to us on libav-devel@libav.org or ffmpeg-devel@ffmpeg.org. (At this point, you're probably wondering why there are 2 IRC channels and 2 mailinglists. Ask your mentor, it'll make for a good first conversation topic.) Here, you'll be able to ask around for mentors for projects without a mentor if you need to. If you're trying to define your own project, explain (with reasonable amount of detail) what you intend to achieve and why you think your project should be in our Summer of Code program. Once you've found a mentor, you're good to start your qualification task.&lt;br /&gt;
&lt;br /&gt;
Note that the self-selected mentor needs to have considerable standing in the community to be eligible for mentoring. Likewise, if you choose to define your own Summer of Code project, some community members of considerable standing need to vouch for your project.&lt;br /&gt;
&lt;br /&gt;
=== Your qualification task ===&lt;br /&gt;
The goal of a qualification task is to see if the mentor and student feel that together, they will be able to finish the project of their choice. More specifically, the mentor will want to test whether he thinks that the student has the skills and work ethics to complete a large coding project in a limited amount of time. The student will want to make sure that the mentor provides (useful) assistance when necessary. Therefore, students should select a mentor and a Summer of Code project before starting their work on a qualification task. The qualification task is often (but not necessarily) related to the selected project. For example, if your project will be to reverse engineer a new video codec, the qualification task may be to write a partial bitstream parser for that codec. If your project is to write a muxer for a container format, the qualification task may be to write the code to write the stream header.&lt;br /&gt;
&lt;br /&gt;
=== Applying ===&lt;br /&gt;
While you're working on your qualification task, apply at http://www.google-melange.com/. The degree (and detail) with which you've finished your qualification task will determine how likely your project is to be selected. Generally, students that completely finish their qualification task always get selected as Summer of Code students, but that may vary depending on the number of spots we get assigned by Google.&lt;br /&gt;
&lt;br /&gt;
=== Videolan qualification tasks ===&lt;br /&gt;
A completed FFmpeg/Libav qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== HEVC/H265 decoder ===&lt;br /&gt;
&lt;br /&gt;
* HEVC is the next-generation video standard from the MPEG standards committee. Your job is to write a decoder that can playback HEVC files.&lt;br /&gt;
* It does not need to be SIMD-optimized, but preferably has relevant functions separated in DSP contexts so they're easy to optimize later on.&lt;br /&gt;
* This task will depend on the current standardisation status of HEVC. Final publication is in 2013 but there may be parts which will not change much anyway.&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Ronald_S._Bultje|Ronald S. Bultje]]''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== HTS-HD decoder ===&lt;br /&gt;
&lt;br /&gt;
* ETSI released specifcations (http://www.etsi.org/deliver/etsi_ts/102100_102199/102114/01.03.01_60/ts_102114v010301p.pdf). Your job is to complete the existing decoder with the following features.&lt;br /&gt;
&lt;br /&gt;
 (1) Add support for mixed Core + DTS-HD stream structure&lt;br /&gt;
     (DtsCoreFrame+DtsHdFrame+DtsCoreFrame+DtsHdFrame+...), used by Blu-Ray main&lt;br /&gt;
     and commentary tracks.&lt;br /&gt;
 (2) Add support for XXCh extension (6.1 and 7.1 channels).&lt;br /&gt;
 (3) Add support for X96 extension (96khz).&lt;br /&gt;
 (4) Add support for XLL extension (lossless).&lt;br /&gt;
 (5) Add support for a pure DTS-HD stream structure&lt;br /&gt;
     (DtsHdFrame+DtsHdFrame+DtsHdFrame+...), used by Blu-Ray PiP tracks.&lt;br /&gt;
 (6) Add support for XBR extension (extra bitrate).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
== 2nd Tier (need mentor) Project Proposals ==&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task is to get libbluray integrated with ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13411</id>
		<title>FFmpeg / Libav Summer Of Code 2011</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13411"/>
		<updated>2011-04-11T15:23:37Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* Hardware accelerated decoder for Android devices */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Many Summer-of-Code projects (in the list below) have specific qualification tasks. These tasks are meant to make you familiar with the code that you will be working with, are at approximately the same difficulty level as the actual Summer-of-Code project itself (just a lot smaller), and often already provide you with a jumpstart into your Summer-of-Code project. We suggest the following order of events:&lt;br /&gt;
* First, select a Summer-of-Code project (either from the list below, but in some cases you may also come up with your own)&lt;br /&gt;
* Second, discuss this project with the person that will mentor it. If a mentor is listed, talk to him on IRC, via email or so. If no mentor is listed, find one by emailing the FFmpeg-soc mailinglist.&lt;br /&gt;
* With your mentor, discuss the most appropriate qualification task for your Summer-of-Code project.&lt;br /&gt;
If no specific qualification task is listed for your project of interest, you can discuss with your mentor to choose a task from the [[Small FFmpeg Tasks|Small Tasks list]] or the [[Interesting Patches|Interesting Patches list]] instead. If your prospective mentor agrees, please send an email to the FFmpeg-soc mailing list to inform that you are working on it (to avoid duplicated work). You can discuss progress on your qualification task and initial review of your finished qualification task on the FFmpeg-soc mailinglist (sometimes the patch will have to go through final review on the main FFmpeg development mailinglist before it can be applied also). The qualification task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
Before posting to the FFmpeg-soc mailinglist, make sure you read and understand [http://www.ffmpeg.org/contact.html our netiquette guidelines], especially avoid top-posting and thread-hijacking (note that if you don't understand one of those terms, make sure to have understood them before writing your first post). Before you send us your patch, read our [http://www.ffmpeg.org/general.html#SEC23 development guidelines] and make sure your patch fulfills all the requirements stated there. You should also familiar with the programs diff, patch and Subversion. You have to learn these basics on your own before you start, we will not teach them to you during the application process.&lt;br /&gt;
&lt;br /&gt;
A completed FFmpeg qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== [[Advanced_Audio_Coding#BSAC_AAC|BSAC AAC]] Decoder ===&lt;br /&gt;
&lt;br /&gt;
* Separate [[AAC]] Huffman decoding and dequantization from the rest of AAC decoder.&lt;br /&gt;
* Write a BSAC AAC decoder.&lt;br /&gt;
* Reuse as much of the existing AAC decoder and libavcodec as possible. &lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:AConverse|Alex Converse]]''&lt;br /&gt;
&lt;br /&gt;
''Young Han Lee has completed a qualification task (AAC LTP profile) for this project''&lt;br /&gt;
&lt;br /&gt;
=== Libav Usage Example, Tutorial and test suite ===&lt;br /&gt;
&lt;br /&gt;
* Prepare a serie of example program of increasing complexity&lt;br /&gt;
** Simple remuxer&lt;br /&gt;
** Simple decoding loop&lt;br /&gt;
** Simple encoding loop&lt;br /&gt;
** Simple transcoding loop&lt;br /&gt;
** Simple producer + consumer scenario with the network protocols&lt;br /&gt;
** ...&lt;br /&gt;
** Optionally it would lead to prepare a leaner equivalent to ffmpeg and ffplay&lt;br /&gt;
&lt;br /&gt;
* Examine when there are inconsistencies with the current API (e.g. unexpected timestamp mangling, packet splitting) and fix the issues.&lt;br /&gt;
&lt;br /&gt;
* Integrate the example programs as components of FATE.&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Lu_zero|Luca Barbato]]''&lt;br /&gt;
&lt;br /&gt;
=== [[VC-1]] decoder missing features  ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* Add support for chroma/luma scaling, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add support for slice decoding, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add optimizations for x86-32/64 (or ARM), so that HD streams play back faster.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Kostya|Kostya Shishkov]], [[User:Ronald S. Bultje|Ronald S. Bultje]] and (maybe) Christophe Gisquet''&lt;br /&gt;
&lt;br /&gt;
''Shahriman AMS is working on a qualification task for this project''&lt;br /&gt;
&lt;br /&gt;
=== [[WTV|Windows Television (WTV)]] muxer ===&lt;br /&gt;
&lt;br /&gt;
* Qualification task: develop a prototype WTV muxer that can produce files then able to be demuxed by FFmpeg.&lt;br /&gt;
* The objective of this project is produce files that are compatible with Microsoft Windows Media Center. To achieve this, one must determine which of the many undocumented data types are expected by Microsoft Stream Buffer Engine, discover their format, and implement these in the muxer.&lt;br /&gt;
* The muxer must support metadata and indexing.&lt;br /&gt;
* Clearly defined task; reverse engineering skills required.&lt;br /&gt;
''Mentor: [[User:Suxen_drol|Peter Ross]]&lt;br /&gt;
&lt;br /&gt;
''[[User:Spyfeng|Zhentan Feng]] is working on the qualification task for this project''&lt;br /&gt;
&lt;br /&gt;
=== DTS Encoder ===&lt;br /&gt;
* Specification: http://wiki.multimedia.cx/index.php?title=Mirror&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/A-codecs/DTS/&lt;br /&gt;
* Qualification: Extend the encoder in the SoC tree (port the float transform from the decoder, fix the LFE channel generation).&lt;br /&gt;
* Primary goal: Encoder that can produce multi sample rate, multi channel files and multi bit-rate. Wav and raw muxing support.&lt;br /&gt;
* Secondary goal: Techniques from specification implemented, optimal codebook usage, vector quantization, simple psycho acoustics.&lt;br /&gt;
* Third goal: Advanced psycho acoustics.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
''Xiang Wang is working on a qualification task for this project''&lt;br /&gt;
&lt;br /&gt;
=== Hardware accelerated decoder for Android devices ===&lt;br /&gt;
Most Android phones supports decoding H264 via an OpenMAX decoder interface. This interface is exposed through the Stagefright&lt;br /&gt;
multimedia framework. The flashplugin uses this to be able to have hardware accelerated decode of H264 bitstreams from Android&lt;br /&gt;
user space. As many Android devices will not be upgraded to Android 2.3 or users don't want to root/reflash their firmware this&lt;br /&gt;
will enable a lot of devices to install a libavcodec based media player while still having hardware accelerated H264 decode.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Martin Storsjö, (co-mentor) Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Multithreading support ===&lt;br /&gt;
The goal of this task will be to improve the multithreading support in FFmpeg. The task is relatively unspecific, but your&lt;br /&gt;
basic goal will be to add multithreading support to a variety of decoders in FFmpeg, by using existing infrastructure. Examples goals&lt;br /&gt;
could include:&lt;br /&gt;
* Help merging the remaining bits of ffmpeg-mt into the main repository (i.e. H.264/MPEG decoder multithreading)&lt;br /&gt;
* Fix problems with FFmpeg's slice-based H.264 decoder threading (ask Jason for details here)&lt;br /&gt;
* Implement functions in the ffmpeg/ffplay binaries to autodetect the number of CPUs/cores and autodetect the number of threads to use (if unspecified)&lt;br /&gt;
* define ways to use both slice-based and frame-based multithreading at the same time if decoders (and files) support both&lt;br /&gt;
* Multithreading in other decoders that currently don't support it&lt;br /&gt;
* implement slice-based and/or frame-based threading in FFmpeg's VP8 decoder&lt;br /&gt;
* implement frame-based threading in MJPEG decoder&lt;br /&gt;
* implement frame-based (or if you want to hurt yourself, try slice-based) multithreading in VC-1 decoder&lt;br /&gt;
&lt;br /&gt;
''Mentor: (hopefully) Alexander Strange and Ronald S. Bultje''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It replaced the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed (this includes: the rotate, split, and fps filters)&lt;br /&gt;
* Port all the missing filters from MPlayer (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
* Framework: implement dynamic-reconfiguration of the filterchain, for supporting dynamic size/format changes&lt;br /&gt;
* Port filters from other frameworks (mjpeg-tools, effectv, frei0r, virtualdub, vlc, etc...)&lt;br /&gt;
* Write wrappers for more image processing libraries and filtering frameworks (libgimp, libgraphicsmagic, weed), extend the libopencv wrapper for supporting more filters (this may need implemented float image support in libswscale)&lt;br /&gt;
* Write more filters (possibly starting from already posted filters which for a reason or another were never committed, e.g. concatenate, fish, 2xsai, select, lut, eval, posterize, elbg/posterize etc.)&lt;br /&gt;
* Implement a compose filter (suggestion for a better name?), for creating a mosaic of the input video streams&lt;br /&gt;
* Write a movie sink (e.g. it could be useful for implementing a display functionality, e.g. when the video is dumped to an output device)&lt;br /&gt;
* Write a frequency domain filter using the FFT implementation in libavcodec&lt;br /&gt;
* Write a Matlab/Octave/SAGE scripting wrapper (assuming it can be done)&lt;br /&gt;
* More ideas?&lt;br /&gt;
&lt;br /&gt;
''Mentor: Stefano Sabatini (possibly with a backup mentor)''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has incomplete support for handling audio. This task would consist of a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Fix the remaining outstanding issues and complete the audio framework integration (check saste's audio-filters FFmpeg branch on gitorious)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample formats and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
* Extend/improve libav* audio resampling/rematrixing/requantization capabilities (this may need to re-design the audio API, maybe it deserves a task on its own)&lt;br /&gt;
* Write/port basic audio filters (check for example MPlayer/libaf)&lt;br /&gt;
* Write wrapper for audio frameworks (sox, ladspa, ...)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Stefano Sabatini (possibly with a backup mentor)''&lt;br /&gt;
&lt;br /&gt;
''Mina Nagy Zaki is working on a qualification task for this project''&lt;br /&gt;
&lt;br /&gt;
=== Flash screen video (1)/2 ===&lt;br /&gt;
&lt;br /&gt;
* Write a decoder for the screen video 2 format&lt;br /&gt;
* Enhance the encoder patch posted to ffmpeg-devel so it can be committed&lt;br /&gt;
* Write optimal 2-pass encoding support for the flash screen video 1 and possibly 2 encoder (djinkstra graph)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson (possibly some one else)''&lt;br /&gt;
&lt;br /&gt;
=== Rewrite the audio format conversion code ===&lt;br /&gt;
&lt;br /&gt;
* right now, we're using audioresample to resample audio (samplerate / channels) and audioconvert to resample audio format (int, float, 16-bit, 32-bit). We'd like a new, swscale-style implementation that combines these two in a single codebase&lt;br /&gt;
* design should allow for both interleaved and planar audio sample formats&lt;br /&gt;
* design should allow for SIMD optimization of popular conversions (float-int16, int16-float)&lt;br /&gt;
* design should allow for alternate conversion functions (e.g. sample format conversion with or without dithering and different sample rate conversion algorithms)&lt;br /&gt;
* fix bugs in current design (clipping, overflows when going from float to int, questionable rounding)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Justin Ruggles&lt;br /&gt;
&lt;br /&gt;
=== MXF support ===&lt;br /&gt;
&lt;br /&gt;
* Support Clip Wrapping, Op1B, Avid proprietary files&lt;br /&gt;
* Support muxing DV, H.264&lt;br /&gt;
* Seeking support using index&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier&lt;br /&gt;
&lt;br /&gt;
=== Standards Compliant TS Muxer ===&lt;br /&gt;
&lt;br /&gt;
* This is harder than it might seem at first because of the myriad of codecs and muxing rules.&lt;br /&gt;
* In order to complete this task you must find (or ask for) the spec, read it and understand the buffering models and what you will need to do for each codec. It's much easier to start with MPEG codecs to begin with. In most cases this will involve extracting or guessing information from the input stream.&lt;br /&gt;
* Sometimes spec-incompliant modes might be ok such as H.264 in TS files without HRD for iPod streaming.&lt;br /&gt;
* Later work can focus on remuxing&lt;br /&gt;
&lt;br /&gt;
''Mentor: Kieran Kunhya&lt;br /&gt;
&lt;br /&gt;
== 1st tier proposals of last year ==&lt;br /&gt;
These are the same as above-mentioned 1st tier proposals, but we're not sure yet if we'll repeat them. Once mentors are OK, please move them up.&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task probably is to get libbluray integrated with vlc/mplayer/ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== h264 decoder optimizations ===&lt;br /&gt;
* Quite simply, make our decoder faster&lt;br /&gt;
* Qualification task: make our decoder 1% faster&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
:jlindgren is interested in this task&lt;br /&gt;
&lt;br /&gt;
=== Add support for Bayer RGB colour format ===&lt;br /&gt;
Since it is not even clear if this should be implemented in libswscale or libavcodec, this should be discussed on ffmpeg-devel or ffmpeg-soc before submitting.&lt;br /&gt;
There was a related discussion on mplayer-devel once and at least two related FFmpeg issues:&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.video.mplayer.devel/48091&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1816&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1837&lt;br /&gt;
* Contact Peter Ross for his latest working patch (Jan-2011)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a lack of mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#TS Muxer|TS muxer]]&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* [[FFmpeg Summer Of Code#Generic frame-level multithreading support|Generic frame-level multithreading support]]&lt;br /&gt;
&lt;br /&gt;
2009:&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Playlist.2FConcatenation_Support_for_FFmpeg|Playlist and concatenation support]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implement_the_New_Seeking_API_in_Libavformat|New seeking API]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implementation_of_AVFilter_infrastructure_and_various_audio_filters|AVFilter audio infrastructure]]&lt;br /&gt;
&lt;br /&gt;
For the current status of all SoC projects up to date, see [[FFmpeg Summer Of Code]].&lt;br /&gt;
&lt;br /&gt;
:rukhsana afroz is working on jpeg2000 decoder&lt;br /&gt;
&lt;br /&gt;
=== Implement a Windows Video Presentation 2 decoder ===&lt;br /&gt;
* Fourcc: [[WVP2]]&lt;br /&gt;
* Samples: [http://samples.mplayerhq.hu/V-codecs/WVP2/ http://samples.mplayerhq.hu/V-codecs/WVP2/]&lt;br /&gt;
* Suggested qualification task: [[Reverse_Engineering|Reverse engineer]] the frame header parsing or the actual frame data parsing&lt;br /&gt;
&lt;br /&gt;
=== RALF Realaudio Lossless ===&lt;br /&gt;
* RE and implement a decoder for this format&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
* An alternative might be to only port the OpenGL part of libvo into a new glplay. This should be discussed on ffmpeg-devel before submission.&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== CELT Decoder ===&lt;br /&gt;
* Specification:  http://celt-codec.org/docs&lt;br /&gt;
Also see [[CELT]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== SILK decoder and/or encoder ===&lt;br /&gt;
* A specification was published: http://tools.ietf.org/html/draft-vos-silk-01&lt;br /&gt;
&lt;br /&gt;
=== DTS-HD Master Audio decoder ===&lt;br /&gt;
* You should know exactly what you do if you submit an application.&lt;br /&gt;
&lt;br /&gt;
=== ATRAC3plus ===&lt;br /&gt;
* Implement a decoder for [[ATRAC3plus]].&lt;br /&gt;
&lt;br /&gt;
=== MPEG-4 SLS ===&lt;br /&gt;
* FFmpeg has currently no support for [[MPEG-4 SLS]]&lt;br /&gt;
&lt;br /&gt;
=== DirectShow capture ===&lt;br /&gt;
* Implement an indev for DirectShow capture on Windows (and support A/V synchronisation).&lt;br /&gt;
* Qualification: Get [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/106245 GDI] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/105810 waveform] capture integrated into FFmpeg SVN with A/V synchronisation. Both patches are almost finished.&lt;br /&gt;
&lt;br /&gt;
=== AAC-LD ===&lt;br /&gt;
* Implement an AAC-LD decoder.&lt;br /&gt;
&lt;br /&gt;
=== H.264 MVC ===&lt;br /&gt;
* Implement an H.264 MVC decoder. This format is used in 3D Blu-Rays.&lt;br /&gt;
&lt;br /&gt;
=== H.264 4:2:2 (and 4:4:4?) ===&lt;br /&gt;
* Implement a 4:2:2 (and 4:4:4?) H.264 decoder.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13357</id>
		<title>FFmpeg / Libav Summer Of Code 2011</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13357"/>
		<updated>2011-03-18T15:14:24Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Added Flash screen video 2 task&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Many Summer-of-Code projects (in the list below) have specific qualification tasks. These tasks are meant to make you familiar with the code that you will be working with, are at approximately the same difficulty level as the actual Summer-of-Code project itself (just a lot smaller), and often already provide you with a jumpstart into your Summer-of-Code project. We suggest the following order of events:&lt;br /&gt;
* First, select a Summer-of-Code project (either from the list below, but in some cases you may also come up with your own)&lt;br /&gt;
* Second, discuss this project with the person that will mentor it. If a mentor is listed, talk to him on IRC, via email or so. If no mentor is listed, find one by emailing the FFmpeg-soc mailinglist.&lt;br /&gt;
* With your mentor, discuss the most appropriate qualification task for your Summer-of-Code project.&lt;br /&gt;
If no specific qualification task is listed for your project of interest, you can discuss with your mentor to choose a task from the [[Small FFmpeg Tasks|Small Tasks list]] or the [[Interesting Patches|Interesting Patches list]] instead. If your prospective mentor agrees, please send an email to the FFmpeg-soc mailing list to inform that you are working on it (to avoid duplicated work). You can discuss progress on your qualification task and initial review of your finished qualification task on the FFmpeg-soc mailinglist (sometimes the patch will have to go through final review on the main FFmpeg development mailinglist before it can be applied also). The qualification task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
Before posting to the FFmpeg-soc mailinglist, make sure you read and understand [http://www.ffmpeg.org/contact.html our netiquette guidelines], especially avoid top-posting and thread-hijacking (note that if you don't understand one of those terms, make sure to have understood them before writing your first post). Before you send us your patch, read our [http://www.ffmpeg.org/general.html#SEC23 development guidelines] and make sure your patch fulfills all the requirements stated there. You should also familiar with the programs diff, patch and Subversion. You have to learn these basics on your own before you start, we will not teach them to you during the application process.&lt;br /&gt;
&lt;br /&gt;
A completed FFmpeg qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== [[Advanced_Audio_Coding#BSAC_AAC|BSAC AAC]] Decoder ===&lt;br /&gt;
&lt;br /&gt;
* Separate [[AAC]] Huffman decoding and dequantization from the rest of AAC decoder.&lt;br /&gt;
* Write a BSAC AAC decoder.&lt;br /&gt;
* Reuse as much of the existing AAC decoder and libavcodec as possible. &lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:AConverse|Alex Converse]], task claimed by Young Han Lee (qualification task: AAC LTP profile)&lt;br /&gt;
&lt;br /&gt;
=== [[VC-1]] decoder missing features  ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* Add support for chroma/luma scaling, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add support for slice decoding, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add optimizations for x86-32/64 (or ARM), so that HD streams play back faster.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Kostya|Kostya Shishkov]], [[User:Ronald S. Bultje|Ronald S. Bultje]] and (maybe) Christophe Gisquet''&lt;br /&gt;
&lt;br /&gt;
=== [[WTV|Windows Television (WTV)]] muxer ===&lt;br /&gt;
&lt;br /&gt;
* Qualification task: develop a prototype WTV muxer that can produce files then able to be demuxed by FFmpeg.&lt;br /&gt;
* The objective of this project is produce files that are compatible with Microsoft Windows Media Center. To achieve this, one must determine which of the many undocumented data types are expected by Microsoft Stream Buffer Engine, discover their format, and implement these in the muxer.&lt;br /&gt;
* The muxer must support metadata and indexing.&lt;br /&gt;
* Clearly defined task; reverse engineering skills required.&lt;br /&gt;
''Mentor: [[User:Suxen_drol|Peter Ross]]&lt;br /&gt;
&lt;br /&gt;
=== DTS Encoder ===&lt;br /&gt;
* Specification: http://wiki.multimedia.cx/index.php?title=Mirror&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/A-codecs/DTS/&lt;br /&gt;
* Qualification: Extend the encoder in the SoC tree (port the float transform from the decoder, fix the LFE channel generation).&lt;br /&gt;
* Primary goal: Encoder that can produce multi sample rate, multi channel files and multi bit-rate. Wav and raw muxing support.&lt;br /&gt;
* Secondary goal: Techniques from specification implemented, optimal codebook usage, vector quantization, simple psycho acoustics.&lt;br /&gt;
* Third goal: Advanced psycho acoustics.&lt;br /&gt;
&lt;br /&gt;
(Qualification claimed by Xiang Wang)&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Hardware accelerated decoder for Android devices ===&lt;br /&gt;
Most Android phones supports decoding H264 via an OpenMAX decoder interface. This interface is exposed through the Stagefright&lt;br /&gt;
multimedia framework. The flashplugin uses this to be able to have hardware accelerated decode of H264 bitstreams from Android&lt;br /&gt;
user space. As many Android devices will not be upgraded to Android 2.3 or users don't want to root/reflash their firmware this&lt;br /&gt;
will enable a lot of devices to install a libavcodec based media player while still having hardware accelerated H264 decode.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Multithreading support ===&lt;br /&gt;
The goal of this task will be to improve the multithreading support in FFmpeg. The task is relatively unspecific, but your&lt;br /&gt;
basic goal will be to add multithreading support to a variety of decoders in FFmpeg, by using existing infrastructure. Examples goals&lt;br /&gt;
could include:&lt;br /&gt;
* implement slice-based threading in FFmpeg's VP8 decoder&lt;br /&gt;
* implement frame-based threading in FFmpeg's VP8 decoder&lt;br /&gt;
* Fix problems with FFmpeg's slice-based H.264 decoder threading (ask Jason for details here)&lt;br /&gt;
* Help merging the remaining bits of ffmpeg-mt into the main repository (i.e. H.264/MPEG decoder multithreading)&lt;br /&gt;
* Implement functions in the ffmpeg/ffplay binaries to autodetect the number of CPUs/cores and autodetect the number of threads to use (if unspecified)&lt;br /&gt;
* Multithreading in other decoders that currently don't support it&lt;br /&gt;
&lt;br /&gt;
''Mentor: (hopefully) Alexander Strange and Ronald S. Bultje''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It replaced the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed (this includes: the rotate, split, and fps filters)&lt;br /&gt;
* Port all the missing filters from MPlayer (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
* Framework: implement dynamic-reconfiguration of the filterchain, for supporting dynamic size/format changes&lt;br /&gt;
* Port filters from other frameworks (mjpeg-tools, effectv, frei0r, virtualdub, vlc, etc...)&lt;br /&gt;
* Write wrappers for more image processing libraries and filtering frameworks (libgimp, libgraphicsmagic, weed), extend the libopencv wrapper for supporting more filters (this may need implemented float image support in libswscale)&lt;br /&gt;
* Write more filters (possibly starting from already posted filters which for a reason or another were never committed, e.g. concatenate, fish, 2xsai, select, lut, eval, posterize, elbg/posterize etc.)&lt;br /&gt;
* Implement a compose filter (suggestion for a better name?), for creating a mosaic of the input video streams&lt;br /&gt;
* Write a movie sink (e.g. it could be useful for implementing a display functionality, e.g. when the video is dumped to an output device)&lt;br /&gt;
* Write a frequency domain filter using the FFT implementation in libavcodec&lt;br /&gt;
* Write a Matlab/Octave/SAGE scripting wrapper (assuming it can be done)&lt;br /&gt;
* More ideas?&lt;br /&gt;
&lt;br /&gt;
''Mentor: Stefano Sabatini (possibly with a backup mentor)''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has incomplete support for handling audio. This task would consist of a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Fix the remaining outstanding issues and complete the audio framework integration (check the saste's audio-filters FFmpeg branch on gitorious)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
* Extend/improve libav* audio resampling/rematrixing/requantization capabilities (this may need to re-design the audio API, maybe it deserves a task on its own)&lt;br /&gt;
* Write/port basic audio filters (check for example MPlayer/libaf)&lt;br /&gt;
* Write wrapper for audio frameworks (sox, ladspa, ...)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Stefano Sabatini (possibly with a backup mentor)''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Flash screen video (1)/2 ===&lt;br /&gt;
&lt;br /&gt;
* Write a decoder for the screen video 2 format&lt;br /&gt;
* Enhance the encoder patch posted to ffmpeg-devel so it can be committed&lt;br /&gt;
* Write optimal 2-pass encoding support for the flash screen video 1 and possibly 2 encoder (djinkstra graph)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson (possibly some one else)''&lt;br /&gt;
&lt;br /&gt;
== 1st tier proposals of last year ==&lt;br /&gt;
These are the same as above-mentioned 1st tier proposals, but we're not sure yet if we'll repeat them. Once mentors are OK, please move them up.&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task probably is to get libbluray integrated with vlc/mplayer/ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== Rewrite the audio format conversion code ===&lt;br /&gt;
&lt;br /&gt;
* right now, we're using audioresample to resample audio (samplerate / channels) and audioconvert to resample audio format (int, float, 16-bit, 32-bit). We'd like a new, swscale-style implementation that combines these two in a single codebase&lt;br /&gt;
* design should allow for SIMD optimization of popular conversions (float-int16, int16-float)&lt;br /&gt;
* fix bugs in current design (clipping, overflows when going from float to int, questionable rounding)&lt;br /&gt;
&lt;br /&gt;
''Mentor: to be decided&lt;br /&gt;
&lt;br /&gt;
=== h264 decoder optimizations ===&lt;br /&gt;
* Quite simply, make our decoder faster&lt;br /&gt;
* Qualification task: make our decoder 1% faster&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
=== Add support for Bayer RGB colour format ===&lt;br /&gt;
Since it is not even clear if this should be implemented in libswscale or libavcodec, this should be discussed on ffmpeg-devel or ffmpeg-soc before submitting.&lt;br /&gt;
There was a related discussion on mplayer-devel once and at least two related FFmpeg issues:&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.video.mplayer.devel/48091&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1816&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1837&lt;br /&gt;
* Contact Peter Ross for his latest working patch (Jan-2011)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a lack of mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#TS Muxer|TS muxer]]&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* [[FFmpeg Summer Of Code#Generic frame-level multithreading support|Generic frame-level multithreading support]]&lt;br /&gt;
&lt;br /&gt;
2009:&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Playlist.2FConcatenation_Support_for_FFmpeg|Playlist and concatenation support]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implement_the_New_Seeking_API_in_Libavformat|New seeking API]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implementation_of_AVFilter_infrastructure_and_various_audio_filters|AVFilter audio infrastructure]]&lt;br /&gt;
&lt;br /&gt;
For the current status of all SoC projects up to date, see [[FFmpeg Summer Of Code]].&lt;br /&gt;
&lt;br /&gt;
=== Implement a Windows Video Presentation 2 decoder ===&lt;br /&gt;
* Fourcc: [[WVP2]]&lt;br /&gt;
* Samples: [http://samples.mplayerhq.hu/V-codecs/WVP2/ http://samples.mplayerhq.hu/V-codecs/WVP2/]&lt;br /&gt;
* Suggested qualification task: [[Reverse_Engineering|Reverse engineer]] the frame header parsing or the actual frame data parsing&lt;br /&gt;
&lt;br /&gt;
=== RALF Realaudio Lossless ===&lt;br /&gt;
* RE and implement a decoder for this format&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
* An alternative might be to only port the OpenGL part of libvo into a new glplay. This should be discussed on ffmpeg-devel before submission.&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== CELT Decoder ===&lt;br /&gt;
* Specification:  http://celt-codec.org/docs&lt;br /&gt;
Also see [[CELT]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== SILK decoder and/or encoder ===&lt;br /&gt;
* A specification was published: http://tools.ietf.org/html/draft-vos-silk-01&lt;br /&gt;
&lt;br /&gt;
=== DTS-HD Master Audio decoder ===&lt;br /&gt;
* You should know exactly what you do if you submit an application.&lt;br /&gt;
&lt;br /&gt;
=== ATRAC3plus ===&lt;br /&gt;
* Implement a decoder for [[ATRAC3plus]].&lt;br /&gt;
&lt;br /&gt;
=== MPEG-4 SLS ===&lt;br /&gt;
* FFmpeg has currently no support for [[MPEG-4 SLS]]&lt;br /&gt;
&lt;br /&gt;
=== DirectShow capture ===&lt;br /&gt;
* Implement an indev for DirectShow capture on Windows (and support A/V synchronisation).&lt;br /&gt;
* Qualification: Get [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/106245 GDI] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/105810 waveform] capture integrated into FFmpeg SVN with A/V synchronisation. Both patches are almost finished.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13344</id>
		<title>FFmpeg / Libav Summer Of Code 2011</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13344"/>
		<updated>2011-03-14T16:31:31Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Add Android hw accelerator project&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Many Summer-of-Code projects (in the list below) have specific qualification tasks. These tasks are meant to make you familiar with the code that you will be working with, are at approximately the same difficulty level as the actual Summer-of-Code project itself (just a lot smaller), and often already provide you with a jumpstart into your Summer-of-Code project. We suggest the following order of events:&lt;br /&gt;
* First, select a Summer-of-Code project (either from the list below, but in some cases you may also come up with your own)&lt;br /&gt;
* Second, discuss this project with the person that will mentor it. If a mentor is listed, talk to him on IRC, via email or so. If no mentor is listed, find one by emailing the FFmpeg-soc mailinglist.&lt;br /&gt;
* With your mentor, discuss the most appropriate qualification task for your Summer-of-Code project.&lt;br /&gt;
If no specific qualification task is listed for your project of interest, you can discuss with your mentor to choose a task from the [[Small FFmpeg Tasks|Small Tasks list]] or the [[Interesting Patches|Interesting Patches list]] instead. If your prospective mentor agrees, please send an email to the FFmpeg-soc mailing list to inform that you are working on it (to avoid duplicated work). You can discuss progress on your qualification task and initial review of your finished qualification task on the FFmpeg-soc mailinglist (sometimes the patch will have to go through final review on the main FFmpeg development mailinglist before it can be applied also). The qualification task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
Before posting to the FFmpeg-soc mailinglist, make sure you read and understand [http://www.ffmpeg.org/contact.html our netiquette guidelines], especially avoid top-posting and thread-hijacking (note that if you don't understand one of those terms, make sure to have understood them before writing your first post). Before you send us your patch, read our [http://www.ffmpeg.org/general.html#SEC23 development guidelines] and make sure your patch fulfills all the requirements stated there. You should also familiar with the programs diff, patch and Subversion. You have to learn these basics on your own before you start, we will not teach them to you during the application process.&lt;br /&gt;
&lt;br /&gt;
A completed FFmpeg qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== [[Advanced_Audio_Coding#BSAC_AAC|BSAC AAC]] Decoder ===&lt;br /&gt;
&lt;br /&gt;
* Separate [[AAC]] Huffman decoding and dequantization from the rest of AAC decoder.&lt;br /&gt;
* Write a BSAC AAC decoder.&lt;br /&gt;
* Reuse as much of the existing AAC decoder and libavcodec as possible. &lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:AConverse|Alex Converse]], task claimed by Young Han Lee (qualification task: AAC LTP profile)&lt;br /&gt;
&lt;br /&gt;
=== [[VC-1]] decoder missing features  ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* Add support for chroma/luma scaling, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add support for slice decoding, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add optimizations for x86-32/64 (or ARM), so that HD streams play back faster.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Kostya|Kostya Shishkov]], [[User:Ronald S. Bultje|Ronald S. Bultje]] and (maybe) Christophe Gisquet''&lt;br /&gt;
&lt;br /&gt;
=== [[WTV|Windows Television (WTV)]] muxer ===&lt;br /&gt;
&lt;br /&gt;
* Qualification task: develop a prototype WTV muxer that can produce files then able to be demuxed by FFmpeg.&lt;br /&gt;
* The objective of this project is produce files that are compatible with Microsoft Windows Media Center. To achieve this, one must determine which of the many undocumented data types are expected by Microsoft Stream Buffer Engine, discover their format, and implement these in the muxer.&lt;br /&gt;
* The muxer must support metadata and indexing.&lt;br /&gt;
* Clearly defined task; reverse engineering skills required.&lt;br /&gt;
''Mentor: [[User:Suxen_drol|Peter Ross]]&lt;br /&gt;
&lt;br /&gt;
=== DTS Encoder ===&lt;br /&gt;
* Specification: http://wiki.multimedia.cx/index.php?title=Mirror&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/A-codecs/DTS/&lt;br /&gt;
* Qualification: Extend the encoder in the SoC tree (port the float transform from the decoder, fix the LFE channel generation).&lt;br /&gt;
* Primary goal: Encoder that can produce multi sample rate, multi channel files and multi bit-rate. Wav and raw muxing support.&lt;br /&gt;
* Secondary goal: Techniques from specification implemented, optimal codebook usage, vector quantization, simple psycho acoustics.&lt;br /&gt;
* Third goal: Advanced psycho acoustics.&lt;br /&gt;
&lt;br /&gt;
(Qualification claimed by Xiang Wang)&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Hardware accelerated decoder for Android devices ===&lt;br /&gt;
Most Android phones supports decoding H264 via an OpenMAX decoder interface. This interface is exposed through the Stagefright&lt;br /&gt;
multimedia framework. The flashplugin uses this to be able to have hardware accelerated decode of H264 bitstreams from Android&lt;br /&gt;
user space. As many Android devices will not be upgraded to Android 2.3 or users don't want to root/reflash their firmware this&lt;br /&gt;
will enable a lot of devices to install a libavcodec based media player while still having hardware accelerated H264 decode.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 1st tier proposals of last year ==&lt;br /&gt;
These are the same as above-mentioned 1st tier proposals, but we're not sure yet if we'll repeat them. Once mentors are OK, please move them up.&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task probably is to get libbluray integrated with vlc/mplayer/ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It replaced the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed (this includes: the rotate, split, and fps filters)&lt;br /&gt;
* Port all the missing filters from MPlayer (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
* Framework: implement dynamic-reconfiguration of the filterchain, for supporting dynamic size/format changes&lt;br /&gt;
* Port filters from other frameworks (yuvjpeg, effectv, frei0r, virtualdub, vlc, etc...)&lt;br /&gt;
* Write wrappers for more image processing libraries and filtering frameworks (libgimp, libgraphicsmagic, weed), extend the libopencv wrapper for supporting more filters (this may need implemented float image support in libswscale)&lt;br /&gt;
* Write more filters (possibly starting from already posted filters which for a reason or another were never committed, e.g. concatenate, fish, 2xsai, select, lut, eval, posterize, elbg/posterize etc.)&lt;br /&gt;
* Implement a compose filter (suggestion for a better name?), for creating a mosaic of the input video streams&lt;br /&gt;
* Write a movie sink (e.g. it could be useful for implementing a display functionality, e.g. when the video is dumped to an output device)&lt;br /&gt;
* Write a frequency domain filter using the FFT implementation in libavcodec&lt;br /&gt;
* Write a Matlab/Octave/SAGE scripting wrapper (assuming it can be done)&lt;br /&gt;
* More ideas?&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has incomplete support for handling audio. This task would consist of a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Fix the remaining outstanding issues and complete the audio framework integration (check the saste's audio-filters FFmpeg branch on gitorious)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
* Extend/improve libav* audio resampling/rematrixing/requantization capabilities (this may need to re-design the audio API, maybe it deserves a task on its own)&lt;br /&gt;
* Write/port basic audio filters (check libaf in MPlayer/libmpcodecs)&lt;br /&gt;
* Write wrapper for audio frameworks (sox, ladspa, ...)&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined''&lt;br /&gt;
&lt;br /&gt;
=== Rewrite the audio format conversion code ===&lt;br /&gt;
&lt;br /&gt;
* right now, we're using audioresample to resample audio (samplerate / channels) and audioconvert to resample audio format (int, float, 16-bit, 32-bit). We'd like a new, swscale-style implementation that combines these two in a single codebase&lt;br /&gt;
* design should allow for SIMD optimization of popular conversions (float-int16, int16-float)&lt;br /&gt;
* fix bugs in current design (clipping, overflows when going from float to int, questionable rounding)&lt;br /&gt;
&lt;br /&gt;
''Mentor: to be decided&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== h264 decoder optimizations ===&lt;br /&gt;
* Quite simply, make our decoder faster&lt;br /&gt;
* Qualification task: make our decoder 1% faster&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
=== Add support for Bayer RGB colour format ===&lt;br /&gt;
Since it is not even clear if this should be implemented in libswscale or libavcodec, this should be discussed on ffmpeg-devel or ffmpeg-soc before submitting.&lt;br /&gt;
There was a related discussion on mplayer-devel once and at least two related FFmpeg issues:&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.video.mplayer.devel/48091&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1816&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1837&lt;br /&gt;
* Contact Peter Ross for his latest working patch (Jan-2011)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a lack of mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#TS Muxer|TS muxer]]&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* [[FFmpeg Summer Of Code#Generic frame-level multithreading support|Generic frame-level multithreading support]]&lt;br /&gt;
&lt;br /&gt;
2009:&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Playlist.2FConcatenation_Support_for_FFmpeg|Playlist and concatenation support]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implement_the_New_Seeking_API_in_Libavformat|New seeking API]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implementation_of_AVFilter_infrastructure_and_various_audio_filters|AVFilter audio infrastructure]]&lt;br /&gt;
&lt;br /&gt;
For the current status of all SoC projects up to date, see [[FFmpeg Summer Of Code]].&lt;br /&gt;
&lt;br /&gt;
=== Implement a Windows Video Presentation 2 decoder ===&lt;br /&gt;
* Fourcc: [[WVP2]]&lt;br /&gt;
* Samples: [http://samples.mplayerhq.hu/V-codecs/WVP2/ http://samples.mplayerhq.hu/V-codecs/WVP2/]&lt;br /&gt;
* Suggested qualification task: [[Reverse_Engineering|Reverse engineer]] the frame header parsing or the actual frame data parsing&lt;br /&gt;
&lt;br /&gt;
=== RALF Realaudio Lossless ===&lt;br /&gt;
* RE and implement a decoder for this format&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
* An alternative might be to only port the OpenGL part of libvo into a new glplay. This should be discussed on ffmpeg-devel before submission.&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== CELT Decoder ===&lt;br /&gt;
* Specification:  http://celt-codec.org/docs&lt;br /&gt;
Also see [[CELT]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== SILK decoder and/or encoder ===&lt;br /&gt;
* A specification was published: http://tools.ietf.org/html/draft-vos-silk-01&lt;br /&gt;
&lt;br /&gt;
=== DTS-HD Master Audio decoder ===&lt;br /&gt;
* You should know exactly what you do if you submit an application.&lt;br /&gt;
&lt;br /&gt;
=== ATRAC3plus ===&lt;br /&gt;
* Implement a decoder for [[ATRAC3plus]].&lt;br /&gt;
&lt;br /&gt;
=== MPEG-4 SLS ===&lt;br /&gt;
* FFmpeg has currently no support for [[MPEG-4 SLS]]&lt;br /&gt;
&lt;br /&gt;
=== DirectShow capture ===&lt;br /&gt;
* Implement an indev for DirectShow capture on Windows (and support A/V synchronisation).&lt;br /&gt;
* Qualification: Get [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/106245 GDI] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/105810 waveform] capture integrated into FFmpeg SVN with A/V synchronisation. Both patches are almost finished.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13343</id>
		<title>FFmpeg / Libav Summer Of Code 2011</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13343"/>
		<updated>2011-03-14T14:35:17Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* DTS Encoder (Qualification claimed by Xiang Wang) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Many Summer-of-Code projects (in the list below) have specific qualification tasks. These tasks are meant to make you familiar with the code that you will be working with, are at approximately the same difficulty level as the actual Summer-of-Code project itself (just a lot smaller), and often already provide you with a jumpstart into your Summer-of-Code project. We suggest the following order of events:&lt;br /&gt;
* First, select a Summer-of-Code project (either from the list below, but in some cases you may also come up with your own)&lt;br /&gt;
* Second, discuss this project with the person that will mentor it. If a mentor is listed, talk to him on IRC, via email or so. If no mentor is listed, find one by emailing the FFmpeg-soc mailinglist.&lt;br /&gt;
* With your mentor, discuss the most appropriate qualification task for your Summer-of-Code project.&lt;br /&gt;
If no specific qualification task is listed for your project of interest, you can discuss with your mentor to choose a task from the [[Small FFmpeg Tasks|Small Tasks list]] or the [[Interesting Patches|Interesting Patches list]] instead. If your prospective mentor agrees, please send an email to the FFmpeg-soc mailing list to inform that you are working on it (to avoid duplicated work). You can discuss progress on your qualification task and initial review of your finished qualification task on the FFmpeg-soc mailinglist (sometimes the patch will have to go through final review on the main FFmpeg development mailinglist before it can be applied also). The qualification task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
Before posting to the FFmpeg-soc mailinglist, make sure you read and understand [http://www.ffmpeg.org/contact.html our netiquette guidelines], especially avoid top-posting and thread-hijacking (note that if you don't understand one of those terms, make sure to have understood them before writing your first post). Before you send us your patch, read our [http://www.ffmpeg.org/general.html#SEC23 development guidelines] and make sure your patch fulfills all the requirements stated there. You should also familiar with the programs diff, patch and Subversion. You have to learn these basics on your own before you start, we will not teach them to you during the application process.&lt;br /&gt;
&lt;br /&gt;
A completed FFmpeg qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== [[Advanced_Audio_Coding#BSAC_AAC|BSAC AAC]] Decoder ===&lt;br /&gt;
&lt;br /&gt;
* Separate [[AAC]] Huffman decoding and dequantization from the rest of AAC decoder.&lt;br /&gt;
* Write a BSAC AAC decoder.&lt;br /&gt;
* Reuse as much of the existing AAC decoder and libavcodec as possible. &lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:AConverse|Alex Converse]], task claimed by Young Han Lee (qualification task: AAC LTP profile)&lt;br /&gt;
&lt;br /&gt;
=== [[VC-1]] decoder missing features  ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* Add support for chroma/luma scaling, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add support for slice decoding, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add optimizations for x86-32/64 (or ARM), so that HD streams play back faster.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Kostya|Kostya Shishkov]], [[User:Ronald S. Bultje|Ronald S. Bultje]] and (maybe) Christophe Gisquet''&lt;br /&gt;
&lt;br /&gt;
=== [[WTV|Windows Television (WTV)]] muxer ===&lt;br /&gt;
&lt;br /&gt;
* Qualification task: develop a prototype WTV muxer that can produce files then able to be demuxed by FFmpeg.&lt;br /&gt;
* The objective of this project is produce files that are compatible with Microsoft Windows Media Center. To achieve this, one must determine which of the many undocumented data types are expected by Microsoft Stream Buffer Engine, discover their format, and implement these in the muxer.&lt;br /&gt;
* The muxer must support metadata and indexing.&lt;br /&gt;
* Clearly defined task; reverse engineering skills required.&lt;br /&gt;
''Mentor: [[User:Suxen_drol|Peter Ross]]&lt;br /&gt;
&lt;br /&gt;
=== DTS Encoder ===&lt;br /&gt;
* Specification: http://wiki.multimedia.cx/index.php?title=Mirror&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/A-codecs/DTS/&lt;br /&gt;
* Qualification: Extend the encoder in the SoC tree (port the float transform from the decoder, fix the LFE channel generation).&lt;br /&gt;
* Primary goal: Encoder that can produce multi sample rate, multi channel files and multi bit-rate. Wav and raw muxing support.&lt;br /&gt;
* Secondary goal: Techniques from specification implemented, optimal codebook usage, vector quantization, simple psycho acoustics.&lt;br /&gt;
* Third goal: Advanced psycho acoustics.&lt;br /&gt;
&lt;br /&gt;
(Qualification claimed by Xiang Wang)&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 1st tier proposals of last year ==&lt;br /&gt;
These are the same as above-mentioned 1st tier proposals, but we're not sure yet if we'll repeat them. Once mentors are OK, please move them up.&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task probably is to get libbluray integrated with vlc/mplayer/ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It replaced the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed (this includes: the rotate, split, and fps filters)&lt;br /&gt;
* Port all the missing filters from MPlayer (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
* Framework: implement dynamic-reconfiguration of the filterchain, for supporting dynamic size/format changes&lt;br /&gt;
* Port filters from other frameworks (yuvjpeg, effectv, frei0r, virtualdub, vlc, etc...)&lt;br /&gt;
* Write wrappers for more image processing libraries and filtering frameworks (libgimp, libgraphicsmagic, weed), extend the libopencv wrapper for supporting more filters (this may need implemented float image support in libswscale)&lt;br /&gt;
* Write more filters (possibly starting from already posted filters which for a reason or another were never committed, e.g. concatenate, fish, 2xsai, select, lut, eval, posterize, elbg/posterize etc.)&lt;br /&gt;
* Implement a compose filter (suggestion for a better name?), for creating a mosaic of the input video streams&lt;br /&gt;
* Write a movie sink (e.g. it could be useful for implementing a display functionality, e.g. when the video is dumped to an output device)&lt;br /&gt;
* Write a frequency domain filter using the FFT implementation in libavcodec&lt;br /&gt;
* Write a Matlab/Octave/SAGE scripting wrapper (assuming it can be done)&lt;br /&gt;
* More ideas?&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has incomplete support for handling audio. This task would consist of a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Fix the remaining outstanding issues and complete the audio framework integration (check the saste's audio-filters FFmpeg branch on gitorious)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
* Extend/improve libav* audio resampling/rematrixing/requantization capabilities (this may need to re-design the audio API, maybe it deserves a task on its own)&lt;br /&gt;
* Write/port basic audio filters (check libaf in MPlayer/libmpcodecs)&lt;br /&gt;
* Write wrapper for audio frameworks (sox, ladspa, ...)&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined''&lt;br /&gt;
&lt;br /&gt;
=== Rewrite the audio format conversion code ===&lt;br /&gt;
&lt;br /&gt;
* right now, we're using audioresample to resample audio (samplerate / channels) and audioconvert to resample audio format (int, float, 16-bit, 32-bit). We'd like a new, swscale-style implementation that combines these two in a single codebase&lt;br /&gt;
* design should allow for SIMD optimization of popular conversions (float-int16, int16-float)&lt;br /&gt;
* fix bugs in current design (clipping, overflows when going from float to int, questionable rounding)&lt;br /&gt;
&lt;br /&gt;
''Mentor: to be decided&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== h264 decoder optimizations ===&lt;br /&gt;
* Quite simply, make our decoder faster&lt;br /&gt;
* Qualification task: make our decoder 1% faster&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
=== Add support for Bayer RGB colour format ===&lt;br /&gt;
Since it is not even clear if this should be implemented in libswscale or libavcodec, this should be discussed on ffmpeg-devel or ffmpeg-soc before submitting.&lt;br /&gt;
There was a related discussion on mplayer-devel once and at least two related FFmpeg issues:&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.video.mplayer.devel/48091&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1816&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1837&lt;br /&gt;
* Contact Peter Ross for his latest working patch (Jan-2011)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a lack of mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#TS Muxer|TS muxer]]&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* [[FFmpeg Summer Of Code#Generic frame-level multithreading support|Generic frame-level multithreading support]]&lt;br /&gt;
&lt;br /&gt;
2009:&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Playlist.2FConcatenation_Support_for_FFmpeg|Playlist and concatenation support]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implement_the_New_Seeking_API_in_Libavformat|New seeking API]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implementation_of_AVFilter_infrastructure_and_various_audio_filters|AVFilter audio infrastructure]]&lt;br /&gt;
&lt;br /&gt;
For the current status of all SoC projects up to date, see [[FFmpeg Summer Of Code]].&lt;br /&gt;
&lt;br /&gt;
=== Implement a Windows Video Presentation 2 decoder ===&lt;br /&gt;
* Fourcc: [[WVP2]]&lt;br /&gt;
* Samples: [http://samples.mplayerhq.hu/V-codecs/WVP2/ http://samples.mplayerhq.hu/V-codecs/WVP2/]&lt;br /&gt;
* Suggested qualification task: [[Reverse_Engineering|Reverse engineer]] the frame header parsing or the actual frame data parsing&lt;br /&gt;
&lt;br /&gt;
=== RALF Realaudio Lossless ===&lt;br /&gt;
* RE and implement a decoder for this format&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
* An alternative might be to only port the OpenGL part of libvo into a new glplay. This should be discussed on ffmpeg-devel before submission.&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== CELT Decoder ===&lt;br /&gt;
* Specification:  http://celt-codec.org/docs&lt;br /&gt;
Also see [[CELT]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== SILK decoder and/or encoder ===&lt;br /&gt;
* A specification was published: http://tools.ietf.org/html/draft-vos-silk-01&lt;br /&gt;
&lt;br /&gt;
=== DTS-HD Master Audio decoder ===&lt;br /&gt;
* You should know exactly what you do if you submit an application.&lt;br /&gt;
&lt;br /&gt;
=== ATRAC3plus ===&lt;br /&gt;
* Implement a decoder for [[ATRAC3plus]].&lt;br /&gt;
&lt;br /&gt;
=== MPEG-4 SLS ===&lt;br /&gt;
* FFmpeg has currently no support for [[MPEG-4 SLS]]&lt;br /&gt;
&lt;br /&gt;
=== DirectShow capture ===&lt;br /&gt;
* Implement an indev for DirectShow capture on Windows (and support A/V synchronisation).&lt;br /&gt;
* Qualification: Get [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/106245 GDI] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/105810 waveform] capture integrated into FFmpeg SVN with A/V synchronisation. Both patches are almost finished.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13342</id>
		<title>FFmpeg / Libav Summer Of Code 2011</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13342"/>
		<updated>2011-03-14T14:34:33Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Move up DTS encoder to 1st Tier Project&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Many Summer-of-Code projects (in the list below) have specific qualification tasks. These tasks are meant to make you familiar with the code that you will be working with, are at approximately the same difficulty level as the actual Summer-of-Code project itself (just a lot smaller), and often already provide you with a jumpstart into your Summer-of-Code project. We suggest the following order of events:&lt;br /&gt;
* First, select a Summer-of-Code project (either from the list below, but in some cases you may also come up with your own)&lt;br /&gt;
* Second, discuss this project with the person that will mentor it. If a mentor is listed, talk to him on IRC, via email or so. If no mentor is listed, find one by emailing the FFmpeg-soc mailinglist.&lt;br /&gt;
* With your mentor, discuss the most appropriate qualification task for your Summer-of-Code project.&lt;br /&gt;
If no specific qualification task is listed for your project of interest, you can discuss with your mentor to choose a task from the [[Small FFmpeg Tasks|Small Tasks list]] or the [[Interesting Patches|Interesting Patches list]] instead. If your prospective mentor agrees, please send an email to the FFmpeg-soc mailing list to inform that you are working on it (to avoid duplicated work). You can discuss progress on your qualification task and initial review of your finished qualification task on the FFmpeg-soc mailinglist (sometimes the patch will have to go through final review on the main FFmpeg development mailinglist before it can be applied also). The qualification task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
Before posting to the FFmpeg-soc mailinglist, make sure you read and understand [http://www.ffmpeg.org/contact.html our netiquette guidelines], especially avoid top-posting and thread-hijacking (note that if you don't understand one of those terms, make sure to have understood them before writing your first post). Before you send us your patch, read our [http://www.ffmpeg.org/general.html#SEC23 development guidelines] and make sure your patch fulfills all the requirements stated there. You should also familiar with the programs diff, patch and Subversion. You have to learn these basics on your own before you start, we will not teach them to you during the application process.&lt;br /&gt;
&lt;br /&gt;
A completed FFmpeg qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== [[Advanced_Audio_Coding#BSAC_AAC|BSAC AAC]] Decoder ===&lt;br /&gt;
&lt;br /&gt;
* Separate [[AAC]] Huffman decoding and dequantization from the rest of AAC decoder.&lt;br /&gt;
* Write a BSAC AAC decoder.&lt;br /&gt;
* Reuse as much of the existing AAC decoder and libavcodec as possible. &lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:AConverse|Alex Converse]], task claimed by Young Han Lee (qualification task: AAC LTP profile)&lt;br /&gt;
&lt;br /&gt;
=== [[VC-1]] decoder missing features  ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* Add support for chroma/luma scaling, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add support for slice decoding, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add optimizations for x86-32/64 (or ARM), so that HD streams play back faster.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Kostya|Kostya Shishkov]], [[User:Ronald S. Bultje|Ronald S. Bultje]] and (maybe) Christophe Gisquet''&lt;br /&gt;
&lt;br /&gt;
=== [[WTV|Windows Television (WTV)]] muxer ===&lt;br /&gt;
&lt;br /&gt;
* Qualification task: develop a prototype WTV muxer that can produce files then able to be demuxed by FFmpeg.&lt;br /&gt;
* The objective of this project is produce files that are compatible with Microsoft Windows Media Center. To achieve this, one must determine which of the many undocumented data types are expected by Microsoft Stream Buffer Engine, discover their format, and implement these in the muxer.&lt;br /&gt;
* The muxer must support metadata and indexing.&lt;br /&gt;
* Clearly defined task; reverse engineering skills required.&lt;br /&gt;
''Mentor: [[User:Suxen_drol|Peter Ross]]&lt;br /&gt;
&lt;br /&gt;
=== DTS Encoder (Qualification claimed by Xiang Wang) ===&lt;br /&gt;
* Specification: http://wiki.multimedia.cx/index.php?title=Mirror&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/A-codecs/DTS/&lt;br /&gt;
* Qualification: Extend the encoder in the SoC tree (port the float transform from the decoder, fix the LFE channel generation).&lt;br /&gt;
* Primary goal: Encoder that can produce multi sample rate, multi channel files and multi bit-rate. Wav and raw muxing support.&lt;br /&gt;
* Secondary goal: Techniques from specification implemented, optimal codebook usage, vector quantization, simple psycho acoustics.&lt;br /&gt;
* Third goal: Advanced psycho acoustics.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 1st tier proposals of last year ==&lt;br /&gt;
These are the same as above-mentioned 1st tier proposals, but we're not sure yet if we'll repeat them. Once mentors are OK, please move them up.&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task probably is to get libbluray integrated with vlc/mplayer/ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It replaced the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed (this includes: the rotate, split, and fps filters)&lt;br /&gt;
* Port all the missing filters from MPlayer (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
* Framework: implement dynamic-reconfiguration of the filterchain, for supporting dynamic size/format changes&lt;br /&gt;
* Port filters from other frameworks (yuvjpeg, effectv, frei0r, virtualdub, vlc, etc...)&lt;br /&gt;
* Write wrappers for more image processing libraries and filtering frameworks (libgimp, libgraphicsmagic, weed), extend the libopencv wrapper for supporting more filters (this may need implemented float image support in libswscale)&lt;br /&gt;
* Write more filters (possibly starting from already posted filters which for a reason or another were never committed, e.g. concatenate, fish, 2xsai, select, lut, eval, posterize, elbg/posterize etc.)&lt;br /&gt;
* Implement a compose filter (suggestion for a better name?), for creating a mosaic of the input video streams&lt;br /&gt;
* Write a movie sink (e.g. it could be useful for implementing a display functionality, e.g. when the video is dumped to an output device)&lt;br /&gt;
* Write a frequency domain filter using the FFT implementation in libavcodec&lt;br /&gt;
* Write a Matlab/Octave/SAGE scripting wrapper (assuming it can be done)&lt;br /&gt;
* More ideas?&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has incomplete support for handling audio. This task would consist of a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Fix the remaining outstanding issues and complete the audio framework integration (check the saste's audio-filters FFmpeg branch on gitorious)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
* Extend/improve libav* audio resampling/rematrixing/requantization capabilities (this may need to re-design the audio API, maybe it deserves a task on its own)&lt;br /&gt;
* Write/port basic audio filters (check libaf in MPlayer/libmpcodecs)&lt;br /&gt;
* Write wrapper for audio frameworks (sox, ladspa, ...)&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined''&lt;br /&gt;
&lt;br /&gt;
=== Rewrite the audio format conversion code ===&lt;br /&gt;
&lt;br /&gt;
* right now, we're using audioresample to resample audio (samplerate / channels) and audioconvert to resample audio format (int, float, 16-bit, 32-bit). We'd like a new, swscale-style implementation that combines these two in a single codebase&lt;br /&gt;
* design should allow for SIMD optimization of popular conversions (float-int16, int16-float)&lt;br /&gt;
* fix bugs in current design (clipping, overflows when going from float to int, questionable rounding)&lt;br /&gt;
&lt;br /&gt;
''Mentor: to be decided&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== h264 decoder optimizations ===&lt;br /&gt;
* Quite simply, make our decoder faster&lt;br /&gt;
* Qualification task: make our decoder 1% faster&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
=== Add support for Bayer RGB colour format ===&lt;br /&gt;
Since it is not even clear if this should be implemented in libswscale or libavcodec, this should be discussed on ffmpeg-devel or ffmpeg-soc before submitting.&lt;br /&gt;
There was a related discussion on mplayer-devel once and at least two related FFmpeg issues:&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.video.mplayer.devel/48091&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1816&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1837&lt;br /&gt;
* Contact Peter Ross for his latest working patch (Jan-2011)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a lack of mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#TS Muxer|TS muxer]]&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* [[FFmpeg Summer Of Code#Generic frame-level multithreading support|Generic frame-level multithreading support]]&lt;br /&gt;
&lt;br /&gt;
2009:&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Playlist.2FConcatenation_Support_for_FFmpeg|Playlist and concatenation support]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implement_the_New_Seeking_API_in_Libavformat|New seeking API]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implementation_of_AVFilter_infrastructure_and_various_audio_filters|AVFilter audio infrastructure]]&lt;br /&gt;
&lt;br /&gt;
For the current status of all SoC projects up to date, see [[FFmpeg Summer Of Code]].&lt;br /&gt;
&lt;br /&gt;
=== Implement a Windows Video Presentation 2 decoder ===&lt;br /&gt;
* Fourcc: [[WVP2]]&lt;br /&gt;
* Samples: [http://samples.mplayerhq.hu/V-codecs/WVP2/ http://samples.mplayerhq.hu/V-codecs/WVP2/]&lt;br /&gt;
* Suggested qualification task: [[Reverse_Engineering|Reverse engineer]] the frame header parsing or the actual frame data parsing&lt;br /&gt;
&lt;br /&gt;
=== RALF Realaudio Lossless ===&lt;br /&gt;
* RE and implement a decoder for this format&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
* An alternative might be to only port the OpenGL part of libvo into a new glplay. This should be discussed on ffmpeg-devel before submission.&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== CELT Decoder ===&lt;br /&gt;
* Specification:  http://celt-codec.org/docs&lt;br /&gt;
Also see [[CELT]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== SILK decoder and/or encoder ===&lt;br /&gt;
* A specification was published: http://tools.ietf.org/html/draft-vos-silk-01&lt;br /&gt;
&lt;br /&gt;
=== DTS-HD Master Audio decoder ===&lt;br /&gt;
* You should know exactly what you do if you submit an application.&lt;br /&gt;
&lt;br /&gt;
=== ATRAC3plus ===&lt;br /&gt;
* Implement a decoder for [[ATRAC3plus]].&lt;br /&gt;
&lt;br /&gt;
=== MPEG-4 SLS ===&lt;br /&gt;
* FFmpeg has currently no support for [[MPEG-4 SLS]]&lt;br /&gt;
&lt;br /&gt;
=== DirectShow capture ===&lt;br /&gt;
* Implement an indev for DirectShow capture on Windows (and support A/V synchronisation).&lt;br /&gt;
* Qualification: Get [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/106245 GDI] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/105810 waveform] capture integrated into FFmpeg SVN with A/V synchronisation. Both patches are almost finished.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13341</id>
		<title>FFmpeg / Libav Summer Of Code 2011</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code_2011&amp;diff=13341"/>
		<updated>2011-03-14T14:33:09Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Minor updates&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Many Summer-of-Code projects (in the list below) have specific qualification tasks. These tasks are meant to make you familiar with the code that you will be working with, are at approximately the same difficulty level as the actual Summer-of-Code project itself (just a lot smaller), and often already provide you with a jumpstart into your Summer-of-Code project. We suggest the following order of events:&lt;br /&gt;
* First, select a Summer-of-Code project (either from the list below, but in some cases you may also come up with your own)&lt;br /&gt;
* Second, discuss this project with the person that will mentor it. If a mentor is listed, talk to him on IRC, via email or so. If no mentor is listed, find one by emailing the FFmpeg-soc mailinglist.&lt;br /&gt;
* With your mentor, discuss the most appropriate qualification task for your Summer-of-Code project.&lt;br /&gt;
If no specific qualification task is listed for your project of interest, you can discuss with your mentor to choose a task from the [[Small FFmpeg Tasks|Small Tasks list]] or the [[Interesting Patches|Interesting Patches list]] instead. If your prospective mentor agrees, please send an email to the FFmpeg-soc mailing list to inform that you are working on it (to avoid duplicated work). You can discuss progress on your qualification task and initial review of your finished qualification task on the FFmpeg-soc mailinglist (sometimes the patch will have to go through final review on the main FFmpeg development mailinglist before it can be applied also). The qualification task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
Before posting to the FFmpeg-soc mailinglist, make sure you read and understand [http://www.ffmpeg.org/contact.html our netiquette guidelines], especially avoid top-posting and thread-hijacking (note that if you don't understand one of those terms, make sure to have understood them before writing your first post). Before you send us your patch, read our [http://www.ffmpeg.org/general.html#SEC23 development guidelines] and make sure your patch fulfills all the requirements stated there. You should also familiar with the programs diff, patch and Subversion. You have to learn these basics on your own before you start, we will not teach them to you during the application process.&lt;br /&gt;
&lt;br /&gt;
A completed FFmpeg qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== [[Advanced_Audio_Coding#BSAC_AAC|BSAC AAC]] Decoder ===&lt;br /&gt;
&lt;br /&gt;
* Separate [[AAC]] Huffman decoding and dequantization from the rest of AAC decoder.&lt;br /&gt;
* Write a BSAC AAC decoder.&lt;br /&gt;
* Reuse as much of the existing AAC decoder and libavcodec as possible. &lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:AConverse|Alex Converse]], task claimed by Young Han Lee (qualification task: AAC LTP profile)&lt;br /&gt;
&lt;br /&gt;
=== [[VC-1]] decoder missing features  ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* Add support for chroma/luma scaling, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add support for slice decoding, used in [https://roundup.ffmpeg.org/issue1477 RTP/VC1].&lt;br /&gt;
* Add optimizations for x86-32/64 (or ARM), so that HD streams play back faster.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:Kostya|Kostya Shishkov]], [[User:Ronald S. Bultje|Ronald S. Bultje]] and (maybe) Christophe Gisquet''&lt;br /&gt;
&lt;br /&gt;
=== [[WTV|Windows Television (WTV)]] muxer ===&lt;br /&gt;
&lt;br /&gt;
* Qualification task: develop a prototype WTV muxer that can produce files then able to be demuxed by FFmpeg.&lt;br /&gt;
* The objective of this project is produce files that are compatible with Microsoft Windows Media Center. To achieve this, one must determine which of the many undocumented data types are expected by Microsoft Stream Buffer Engine, discover their format, and implement these in the muxer.&lt;br /&gt;
* The muxer must support metadata and indexing.&lt;br /&gt;
* Clearly defined task; reverse engineering skills required.&lt;br /&gt;
''Mentor: [[User:Suxen_drol|Peter Ross]]&lt;br /&gt;
&lt;br /&gt;
== 1st tier proposals of last year ==&lt;br /&gt;
These are the same as above-mentioned 1st tier proposals, but we're not sure yet if we'll repeat them. Once mentors are OK, please move them up.&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task probably is to get libbluray integrated with vlc/mplayer/ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It replaced the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed (this includes: the rotate, split, and fps filters)&lt;br /&gt;
* Port all the missing filters from MPlayer (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
* Framework: implement dynamic-reconfiguration of the filterchain, for supporting dynamic size/format changes&lt;br /&gt;
* Port filters from other frameworks (yuvjpeg, effectv, frei0r, virtualdub, vlc, etc...)&lt;br /&gt;
* Write wrappers for more image processing libraries and filtering frameworks (libgimp, libgraphicsmagic, weed), extend the libopencv wrapper for supporting more filters (this may need implemented float image support in libswscale)&lt;br /&gt;
* Write more filters (possibly starting from already posted filters which for a reason or another were never committed, e.g. concatenate, fish, 2xsai, select, lut, eval, posterize, elbg/posterize etc.)&lt;br /&gt;
* Implement a compose filter (suggestion for a better name?), for creating a mosaic of the input video streams&lt;br /&gt;
* Write a movie sink (e.g. it could be useful for implementing a display functionality, e.g. when the video is dumped to an output device)&lt;br /&gt;
* Write a frequency domain filter using the FFT implementation in libavcodec&lt;br /&gt;
* Write a Matlab/Octave/SAGE scripting wrapper (assuming it can be done)&lt;br /&gt;
* More ideas?&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has incomplete support for handling audio. This task would consist of a combination of the following tasks:&lt;br /&gt;
&lt;br /&gt;
* Fix the remaining outstanding issues and complete the audio framework integration (check the saste's audio-filters FFmpeg branch on gitorious)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
* Extend/improve libav* audio resampling/rematrixing/requantization capabilities (this may need to re-design the audio API, maybe it deserves a task on its own)&lt;br /&gt;
* Write/port basic audio filters (check libaf in MPlayer/libmpcodecs)&lt;br /&gt;
* Write wrapper for audio frameworks (sox, ladspa, ...)&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined''&lt;br /&gt;
&lt;br /&gt;
=== Rewrite the audio format conversion code ===&lt;br /&gt;
&lt;br /&gt;
* right now, we're using audioresample to resample audio (samplerate / channels) and audioconvert to resample audio format (int, float, 16-bit, 32-bit). We'd like a new, swscale-style implementation that combines these two in a single codebase&lt;br /&gt;
* design should allow for SIMD optimization of popular conversions (float-int16, int16-float)&lt;br /&gt;
* fix bugs in current design (clipping, overflows when going from float to int, questionable rounding)&lt;br /&gt;
&lt;br /&gt;
''Mentor: to be decided&lt;br /&gt;
&lt;br /&gt;
=== DTS Encoder (Qualification claimed by Xiang Wang) ===&lt;br /&gt;
* Specification: http://wiki.multimedia.cx/index.php?title=Mirror&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/A-codecs/DTS/&lt;br /&gt;
* Qualification: Extend the encoder in the SoC tree (port the float transform from the decoder, fix the LFE channel generation).&lt;br /&gt;
* Primary goal: Encoder that can produce multi sample rate, multi channel files and multi bit-rate. Wav and raw muxing support. SVN merge.&lt;br /&gt;
* Secondary goal: Techniques from specification implemented, optimal codebook usage, vector quantization, simple psycho acoustics.&lt;br /&gt;
* Third goal: Advanced psycho acoustics.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== h264 decoder optimizations ===&lt;br /&gt;
* Quite simply, make our decoder faster&lt;br /&gt;
* Qualification task: make our decoder 1% faster&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
=== Add support for Bayer RGB colour format ===&lt;br /&gt;
Since it is not even clear if this should be implemented in libswscale or libavcodec, this should be discussed on ffmpeg-devel or ffmpeg-soc before submitting.&lt;br /&gt;
There was a related discussion on mplayer-devel once and at least two related FFmpeg issues:&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.video.mplayer.devel/48091&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1816&lt;br /&gt;
* http://roundup.ffmpeg.org/issue1837&lt;br /&gt;
* Contact Peter Ross for his latest working patch (Jan-2011)&lt;br /&gt;
&lt;br /&gt;
''Mentor: Michael Niedermayer''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a lack of mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#TS Muxer|TS muxer]]&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* [[FFmpeg Summer Of Code#Generic frame-level multithreading support|Generic frame-level multithreading support]]&lt;br /&gt;
&lt;br /&gt;
2009:&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Playlist.2FConcatenation_Support_for_FFmpeg|Playlist and concatenation support]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implement_the_New_Seeking_API_in_Libavformat|New seeking API]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implementation_of_AVFilter_infrastructure_and_various_audio_filters|AVFilter audio infrastructure]]&lt;br /&gt;
&lt;br /&gt;
For the current status of all SoC projects up to date, see [[FFmpeg Summer Of Code]].&lt;br /&gt;
&lt;br /&gt;
=== Implement a Windows Video Presentation 2 decoder ===&lt;br /&gt;
* Fourcc: [[WVP2]]&lt;br /&gt;
* Samples: [http://samples.mplayerhq.hu/V-codecs/WVP2/ http://samples.mplayerhq.hu/V-codecs/WVP2/]&lt;br /&gt;
* Suggested qualification task: [[Reverse_Engineering|Reverse engineer]] the frame header parsing or the actual frame data parsing&lt;br /&gt;
&lt;br /&gt;
=== RALF Realaudio Lossless ===&lt;br /&gt;
* RE and implement a decoder for this format&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
* An alternative might be to only port the OpenGL part of libvo into a new glplay. This should be discussed on ffmpeg-devel before submission.&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== CELT Decoder ===&lt;br /&gt;
* Specification:  http://celt-codec.org/docs&lt;br /&gt;
Also see [[CELT]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== SILK decoder and/or encoder ===&lt;br /&gt;
* A specification was published: http://tools.ietf.org/html/draft-vos-silk-01&lt;br /&gt;
&lt;br /&gt;
=== DTS-HD Master Audio decoder ===&lt;br /&gt;
* You should know exactly what you do if you submit an application.&lt;br /&gt;
&lt;br /&gt;
=== ATRAC3plus ===&lt;br /&gt;
* Implement a decoder for [[ATRAC3plus]].&lt;br /&gt;
&lt;br /&gt;
=== MPEG-4 SLS ===&lt;br /&gt;
* FFmpeg has currently no support for [[MPEG-4 SLS]]&lt;br /&gt;
&lt;br /&gt;
=== DirectShow capture ===&lt;br /&gt;
* Implement an indev for DirectShow capture on Windows (and support A/V synchronisation).&lt;br /&gt;
* Qualification: Get [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/106245 GDI] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/105810 waveform] capture integrated into FFmpeg SVN with A/V synchronisation. Both patches are almost finished.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Code-In_2010&amp;diff=13096</id>
		<title>FFmpeg Code-In 2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Code-In_2010&amp;diff=13096"/>
		<updated>2010-10-30T02:31:19Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* Developer documentation and tutorial videos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Initial draft page&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Coding Proposals ==&lt;br /&gt;
FFmpeg has always been all about code and code quality, we have plenty of [[Interesting Patches]] waiting to be cleaned and committed and lots of [[Small FFmpeg Tasks]] waiting for someone willing to pick them up.&lt;br /&gt;
Also dont forget to read our coding rules and our patch checklist. All patches submitted must conform to them.&lt;br /&gt;
&lt;br /&gt;
=== CDXL decoder ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' CDXL is a simple Amiga-style video codec. Codec documentation [http://wiki.multimedia.cx/index.php?title=CDXL here], issue tracker entry [http://roundup.ffmpeg.org/roundup/ffmpeg/issue1012 here]. See small task description: [[Small_FFmpeg_Tasks#CDXL_decoder]]. Any video codec is a little bit complex. However, compared to any other video codec (e.g. [[H264]]), this one is an incredibly easy video codec, so this should be a fun task.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' a video decoder that can decode samples from [ftp://ffmpeg.org/MPlayer/samples/game-formats/cdxl/ here]. The patch should pass review on ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' hard&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' up to a week&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu (for starter questions) and ffmpeg-devel@mplayerhq.hu (for code review)&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' [http://wiki.multimedia.cx/index.php?title=User:Ronald_S._Bultje Ronald S. Bultje] (IRC nick: BBB)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Metal Gear Solid VP3 demuxer ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Metal Gear Solid 3 is a GameCube game, media files can be extracted to view video content. Codec documentation [http://wiki.multimedia.cx/index.php?title=Metal_Gear_Solid_VP3 here]. See small task description: [[Small_FFmpeg_Tasks#Metal_Gear_Solid_Video_format_demuxer]]&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' a video demuxer so we can (using FFmpeg's built-in VP3 decoder) play samples from [http://samples.mplayerhq.hu/game-formats/mgs1-vp3/ here].  The patch should pass review on ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' medium&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' 2-3 days&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu (for starter questions) and ffmpeg-devel@mplayerhq.hu (for code review)&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' [http://wiki.multimedia.cx/index.php?title=User:Ronald_S._Bultje Ronald S. Bultje] (IRC nick: BBB)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings1 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 1-10 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings2 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 11-20 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings3 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 21-30 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings4 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 31-40 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings5 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 41-50 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings6 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 51-60 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings7 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 61-70 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings8 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 71-80 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings9 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 81-90 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings10 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 91-100 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings11 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 101-110 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings12 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 111-120 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings13 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 121-130 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings14 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 131-140 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings15 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 141-150 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings16 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 151-160 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings17 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 161-170 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings18 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 171-180 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings19 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 181-190 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings20 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 191-200 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings21 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 201-210 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings22 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 211-220 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings23 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 221-230 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings24 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 231-240 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings25 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 241-250 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings26 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 251-260 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings27 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 261-270 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings28 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 271-280 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings29 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 281-290 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings30 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 291-300 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fix 10 compiler warnings31 ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Fix compiler warnings 300-306 from [http://www1.mplayerhq.hu/~michael/ffmpeg_warning_list1.txt]. Note the code must not become less readable nor slower.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a patch to ffmpeg-dev that passes review&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' Depends on your C skillz&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-devel@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Michael&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code samples ==&lt;br /&gt;
In between Documentation and coding. Sample code in FFmpeg is in a quite sorry state.&lt;br /&gt;
Writing better and more various example should improve people understanding of the library.&lt;br /&gt;
&lt;br /&gt;
== Developer documentation and tutorial videos ==&lt;br /&gt;
Create some tutorial videos to get a quick start with developing FFmpeg.&lt;br /&gt;
&lt;br /&gt;
'''Area:''' Developer documentation&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' medium&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' 2-3 days&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' Benjamin Larsson (IRC nick: merbanan alt merbzt)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Create a video of how to use Eclipse with FFmpeg&lt;br /&gt;
* Create a video of how to use KDevelop with FFMpeg&lt;br /&gt;
* Create a video of how to add a decoder&lt;br /&gt;
* Create a video of how to add a demuxer&lt;br /&gt;
* Create a video of how to fix a segfault&lt;br /&gt;
&lt;br /&gt;
== Documentation and Outreach ==&lt;br /&gt;
&lt;br /&gt;
FFmpeg needs better documentation and is next to unknown to the general public. This section should hold proposals on how to improve the overall perception and experience of non coding users.&lt;br /&gt;
&lt;br /&gt;
=== FFmpeg video tutorials ===&lt;br /&gt;
Prepare a set of video tutorials on how to encode targeting different devices.&lt;br /&gt;
* How to encode for your iPod&lt;br /&gt;
* How to encode for your Android device&lt;br /&gt;
* How to encode to archive your footage for further editing&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
== FTP Incoming cleanup ==&lt;br /&gt;
We have a incoming directory on FTP where users upload small bits of files that ffmpeg fails with in some way. This directory has over the years become filled with all kinds of things noone knows what they are or why they are there. The tasks below each contain about 50 files that you should figure out where they belong to (that involves searching for matching .txt files on ftp, searching with google, searching IRC logs, searching mailing list archives).&lt;br /&gt;
&lt;br /&gt;
=== Incoming1 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters a,c and K belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming2 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters A,b and 1 belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming3 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters h,C and P belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming4 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters f,D and 8 belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming5 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters d,e,l and B belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming6 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters m and k belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming7 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters s,r and W belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming8 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters I,t,T,u,U,v,V,w,x and z belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming9 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters M,n,N,o,p,j,q,R and S belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Incoming10 ===&lt;br /&gt;
'''Area:''' Q&amp;amp;A&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Cleanup about 50 files in FTP incoming&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Post a list to our mailinglist that says exactly where each of the files starting with letters y,[,0,2,3,4,E,F,g,G,H,i and L belong to. (links to mailinglist or bugtracker or irclog + date), also once this list is approved you will have to post replies to the bugtracker or mailinglist each to say where each file was moved to&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few hours&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined, hopefully attila&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Research ==&lt;br /&gt;
&lt;br /&gt;
=== Forks ===&lt;br /&gt;
'''Area:''' Research&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Making a list of all ffmpeg forks and lists of the differences in claimed features, this is usefull for us to keep track of things and usefull when someone has time to merge things back.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' List on the multimedia wiki all ffmpeg forks, the urls of their source code repo, feature lists, upon which ffmpeg version each fork is based, homepage url of fork, any links to patches, mailinglist discussions about merging changes back you can find&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few days&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' To be determined&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Automated Testing ==&lt;br /&gt;
'''Area:''' Automated Testing&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' FFmpeg uses an extensive, custom framework for automated testing. However, it does not yet cover all of FFmpeg's functionality.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' Use code coverage tools to identify which parts of the codebase are not yet covered by the automated testing system and write tests to cover those missing parts.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' easy&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' a few days&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' [[User:Multimedia Mike|Mike Melanson]]&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Code-In_2010&amp;diff=13076</id>
		<title>FFmpeg Code-In 2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Code-In_2010&amp;diff=13076"/>
		<updated>2010-10-29T09:13:03Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: add tutorial idea&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Initial draft page&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Coding Proposals ==&lt;br /&gt;
FFmpeg has always been all about code and code quality, we have plenty of [[Interesting Patches]] waiting to be cleaned and committed and lots of [[Small FFmpeg Tasks]] waiting for someone willing to pick them up.&lt;br /&gt;
&lt;br /&gt;
=== CDXL decoder ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' CDXL is a simple Amiga-style video codec. Codec documentation [http://wiki.multimedia.cx/index.php?title=CDXL here], issue tracker entry [http://roundup.ffmpeg.org/roundup/ffmpeg/issue1012 here]. See small task description: [[Small_FFmpeg_Tasks#CDXL_decoder]]&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' write a video decoder that can decode samples from [ftp://ffmpeg.org/MPlayer/samples/game-formats/cdxl/ here]&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' medium&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' up to a week&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' [http://wiki.multimedia.cx/index.php?title=User:Ronald_S._Bultje Ronald S. Bultje] (IRC nick: BBB)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Metal Gear Solid VP3 demuxer ===&lt;br /&gt;
'''Area:''' coding&amp;lt;br&amp;gt;&lt;br /&gt;
'''Description:''' Metal Gear Solid 3 is a GameCube game, media files can be extracted to view video content. Codec documentation [http://wiki.multimedia.cx/index.php?title=Metal_Gear_Solid_VP3 here]. See small task description: [[Small_FFmpeg_Tasks#Metal_Gear_Solid_Video_format_demuxer]]&amp;lt;br&amp;gt;&lt;br /&gt;
'''Outcome:''' write a video demuxer so we can (using FFmpeg's built-in VP3 decoder) play samples from [http://samples.mplayerhq.hu/game-formats/mgs1-vp3/ here]&amp;lt;br&amp;gt;&lt;br /&gt;
'''Difficulty:''' medium&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' 2-3 days&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mailinglist:''' ffmpeg-soc@mplayerhq.hu&amp;lt;br&amp;gt;&lt;br /&gt;
'''Mentor:''' [http://wiki.multimedia.cx/index.php?title=User:Ronald_S._Bultje Ronald S. Bultje] (IRC nick: BBB)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code samples ==&lt;br /&gt;
In between Documentation and coding. Sample code in FFmpeg is in a quite sorry state.&lt;br /&gt;
Writing better and more various example should improve people understanding of the library.&lt;br /&gt;
&lt;br /&gt;
== Developer documentation and tutorial videos ==&lt;br /&gt;
Create some tutorial videos to get a quick start with developing FFmpeg.&lt;br /&gt;
&lt;br /&gt;
'''Difficulty:''' medium&amp;lt;br&amp;gt;&lt;br /&gt;
'''Time:''' 2-3 days&amp;lt;br&amp;gt;&lt;br /&gt;
'''IRC:''' #ffmpeg-devel on Freenode&amp;lt;br&amp;gt;&lt;br /&gt;
''Mentor:''' Benjamin Larsson (IRC nick: merbanan alt merbzt)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Documentation and Outreach ==&lt;br /&gt;
&lt;br /&gt;
FFmpeg needs better documentation and is next to unknown to the general public. This section should hold proposals on how to improve the overall perception and experience of non coding users.&lt;br /&gt;
&lt;br /&gt;
=== FFmpeg video tutorials ===&lt;br /&gt;
Prepare a set of video tutorials on how to encode targeting different devices.&lt;br /&gt;
* How to encode for your iPod&lt;br /&gt;
* How to encode for your Android device&lt;br /&gt;
* How to encode to archive your footage for further editing&lt;br /&gt;
...&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=12626</id>
		<title>FFmpeg Release Plan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=12626"/>
		<updated>2010-05-12T11:33:28Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: 0.6 changelog/press release, starting draft&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideas and suggestions concerning FFmpeg software releases.&lt;br /&gt;
&lt;br /&gt;
==Things that need doing==&lt;br /&gt;
* Fix SVQ3 regression test?&lt;br /&gt;
* Approximately 95% test coverage in FATE.&lt;br /&gt;
* AAC Conformance sweep&lt;br /&gt;
* Make sure API/ABI changelog is up-to-date&lt;br /&gt;
&lt;br /&gt;
=== Release 0.6 &amp;quot;Works with HTML5&amp;quot; ===&lt;br /&gt;
&lt;br /&gt;
Pending features that would be nice to have in 0.6&lt;br /&gt;
&lt;br /&gt;
* LATM demuxing support&lt;br /&gt;
* Theora speedup work&lt;br /&gt;
&lt;br /&gt;
==Release Criteria==&lt;br /&gt;
* make test passes.&lt;br /&gt;
* FATE test coverage passes for all platforms of interest.&lt;br /&gt;
* All 'important' bugs reported in roundup fixed/closed.&lt;br /&gt;
:Except 46, 127 and possibly 192 and 452 --[[User:Ce|Ce]] 05:36, 3 February 2010 (EST)&lt;br /&gt;
* No half-implemented functionality that may break existing user apps.&lt;br /&gt;
* Endurance/memleak testing on film-length files.&lt;br /&gt;
&lt;br /&gt;
==Rationale for releases==&lt;br /&gt;
* Provide endorsed snapshots for external software developers to develop against&lt;br /&gt;
* Avoid situation where external software developers using SVN head when head has transient limitations.&lt;br /&gt;
* Discourage external software developers using ancient snapshots that we don't support.&lt;br /&gt;
&lt;br /&gt;
==Release Process==&lt;br /&gt;
* Create a branch in Subversion.&lt;br /&gt;
* Add VERSION file that hardcodes 0.6.&lt;br /&gt;
* Create release tarballs (repeat the process for gzip compression)&lt;br /&gt;
** svn export svn://svn.ffmpeg.org/ffmpeg/tags/0.6/ ffmpeg-0.6&lt;br /&gt;
** tar -cjf ffmpeg-0.6.tar.bz2 ffmpeg-0.6&lt;br /&gt;
** md5sum ffmpeg-0.6.tar.bz2 &amp;gt; ffmpeg-0.6.tar.bz2.md5&lt;br /&gt;
** sha1sum ffmpeg-0.6.tar.bz2 &amp;gt; ffmpeg-0.6.tar.bz2.sha&lt;br /&gt;
** signatures from the release managers (concatenate all signatures into one file)&lt;br /&gt;
*** gpg --armor --detach-sign ffmpeg-0.6.tar.bz2&lt;br /&gt;
* Upload to ffmpeg.org&lt;br /&gt;
* Update website&lt;br /&gt;
* Who needs to be notified?&lt;br /&gt;
** Major dependent projects, major distribution package maintainers --[[User:Rathann|Rathann]] 09:43, 29 January 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Release Notes/Press release English version==&lt;br /&gt;
&lt;br /&gt;
* To start with just the changelog. To be transformed into something nice.&lt;br /&gt;
* Group things in old and new technology and related areas.&lt;br /&gt;
* Remove uninteresting changelog items, ie deprecation stuff.&lt;br /&gt;
* Amount of added/changed/removed code lines since last release.&lt;br /&gt;
* Amount of people involved&lt;br /&gt;
* Time since last release&lt;br /&gt;
* Arm optimizations&lt;br /&gt;
&lt;br /&gt;
   7 - PB-frame decoding for H.263&lt;br /&gt;
   8 - deprecated vhook subsystem removed&lt;br /&gt;
   9 - deprecated old scaler removed&lt;br /&gt;
  10 - VQF demuxer&lt;br /&gt;
  11 - Alpha channel scaler&lt;br /&gt;
  12 - PCX encoder&lt;br /&gt;
  13 - RTP packetization of H.263&lt;br /&gt;
  14 - RTP packetization of AMR&lt;br /&gt;
  15 - RTP depacketization of Vorbis&lt;br /&gt;
  16 - CorePNG decoding support&lt;br /&gt;
  17 - Cook multichannel decoding support&lt;br /&gt;
  18 - introduced avlanguage helpers in libavformat&lt;br /&gt;
  19 - 8088flex TMV demuxer and decoder&lt;br /&gt;
  20 - per-stream language-tags extraction in asfdec&lt;br /&gt;
  21 - V210 decoder and encoder&lt;br /&gt;
  22 - remaining GPL parts in AC-3 decoder converted to LGPL&lt;br /&gt;
  23 - QCP demuxer&lt;br /&gt;
  24 - SoX native format muxer and demuxer&lt;br /&gt;
  25 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries&lt;br /&gt;
  26 - DPX image decoder&lt;br /&gt;
  27 - Electronic Arts Madcow decoder&lt;br /&gt;
  28 - DivX (XSUB) subtitle encoder&lt;br /&gt;
  29 - nonfree libamr support for AMR-NB/WB decoding/encoding removed&lt;br /&gt;
  30 - experimental AAC encoder&lt;br /&gt;
  31 - RTP depacketization of ASF and RTSP from WMS servers&lt;br /&gt;
  32 - RTMP support in libavformat&lt;br /&gt;
  33 - noX handling for OPT_BOOL X options&lt;br /&gt;
  34 - Wave64 demuxer&lt;br /&gt;
  35 - IEC-61937 compatible Muxer&lt;br /&gt;
  36 - TwinVQ decoder&lt;br /&gt;
  37 - Bluray (PGS) subtitle decoder&lt;br /&gt;
  38 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)&lt;br /&gt;
  39 - WMA Pro decoder&lt;br /&gt;
  40 - Core Audio Format demuxer&lt;br /&gt;
  41 - Atrac1 decoder&lt;br /&gt;
  42 - MD STUDIO audio demuxer&lt;br /&gt;
  43 - RF64 support in WAV demuxer&lt;br /&gt;
  44 - MPEG-4 Audio Lossless Coding (ALS) decoder&lt;br /&gt;
  45 - -formats option split into -formats, -codecs, -bsfs, and -protocols&lt;br /&gt;
  46 - IV8 demuxer&lt;br /&gt;
  47 - CDG demuxer and decoder&lt;br /&gt;
  48 - R210 decoder&lt;br /&gt;
  49 - Auravision Aura 1 and 2 decoders&lt;br /&gt;
  50 - Deluxe Paint Animation playback system&lt;br /&gt;
  51 - SIPR decoder&lt;br /&gt;
  52 - Adobe Filmstrip muxer and demuxer&lt;br /&gt;
  53 - RTP depacketization of H.263&lt;br /&gt;
  54 - Bink demuxer and audio/video decoders&lt;br /&gt;
  55 - enable symbol versioning by default for linkers that support it&lt;br /&gt;
  56 - IFF PBM/ILBM bitmap decoder&lt;br /&gt;
  57 - concat protocol&lt;br /&gt;
  58 - Indeo 5 decoder&lt;br /&gt;
  59 - RTP depacketization of AMR&lt;br /&gt;
  60 - WMA Voice decoder&lt;br /&gt;
  61 - ffprobe tool&lt;br /&gt;
  62 - AMR-NB decoder&lt;br /&gt;
  63 - RTSP muxer&lt;br /&gt;
  64 - HE-AAC v1 decoder&lt;br /&gt;
  65 - Kega Game Video (KGV1) decoder&lt;br /&gt;
  66 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files&lt;br /&gt;
  67 - RTP depacketization of Theora&lt;br /&gt;
  68 - HTTP Digest authentication&lt;br /&gt;
  69 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp&lt;br /&gt;
  70 - Psygnosis YOP demuxer and video decoder&lt;br /&gt;
  71 - spectral extension support in the E-AC-3 decoder&lt;br /&gt;
  72 - unsharp video filter&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2010&amp;diff=12326</id>
		<title>FFmpeg Summer Of Code 2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2010&amp;diff=12326"/>
		<updated>2010-03-02T10:04:17Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Added dts encoder task.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Choose a task from the [[Small FFmpeg Tasks|Small Tasks list]], send an email to FFmpeg-devel mailing list to inform that you are working on it (to avoid duplicated work) and when it is ready submit it for review at FFmpeg-devel. The task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
Before posting to ffmpeg-devel, make sure you read and understand [http://www.ffmpeg.org/contact.html our netiquette guidelines], especially avoid top-posting. Before you send us your patch, read our [http://www.ffmpeg.org/general.html#SEC23 development guidelines] and make sure your patch fulfills all the requirements stated there. You should also familiar with the programs diff, patch and Subversion. You have to learn these basics on your own before you start, we will not teach them to you during the application process.&lt;br /&gt;
&lt;br /&gt;
A completed FFmpeg qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== Implement a Windows Screen Video 2 decoder ===&lt;br /&gt;
* Fourcc: WVP2&lt;br /&gt;
* Samples: [http://samples.mplayerhq.hu/V-codecs/WVP2/ http://samples.mplayerhq.hu/V-codecs/WVP2/]&lt;br /&gt;
* Suggested qualification task: [[Reverse_Engineering|Reverse engineer]] the frame header parsing or the actual frame data parsing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Improve RTSP/RTP layer ===&lt;br /&gt;
*primary goal: improve the receiver compatibility&lt;br /&gt;
** Add support for more widespread formats ([list will follow check gst live555 and feng])&lt;br /&gt;
*** X-Qt/quicktime depayloader (see [http://www.gnome.org/~rbultje/ffmpeg-patchset/ X-QT patch])&lt;br /&gt;
*** theora depayloader (see [[Small_FFmpeg_Tasks#Implement_the_RTP.2FTheora_payload|Implement the Theora payload]])&lt;br /&gt;
*** SVQ3 [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-July/073511.html] and QDM2 [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-August/073826.html] depacketizers&lt;br /&gt;
*** ...more...&lt;br /&gt;
** support Quicktime http tunnel mode &lt;br /&gt;
*secondary goal: provide an API to expose the rtcp layer (and the equivalent in RDT dialect)&lt;br /&gt;
*secondary goal: try to support subtitle streams (either as rtcp-xr or application/text stream)&lt;br /&gt;
*secondary goal: make VideoLanClient, MPlayer and Xine use ffmpeg rtsp&lt;br /&gt;
&lt;br /&gt;
''Mentor: Luca Barbato, Ronald S. Bultje''&lt;br /&gt;
&lt;br /&gt;
=== MMS protocol implementation ===&lt;br /&gt;
* See patches from Ryan Martell [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-December/020118.html]&lt;br /&gt;
* Implementation suggestions:&lt;br /&gt;
** Should probably be a URLProtocol (similar to RTMP)&lt;br /&gt;
** Initial version should only stream (no seeking), TCP-only, and should reuse the tcp:// stack&lt;br /&gt;
** Subsequent patchsets could add UDP (mmsu://) and HTTP (mssh://) by reusing their respective stacks&lt;br /&gt;
** Subsequent patches could add seeking&lt;br /&gt;
* Maybe the task can be extended to add support for MMS output to FFserver, but ONLY once decoding MMS is done&lt;br /&gt;
* An patch for simple streaming (no seeking) over TCP only could serve as a good qualification task&lt;br /&gt;
&lt;br /&gt;
''Mentor: Ronald S. Bultje''&lt;br /&gt;
&lt;br /&gt;
''Zhentan Feng is working on the MMS-over-TCP qualification task''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* this task probably is to get libbluray integrated with vlc/mplayer/ffmpeg and working with as many discs as possible.&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It should replace the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in the following tasks&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed, including the ffmpeg.c and ffplay.c patch&lt;br /&gt;
* Get libavfilter enabled in the main SVN tree&lt;br /&gt;
* Write a watermark filter (this is one of the most commonly requested FFmpeg feature)&lt;br /&gt;
* Write a expand/pad filter (see [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/85015] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.soc/2779/]&lt;br /&gt;
* Port all MPlayer filters at libmbcodec/vf_* (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
&lt;br /&gt;
see also this ffmpeg-devel message: [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-March/064817.html]&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has no support at all for handling audio. This task would consist of&lt;br /&gt;
&lt;br /&gt;
* Expanding the libavfilter framework to work with audio&lt;br /&gt;
* Writing a resampling/format conversion filter (starting with just a wrapping code at libavcodec/resample.c)&lt;br /&gt;
** Can it be made clear that ideally we'd want N-channel resampling? [[User:superdump|Rob]]&lt;br /&gt;
*** I'm listing here the tasks in the order I'd want see them done chronologically. I think first of all he should write a filter that is just a wrapper (and nothing more) of the code in resample.c. Making it more general is my point #4. I'm trying to focus in getting the general infrastructure in SVN, even if without a lot of fancy filters. [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Implement negotiation of sample format and number of channels analogously to the libavfilter colorspace negotiation&lt;br /&gt;
** Does this imply a channel mixing filter? This would be the second most desirable basic audio filter in my opinion. [[User:superdump|Rob]]&lt;br /&gt;
*** Yes, but it to begin with, he could just write a wrapper around libavcodec/resample.c (see my next point) [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[AMR-WB]] decoder ===&lt;br /&gt;
* Write or improve AMR-WB spec&lt;br /&gt;
* Implement a decoder&lt;br /&gt;
&lt;br /&gt;
''Mentor: Robert Swain''&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
''Mentor: Kostya Shishkov''&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;br /&gt;
&lt;br /&gt;
=== RALF Realaudio Lossless ===&lt;br /&gt;
* RE and implement a decoder for this format&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
&lt;br /&gt;
=== QCELP decoder missing features ===&lt;br /&gt;
&lt;br /&gt;
* Implement missing features in the QCELP decoder&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
: This task is probably too small on its own so if you would like to do it, also look at the completion of the AMR-NB decoder task above as they may be merged into one CELP task.   --[[User:superdump|Robert Swain]]&lt;br /&gt;
&lt;br /&gt;
=== [[Advanced_Audio_Coding#BSAC_AAC|BSAC AAC]] Decoder ===&lt;br /&gt;
&lt;br /&gt;
* Separate [[AAC]] Huffman decoding and dequantiztion from the rest of AAC decoder.&lt;br /&gt;
* Write a BSAC AAC decoder.&lt;br /&gt;
* Reuse as much of the existing AAC decoder and libavcodec as possible. &lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:AConverse|Alex Converse]]&lt;br /&gt;
&lt;br /&gt;
=== Rewrite the audio format conversion code ===&lt;br /&gt;
&lt;br /&gt;
* right now, we're using audioresample to resample audio (samplerate / channels) and audioconvert to resample audio format (int, float, 16-bit, 32-bit). We'd like a new, swscale-style implementation that combines these two in a single codebase&lt;br /&gt;
* design should allow for SIMD optimization of popular conversions (float-int16, int16-float)&lt;br /&gt;
* fix bugs in current design (clipping, overflows when going from float to int, questionable rounding)&lt;br /&gt;
&lt;br /&gt;
''Mentor: to be decided&lt;br /&gt;
&lt;br /&gt;
=== DTS Encoder ===&lt;br /&gt;
* Specification: http://wiki.multimedia.cx/index.php?title=Mirror&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/A-codecs/DTS/&lt;br /&gt;
* Qualification: Extend the encoder in the SoC tree (port the float transform from the decoder, fix the LFE channel generation).&lt;br /&gt;
* Primary goal: Encoder that can produce multi sample rate, multi channel files and multi bit-rate. Wav and raw muxing support. SVN merge.&lt;br /&gt;
* Secondary goal: Techniques from specification implemented, optimal codebook usage, vector quantization, simple psycho acoustics.&lt;br /&gt;
* Third goal: Advanced psycho acoustics.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#JPEG 2000 Encoder and Decoder|JPEG 2000 encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac decoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#Dirac Encoder and Decoder|Dirac encoder]]&lt;br /&gt;
* [[FFmpeg Summer Of Code#TS Muxer|TS muxer]]&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* [[FFmpeg Summer Of Code#Generic frame-level multithreading support|Generic frame-level multithreading support]]&lt;br /&gt;
&lt;br /&gt;
2009:&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Playlist.2FConcatenation_Support_for_FFmpeg|Playlist and concatenation support]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implement_the_New_Seeking_API_in_Libavformat|New seeking API]]&lt;br /&gt;
* [[FFmpeg_Summer_Of_Code#Implementation_of_AVFilter_infrastructure_and_various_audio_filters|AVFilter audio infrastructure]]&lt;br /&gt;
&lt;br /&gt;
For the current status of all SoC projects up to date, see [[FFmpeg Summer Of Code]].&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WTV (de)muxer ===&lt;br /&gt;
* Implement a demuxer (and possibly a muxer) for the [[WTV]] file format.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=12245</id>
		<title>FFmpeg Release Plan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=12245"/>
		<updated>2010-02-08T13:31:24Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* Release 0.6 &amp;quot;Let's keep this thing rolling...&amp;quot; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideas and suggestions concerning FFmpeg software releases.&lt;br /&gt;
&lt;br /&gt;
==Things that need doing==&lt;br /&gt;
* Fix SVQ3 regression test?&lt;br /&gt;
* Approximately 95% test coverage in FATE.&lt;br /&gt;
* AAC Conformance sweep&lt;br /&gt;
* Make sure API/ABI changelog is up-to-date&lt;br /&gt;
&lt;br /&gt;
=== Release 0.6 &amp;quot;Let's keep this thing rolling...&amp;quot; ===&lt;br /&gt;
&lt;br /&gt;
Pending features that would be nice to have in 0.6&lt;br /&gt;
&lt;br /&gt;
* WMAVoice&lt;br /&gt;
* HE AAC v1&lt;br /&gt;
* Indeo 5&lt;br /&gt;
* AMR-NB&lt;br /&gt;
* Bink Video&lt;br /&gt;
* pending ALS patches (Arithmetic coding support)&lt;br /&gt;
* FFprobe&lt;br /&gt;
* LATM demuxing support&lt;br /&gt;
&lt;br /&gt;
==Release Criteria==&lt;br /&gt;
* make test passes.&lt;br /&gt;
* FATE test coverage passes for all platforms of interest.&lt;br /&gt;
* All 'important' bugs reported in roundup fixed/closed.&lt;br /&gt;
:Except 46, 127, 1250, 1251 and possibly 192 and 452 --[[User:Ce|Ce]] 05:36, 3 February 2010 (EST)&lt;br /&gt;
* No half-implemented functionality that may break existing user apps.&lt;br /&gt;
* Endurance/memleak testing on film-length files.&lt;br /&gt;
&lt;br /&gt;
==Rationale for releases==&lt;br /&gt;
* Provide endorsed snapshots for external software developers to develop against&lt;br /&gt;
* Avoid sitation where external software developers using SVN head when head has transient limitations.&lt;br /&gt;
* Discourage external software developers using ancient snapshots that we don't support.&lt;br /&gt;
&lt;br /&gt;
==Release Process==&lt;br /&gt;
* Create a branch in Subversion.&lt;br /&gt;
* Replace version.sh by something that hardcodes 0.6.&lt;br /&gt;
* svn export svn://svn.ffmpeg.org/ffmpeg/tags/0.6/ ffmpeg-0.6&lt;br /&gt;
* tar -cvjf ffmpeg-0.6.tar.bz2 ffmpeg-0.6&lt;br /&gt;
* Get source code&lt;br /&gt;
* Create tarball&lt;br /&gt;
* Checksums?&lt;br /&gt;
* Upload to ffmpeg.org&lt;br /&gt;
* Update website&lt;br /&gt;
* Who needs to be notified?&lt;br /&gt;
** Major dependent projects, major distribution package maintainers --[[User:Rathann|Rathann]] 09:43, 29 January 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=12223</id>
		<title>FFmpeg Release Plan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=12223"/>
		<updated>2010-02-03T10:07:20Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideas and suggestions concerning FFmpeg software releases.&lt;br /&gt;
&lt;br /&gt;
==Things that need doing==&lt;br /&gt;
* Fix SVQ3 regression test?&lt;br /&gt;
* Approximately 95% test coverage in FATE.&lt;br /&gt;
* Update API/ABI changelog&lt;br /&gt;
&lt;br /&gt;
=== Release 0.6 &amp;quot;Let's keep this thing rolling...&amp;quot; ===&lt;br /&gt;
&lt;br /&gt;
Pending features that would be nice to have in 0.6&lt;br /&gt;
&lt;br /&gt;
* WMAVoice&lt;br /&gt;
* HE AAC v1&lt;br /&gt;
* Indeo 5&lt;br /&gt;
* AMR-NB&lt;br /&gt;
* Bink Video&lt;br /&gt;
* pending ALS patches (Arithmetic coding support)&lt;br /&gt;
* FFprobe&lt;br /&gt;
&lt;br /&gt;
==Release Criteria==&lt;br /&gt;
* make test passes.&lt;br /&gt;
* FATE test coverage passes for all platforms of interest.&lt;br /&gt;
* All 'important' bugs reported in roundup fixed/closed.&lt;br /&gt;
* No half-implemented functionality that may break existing user apps.&lt;br /&gt;
* Endurance/memleak testing on film-length files.&lt;br /&gt;
&lt;br /&gt;
==Rationale for releases==&lt;br /&gt;
* Provide endorsed snapshots for external software developers to develop against&lt;br /&gt;
* Avoid sitation where external software developers using SVN head when head has transient limitations.&lt;br /&gt;
* Discourage external software developers using ancient snapshots that we don't support.&lt;br /&gt;
&lt;br /&gt;
==Release Process==&lt;br /&gt;
* Create a branch in Subversion.&lt;br /&gt;
* Replace version.sh by something that hardcodes 0.5.&lt;br /&gt;
* svn export svn://svn.ffmpeg.org/ffmpeg/tags/0.5/ ffmpeg-0.5&lt;br /&gt;
* tar -cvjf ffmpeg-0.5.tar.bz2 ffmpeg-0.5&lt;br /&gt;
* Get source code&lt;br /&gt;
* Create tarball&lt;br /&gt;
* Checksums?&lt;br /&gt;
* Upload to ffmpeg.org&lt;br /&gt;
* Update website&lt;br /&gt;
* Who needs to be notified?&lt;br /&gt;
** Major dependent projects, major distribution package maintainers --[[User:Rathann|Rathann]] 09:43, 29 January 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=12219</id>
		<title>FFmpeg Release Plan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=12219"/>
		<updated>2010-02-03T10:02:52Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideas and suggestions concerning FFmpeg software releases.&lt;br /&gt;
&lt;br /&gt;
==Things that need doing==&lt;br /&gt;
* Fix DV regression tests on PPC&lt;br /&gt;
* Approximately 95% test coverage in FATE.&lt;br /&gt;
* Add an API/ABI changelog&lt;br /&gt;
&lt;br /&gt;
==Release Criteria==&lt;br /&gt;
* make test passes.&lt;br /&gt;
* FATE test coverage passes for all platforms of interest.&lt;br /&gt;
* All 'important' bugs reported in roundup fixed/closed.&lt;br /&gt;
* No half-implemented functionality that may break existing user apps.&lt;br /&gt;
* Endurance/memleak testing on film-length files.&lt;br /&gt;
&lt;br /&gt;
==Rationale for releases==&lt;br /&gt;
* Provide endorsed snapshots for external software developers to develop against&lt;br /&gt;
* Avoid sitation where external software developers using SVN head when head has transient limitations.&lt;br /&gt;
* Discourage external software developers using ancient snapshots that we don't support.&lt;br /&gt;
&lt;br /&gt;
== Release Process==&lt;br /&gt;
* Create a branch in Subversion.&lt;br /&gt;
* Replace version.sh by something that hardcodes 0.5.&lt;br /&gt;
* svn export svn://svn.ffmpeg.org/ffmpeg/tags/0.5/ ffmpeg-0.5&lt;br /&gt;
* tar -cvjf ffmpeg-0.5.tar.bz2 ffmpeg-0.5&lt;br /&gt;
* Get source code&lt;br /&gt;
* Create tarball&lt;br /&gt;
* Checksums?&lt;br /&gt;
* Upload to ffmpeg.org&lt;br /&gt;
* Update website&lt;br /&gt;
* Who needs to be notified?&lt;br /&gt;
** Major dependent projects, major distribution package maintainers --[[User:Rathann|Rathann]] 09:43, 29 January 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
== 0.6 Release ==&lt;br /&gt;
&lt;br /&gt;
Pending features that would be nice to have in 0.6&lt;br /&gt;
&lt;br /&gt;
* WMAVoice&lt;br /&gt;
* AAC-HE v1&lt;br /&gt;
* Indeo 5&lt;br /&gt;
* AMR-NB&lt;br /&gt;
* Bink Video&lt;br /&gt;
* pending ALS patches&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Windows_Media_Audio_Pro&amp;diff=11963</id>
		<title>Windows Media Audio Pro</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Windows_Media_Audio_Pro&amp;diff=11963"/>
		<updated>2009-09-24T20:49:34Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* Channel configuration */ Don't spread lies.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Microsoft Audio ID: 0x0162&lt;br /&gt;
* Company: [[Microsoft]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/&lt;br /&gt;
* Wikipedia info: http://en.wikipedia.org/wiki/Windows_Media_Audio#Windows_Media_Audio_Professional&lt;br /&gt;
The next generation of Windows Media audio codecs.&lt;br /&gt;
&lt;br /&gt;
== Extra data layout ==&lt;br /&gt;
This is a rough guess of the extra data from the asf container (little endian order).&lt;br /&gt;
&lt;br /&gt;
 byte 1-2    Bits per sample (wBitsPerSample) (http://msdn2.microsoft.com/en-us/library/ms791274.aspx)&lt;br /&gt;
 byte 3-6    Channel mask (dwChannelMask) (http://msdn2.microsoft.com/en-us/library/ms790436.aspx)&lt;br /&gt;
 byte 7-14   Not used&lt;br /&gt;
 byte 15-16  Decoding flags, bitfield used for calculating samples per frame amongst others (int16_t)&lt;br /&gt;
 byte 17-18  Probably some flags for low bitrate files.&lt;br /&gt;
&lt;br /&gt;
Example extradata dump of a 5.1 file:&lt;br /&gt;
&lt;br /&gt;
 [[18] [0]] [[3f] [0] [0] [0]] [0] [0] [0] [0] [0] [0] [0] [0] [[e0] [0]] [0] [0]&lt;br /&gt;
&lt;br /&gt;
Example extradata dump of a stereo file:&lt;br /&gt;
&lt;br /&gt;
 [[18] [0]] [[3] [0] [0] [0]] [0] [0] [0] [0] [0] [0] [0] [0] [[e0] [0]] [0] [0]&lt;br /&gt;
&lt;br /&gt;
Example extradata dump of a low bitrate stereo file:&lt;br /&gt;
&lt;br /&gt;
 [[10] [0]] [[3] [0] [0] [0]] [0] [0] [0] [0] [0] [0] [0] [0] [[e0] [0]] [[42] [c0]]&lt;br /&gt;
&lt;br /&gt;
== Channel configuration ==&lt;br /&gt;
&lt;br /&gt;
Wma pro uses the dwChannelMask for channel configuration.&lt;br /&gt;
&lt;br /&gt;
 SPEAKER_FRONT_LEFT             0x00001&lt;br /&gt;
 SPEAKER_FRONT_RIGHT            0x00002&lt;br /&gt;
 SPEAKER_FRONT_CENTER           0x00004&lt;br /&gt;
 SPEAKER_LOW_FREQUENCY          0x00008&lt;br /&gt;
 SPEAKER_BACK_LEFT              0x00010&lt;br /&gt;
 SPEAKER_BACK_RIGHT             0x00020&lt;br /&gt;
 SPEAKER_FRONT_LEFT_OF_CENTER   0x00040&lt;br /&gt;
 SPEAKER_FRONT_RIGHT_OF_CENTER  0x00080&lt;br /&gt;
 SPEAKER_BACK_CENTER            0x00100&lt;br /&gt;
 SPEAKER_SIDE_LEFT              0x00200&lt;br /&gt;
 SPEAKER_SIDE_RIGHT             0x00400&lt;br /&gt;
 SPEAKER_TOP_CENTER             0x00800&lt;br /&gt;
 SPEAKER_TOP_FRONT_LEFT         0x01000&lt;br /&gt;
 SPEAKER_TOP_FRONT_CENTER       0x02000&lt;br /&gt;
 SPEAKER_TOP_FRONT_RIGHT        0x04000&lt;br /&gt;
 SPEAKER_TOP_BACK_LEFT          0x08000&lt;br /&gt;
 SPEAKER_TOP_BACK_CENTER        0x10000&lt;br /&gt;
 SPEAKER_TOP_BACK_RIGHT         0x20000&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Audio Codecs]]&lt;br /&gt;
[[Category: Multichannel Audio Codecs]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=RE_process&amp;diff=11747</id>
		<title>RE process</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=RE_process&amp;diff=11747"/>
		<updated>2009-07-10T09:36:18Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Initial how to RE codecs article&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The not so simple introduction to RE'ing of multimedia codecs.&lt;br /&gt;
&lt;br /&gt;
== Information gathering ==&lt;br /&gt;
Try to collect as much public knowledge as possible.&lt;br /&gt;
&lt;br /&gt;
* The first thing to do is to collect/create sample files. Without samples files there is nothing to test/verify a reimplementation.&lt;br /&gt;
* The second thing is to collect different decoder for the codec. Sometimes debug symbols are available in one binary but not the other.&lt;br /&gt;
* Read the product/codec whitepapers, they are mostly useless but can give a hint of the techniques used in the codec.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Get it running ==&lt;br /&gt;
If you get a binary running it is much more easy to figure out how it works exactly. Getting it running in a controlled environment is even better.&lt;br /&gt;
&lt;br /&gt;
* Mplayer has a dll loader which makes it very easy to load acm and dmo codecs.&lt;br /&gt;
* Use the technique described here to load a binary under Linux: http://multimedia.cx/pre/re-xan.html&lt;br /&gt;
* Run it on the original platform in some form.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Picking it apart ==&lt;br /&gt;
Load up the codec in a dissassembler.&lt;br /&gt;
&lt;br /&gt;
* Get Idapro and let it chew through the binary.&lt;br /&gt;
* Somehow locate the code paths in the codec that is used. http://multimedia.cx/eggs/category/reverse-engineering/callret-monitor/ describes one way.&lt;br /&gt;
&lt;br /&gt;
== Hijack code flow ==&lt;br /&gt;
If the codec is running in a deterministic way it is possible to runtime patch the code to replace call addresses. The following macros can be used:&lt;br /&gt;
&lt;br /&gt;
 #define insert_native_addr(address, replacement) \&lt;br /&gt;
 { \&lt;br /&gt;
     unsigned int *padd = (unsigned int *)address;       \&lt;br /&gt;
     *padd = (unsigned int*)replacement; \&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 #define insert_native_call(address, replacement) \&lt;br /&gt;
 { \&lt;br /&gt;
       *((uint8_t*)address) = 0xe8; \&lt;br /&gt;
       *((int32_t*)(address+1)) = (int) replacement - address - 5; \&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
When you redirect the functions make sure you declare your replacement function with the right call convention.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strategy ==&lt;br /&gt;
Most codecs work in a init, decode, close fashion. The init step allocated a codec private context that is then passed to the decode function.&lt;br /&gt;
The private context is used by the codec to store it's internal state needed for decoding. The close function just cleans up the context. First&lt;br /&gt;
start with reverse engineering the init and use a malloc wrapper to figure out the structure of the private context. Then go for the main decode function.&lt;br /&gt;
It usually takes the private context as arguments and the indata buffer and size. From here the progress is open ended, try to tackle functions at the&lt;br /&gt;
end of the decode call tree and at the start. That way knowledge about parameters can propagate through the code.&lt;br /&gt;
&lt;br /&gt;
== Reimplementation ==&lt;br /&gt;
When all the code is understood replace the code with lavc equivalents and re implement the stuff that is missing.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11469</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11469"/>
		<updated>2009-03-31T09:36:25Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* Qualification tasks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Choose a task from the [[Small FFmpeg Tasks|Small Tasks list]], send an email to FFmpeg-devel mailing list to inform that you are working on it (to avoid duplicated work) and when it is ready submit it for review at FFmpeg-devel. The task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
A completed FFmpeg qualifications task is also accepted as a qualification task for the VLC organization (does NOT include x264).&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Info: [[SPDIF|Spdif]]&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
Implement support in ffplay so that it is possible to output the audio stream over S/PDIF when playing a media file.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson, Andreas Öman''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
* Specs: http://www.adobe.com/devnet/swf/pdf/swf_file_format_spec_v10.pdf&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== [[MPEG-4 ALS]] decoder ===&lt;br /&gt;
*primary goal: stream copy of ALS frames in MP4 files from the [http://www.nue.tu-berlin.de/forschung/projekte/lossless/refsoft/mp4alsRM22rev2.zip reference encoder]&lt;br /&gt;
** detect codec_id&lt;br /&gt;
** preserve extradata&lt;br /&gt;
*primary goal: write the decoder based on the ISO specification&lt;br /&gt;
** ISO/IEC 14496-3:2005/Amd.2:2006, related corrigenda, and other pertinent ISO documents&lt;br /&gt;
*primary goal: decode files with basic ALS features&lt;br /&gt;
** integer samples&lt;br /&gt;
** LPC&lt;br /&gt;
** rice coding&lt;br /&gt;
** joint-stereo&lt;br /&gt;
*secondary goal: decode files with more advanced ALS features&lt;br /&gt;
** floating-point samples&lt;br /&gt;
** block switching&lt;br /&gt;
** LTP (long term prediction)&lt;br /&gt;
** BGMC (arithmetic coding)&lt;br /&gt;
** MCC (advanced multi-channel)&lt;br /&gt;
** RLSLMS (backward-adaptive prediction)&lt;br /&gt;
*secondary goal: pass the ISO conformance tests&lt;br /&gt;
*secondary goal: handle anything the reference encoder can come up with&lt;br /&gt;
''Mentor: Justin Ruggles''&lt;br /&gt;
&lt;br /&gt;
=== RTMP Support (Flash streaming) ===&lt;br /&gt;
*primary goal: implement a RTMP URLProtocol and/or demuxer if needed.&lt;br /&gt;
*secondary goal: extend FFserver to support RTMP streaming.&lt;br /&gt;
** implementation must be compatible with Flash plugin.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Playlist/Concatenation Support ===&lt;br /&gt;
*primary goal: implement a playlist/concatenation interface to transcode(FFmpeg) and play(FFplay) media&lt;br /&gt;
** interface will use commandline switches.&lt;br /&gt;
** interface must support every input format FFmpeg support&lt;br /&gt;
** interface must work with different input stream parameters (different formats, codecs, video resolution, audio sample rate, audio channels, etc..)&lt;br /&gt;
** interface must support track selection&lt;br /&gt;
** interface must support existing playlist format files .m3u, .pls, xpsf.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Improve RTSP/RTP layer ===&lt;br /&gt;
*primary goal: cleanup code the structure&lt;br /&gt;
*primary goal: improve the receiver compatibility&lt;br /&gt;
** Add support for more widespread formats ([list will follow check gst live555 and feng])&lt;br /&gt;
*** X-Qt/quicktime depayloader (see [http://www.gnome.org/~rbultje/ffmpeg-patchset/ X-QT patch])&lt;br /&gt;
*** vorbis and theora depayloader (see [[Small_FFmpeg_Tasks#Implement_the_RTP.2FVorbis_payload]])&lt;br /&gt;
*** h263 and h263+ (see [http://roundup.ffmpeg.org/roundup/ffmpeg/issue678 Issue 678])&lt;br /&gt;
*** ...more...&lt;br /&gt;
** support Quicktime http tunnel mode &lt;br /&gt;
*secondary goal: provide an API to expose the rtcp layer (and the equivalent in RDT dialect)&lt;br /&gt;
*secondary goal: try to support subtitle streams (either as rtcp-xr or application/text stream)&lt;br /&gt;
*secondary goal: make VideoLanClient, MPlayer and Xine use ffmpeg rtsp&lt;br /&gt;
&lt;br /&gt;
''Mentor: Luca Barbato, Ronald S. Bultje''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It should replace the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in the following tasks&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed, including the ffmpeg.c and ffplay.c patch&lt;br /&gt;
* Get libavfilter enabled in the main SVN tree&lt;br /&gt;
* Write a watermark filter (this is one of the most commonly requested FFmpeg feature)&lt;br /&gt;
* Write a expand/pad filter (see [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/85015] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.soc/2779/]&lt;br /&gt;
* Port all MPlayer filters at libmbcodec/vf_* (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
&lt;br /&gt;
see also this ffmpeg-devel message: [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-March/064817.html]&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has no support at all for handling audio. This task would consist of&lt;br /&gt;
&lt;br /&gt;
* Expanding the libavfilter framework to work with audio&lt;br /&gt;
* Writing a resampling/format conversion filter (starting with just a wrapping code at libavcodec/resample.c)&lt;br /&gt;
** Can it be made clear that ideally we'd want N-channel resampling? [[User:superdump|Rob]]&lt;br /&gt;
*** I'm listing here the tasks in the order I'd want see them done chronologically. I think first of all he should write a filter that is just a wrapper (and nothing more) of the code in resample.c. Making it more general is my point #4. I'm trying to focus in getting the general infrastructure in SVN, even if without a lot of fancy filters. [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Implement negotiation of sample format and number of channels analogously to the libavfilter colorspace negotiation&lt;br /&gt;
** Does this imply a channel mixing filter? This would be the second most desirable basic audio filter in my opinion. [[User:superdump|Rob]]&lt;br /&gt;
*** Yes, but it to begin with, he could just write a wrapper around libavcodec/resample.c (see my next point) [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[AMR-NB]] decoder ===&lt;br /&gt;
&lt;br /&gt;
* Continue and complete the fundamental debugging of the floating point AMR-NB decoder&lt;br /&gt;
* Implement/reuse the missing post filters&lt;br /&gt;
* Clean up the code, refactor it as appropriate to share code with QCELP and others&lt;br /&gt;
* Submit for review and tend to review comments&lt;br /&gt;
* Implement further non-essential features such as comfort noise&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
=== QCELP decoder missing features ===&lt;br /&gt;
&lt;br /&gt;
* Implement missing features in the QCELP decoder&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
: This task is probably too small on its own so if you would like to do it, also look at the completion of the AMR-NB decoder task above as they may be merged into one CELP task.   --[[User:superdump|Robert Swain]]&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* JPEG 2000 decoder&lt;br /&gt;
* JPEG 2000 encoder&lt;br /&gt;
* Dirac decoder&lt;br /&gt;
* Dirac encoder&lt;br /&gt;
* TS muxer&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* Generic frame-level multithreading support&lt;br /&gt;
* AAC-LC encoder&lt;br /&gt;
* WMA Pro decoder&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
''Mentor: Christian Schaller''&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;br /&gt;
&lt;br /&gt;
=== WTV (de)muxer ===&lt;br /&gt;
* Implement a demuxer (and possibly a muxer) for the [[WTV]] file format.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11468</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11468"/>
		<updated>2009-03-30T20:27:04Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* S/PDIF muxer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Choose a task from the [[Small FFmpeg Tasks|Small Tasks list]], send an email to FFmpeg-devel mailing list to inform that you are working on it (to avoid duplicated work) and when it is ready submit it for review at FFmpeg-devel. The task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Info: [[SPDIF|Spdif]]&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
Implement support in ffplay so that it is possible to output the audio stream over S/PDIF when playing a media file.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson, Andreas Öman''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
* Specs: http://www.adobe.com/devnet/swf/pdf/swf_file_format_spec_v10.pdf&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== [[MPEG-4 ALS]] decoder ===&lt;br /&gt;
*primary goal: stream copy of ALS frames in MP4 files from the [http://www.nue.tu-berlin.de/forschung/projekte/lossless/refsoft/mp4alsRM22rev2.zip reference encoder]&lt;br /&gt;
** detect codec_id&lt;br /&gt;
** preserve extradata&lt;br /&gt;
*primary goal: write the decoder based on the ISO specification&lt;br /&gt;
** ISO/IEC 14496-3:2005/Amd.2:2006, related corrigenda, and other pertinent ISO documents&lt;br /&gt;
*primary goal: decode files with basic ALS features&lt;br /&gt;
** integer samples&lt;br /&gt;
** LPC&lt;br /&gt;
** rice coding&lt;br /&gt;
** joint-stereo&lt;br /&gt;
*secondary goal: decode files with more advanced ALS features&lt;br /&gt;
** floating-point samples&lt;br /&gt;
** block switching&lt;br /&gt;
** LTP (long term prediction)&lt;br /&gt;
** BGMC (arithmetic coding)&lt;br /&gt;
** MCC (advanced multi-channel)&lt;br /&gt;
** RLSLMS (backward-adaptive prediction)&lt;br /&gt;
*secondary goal: pass the ISO conformance tests&lt;br /&gt;
*secondary goal: handle anything the reference encoder can come up with&lt;br /&gt;
''Mentor: Justin Ruggles''&lt;br /&gt;
&lt;br /&gt;
=== RTMP Support (Flash streaming) ===&lt;br /&gt;
*primary goal: implement a RTMP URLProtocol and/or demuxer if needed.&lt;br /&gt;
*secondary goal: extend FFserver to support RTMP streaming.&lt;br /&gt;
** implementation must be compatible with Flash plugin.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Playlist/Concatenation Support ===&lt;br /&gt;
*primary goal: implement a playlist/concatenation interface to transcode(FFmpeg) and play(FFplay) media&lt;br /&gt;
** interface will use commandline switches.&lt;br /&gt;
** interface must support every input format FFmpeg support&lt;br /&gt;
** interface must work with different input stream parameters (different formats, codecs, video resolution, audio sample rate, audio channels, etc..)&lt;br /&gt;
** interface must support track selection&lt;br /&gt;
** interface must support existing playlist format files .m3u, .pls, xpsf.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Improve RTSP/RTP layer ===&lt;br /&gt;
*primary goal: cleanup code the structure&lt;br /&gt;
*primary goal: improve the receiver compatibility&lt;br /&gt;
** Add support for more widespread formats ([list will follow check gst live555 and feng])&lt;br /&gt;
*** X-Qt/quicktime depayloader (see [http://www.gnome.org/~rbultje/ffmpeg-patchset/ X-QT patch])&lt;br /&gt;
*** vorbis and theora depayloader (see [[Small_FFmpeg_Tasks#Implement_the_RTP.2FVorbis_payload]])&lt;br /&gt;
*** h263 and h263+ (see [http://roundup.ffmpeg.org/roundup/ffmpeg/issue678 Issue 678])&lt;br /&gt;
*** ...more...&lt;br /&gt;
** support Quicktime http tunnel mode &lt;br /&gt;
*secondary goal: provide an API to expose the rtcp layer (and the equivalent in RDT dialect)&lt;br /&gt;
*secondary goal: try to support subtitle streams (either as rtcp-xr or application/text stream)&lt;br /&gt;
*secondary goal: make VideoLanClient, MPlayer and Xine use ffmpeg rtsp&lt;br /&gt;
&lt;br /&gt;
''Mentor: Luca Barbato, Ronald S. Bultje''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It should replace the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in the following tasks&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed, including the ffmpeg.c and ffplay.c patch&lt;br /&gt;
* Get libavfilter enabled in the main SVN tree&lt;br /&gt;
* Write a watermark filter (this is one of the most commonly requested FFmpeg feature)&lt;br /&gt;
* Write a expand/pad filter (see [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/85015] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.soc/2779/]&lt;br /&gt;
* Port all MPlayer filters at libmbcodec/vf_* (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
&lt;br /&gt;
see also this ffmpeg-devel message: [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-March/064817.html]&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has no support at all for handling audio. This task would consist of&lt;br /&gt;
&lt;br /&gt;
* Expanding the libavfilter framework to work with audio&lt;br /&gt;
* Writing a resampling/format conversion filter (starting with just a wrapping code at libavcodec/resample.c)&lt;br /&gt;
** Can it be made clear that ideally we'd want N-channel resampling? [[User:superdump|Rob]]&lt;br /&gt;
*** I'm listing here the tasks in the order I'd want see them done chronologically. I think first of all he should write a filter that is just a wrapper (and nothing more) of the code in resample.c. Making it more general is my point #4. I'm trying to focus in getting the general infrastructure in SVN, even if without a lot of fancy filters. [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Implement negotiation of sample format and number of channels analogously to the libavfilter colorspace negotiation&lt;br /&gt;
** Does this imply a channel mixing filter? This would be the second most desirable basic audio filter in my opinion. [[User:superdump|Rob]]&lt;br /&gt;
*** Yes, but it to begin with, he could just write a wrapper around libavcodec/resample.c (see my next point) [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[AMR-NB]] decoder ===&lt;br /&gt;
&lt;br /&gt;
* Continue and complete the fundamental debugging of the floating point AMR-NB decoder&lt;br /&gt;
* Implement/reuse the missing post filters&lt;br /&gt;
* Clean up the code, refactor it as appropriate to share code with QCELP and others&lt;br /&gt;
* Submit for review and tend to review comments&lt;br /&gt;
* Implement further non-essential features such as comfort noise&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
=== QCELP decoder missing features ===&lt;br /&gt;
&lt;br /&gt;
* Implement missing features in the QCELP decoder&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
: This task is probably too small on its own so if you would like to do it, also look at the completion of the AMR-NB decoder task above as they may be merged into one CELP task.   --[[User:superdump|Robert Swain]]&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* JPEG 2000 decoder&lt;br /&gt;
* JPEG 2000 encoder&lt;br /&gt;
* Dirac decoder&lt;br /&gt;
* Dirac encoder&lt;br /&gt;
* TS muxer&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* Generic frame-level multithreading support&lt;br /&gt;
* AAC-LC encoder&lt;br /&gt;
* WMA Pro decoder&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
''Mentor: Christian Schaller''&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;br /&gt;
&lt;br /&gt;
=== WTV (de)muxer ===&lt;br /&gt;
* Implement a demuxer (and possibly a muxer) for the [[WTV]] file format.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11463</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11463"/>
		<updated>2009-03-29T20:05:12Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* S/PDIF muxer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Choose a task from the [[Small FFmpeg Tasks|Small Tasks list]], send an email to FFmpeg-devel mailing list to inform that you are working on it (to avoid duplicated work) and when it is ready submit it for review at FFmpeg-devel. The task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
Implement support in ffplay so that it is possible to output the audio stream over S/PDIF when playing a media file.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson, Andreas Öman''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
* Specs: http://www.adobe.com/devnet/swf/pdf/swf_file_format_spec_v10.pdf&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== [[MPEG-4 ALS]] decoder ===&lt;br /&gt;
*primary goal: stream copy of ALS frames in MP4 files from the [http://www.nue.tu-berlin.de/forschung/projekte/lossless/refsoft/mp4alsRM22rev2.zip reference encoder]&lt;br /&gt;
** detect codec_id&lt;br /&gt;
** preserve extradata&lt;br /&gt;
*primary goal: write the decoder based on the ISO specification&lt;br /&gt;
** ISO/IEC 14496-3:2005/Amd.2:2006, related corrigenda, and other pertinent ISO documents&lt;br /&gt;
*primary goal: decode files with basic ALS features&lt;br /&gt;
** integer samples&lt;br /&gt;
** LPC&lt;br /&gt;
** rice coding&lt;br /&gt;
** joint-stereo&lt;br /&gt;
*secondary goal: decode files with more advanced ALS features&lt;br /&gt;
** floating-point samples&lt;br /&gt;
** block switching&lt;br /&gt;
** LTP (long term prediction)&lt;br /&gt;
** BGMC (arithmetic coding)&lt;br /&gt;
** MCC (advanced multi-channel)&lt;br /&gt;
** RLSLMS (backward-adaptive prediction)&lt;br /&gt;
*secondary goal: pass the ISO conformance tests&lt;br /&gt;
*secondary goal: handle anything the reference encoder can come up with&lt;br /&gt;
''Mentor: Justin Ruggles''&lt;br /&gt;
&lt;br /&gt;
=== RTMP Support (Flash streaming) ===&lt;br /&gt;
*primary goal: implement a RTMP URLProtocol and/or demuxer if needed.&lt;br /&gt;
*secondary goal: extend FFserver to support RTMP streaming.&lt;br /&gt;
** implementation must be compatible with Flash plugin.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Playlist/Concatenation Support ===&lt;br /&gt;
*primary goal: implement a playlist/concatenation interface to transcode(FFmpeg) and play(FFplay) media&lt;br /&gt;
** interface will use commandline switches.&lt;br /&gt;
** interface must support every input format FFmpeg support&lt;br /&gt;
** interface must work with different input stream parameters (different formats, codecs, video resolution, audio sample rate, audio channels, etc..)&lt;br /&gt;
** interface must support track selection&lt;br /&gt;
** interface must support existing playlist format files .m3u, .pls, xpsf.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Improve RTSP/RTP layer ===&lt;br /&gt;
*primary goal: cleanup code the structure&lt;br /&gt;
*primary goal: improve the receiver compatibility&lt;br /&gt;
** Add support for more widespread formats ([list will follow check gst live555 and feng])&lt;br /&gt;
*** X-Qt/quicktime depayloader (see [http://www.gnome.org/~rbultje/ffmpeg-patchset/ X-QT patch])&lt;br /&gt;
*** vorbis and theora depayloader (see [[Small_FFmpeg_Tasks#Implement_the_RTP.2FVorbis_payload]])&lt;br /&gt;
*** h263 and h263+ (see [http://roundup.ffmpeg.org/roundup/ffmpeg/issue678 Issue 678])&lt;br /&gt;
*** ...more...&lt;br /&gt;
** support Quicktime http tunnel mode &lt;br /&gt;
*secondary goal: provide an API to expose the rtcp layer (and the equivalent in RDT dialect)&lt;br /&gt;
*secondary goal: try to support subtitle streams (either as rtcp-xr or application/text stream)&lt;br /&gt;
*secondary goal: make VideoLanClient, MPlayer and Xine use ffmpeg rtsp&lt;br /&gt;
&lt;br /&gt;
''Mentor: Luca Barbato, Ronald S. Bultje''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It should replace the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in the following tasks&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed, including the ffmpeg.c and ffplay.c patch&lt;br /&gt;
* Get libavfilter enabled in the main SVN tree&lt;br /&gt;
* Write a watermark filter (this is one of the most commonly requested FFmpeg feature)&lt;br /&gt;
* Write a expand/pad filter (see [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/85015] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.soc/2779/]&lt;br /&gt;
* Port all MPlayer filters at libmbcodec/vf_* (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
&lt;br /&gt;
see also this ffmpeg-devel message: [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-March/064817.html]&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has no support at all for handling audio. This task would consist of&lt;br /&gt;
&lt;br /&gt;
* Expanding the libavfilter framework to work with audio&lt;br /&gt;
* Writing a resampling/format conversion filter (starting with just a wrapping code at libavcodec/resample.c)&lt;br /&gt;
** Can it be made clear that ideally we'd want N-channel resampling? [[User:superdump|Rob]]&lt;br /&gt;
*** I'm listing here the tasks in the order I'd want see them done chronologically. I think first of all he should write a filter that is just a wrapper (and nothing more) of the code in resample.c. Making it more general is my point #4. I'm trying to focus in getting the general infrastructure in SVN, even if without a lot of fancy filters. [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Implement negotiation of sample format and number of channels analogously to the libavfilter colorspace negotiation&lt;br /&gt;
** Does this imply a channel mixing filter? This would be the second most desirable basic audio filter in my opinion. [[User:superdump|Rob]]&lt;br /&gt;
*** Yes, but it to begin with, he could just write a wrapper around libavcodec/resample.c (see my next point) [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[AMR-NB]] decoder ===&lt;br /&gt;
&lt;br /&gt;
* Continue and complete the fundamental debugging of the floating point AMR-NB decoder&lt;br /&gt;
* Implement/reuse the missing post filters&lt;br /&gt;
* Clean up the code, refactor it as appropriate to share code with QCELP and others&lt;br /&gt;
* Submit for review and tend to review comments&lt;br /&gt;
* Implement further non-essential features such as comfort noise&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
=== QCELP decoder missing features ===&lt;br /&gt;
&lt;br /&gt;
* Implement missing features in the QCELP decoder&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
: This task is probably too small on its own so if you would like to do it, also look at the completion of the AMR-NB decoder task above as they may be merged into one CELP task.   --[[User:superdump|Robert Swain]]&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* JPEG 2000 decoder&lt;br /&gt;
* JPEG 2000 encoder&lt;br /&gt;
* Dirac decoder&lt;br /&gt;
* Dirac encoder&lt;br /&gt;
* TS muxer&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* Generic frame-level multithreading support&lt;br /&gt;
* AAC-LC encoder&lt;br /&gt;
* WMA Pro decoder&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
''Mentor: Christian Schaller''&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;br /&gt;
&lt;br /&gt;
=== WTV (de)muxer ===&lt;br /&gt;
* Implement a demuxer (and possibly a muxer) for the [[WTV]] file format.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11462</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11462"/>
		<updated>2009-03-29T19:03:50Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* Flash Screen video 2 codec */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Choose a task from the [[Small FFmpeg Tasks|Small Tasks list]], send an email to FFmpeg-devel mailing list to inform that you are working on it (to avoid duplicated work) and when it is ready submit it for review at FFmpeg-devel. The task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
Implement support in ffplay so that it is possible to output the audio stream over S/PDIF when playing a media file.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
* Specs: http://www.adobe.com/devnet/swf/pdf/swf_file_format_spec_v10.pdf&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== [[MPEG-4 ALS]] decoder ===&lt;br /&gt;
*primary goal: stream copy of ALS frames in MP4 files from the [http://www.nue.tu-berlin.de/forschung/projekte/lossless/refsoft/mp4alsRM22rev2.zip reference encoder]&lt;br /&gt;
** detect codec_id&lt;br /&gt;
** preserve extradata&lt;br /&gt;
*primary goal: write the decoder based on the ISO specification&lt;br /&gt;
** ISO/IEC 14496-3:2005/Amd.2:2006, related corrigenda, and other pertinent ISO documents&lt;br /&gt;
*primary goal: decode files with basic ALS features&lt;br /&gt;
** integer samples&lt;br /&gt;
** LPC&lt;br /&gt;
** rice coding&lt;br /&gt;
** joint-stereo&lt;br /&gt;
*secondary goal: decode files with more advanced ALS features&lt;br /&gt;
** floating-point samples&lt;br /&gt;
** block switching&lt;br /&gt;
** LTP (long term prediction)&lt;br /&gt;
** BGMC (arithmetic coding)&lt;br /&gt;
** MCC (advanced multi-channel)&lt;br /&gt;
** RLSLMS (backward-adaptive prediction)&lt;br /&gt;
*secondary goal: pass the ISO conformance tests&lt;br /&gt;
*secondary goal: handle anything the reference encoder can come up with&lt;br /&gt;
''Mentor: Justin Ruggles''&lt;br /&gt;
&lt;br /&gt;
=== RTMP Support (Flash streaming) ===&lt;br /&gt;
*primary goal: implement a RTMP URLProtocol and/or demuxer if needed.&lt;br /&gt;
*secondary goal: extend FFserver to support RTMP streaming.&lt;br /&gt;
** implementation must be compatible with Flash plugin.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Playlist/Concatenation Support ===&lt;br /&gt;
*primary goal: implement a playlist/concatenation interface to transcode(FFmpeg) and play(FFplay) media&lt;br /&gt;
** interface will use commandline switches.&lt;br /&gt;
** interface must support every input format FFmpeg support&lt;br /&gt;
** interface must work with different input stream parameters (different formats, codecs, video resolution, audio sample rate, audio channels, etc..)&lt;br /&gt;
** interface must support track selection&lt;br /&gt;
** interface must support existing playlist format files .m3u, .pls, xpsf.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== NEW Seeking API ===&lt;br /&gt;
*primary goal: implement a new seeking API in libavformat&lt;br /&gt;
** implement av_seek_file in libavformat&lt;br /&gt;
** implement compatible new seek_file for all AVInputFormat porting existing seek function if possible.&lt;br /&gt;
** implement av_build_index function which will build an AVIndex for the file&lt;br /&gt;
** implement av_export_index function which will save AVIndex in a file which can be loaded later.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Baptiste Coudurier''&lt;br /&gt;
&lt;br /&gt;
=== Improve RTSP/RTP layer ===&lt;br /&gt;
*primary goal: cleanup code the structure&lt;br /&gt;
*primary goal: improve the receiver compatibility&lt;br /&gt;
** Add support for more widespread formats ([list will follow check gst live555 and feng])&lt;br /&gt;
*** X-Qt/quicktime depayloader (see [http://www.gnome.org/~rbultje/ffmpeg-patchset/ X-QT patch])&lt;br /&gt;
*** vorbis and theora depayloader (see [[Small_FFmpeg_Tasks#Implement_the_RTP.2FVorbis_payload]])&lt;br /&gt;
*** h263 and h263+ (see [http://roundup.ffmpeg.org/roundup/ffmpeg/issue678 Issue 678])&lt;br /&gt;
*** ...more...&lt;br /&gt;
** support Quicktime http tunnel mode &lt;br /&gt;
*secondary goal: provide an API to expose the rtcp layer (and the equivalent in RDT dialect)&lt;br /&gt;
*secondary goal: try to support subtitle streams (either as rtcp-xr or application/text stream)&lt;br /&gt;
*secondary goal: make VideoLanClient, MPlayer and Xine use ffmpeg rtsp&lt;br /&gt;
&lt;br /&gt;
''Mentor: Luca Barbato, Ronald S. Bultje''&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
* Specifications: http://www.aacsla.com/specifications/&lt;br /&gt;
* existing implementation e.g. DumpHD: http://forum.doom9.org/showthread.php?t=123111&lt;br /&gt;
* Most parts (BD-J, MKB, title key generation) probably do not belong into FFmpeg, this should be discussed with us before submitting an application&lt;br /&gt;
** possible solution: only implement &amp;quot;lowest&amp;quot; level (decode given the correct title key) but implement CSS en- and decryption as secondary goal&lt;br /&gt;
&lt;br /&gt;
''Mentor: Reimar Döffinger''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] video work ===&lt;br /&gt;
Libavfilter is the FFmpeg filtering library that started as a 2007 SoC [[FFmpeg Summer Of Code#Video Filter API (AKA libavfilter)|project]]. It should replace the now removed vhook subsystem. Most of it is already part of the FFmpeg main source tree, but there a few bits remaining. This project would consist in the following tasks&lt;br /&gt;
&lt;br /&gt;
* Get the remaining bits of the SoC tree committed, including the ffmpeg.c and ffplay.c patch&lt;br /&gt;
* Get libavfilter enabled in the main SVN tree&lt;br /&gt;
* Write a watermark filter (this is one of the most commonly requested FFmpeg feature)&lt;br /&gt;
* Write a expand/pad filter (see [http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/85015] and [http://thread.gmane.org/gmane.comp.video.ffmpeg.soc/2779/]&lt;br /&gt;
* Port all MPlayer filters at libmbcodec/vf_* (do not forget asking the authors if it is ok to release them under the LGPL)&lt;br /&gt;
&lt;br /&gt;
see also this ffmpeg-devel message: [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-March/064817.html]&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[Libavfilter]] audio work ===&lt;br /&gt;
At the moment, FFmpeg filtering library has no support at all for handling audio. This task would consist of&lt;br /&gt;
&lt;br /&gt;
* Expanding the libavfilter framework to work with audio&lt;br /&gt;
* Writing a resampling/format conversion filter (starting with just a wrapping code at libavcodec/resample.c)&lt;br /&gt;
** Can it be made clear that ideally we'd want N-channel resampling? [[User:superdump|Rob]]&lt;br /&gt;
*** I'm listing here the tasks in the order I'd want see them done chronologically. I think first of all he should write a filter that is just a wrapper (and nothing more) of the code in resample.c. Making it more general is my point #4. I'm trying to focus in getting the general infrastructure in SVN, even if without a lot of fancy filters. [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Implement negotiation of sample format and number of channels analogously to the libavfilter colorspace negotiation&lt;br /&gt;
** Does this imply a channel mixing filter? This would be the second most desirable basic audio filter in my opinion. [[User:superdump|Rob]]&lt;br /&gt;
*** Yes, but it to begin with, he could just write a wrapper around libavcodec/resample.c (see my next point) [[User:Vitor|Vitor]] 17:52, 22 March 2009 (EDT)&lt;br /&gt;
* Make the resampling filter works for several combinations of sample format and channels&lt;br /&gt;
* Write a visualization filter as proof-of-concept of a filter that works with both video and audio&lt;br /&gt;
&lt;br /&gt;
''Mentor: To be determined, [[User:Vitor|Vitor Sessak]] if no one else shows up''&lt;br /&gt;
&lt;br /&gt;
=== [[AMR-NB]] decoder ===&lt;br /&gt;
&lt;br /&gt;
* Continue and complete the fundamental debugging of the floating point AMR-NB decoder&lt;br /&gt;
* Implement/reuse the missing post filters&lt;br /&gt;
* Clean up the code, refactor it as appropriate to share code with QCELP and others&lt;br /&gt;
* Submit for review and tend to review comments&lt;br /&gt;
* Implement further non-essential features such as comfort noise&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
=== QCELP decoder missing features ===&lt;br /&gt;
&lt;br /&gt;
* Implement missing features in the QCELP decoder&lt;br /&gt;
&lt;br /&gt;
''Mentor: [[User:superdump|Robert Swain]]''&lt;br /&gt;
&lt;br /&gt;
: This task is probably too small on its own so if you would like to do it, also look at the completion of the AMR-NB decoder task above as they may be merged into one CELP task.   --[[User:superdump|Robert Swain]]&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Finish SoC projects from previous years ===&lt;br /&gt;
Some projects are lingering in the dark unfinished. They should be picked up and made ready for inclusion. These projects are potentially less involved than starting from scratch, but also more useful for FFmpeg since the probability that the projects get finished should be higher. If some of them are deemed too easy, they could be combined.&lt;br /&gt;
&lt;br /&gt;
Unfinished projects from previous years are:&lt;br /&gt;
&lt;br /&gt;
2007:&lt;br /&gt;
* JPEG 2000 decoder&lt;br /&gt;
* JPEG 2000 encoder&lt;br /&gt;
* Dirac decoder&lt;br /&gt;
* Dirac encoder&lt;br /&gt;
* TS muxer&lt;br /&gt;
&lt;br /&gt;
2008:&lt;br /&gt;
* Generic frame-level multithreading support&lt;br /&gt;
* AAC-LC encoder&lt;br /&gt;
* WMA Pro decoder&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
''Mentor: Christian Schaller''&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;br /&gt;
&lt;br /&gt;
=== WTV (de)muxer ===&lt;br /&gt;
* Implement a demuxer (and possibly a muxer) for the [[WTV]] file format.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11342</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11342"/>
		<updated>2009-03-18T08:42:07Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* S/PDIF muxer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Choose a task from the [[Small FFmpeg Tasks|Small Tasks list]], send an email to FFmpeg-devel mailing list to inform that you are working on it (to avoid duplicated work) and when it is ready submit it for review at FFmpeg-devel. The task is considered completed when your patch is accepted to our main SVN tree.&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
Implement support in ffplay so that it is possible to output the audio stream over S/PDIF when playing a media file.&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== MPEG-4 ALS decoder ===&lt;br /&gt;
*primary goal: stream copy of ALS frames in MP4 files from reference encoder&lt;br /&gt;
** detect codec_id&lt;br /&gt;
** preserve extradata&lt;br /&gt;
*primary goal: write the decoder based on the ISO specification&lt;br /&gt;
** ISO/IEC 14496-3:2005/Amd.2:2006 and related corrigenda&lt;br /&gt;
*primary goal: decode files with basic ALS features&lt;br /&gt;
** integer samples&lt;br /&gt;
** LPC&lt;br /&gt;
** rice coding&lt;br /&gt;
** joint-stereo&lt;br /&gt;
*secondary goal: decode files with more advanced ALS features&lt;br /&gt;
** floating-point samples&lt;br /&gt;
** block switching&lt;br /&gt;
** LTP (long term prediction)&lt;br /&gt;
** BGMC (arithmetic coding)&lt;br /&gt;
** MCC (advanced multi-channel)&lt;br /&gt;
** RLSLMS (backward-adaptive prediction)&lt;br /&gt;
*secondary goal: pass the ISO conformance tests&lt;br /&gt;
*secondary goal: handle anything the reference encoder can come up with&lt;br /&gt;
''Mentor: Justin Ruggles''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
''Mentor: Christian Schaller''&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=11279</id>
		<title>Small FFmpeg Tasks</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=11279"/>
		<updated>2009-03-14T16:43:52Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: android amr task&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains ideas for small, relatively simple tasks for the [[FFmpeg]] project. People who might be interested in trying one of these tasks:&lt;br /&gt;
* Someone who wants to contribute to FFmpeg and needs to find a well-defined task to start with&lt;br /&gt;
* Someone who wishes to qualify for one of FFmpeg's coveted [[FFmpeg Summer Of Code|Summer of Code]] project slots&lt;br /&gt;
* An existing FFmpeg developer who has been away from the project for a while and needs a smaller task as motivation for re-learning the codebase&lt;br /&gt;
&lt;br /&gt;
For other tasks of varying difficulty, see the [[Interesting Patches]] page.&lt;br /&gt;
&lt;br /&gt;
'''If you would like to work on one of these tasks''', please take these steps:&lt;br /&gt;
* Subscribe to the [https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel FFmpeg development mailing list] and indicate your interest&lt;br /&gt;
* Ask [[User:Multimedia Mike|Multimedia Mike]] for a Wiki account so you can claim your task on this Wiki&lt;br /&gt;
&lt;br /&gt;
'''If you would like to add to this list''', please be prepared to explain some useful details about the task. Excessively vague tasks with no supporting details will be ruthlessly deleted.&lt;br /&gt;
&lt;br /&gt;
=== Finish up a previous incomplete SoC project ===&lt;br /&gt;
&lt;br /&gt;
Several SoC projects from previous years have not yet made it into FFmpeg. Taking any of them and finishing them up to the point that they can be included should make for a good qualification task. Check out the [[FFmpeg Summer Of Code]] overview page and look for the unfinished projects, like AMR-NB, Dirac, TS muxer, JPEG 2000.&lt;br /&gt;
&lt;br /&gt;
=== Generic Colorspace system ===&lt;br /&gt;
This task involves adding support more than 8 bits per component (Y on 10 bits, U on 10 bits, V on 10 bits for example)&lt;br /&gt;
and generic simple conversion to other colorspaces.&lt;br /&gt;
&lt;br /&gt;
''Does this have to do with revising FFmpeg's infrastructure? If so, then it doesn't feel like a qualification task. If it's something simpler, then the vague description does not convey that simplicity. Please expound.'' --[[User:Multimedia Mike|Multimedia Mike]] 12:56, 25 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
''I don't think so, extending PixFmt to extended structure with finegrained description like depth, range values, colorspace, sample period, and write generic simple conversion from all formats to all others, like suggested by Michael on the mailing list. Conversion routine can be a good qualification task for video encoders/decoders. What do you think ?&lt;br /&gt;
--[[User:Bcoudurier|Baptiste Coudurier]] 00:30, 29 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Make the SoC dts encoder multichannel capable ===&lt;br /&gt;
Here is a skeleton for a dts encoder http://svn.mplayerhq.hu/soc/dcaenc/, currently it can only encode stereo streams.&lt;br /&gt;
The task is to extend it to support 5.1 channels also.&lt;br /&gt;
&lt;br /&gt;
Specs and info can be found here:&lt;br /&gt;
http://wiki.multimedia.cx/index.php?title=DTS&lt;br /&gt;
&lt;br /&gt;
=== GIF LZW Encoder and extend Encoder and Decoder to support Animated GIFs ===&lt;br /&gt;
&lt;br /&gt;
Lzw encoder is already used for TIFF, it must be extended to support GIF flavor.&lt;br /&gt;
&lt;br /&gt;
=== Patch cleanup for MPEG 1 &amp;amp; 2 optimizations ===&lt;br /&gt;
Details are in the issue tracker: http://roundup.ffmpeg.org/roundup/ffmpeg/issue100&lt;br /&gt;
&lt;br /&gt;
=== Implement a Vivo demuxer for FFmpeg ===&lt;br /&gt;
Implement an FFmpeg demuxer for the [[Vivo]] file format. The best reference for understanding the format would be MPlayer's [http://svn.mplayerhq.hu/mplayer/trunk/libmpdemux/demux_viv.c?view=markup existing .viv demuxer].&lt;br /&gt;
&lt;br /&gt;
This task corresponds to issue 99: http://roundup.ffmpeg.org/roundup/ffmpeg/issue99&lt;br /&gt;
&lt;br /&gt;
''I am ready to help out with understanding MPlayer's demuxer, esp. MPlayer API stuff if necessary.&lt;br /&gt;
--[[User:Reimar|Reimar]] 15:46, 1 March 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Port missing demuxers from MPlayer to FFmpeg ===&lt;br /&gt;
MPlayer supports a few container formats in libmpdemux that are not yet present in libavformat. Porting them over and gettting them relicensed as LGPL or reimplementing them from scratch should make reasonable small tasks.&lt;br /&gt;
&lt;br /&gt;
''Jai Menon is working on porting the tivo demuxer''&lt;br /&gt;
&lt;br /&gt;
=== Optimal Huffman tables for (M)JPEG ===&lt;br /&gt;
This task is outlined at http://guru.multimedia.cx/small-tasks-for-ffmpeg/ and is tracked in the issue tracker: http://roundup.ffmpeg.org/roundup/ffmpeg/issue267&lt;br /&gt;
:Indrani Kundu Saha is currently working on this task as a qualification for Google SoC 2009 --[[User:Ce|Ce]] 19:41, 13 March 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
=== YOP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[Psygnosis YOP]] files. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[Psygnosis YOP|The Psygnosis YOP page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== M95 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[M95]] files. This will entail writing a new file demuxer and video decoder (the audio is already uncompressed), both of which are trivial by FFmpeg standards. [[M95|The M95 page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== BRP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[BRP]] files. This will entail writing a new file demuxer as well as a video decoder that can handle at least 2 variations of format data. Further, write an audio decoder for the custom DPCM format in the file. All of these tasks are considered trivial by FFmpeg standards. [[BRP|The BRP page]] contains the specs necessary to complete this task and points to downloadable samples for both known variations.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit Interplay Video Decoder ===&lt;br /&gt;
FFmpeg already supports [[Interplay MVE]] files with [[Interplay Video|8-bit video data]] inside. This task involves supporting 16-bit video data. The video encoding format is mostly the same but the pixel size is twice as large. Engage the ffmpeg-devel list to discuss how best to approach this task.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit VQA Video Decoder ===&lt;br /&gt;
FFmpeg already supports Westwood [[VQA]] files. However, there are 3 variations of its custom video codec. The first 2 are supported in FFmpeg. This task involves implementing support for the 3rd variation. Visit the VQA samples repository: http://samples.mplayerhq.hu/game-formats/vqa/ -- The files in the directories Tiberian Sun VQAs/, bladerunner/, and dune2000/ use the 3rd variation of this codec. The [[VQA|VQA page]] should link to all the details you need to support this format.&lt;br /&gt;
&lt;br /&gt;
=== HNM4 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[HNM4]] variant of the [[HNM]] format. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[HNM4|The HNM4 page]] contains the specs necessary to complete this task and links to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== Apple RPZA encoder ===&lt;br /&gt;
A patch was once sent to the ffmpeg-devel mailing list to include an encoder for the [[Apple RPZA]] video codec. That code can be found on the &amp;quot;[[Interesting Patches]]&amp;quot; page. This qualification task involves applying that patch so that it can compile with current FFmpeg SVN code and then cleaning it up per the standards of the project. Engage the mailing list to learn more about what to do.&lt;br /&gt;
&lt;br /&gt;
=== QuickTime Edit List Support ===&lt;br /&gt;
Implement edit list support in FFmpeg's QuickTime demuxer (libavformat/mov.c). This involves parsing the 'elst' atom in a QuickTime file. For a demonstration of how this is a problem, download the file menace00.mov from http://samples.mplayerhq.hu/mov/editlist/ and play it with ffplay or transcode it with ffmpeg. Notice that the audio and video are ever so slightly out of sync. Proper edit list support will solve that. Other samples in that directory also presumably exhibit edit list-related bugs. The [http://xine.cvs.sourceforge.net/xine/xine-lib/src/demuxers/demux_qt.c?view=markup Xine demuxer] has support for this, it might be useful for hints.&lt;br /&gt;
&lt;br /&gt;
:Krishna Gadepalli is working on this (patch submitted to ffmpeg-devel , currently in review) --[[User:Compn|Compn]] 10:35, 14 March 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
=== Reimplement libavcodec/fdctref.c ===&lt;br /&gt;
The forward double precision DCT in this file has a non-free license. We need an LGPL replacement of this file.&lt;br /&gt;
&lt;br /&gt;
=== Implement the Flash Screen Video codec version 2 ===&lt;br /&gt;
FFmpeg is missing both a decoder and an encoder. Would be nice to have that.&lt;br /&gt;
&lt;br /&gt;
=== Add wma fixed point decoder back into libavcodec ===&lt;br /&gt;
http://svn.rockbox.org/viewvc.cgi/trunk/apps/codecs/libwma/&lt;br /&gt;
Rockbox's fixed-point WMA decoder was adapted from the decoder in libavcodec.&lt;br /&gt;
&lt;br /&gt;
=== RealAudio 14.4 encoder ===&lt;br /&gt;
FFmpeg contains a decoder for [[RealAudio 14.4]], a farily simple integer CELP codec.  Write an encoder.  This would be a good qualification task for anyone interested in working on AMR, Speex, or sipr.&lt;br /&gt;
&lt;br /&gt;
=== VC1 timestamps in m2ts ===&lt;br /&gt;
&lt;br /&gt;
Codec copy of VC1 from m2ts currently doesn't work. Either extend the VC1 parser to output/fix timestamps, or fix the timestamps from m2ts demuxing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FLIC work ===&lt;br /&gt;
&lt;br /&gt;
Revise the [[Flic Video]] decoder at libavcodec/flicvideo.c to support video transported in AVI or MOV files while making sure that data coming from the usual FLI files still works. 'AFLC' and 'flic' FourCC samples are linked from the [[Flic Video]] page.&lt;br /&gt;
&lt;br /&gt;
=== Auravision video decoder ===&lt;br /&gt;
&lt;br /&gt;
Implement a decoder based on the speculation put forth on the wiki page for [[Auravision]] video. Samples are linked from the Wiki page. This project might demonstrate that the speculation on the Wiki page is incorrect. That is also useful information.&lt;br /&gt;
&lt;br /&gt;
=== Hook up QT YUV2 FourCC ===&lt;br /&gt;
&lt;br /&gt;
Wire up the YUV2 FourCC that can occur in [[MOV]] to the [[YUV 4:2:2]] colorspace. Samples are linked from the [[YUV 4:2:2]] wiki page.&lt;br /&gt;
[[Category:FFmpeg]]&lt;br /&gt;
&lt;br /&gt;
=== CorePNG Decoder ===&lt;br /&gt;
&lt;br /&gt;
Extend FFmpeg's PNG decoder to handle the difference frames and [[YUV]] colorspace added in [[CorePNG]]. Sample at [http://samples.mplayerhq.hu/V-codecs/PNG1/ http://samples.mplayerhq.hu/V-codecs/PNG1/]&lt;br /&gt;
&lt;br /&gt;
=== Extend PNG Decoder ===&lt;br /&gt;
&lt;br /&gt;
get this png working in ffpng: http://roundup.ffmpeg.org/roundup/ffmpeg/issue813 .&lt;br /&gt;
&lt;br /&gt;
=== CJPG format ===&lt;br /&gt;
&lt;br /&gt;
Extend FFmpeg's MJPEG decoder to handle the different frames/packing of CJPG. Samples at: http://roundup.ffmpeg.org/roundup/ffmpeg/issue777&lt;br /&gt;
&lt;br /&gt;
=== Optimize Theora Decoder ===&lt;br /&gt;
&lt;br /&gt;
speed up the Theora decoder. [http://www.archive.org/download/AlternativeFreedom/alternative_freedom.ogg 720:480 sample] hits 100% cpu on a p4 1.5ghz.&lt;br /&gt;
:''Do you have any specific optimizations tips? I like these small tasks to present a clearer jumping-off point. --[[User:Multimedia Mike|Multimedia Mike]] 18:57, 22 December 2008 (EST)''&lt;br /&gt;
::''did theora make use of the mmx/sse functions of ffvp3? i was looking at the xiph GSOC page which mentioned a similar task. --[[User:Compn|Compn]] 21:17, 22 December 2008 (EST)''&lt;br /&gt;
::''The major optimization I can think of is reworking coefficient decoding to avoid the continue in unpack_vlcs() (basically by having a list of coefficient VLCs for each position rather than for each block, then decoding them when actually rendering the block.) Unfortunately this also requires reworking render_slice() and reverse_dc_prediction() quite significantly which is why I haven't done it yet. [[User:Yuvi|Yuvi]] 18:25, 23 December 2008 (EST)''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== flip flag for upside-down codecs ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;about the flip, a patch that decodes images fliped when&lt;br /&gt;
codec_tag == ff_get_fourcc(&amp;quot;GEOX&amp;quot;) is welcome.&lt;br /&gt;
its a metter of 2lines manipulating data/linesize of imgages after&lt;br /&gt;
get_buffer() or something similar&lt;br /&gt;
[...]&lt;br /&gt;
-- &lt;br /&gt;
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
more info:&lt;br /&gt;
http://roundup.ffmpeg.org/roundup/ffmpeg/issue741&lt;br /&gt;
&lt;br /&gt;
=== lavf-based concatenation tool ===&lt;br /&gt;
&lt;br /&gt;
Unless we have multiple files input in FFmpeg, it would be nice to have some libavformat-based tool that would extract frames from multiple files (possible different containers as well) and put them into single one.&lt;br /&gt;
&lt;br /&gt;
=== cljr and vcr1 encoders ===&lt;br /&gt;
According to this: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-February/063647.html both of the encoders are disabled, and won't compile if enabled.  Michael would prefer to keep them around, and have someone grow them into full encoders.&lt;br /&gt;
&lt;br /&gt;
=== Add waveformat extensible support in wav muxer ===&lt;br /&gt;
http://article.gmane.org/gmane.comp.video.ffmpeg.devel/79503&lt;br /&gt;
Clean up that patch.&lt;br /&gt;
&lt;br /&gt;
=== implement some colorspace fourcc/codecs ===&lt;br /&gt;
some colorspace formats were uploaded to http://samples.mplayerhq.hu/V-codecs/&lt;br /&gt;
including:&lt;br /&gt;
 2vuy.avi&lt;br /&gt;
 CYUV.AVI&lt;br /&gt;
 P422.AVI&lt;br /&gt;
 UYNV.AVI&lt;br /&gt;
 UYNY.avi&lt;br /&gt;
 V422.AVI&lt;br /&gt;
 YUNV.AVI&lt;br /&gt;
 a12v.avi&lt;br /&gt;
 auv2.avi&lt;br /&gt;
 and V-codecs/yuv8/MAILTEST.AVI .&lt;br /&gt;
&lt;br /&gt;
step by step tutorial for adding new input formats to swscale:&lt;br /&gt;
 cd mplayer/libswscale/&lt;br /&gt;
 svn di -r20426:20427&lt;br /&gt;
 the hunks 3 and 5 you dont need, they are optional special converters&lt;br /&gt;
 also the change to isSupportedOut() you dont need&lt;br /&gt;
 above will add a new input format&lt;br /&gt;
&lt;br /&gt;
another example for adding an input format&lt;br /&gt;
 cd mplayer/libswscale/&lt;br /&gt;
 svn di -r20604:20605&lt;br /&gt;
&lt;br /&gt;
=== Create a libamr compatible library of the Android amr codec ===&lt;br /&gt;
http://android.git.kernel.org/?p=platform/external/opencore.git;a=tree;f=codecs_v2/audio/gsm_amr/amr_nb;h=4bac3ee5bd1ae8b6955f2d0bdac7de43c0d985c1;hb=HEAD&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=11265</id>
		<title>Small FFmpeg Tasks</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=11265"/>
		<updated>2009-03-13T09:37:03Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: done&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains ideas for small, relatively simple tasks for the [[FFmpeg]] project. People who might be interested in trying one of these tasks:&lt;br /&gt;
* Someone who wants to contribute to FFmpeg and needs to find a well-defined task to start with&lt;br /&gt;
* Someone who wishes to qualify for one of FFmpeg's coveted [[FFmpeg Summer Of Code|Summer of Code]] project slots&lt;br /&gt;
* An existing FFmpeg developer who has been away from the project for a while and needs a smaller task as motivation for re-learning the codebase&lt;br /&gt;
&lt;br /&gt;
For other tasks of varying difficulty, see the [[Interesting Patches]] page.&lt;br /&gt;
&lt;br /&gt;
'''If you would like to work on one of these tasks''', please take these steps:&lt;br /&gt;
* Subscribe to the [https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel FFmpeg development mailing list] and indicate your interest&lt;br /&gt;
* Ask [[User:Multimedia Mike|Multimedia Mike]] for a Wiki account so you can claim your task on this Wiki&lt;br /&gt;
&lt;br /&gt;
'''If you would like to add to this list''', please be prepared to explain some useful details about the task. Excessively vague tasks with no supporting details will be ruthlessly deleted.&lt;br /&gt;
&lt;br /&gt;
=== Finish up a previous incomplete SoC project ===&lt;br /&gt;
&lt;br /&gt;
Several SoC projects from previous years have not yet made it into FFmpeg. Taking any of them and finishing them up to the point that they can be included should make for a good qualification task. Check out the [[FFmpeg Summer Of Code]] overview page and look for the unfinished projects, like AMR-NB, Dirac, TS muxer, JPEG 2000.&lt;br /&gt;
&lt;br /&gt;
=== Generic Colorspace system ===&lt;br /&gt;
This task involves adding support more than 8 bits per component (Y on 10 bits, U on 10 bits, V on 10 bits for example)&lt;br /&gt;
and generic simple conversion to other colorspaces.&lt;br /&gt;
&lt;br /&gt;
''Does this have to do with revising FFmpeg's infrastructure? If so, then it doesn't feel like a qualification task. If it's something simpler, then the vague description does not convey that simplicity. Please expound.'' --[[User:Multimedia Mike|Multimedia Mike]] 12:56, 25 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
''I don't think so, extending PixFmt to extended structure with finegrained description like depth, range values, colorspace, sample period, and write generic simple conversion from all formats to all others, like suggested by Michael on the mailing list. Conversion routine can be a good qualification task for video encoders/decoders. What do you think ?&lt;br /&gt;
--[[User:Bcoudurier|Baptiste Coudurier]] 00:30, 29 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Make the SoC dts encoder multichannel capable ===&lt;br /&gt;
Here is a skeleton for a dts encoder http://svn.mplayerhq.hu/soc/dcaenc/, currently it can only encode stereo streams.&lt;br /&gt;
The task is to extend it to support 5.1 channels also.&lt;br /&gt;
&lt;br /&gt;
Specs and info can be found here:&lt;br /&gt;
http://wiki.multimedia.cx/index.php?title=DTS&lt;br /&gt;
&lt;br /&gt;
=== GIF LZW Encoder and extend Encoder and Decoder to support Animated GIFs ===&lt;br /&gt;
&lt;br /&gt;
Lzw encoder is already used for TIFF, it must be extended to support GIF flavor.&lt;br /&gt;
&lt;br /&gt;
=== Patch cleanup for MPEG 1 &amp;amp; 2 optimizations ===&lt;br /&gt;
Details are in the issue tracker: http://roundup.ffmpeg.org/roundup/ffmpeg/issue100&lt;br /&gt;
&lt;br /&gt;
=== Implement a Vivo demuxer for FFmpeg ===&lt;br /&gt;
Implement an FFmpeg demuxer for the [[Vivo]] file format. The best reference for understanding the format would be MPlayer's [http://svn.mplayerhq.hu/mplayer/trunk/libmpdemux/demux_viv.c?view=markup existing .viv demuxer].&lt;br /&gt;
&lt;br /&gt;
This task corresponds to issue 99: http://roundup.ffmpeg.org/roundup/ffmpeg/issue99&lt;br /&gt;
&lt;br /&gt;
''I am ready to help out with understanding MPlayer's demuxer, esp. MPlayer API stuff if necessary.&lt;br /&gt;
--[[User:Reimar|Reimar]] 15:46, 1 March 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Port missing demuxers from MPlayer to FFmpeg ===&lt;br /&gt;
MPlayer supports a few container formats in libmpdemux that are not yet present in libavformat. Porting them over and gettting them relicensed as LGPL or reimplementing them from scratch should make reasonable small tasks.&lt;br /&gt;
&lt;br /&gt;
''Jai Menon is working on porting the tivo demuxer''&lt;br /&gt;
&lt;br /&gt;
=== Optimal Huffman tables for (M)JPEG ===&lt;br /&gt;
This task is outlined at http://guru.multimedia.cx/small-tasks-for-ffmpeg/ and is tracked in the issue tracker: http://roundup.ffmpeg.org/roundup/ffmpeg/issue267&lt;br /&gt;
&lt;br /&gt;
=== YOP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[Psygnosis YOP]] files. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[Psygnosis YOP|The Psygnosis YOP page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== M95 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[M95]] files. This will entail writing a new file demuxer and video decoder (the audio is already uncompressed), both of which are trivial by FFmpeg standards. [[M95|The M95 page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== BRP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[BRP]] files. This will entail writing a new file demuxer as well as a video decoder that can handle at least 2 variations of format data. Further, write an audio decoder for the custom DPCM format in the file. All of these tasks are considered trivial by FFmpeg standards. [[BRP|The BRP page]] contains the specs necessary to complete this task and points to downloadable samples for both known variations.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit Interplay Video Decoder ===&lt;br /&gt;
FFmpeg already supports [[Interplay MVE]] files with [[Interplay Video|8-bit video data]] inside. This task involves supporting 16-bit video data. The video encoding format is mostly the same but the pixel size is twice as large. Engage the ffmpeg-devel list to discuss how best to approach this task.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit VQA Video Decoder ===&lt;br /&gt;
FFmpeg already supports Westwood [[VQA]] files. However, there are 3 variations of its custom video codec. The first 2 are supported in FFmpeg. This task involves implementing support for the 3rd variation. Visit the VQA samples repository: http://samples.mplayerhq.hu/game-formats/vqa/ -- The files in the directories Tiberian Sun VQAs/, bladerunner/, and dune2000/ use the 3rd variation of this codec. The [[VQA|VQA page]] should link to all the details you need to support this format.&lt;br /&gt;
&lt;br /&gt;
=== HNM4 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[HNM4]] variant of the [[HNM]] format. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[HNM4|The HNM4 page]] contains the specs necessary to complete this task and links to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== Apple RPZA encoder ===&lt;br /&gt;
A patch was once sent to the ffmpeg-devel mailing list to include an encoder for the [[Apple RPZA]] video codec. That code can be found on the &amp;quot;[[Interesting Patches]]&amp;quot; page. This qualification task involves applying that patch so that it can compile with current FFmpeg SVN code and then cleaning it up per the standards of the project. Engage the mailing list to learn more about what to do.&lt;br /&gt;
&lt;br /&gt;
=== QuickTime Edit List Support ===&lt;br /&gt;
Implement edit list support in FFmpeg's QuickTime demuxer (libavformat/mov.c). This involves parsing the 'elst' atom in a QuickTime file. For a demonstration of how this is a problem, download the file menace00.mov from http://samples.mplayerhq.hu/mov/editlist/ and play it with ffplay or transcode it with ffmpeg. Notice that the audio and video are ever so slightly out of sync. Proper edit list support will solve that. Other samples in that directory also presumably exhibit edit list-related bugs. The [http://xine.cvs.sourceforge.net/xine/xine-lib/src/demuxers/demux_qt.c?view=markup Xine demuxer] has support for this, it might be useful for hints.&lt;br /&gt;
&lt;br /&gt;
=== Reimplement libavcodec/fdctref.c ===&lt;br /&gt;
The forward double precision DCT in this file has a non-free license. We need an LGPL replacement of this file.&lt;br /&gt;
&lt;br /&gt;
=== Implement the Flash Screen Video codec version 2 ===&lt;br /&gt;
FFmpeg is missing both a decoder and an encoder. Would be nice to have that.&lt;br /&gt;
&lt;br /&gt;
=== Add wma fixed point decoder back into libavcodec ===&lt;br /&gt;
http://svn.rockbox.org/viewvc.cgi/trunk/apps/codecs/libwma/&lt;br /&gt;
Rockbox's fixed-point WMA decoder was adapted from the decoder in libavcodec.&lt;br /&gt;
&lt;br /&gt;
=== RealAudio 14.4 encoder ===&lt;br /&gt;
FFmpeg contains a decoder for [[RealAudio 14.4]], a farily simple integer CELP codec.  Write an encoder.  This would be a good qualification task for anyone interested in working on AMR, Speex, or sipr.&lt;br /&gt;
&lt;br /&gt;
=== VC1 timestamps in m2ts ===&lt;br /&gt;
&lt;br /&gt;
Codec copy of VC1 from m2ts currently doesn't work. Either extend the VC1 parser to output/fix timestamps, or fix the timestamps from m2ts demuxing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FLIC work ===&lt;br /&gt;
&lt;br /&gt;
Revise the [[Flic Video]] decoder at libavcodec/flicvideo.c to support video transported in AVI or MOV files while making sure that data coming from the usual FLI files still works. 'AFLC' and 'flic' FourCC samples are linked from the [[Flic Video]] page.&lt;br /&gt;
&lt;br /&gt;
=== Auravision video decoder ===&lt;br /&gt;
&lt;br /&gt;
Implement a decoder based on the speculation put forth on the wiki page for [[Auravision]] video. Samples are linked from the Wiki page. This project might demonstrate that the speculation on the Wiki page is incorrect. That is also useful information.&lt;br /&gt;
&lt;br /&gt;
=== Hook up QT YUV2 FourCC ===&lt;br /&gt;
&lt;br /&gt;
Wire up the YUV2 FourCC that can occur in [[MOV]] to the [[YUV 4:2:2]] colorspace. Samples are linked from the [[YUV 4:2:2]] wiki page.&lt;br /&gt;
[[Category:FFmpeg]]&lt;br /&gt;
&lt;br /&gt;
=== CorePNG Decoder ===&lt;br /&gt;
&lt;br /&gt;
Extend FFmpeg's PNG decoder to handle the difference frames and [[YUV]] colorspace added in [[CorePNG]]. Sample at [http://samples.mplayerhq.hu/V-codecs/PNG1/ http://samples.mplayerhq.hu/V-codecs/PNG1/]&lt;br /&gt;
&lt;br /&gt;
=== Extend PNG Decoder ===&lt;br /&gt;
&lt;br /&gt;
get this png working in ffpng: http://roundup.ffmpeg.org/roundup/ffmpeg/issue813 .&lt;br /&gt;
&lt;br /&gt;
=== CJPG format ===&lt;br /&gt;
&lt;br /&gt;
Extend FFmpeg's MJPEG decoder to handle the different frames/packing of CJPG. Samples at: http://roundup.ffmpeg.org/roundup/ffmpeg/issue777&lt;br /&gt;
&lt;br /&gt;
=== Optimize Theora Decoder ===&lt;br /&gt;
&lt;br /&gt;
speed up the Theora decoder. [http://www.archive.org/download/AlternativeFreedom/alternative_freedom.ogg 720:480 sample] hits 100% cpu on a p4 1.5ghz.&lt;br /&gt;
:''Do you have any specific optimizations tips? I like these small tasks to present a clearer jumping-off point. --[[User:Multimedia Mike|Multimedia Mike]] 18:57, 22 December 2008 (EST)''&lt;br /&gt;
::''did theora make use of the mmx/sse functions of ffvp3? i was looking at the xiph GSOC page which mentioned a similar task. --[[User:Compn|Compn]] 21:17, 22 December 2008 (EST)''&lt;br /&gt;
::''The major optimization I can think of is reworking coefficient decoding to avoid the continue in unpack_vlcs() (basically by having a list of coefficient VLCs for each position rather than for each block, then decoding them when actually rendering the block.) Unfortunately this also requires reworking render_slice() and reverse_dc_prediction() quite significantly which is why I haven't done it yet. [[User:Yuvi|Yuvi]] 18:25, 23 December 2008 (EST)''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== flip flag for upside-down codecs ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;about the flip, a patch that decodes images fliped when&lt;br /&gt;
codec_tag == ff_get_fourcc(&amp;quot;GEOX&amp;quot;) is welcome.&lt;br /&gt;
its a metter of 2lines manipulating data/linesize of imgages after&lt;br /&gt;
get_buffer() or something similar&lt;br /&gt;
[...]&lt;br /&gt;
-- &lt;br /&gt;
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
more info:&lt;br /&gt;
http://roundup.ffmpeg.org/roundup/ffmpeg/issue741&lt;br /&gt;
&lt;br /&gt;
=== lavf-based concatenation tool ===&lt;br /&gt;
&lt;br /&gt;
Unless we have multiple files input in FFmpeg, it would be nice to have some libavformat-based tool that would extract frames from multiple files (possible different containers as well) and put them into single one.&lt;br /&gt;
&lt;br /&gt;
=== cljr and vcr1 encoders ===&lt;br /&gt;
According to this: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-February/063647.html both of the encoders are disabled, and won't compile if enabled.  Michael would prefer to keep them around, and have someone grow them into full encoders.&lt;br /&gt;
&lt;br /&gt;
=== Add waveformat extensible support in wav muxer ===&lt;br /&gt;
http://article.gmane.org/gmane.comp.video.ffmpeg.devel/79503&lt;br /&gt;
Clean up that patch.&lt;br /&gt;
&lt;br /&gt;
=== implement some colorspace fourcc/codecs ===&lt;br /&gt;
some colorspace formats were uploaded to http://samples.mplayerhq.hu/V-codecs/&lt;br /&gt;
including:&lt;br /&gt;
 2vuy.avi&lt;br /&gt;
 CYUV.AVI&lt;br /&gt;
 P422.AVI&lt;br /&gt;
 UYNV.AVI&lt;br /&gt;
 UYNY.avi&lt;br /&gt;
 V422.AVI&lt;br /&gt;
 YUNV.AVI&lt;br /&gt;
 a12v.avi&lt;br /&gt;
 auv2.avi&lt;br /&gt;
 and V-codecs/yuv8/MAILTEST.AVI .&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11255</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11255"/>
		<updated>2009-03-12T10:48:48Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* GStreamer input */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Pick a task from the Small Tasks list and submit it for review.&lt;br /&gt;
&lt;br /&gt;
http://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
''Mentor: Christian Schaller''&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11254</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11254"/>
		<updated>2009-03-12T10:46:46Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: qualification tasks&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== Qualification tasks ==&lt;br /&gt;
&lt;br /&gt;
For us to consider your application for SoC we require a completed qualification task. Pick a task from the Small Tasks list and submit it for review.&lt;br /&gt;
&lt;br /&gt;
http://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11251</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11251"/>
		<updated>2009-03-11T12:52:10Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Sort of done&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
Not certain there will be a GSoC 2009. But we will list projects suggestions.&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11250</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=11250"/>
		<updated>2009-03-11T12:51:37Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: test task&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
Not certain there will be a GSoC 2009. But we will list projects suggestions.&lt;br /&gt;
&lt;br /&gt;
This list is still a work-in-progress, please see also the [[Talk:FFmpeg Summer Of Code 2009|Talk Page]].&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== Implement a better regressions test system ===&lt;br /&gt;
* Split up the current regtests&lt;br /&gt;
* Add tests for all the missing formats and codecs to FATE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== i263 Decoder ===&lt;br /&gt;
* Specification: [[I263 | I263 Format Specification at MultimediaWiki]]&lt;br /&gt;
* Sources: [http://multimedia.cx/I263Src.zip  GPLed I263 decoder]&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/V-codecs/I263/&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;br /&gt;
&lt;br /&gt;
=== AACS implementation ===&lt;br /&gt;
* Add the ability to encode and decode using Advanced Access Content System to FFmpeg.&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Interlaced Support ===&lt;br /&gt;
* Add support for interlaced streams as used in Bluray recordings to the VC-1 decoder.&lt;br /&gt;
* This includes fixing some reference streams&lt;br /&gt;
&lt;br /&gt;
=== Improve Ratecontrol ===&lt;br /&gt;
*Primary goal 1: Fast heuristic VBV compliant per macroblock ratecontrol which has a better PSNR/bitrate and better subjective quality/bitrate than the current code. &lt;br /&gt;
*Primary goal 2: VBV compliant, rate distortion optimal per macroblock ratecontrol using the viterbi algorithm. &lt;br /&gt;
*Secondary goal 1: Fast heuristic scene change detection which detects scene changes more accurately, has better PSNR/bitrate and subjective quality/bitrate than the current heuristic. &lt;br /&gt;
*Secondary goal 2: Rate distortion optimal (for the current picture) scene change detection. &lt;br /&gt;
*Secondary goal 3: B frames decision which is faster and or has a higher PSNR/bitrate and subjective quality/bitrate than the current code.&lt;br /&gt;
&lt;br /&gt;
=== WMA lossless ===&lt;br /&gt;
* Implement a decoder for WMA lossless (0x0163)&lt;br /&gt;
* Reuse as much libavcodec code as possible&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/WMA9/wma_0x163.wma http://samples.mplayerhq.hu/A-codecs/lossless/luckynight.wma&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=11248</id>
		<title>Small FFmpeg Tasks</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=11248"/>
		<updated>2009-03-11T08:50:32Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: multichannel wav suggestion&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains ideas for small, relatively simple tasks for the [[FFmpeg]] project. People who might be interested in trying one of these tasks:&lt;br /&gt;
* Someone who wants to contribute to FFmpeg and needs to find a well-defined task to start with&lt;br /&gt;
* Someone who wishes to qualify for one of FFmpeg's coveted [[FFmpeg Summer Of Code|Summer of Code]] project slots&lt;br /&gt;
* An existing FFmpeg developer who has been away from the project for a while and needs a smaller task as motivation for re-learning the codebase&lt;br /&gt;
&lt;br /&gt;
For other tasks of varying difficulty, see the [[Interesting Patches]] page.&lt;br /&gt;
&lt;br /&gt;
'''If you would like to work on one of these tasks''', please take these steps:&lt;br /&gt;
* Subscribe to the [https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel FFmpeg development mailing list] and indicate your interest&lt;br /&gt;
* Ask [[User:Multimedia Mike|Multimedia Mike]] for a Wiki account so you can claim your task on this Wiki&lt;br /&gt;
&lt;br /&gt;
'''If you would like to add to this list''', please be prepared to explain some useful details about the task. Excessively vague tasks with no supporting details will be ruthlessly deleted.&lt;br /&gt;
&lt;br /&gt;
=== Finish up a previous incomplete SoC project ===&lt;br /&gt;
&lt;br /&gt;
Several SoC projects from previous years have not yet made it into FFmpeg. Taking any of them and finishing them up to the point that they can be included should make for a good qualification task. Check out the [[FFmpeg Summer Of Code]] overview page and look for the unfinished projects, like AMR-NB, Dirac, TS muxer, JPEG 2000.&lt;br /&gt;
&lt;br /&gt;
=== Generic Colorspace system ===&lt;br /&gt;
This task involves adding support more than 8 bits per component (Y on 10 bits, U on 10 bits, V on 10 bits for example)&lt;br /&gt;
and generic simple conversion to other colorspaces.&lt;br /&gt;
&lt;br /&gt;
''Does this have to do with revising FFmpeg's infrastructure? If so, then it doesn't feel like a qualification task. If it's something simpler, then the vague description does not convey that simplicity. Please expound.'' --[[User:Multimedia Mike|Multimedia Mike]] 12:56, 25 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
''I don't think so, extending PixFmt to extended structure with finegrained description like depth, range values, colorspace, sample period, and write generic simple conversion from all formats to all others, like suggested by Michael on the mailing list. Conversion routine can be a good qualification task for video encoders/decoders. What do you think ?&lt;br /&gt;
--[[User:Bcoudurier|Baptiste Coudurier]] 00:30, 29 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Make the SoC dts encoder multichannel capable ===&lt;br /&gt;
Here is a skeleton for a dts encoder http://svn.mplayerhq.hu/soc/dcaenc/, currently it can only encode stereo streams.&lt;br /&gt;
The task is to extend it to support 5.1 channels also.&lt;br /&gt;
&lt;br /&gt;
Specs and info can be found here:&lt;br /&gt;
http://wiki.multimedia.cx/index.php?title=DTS&lt;br /&gt;
&lt;br /&gt;
=== GIF LZW Encoder and extend Encoder and Decoder to support Animated GIFs ===&lt;br /&gt;
&lt;br /&gt;
Lzw encoder is already used for TIFF, it must be extended to support GIF flavor.&lt;br /&gt;
&lt;br /&gt;
=== Patch cleanup for MPEG 1 &amp;amp; 2 optimizations ===&lt;br /&gt;
Details are in the issue tracker: http://roundup.ffmpeg.org/roundup/ffmpeg/issue100&lt;br /&gt;
&lt;br /&gt;
=== Implement a Vivo demuxer for FFmpeg ===&lt;br /&gt;
Implement an FFmpeg demuxer for the [[Vivo]] file format. The best reference for understanding the format would be MPlayer's [http://svn.mplayerhq.hu/mplayer/trunk/libmpdemux/demux_viv.c?view=markup existing .viv demuxer].&lt;br /&gt;
&lt;br /&gt;
This task corresponds to issue 99: http://roundup.ffmpeg.org/roundup/ffmpeg/issue99&lt;br /&gt;
&lt;br /&gt;
''I am ready to help out with understanding MPlayer's demuxer, esp. MPlayer API stuff if necessary.&lt;br /&gt;
--[[User:Reimar|Reimar]] 15:46, 1 March 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Port missing demuxers from MPlayer to FFmpeg ===&lt;br /&gt;
MPlayer supports a few container formats in libmpdemux that are not yet present in libavformat. Porting them over and gettting them relicensed as LGPL or reimplementing them from scratch should make reasonable small tasks.&lt;br /&gt;
&lt;br /&gt;
''Jai Menon is working on porting the tivo demuxer''&lt;br /&gt;
&lt;br /&gt;
=== Optimal Huffman tables for (M)JPEG ===&lt;br /&gt;
This task is outlined at http://guru.multimedia.cx/small-tasks-for-ffmpeg/ and is tracked in the issue tracker: http://roundup.ffmpeg.org/roundup/ffmpeg/issue267&lt;br /&gt;
&lt;br /&gt;
=== YOP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[Psygnosis YOP]] files. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[Psygnosis YOP|The Psygnosis YOP page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== M95 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[M95]] files. This will entail writing a new file demuxer and video decoder (the audio is already uncompressed), both of which are trivial by FFmpeg standards. [[M95|The M95 page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== BRP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[BRP]] files. This will entail writing a new file demuxer as well as a video decoder that can handle at least 2 variations of format data. Further, write an audio decoder for the custom DPCM format in the file. All of these tasks are considered trivial by FFmpeg standards. [[BRP|The BRP page]] contains the specs necessary to complete this task and points to downloadable samples for both known variations.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit Interplay Video Decoder ===&lt;br /&gt;
FFmpeg already supports [[Interplay MVE]] files with [[Interplay Video|8-bit video data]] inside. This task involves supporting 16-bit video data. The video encoding format is mostly the same but the pixel size is twice as large. Engage the ffmpeg-devel list to discuss how best to approach this task.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit VQA Video Decoder ===&lt;br /&gt;
FFmpeg already supports Westwood [[VQA]] files. However, there are 3 variations of its custom video codec. The first 2 are supported in FFmpeg. This task involves implementing support for the 3rd variation. Visit the VQA samples repository: http://samples.mplayerhq.hu/game-formats/vqa/ -- The files in the directories Tiberian Sun VQAs/, bladerunner/, and dune2000/ use the 3rd variation of this codec. The [[VQA|VQA page]] should link to all the details you need to support this format.&lt;br /&gt;
&lt;br /&gt;
=== HNM4 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[HNM4]] variant of the [[HNM]] format. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[HNM4|The HNM4 page]] contains the specs necessary to complete this task and links to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== Apple RPZA encoder ===&lt;br /&gt;
A patch was once sent to the ffmpeg-devel mailing list to include an encoder for the [[Apple RPZA]] video codec. That code can be found on the &amp;quot;[[Interesting Patches]]&amp;quot; page. This qualification task involves applying that patch so that it can compile with current FFmpeg SVN code and then cleaning it up per the standards of the project. Engage the mailing list to learn more about what to do.&lt;br /&gt;
&lt;br /&gt;
=== QuickTime Edit List Support ===&lt;br /&gt;
Implement edit list support in FFmpeg's QuickTime demuxer (libavformat/mov.c). This involves parsing the 'elst' atom in a QuickTime file. For a demonstration of how this is a problem, download the file menace00.mov from http://samples.mplayerhq.hu/mov/editlist/ and play it with ffplay or transcode it with ffmpeg. Notice that the audio and video are ever so slightly out of sync. Proper edit list support will solve that. Other samples in that directory also presumably exhibit edit list-related bugs. The [http://xine.cvs.sourceforge.net/xine/xine-lib/src/demuxers/demux_qt.c?view=markup Xine demuxer] has support for this, it might be useful for hints.&lt;br /&gt;
&lt;br /&gt;
=== Reimplement libavcodec/fdctref.c ===&lt;br /&gt;
The forward double precision DCT in this file has a non-free license. We need an LGPL replacement of this file.&lt;br /&gt;
&lt;br /&gt;
=== Implement the Flash Screen Video codec version 2 ===&lt;br /&gt;
FFmpeg is missing both a decoder and an encoder. Would be nice to have that.&lt;br /&gt;
&lt;br /&gt;
=== Add wma fixed point decoder back into libavcodec ===&lt;br /&gt;
http://svn.rockbox.org/viewvc.cgi/trunk/apps/codecs/libwma/&lt;br /&gt;
Rockbox's fixed-point WMA decoder was adapted from the decoder in libavcodec.&lt;br /&gt;
&lt;br /&gt;
=== RealAudio 14.4 encoder ===&lt;br /&gt;
FFmpeg contains a decoder for [[RealAudio 14.4]], a farily simple integer CELP codec.  Write an encoder.  This would be a good qualification task for anyone interested in working on AMR, Speex, or sipr.&lt;br /&gt;
&lt;br /&gt;
=== VC1 timestamps in m2ts ===&lt;br /&gt;
&lt;br /&gt;
Codec copy of VC1 from m2ts currently doesn't work. Either extend the VC1 parser to output/fix timestamps, or fix the timestamps from m2ts demuxing.&lt;br /&gt;
&lt;br /&gt;
''was: Add support for newer codecs such as [[Dirac]] and [[VC1]] to FFmpeg's [[Matroska]] muxer.''&lt;br /&gt;
:''[[Dirac]] should mux perfectly as of r16261. What about muxing [[VC1]] doesn't work? A quick -vcodec copy from wmv didn't throw any errors. -[[User:Yuvi|Yuvi]] 05:31, 3 January 2009 (EST)''&lt;br /&gt;
::''Yes, WMV3 works fine.  There was a report that muxing VC1 from m2ts didn't work.  If this does work then feel free to remove the task.  Also the demuxer doesn't recognize V_VC1.  ''-[[User:Mkhodor|Mkhodor]] 22:58, 4 January 2009 (EST)&lt;br /&gt;
:::''From m2ts, ffmpeg gives &amp;quot;error, pts &amp;lt; dts&amp;quot; which means that the timestamps coming out of the m2ts demuxer are invalid. I dunno if it would be easier to fix the demuxer or just extend the parser to fix/fill them in. For V_VC1, is that actually used by a muxer now? According to http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-August/034825.html it was a brief mistake that isn't supposed to be used. -[[User:Yuvi|Yuvi]] 02:50, 5 January 2009 (EST)&lt;br /&gt;
::::''I don't know of any other muxers that use it, so I made a note on the [[Matroska]] page that it is deprecated.'' -[[User:Mkhodor|Mkhodor]] 10:47, 13 January 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
=== [[I263]] work ===&lt;br /&gt;
&lt;br /&gt;
This codec is supported only partially by FFmpeg. Add full support for it basing on the LGPL source code at http://multimedia.cx/I263Src.zip&lt;br /&gt;
&lt;br /&gt;
=== FLIC work ===&lt;br /&gt;
&lt;br /&gt;
Revise the [[Flic Video]] decoder at libavcodec/flicvideo.c to support video transported in AVI or MOV files while making sure that data coming from the usual FLI files still works. 'AFLC' and 'flic' FourCC samples are linked from the [[Flic Video]] page.&lt;br /&gt;
&lt;br /&gt;
=== Auravision video decoder ===&lt;br /&gt;
&lt;br /&gt;
Implement a decoder based on the speculation put forth on the wiki page for [[Auravision]] video. Samples are linked from the Wiki page. This project might demonstrate that the speculation on the Wiki page is incorrect. That is also useful information.&lt;br /&gt;
&lt;br /&gt;
=== Hook up QT YUV2 FourCC ===&lt;br /&gt;
&lt;br /&gt;
Wire up the YUV2 FourCC that can occur in [[MOV]] to the [[YUV 4:2:2]] colorspace. Samples are linked from the [[YUV 4:2:2]] wiki page.&lt;br /&gt;
[[Category:FFmpeg]]&lt;br /&gt;
&lt;br /&gt;
=== CorePNG Decoder ===&lt;br /&gt;
&lt;br /&gt;
Extend FFmpeg's PNG decoder to handle the difference frames and [[YUV]] colorspace added in [[CorePNG]]. Sample at [http://samples.mplayerhq.hu/V-codecs/PNG1/ http://samples.mplayerhq.hu/V-codecs/PNG1/]&lt;br /&gt;
&lt;br /&gt;
=== Extend PNG Decoder ===&lt;br /&gt;
&lt;br /&gt;
get this png working in ffpng: http://roundup.ffmpeg.org/roundup/ffmpeg/issue813 .&lt;br /&gt;
&lt;br /&gt;
=== CJPG format ===&lt;br /&gt;
&lt;br /&gt;
Extend FFmpeg's MJPEG decoder to handle the different frames/packing of CJPG. Samples at: http://roundup.ffmpeg.org/roundup/ffmpeg/issue777&lt;br /&gt;
&lt;br /&gt;
=== Optimize Theora Decoder ===&lt;br /&gt;
&lt;br /&gt;
speed up the Theora decoder. [http://www.archive.org/download/AlternativeFreedom/alternative_freedom.ogg 720:480 sample] hits 100% cpu on a p4 1.5ghz.&lt;br /&gt;
:''Do you have any specific optimizations tips? I like these small tasks to present a clearer jumping-off point. --[[User:Multimedia Mike|Multimedia Mike]] 18:57, 22 December 2008 (EST)''&lt;br /&gt;
::''did theora make use of the mmx/sse functions of ffvp3? i was looking at the xiph GSOC page which mentioned a similar task. --[[User:Compn|Compn]] 21:17, 22 December 2008 (EST)''&lt;br /&gt;
::''The major optimization I can think of is reworking coefficient decoding to avoid the continue in unpack_vlcs() (basically by having a list of coefficient VLCs for each position rather than for each block, then decoding them when actually rendering the block.) Unfortunately this also requires reworking render_slice() and reverse_dc_prediction() quite significantly which is why I haven't done it yet. [[User:Yuvi|Yuvi]] 18:25, 23 December 2008 (EST)''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== flip flag for upside-down codecs ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;about the flip, a patch that decodes images fliped when&lt;br /&gt;
codec_tag == ff_get_fourcc(&amp;quot;GEOX&amp;quot;) is welcome.&lt;br /&gt;
its a metter of 2lines manipulating data/linesize of imgages after&lt;br /&gt;
get_buffer() or something similar&lt;br /&gt;
[...]&lt;br /&gt;
-- &lt;br /&gt;
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
more info:&lt;br /&gt;
http://roundup.ffmpeg.org/roundup/ffmpeg/issue741&lt;br /&gt;
&lt;br /&gt;
=== lavf-based concatenation tool ===&lt;br /&gt;
&lt;br /&gt;
Unless we have multiple files input in FFmpeg, it would be nice to have some libavformat-based tool that would extract frames from multiple files (possible different containers as well) and put them into single one.&lt;br /&gt;
&lt;br /&gt;
=== cljr and vcr1 encoders ===&lt;br /&gt;
According to this: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-February/063647.html both of the encoders are disabled, and won't compile if enabled.  Michael would prefer to keep them around, and have someone grow them into full encoders.&lt;br /&gt;
&lt;br /&gt;
=== Add waveformat extensible support in wav muxer ===&lt;br /&gt;
http://article.gmane.org/gmane.comp.video.ffmpeg.devel/79503&lt;br /&gt;
Clean up that patch.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=10992</id>
		<title>FFmpeg Release Plan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=10992"/>
		<updated>2009-01-28T08:19:50Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: My opinion&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideas and suggestions concerning FFmpeg software releases.&lt;br /&gt;
&lt;br /&gt;
==Things that need doing==&lt;br /&gt;
* Fix DV regression tests on PPC&lt;br /&gt;
* Approximately 95% test coverage in FATE.&lt;br /&gt;
* Add an API/ABI changelog&lt;br /&gt;
&lt;br /&gt;
==Release Criteria==&lt;br /&gt;
* make test passes.&lt;br /&gt;
* FATE test coverage passes for all platforms of interest.&lt;br /&gt;
* All 'important' bugs reported in roundup fixed/closed.&lt;br /&gt;
* No half-implemented functionality that may break existing user apps.&lt;br /&gt;
* Endurance/memleak testing on film-length files.&lt;br /&gt;
&lt;br /&gt;
==Rationale for releases==&lt;br /&gt;
* Provide endorsed snapshots for external software developers to develop against&lt;br /&gt;
* Avoid sitation where external software developers using SVN head when head has transient limitations.&lt;br /&gt;
* Discourage external software developers using ancient snapshots that we don't support.&lt;br /&gt;
&lt;br /&gt;
== Release Process==&lt;br /&gt;
* Do NOT create a branch in SVN&lt;br /&gt;
* Get source code&lt;br /&gt;
* Create tarball&lt;br /&gt;
* Checksums?&lt;br /&gt;
* Upload to ffmpeg.org&lt;br /&gt;
* Update website&lt;br /&gt;
* Who needs to be notified?&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=10982</id>
		<title>FFmpeg Release Plan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Release_Plan&amp;diff=10982"/>
		<updated>2009-01-27T13:14:06Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideas and suggestions concerning FFmpeg software releases.&lt;br /&gt;
&lt;br /&gt;
==Things that need doing==&lt;br /&gt;
* Fix DV regression tests on PPC&lt;br /&gt;
* Approximately 95% test coverage in FATE.&lt;br /&gt;
* Add an API/ABI changelog&lt;br /&gt;
&lt;br /&gt;
==Release Criteria==&lt;br /&gt;
* make test passes.&lt;br /&gt;
* FATE test converage passes for all platforms of interest.&lt;br /&gt;
* All 'important' bugs reported in roundup fixed/closed.&lt;br /&gt;
* No half-implemented functionality that may break existing user apps.&lt;br /&gt;
* Endurance/memleak testing on film-length files.&lt;br /&gt;
&lt;br /&gt;
==Rationale for releases==&lt;br /&gt;
* Provide endorsed snapshots for external software developers to develop against&lt;br /&gt;
* Avoid sitation where external software developers using SVN head when head has transient limitations.&lt;br /&gt;
* Discourage external software developers using ancient snapshots that we don't support.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10827</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10827"/>
		<updated>2009-01-12T10:30:37Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Add subtitle support suggestion&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
Not certain there will be a GSoC 2009. But we will list projects suggestions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== H264 Parser ===&lt;br /&gt;
* Extend the H264 parser to correctly output timestamps for samples containing PAFF encoded fields: This should fix transcoding [http://samples.mplayerhq.hu/V-codecs/h264/sony-hdr-cx6-avchd-interlaced-decoding-problem/sony-hdr-cx-6-avchd-1080i-9-seconds.mts this sample]&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;br /&gt;
&lt;br /&gt;
=== AMR-WB Decoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== GSM Decoder ===&lt;br /&gt;
* Specification + sample implementation: http://kbs.cs.tu-berlin.de/~jutta/toast.html&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/GSM/&lt;br /&gt;
Also see [[GSM]].&lt;br /&gt;
&lt;br /&gt;
=== Sipr Decoder ===&lt;br /&gt;
* Specification: will be provided&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/real/AC-sipr/&lt;br /&gt;
Also see [[RealAudio sipr]] and [[Interesting_Patches#RealAudio_SIPR_.4016k_decoder_and_demuxer_by_Vladimir_Voroshilov|this patch]].&lt;br /&gt;
&lt;br /&gt;
=== Speex Decoder ===&lt;br /&gt;
* Specification:  http://speex.org/docs/&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/speex/&lt;br /&gt;
Also see [[Speex]].&lt;br /&gt;
&lt;br /&gt;
=== i263 Decoder ===&lt;br /&gt;
* Specification: [[I263 | I263 Format Specification at MultimediaWiki]]&lt;br /&gt;
* Sources: [http://multimedia.cx/I263Src.zip  GPLed I263 decoder]&lt;br /&gt;
* Sample files: http://samples.mplayerhq.hu/V-codecs/I263/&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Encoder ===&lt;br /&gt;
* Specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/A-codecs/amr/&lt;br /&gt;
Also see [[AMR]].&lt;br /&gt;
&lt;br /&gt;
=== VP6 Encoder ===&lt;br /&gt;
* Specification: [[On2 VP6]]&lt;br /&gt;
* Samples: http://samples.mplayerhq.hu/V-codecs/VP6/&lt;br /&gt;
&lt;br /&gt;
=== WMV3 Encoder ===&lt;br /&gt;
* Clearly defined task&lt;br /&gt;
* Primary goal: Encode video sequences such that they can be decoded by a Windows Media player.&lt;br /&gt;
&lt;br /&gt;
This could either be done by improving [[Interesting Patches#WMV3 encoder by Denis Fortin|this patch]] or by writing the encoder from scratch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Improve subtitle support ===&lt;br /&gt;
&lt;br /&gt;
* Add text-to-bitmap conversion functions&lt;br /&gt;
* One with hard-coded bitmaps for characters&lt;br /&gt;
* One that utilizes freetype&lt;br /&gt;
* Function used will be chosen upon compilation&lt;br /&gt;
&lt;br /&gt;
Adjust existing subtitle support to new ABI&lt;br /&gt;
* ABI change: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-January/058521.html&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10745</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10745"/>
		<updated>2009-01-04T18:42:28Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* 2nd Tier Project Proposals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
Not certain there will be a GSoC 2009. But we will list projects suggestions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;br /&gt;
&lt;br /&gt;
=== libvo ===&lt;br /&gt;
* Port MPlayer's libvo to ffplay&lt;br /&gt;
* Note that this does not just mean to produce a working hack so that ffplay can use xv, but a clean and acceptable wrapper for (most of) libvo.&lt;br /&gt;
&lt;br /&gt;
=== H264 Parser ===&lt;br /&gt;
* Extend the H264 parser to correctly output timestamps for samples containing PAFF encoded fields: This should fix transcoding [http://samples.mplayerhq.hu/V-codecs/h264/sony-hdr-cx6-avchd-interlaced-decoding-problem/sony-hdr-cx-6-avchd-1080i-9-seconds.mts this sample]&lt;br /&gt;
&lt;br /&gt;
=== GStreamer input ===&lt;br /&gt;
* Like we have vfw input we could have a gstreamer input format also. This would enable support of wmapro and wmalossless until these formats are RE'd.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Talk:FFmpeg_Summer_Of_Code_2009&amp;diff=10723</id>
		<title>Talk:FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Talk:FFmpeg_Summer_Of_Code_2009&amp;diff=10723"/>
		<updated>2008-12-31T11:22:09Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== S/PDIF muxer ===&lt;br /&gt;
&lt;br /&gt;
Is there any specific qualification task you would like done for this? -- Jai&lt;br /&gt;
&lt;br /&gt;
:Working Jpeg2000 decoder ;), cleaning up this http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2005-June/001673.html would be welcome. It's a rpza encoder. --[[User:Merbanan|Merbanan]] 06:22, 31 December 2008 (EST)&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10671</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10671"/>
		<updated>2008-12-17T10:00:44Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* S/PDIF muxer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
Not certain there will be a GSoC 2009. But we will list projects suggestions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux:&lt;br /&gt;
** DTS, all 3 packing modes and the usable HD extensions&lt;br /&gt;
** AC3, eAC3 also&lt;br /&gt;
** MLP&lt;br /&gt;
** PCM&lt;br /&gt;
** WMApro&lt;br /&gt;
** AAC&lt;br /&gt;
** Mpeg-audio, layer 2 and 3&lt;br /&gt;
&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10670</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10670"/>
		<updated>2008-12-17T09:53:14Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Added flashsv2 project&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
Not certain there will be a GSoC 2009. But we will list projects suggestions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux DTS/AC3/PCM/WMApro to spdif compatible frames.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
=== Flash Screen video 2 codec ===&lt;br /&gt;
* Implement a flashsv2 decoder and encoder. And extend the current flashsv encoder to support optimal 2-pass encoding.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10669</id>
		<title>FFmpeg Summer Of Code 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_Summer_Of_Code_2009&amp;diff=10669"/>
		<updated>2008-12-17T09:49:24Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Added template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Current Status ==&lt;br /&gt;
&lt;br /&gt;
Not certain there will be a GSoC 2009. But we will list projects suggestions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1st Tier Project Proposals ==&lt;br /&gt;
1st tier project proposals are project ideas that are reasonably well defined '''AND''' have a mentor volunteered.&lt;br /&gt;
&lt;br /&gt;
=== S/PDIF muxer ===&lt;br /&gt;
* Implement a muxer capable to mux DTS/AC3/PCM/WMApro to spdif compatible frames.&lt;br /&gt;
''Mentor: Benjamin Larsson''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 2nd Tier Project Proposals ==&lt;br /&gt;
All that separates these proposals from their 1st tier brethren is a mentor.&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Quotes&amp;diff=10652</id>
		<title>Quotes</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Quotes&amp;diff=10652"/>
		<updated>2008-12-15T13:33:59Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* #ffmpeg */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here are some memorable quotes gathered from various MPlayer and FFmpeg related discussions. Beware of what you say, because it will be recorded, taken out of context and ridiculed!&lt;br /&gt;
&lt;br /&gt;
==IRC Channels==&lt;br /&gt;
&lt;br /&gt;
===#mplayerdev===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;ods15&amp;gt;    btw, gcc took 900mb of ram and then segfaulted for me when i tried to compile a 30mb C file :P&lt;br /&gt;
&amp;lt;ods15&amp;gt;    that took about 20 minutes until it evantually gave out of mem error&lt;br /&gt;
&amp;lt;ods15&amp;gt;    i should probably just write my own compiler than can do it in 0.05s and no ram...&lt;br /&gt;
&amp;lt;ShadowJK&amp;gt; can tcc compile it :)&lt;br /&gt;
&amp;lt;ods15&amp;gt;    ShadowJK, heh i should've tried that&lt;br /&gt;
* ods15 just makes a sample file and tries now&lt;br /&gt;
&amp;lt;ods15&amp;gt;    ahem, it did it in like 3 seconds and no ram :P&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;poirierg&amp;gt; great new ppl! I'm likely to get laid before linuxtag!&lt;br /&gt;
&amp;lt;poirierg&amp;gt; woops&lt;br /&gt;
&amp;lt;ods15&amp;gt;    ...&lt;br /&gt;
&amp;lt;poirierg&amp;gt; great new ppl! I'm likely to get laid out before linuxtag!&lt;br /&gt;
&amp;lt;dalias&amp;gt;   lol poirierg&lt;br /&gt;
&amp;lt;poirierg&amp;gt; budget cuts and stuff like that....&lt;br /&gt;
&amp;lt;dalias&amp;gt;   poirierg, oh&lt;br /&gt;
&amp;lt;dalias&amp;gt;   i read that as 'get laid'&lt;br /&gt;
&amp;lt;dalias&amp;gt;   and i was like wtf tmi&lt;br /&gt;
&amp;lt;ods15&amp;gt;    ja&lt;br /&gt;
&amp;lt;dalias&amp;gt;   the word is 'laid off' btw, not 'laid out'&lt;br /&gt;
&amp;lt;delewis&amp;gt;  haha.&lt;br /&gt;
&amp;lt;ods15&amp;gt;    so, wait, great?&lt;br /&gt;
&amp;lt;poirierg&amp;gt; okay, I'm getting laid off&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;ods15&amp;gt; british is american with a sloppy accent, and much stupider curse words&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;poirierg&amp;gt; cartman, you don't see smart girls if you only watch pr0n&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;superdump&amp;gt; Welcome to ye Olde #mplayerdev Tavern. If yaoi 'n' free cola is what ye be lookin' far, we's got 'em! Yarr...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;dalias&amp;gt;    because you can't use x264&lt;br /&gt;
&amp;lt;superdump&amp;gt; why not?&lt;br /&gt;
&amp;lt;dalias&amp;gt;    because the decoder is slower than gabu trying to get a girlfriend&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;dalias&amp;gt; h264 is like matroska&lt;br /&gt;
&amp;lt;dalias&amp;gt; yes mmatroska is better than avi but it sucks still&lt;br /&gt;
&amp;lt;dalias&amp;gt; hes h264 compresses better than mpeg4 but it sucks still&lt;br /&gt;
&amp;lt;dalias&amp;gt; and the question is: is 15% compression gain worth 500% performance drop?&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;poirierg&amp;gt; do you know the difference between God and dalias ? ;)&lt;br /&gt;
&amp;lt;dalias&amp;gt;   god only tells you what's bad to do when you inhale from a burning bush&lt;br /&gt;
&amp;lt;dalias&amp;gt;   dalias tells you what's bad all the time&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; i was once atacked by one of those beast&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; i was 4 years old iirc&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; those birds have almost 4 meters measured from the extremes of their wings&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; i have some stories you wouldnt believe :P&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; i dont remember meeting any chilean atacked by a condor besides me&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; :P&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; i was once biten by a black widow too :P extremely hard to find spider&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; nature has been trying to kill me since the day i born!&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; :P&lt;br /&gt;
&amp;lt;iive&amp;gt;     i though condors doesn't attack humans.&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; they dont&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; thats the weirdest part&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; :P&lt;br /&gt;
&amp;lt;iive&amp;gt;     well, then there is only one explanetion. you are not human.&lt;br /&gt;
* iive runs&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; :P&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; who knows&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; maybe the karaoke filter is just the begining of my world domination plan&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; why dont you work with me improving the filter then ?&lt;br /&gt;
&amp;lt;poirierg&amp;gt; reynaldo, because I don't want to steel the paternity of your little toy&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; thats not my boy&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; everyone an his girlfriend facing the same problem solved it the same wahy&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; we can make something neater&lt;br /&gt;
&amp;lt;reynaldo&amp;gt; :)&lt;br /&gt;
&amp;lt;poirierg&amp;gt; your are calling me to become the girlfriend of you audio filter?&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;ods15&amp;gt; i'm waiting for someone to send me brains tommorrow, not much to do until then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;snacky&amp;gt; h264-in-mpeg is standardized since 2003. if hd-dvd does it differently it's because they're stupid ;)&lt;br /&gt;
&amp;lt;iive&amp;gt; they do. thay are&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;KotH&amp;gt; Rathann: some nice quotes you have there :)&lt;br /&gt;
&amp;lt;Rathann&amp;gt; I know! ^_^&lt;br /&gt;
&amp;lt;Rathann&amp;gt; I've been collecting them for months&lt;br /&gt;
&amp;lt;KotH&amp;gt; and some i dont even remember typing ^^'&lt;br /&gt;
&amp;lt;Rathann&amp;gt; ^_^v&lt;br /&gt;
&amp;lt;Rathann&amp;gt; hehe&lt;br /&gt;
&amp;lt;Rathann&amp;gt; it's good to have logs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;phcoder&amp;gt; compiling svn:&lt;br /&gt;
&amp;lt;phcoder&amp;gt; allcodecs.c: In function 'avcodec_register_all':&lt;br /&gt;
&amp;lt;phcoder&amp;gt; allcodecs.c:67: error: 'ENABLE_DCA_DECODER' undeclared (first use in this function)&lt;br /&gt;
&amp;lt;phcoder&amp;gt; allcodecs.c:67: error: (Each undeclared identifier is reported only once&lt;br /&gt;
&amp;lt;phcoder&amp;gt; allcodecs.c:67: error: for each function it appears in.)&lt;br /&gt;
&amp;lt;phcoder&amp;gt; allcodecs.c:253: error: 'ENABLE_DCA_PARSER' undeclared (first use in this function)&lt;br /&gt;
&amp;lt;phcoder&amp;gt; Sorry forgot to configure&lt;br /&gt;
&amp;lt;KotH&amp;gt; dont forget make distclean&lt;br /&gt;
&amp;lt;Rathann&amp;gt; don't forget to use your brain&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;DonDiego&amp;gt; geez&lt;br /&gt;
&amp;lt;DonDiego&amp;gt; how many mistakes can you make in a single line of shell ..&lt;br /&gt;
&amp;lt;KotH&amp;gt; one per character&lt;br /&gt;
&amp;lt;DonDiego&amp;gt; i'm quite close ;)&lt;br /&gt;
&amp;lt;DonDiego&amp;gt; sundays after parties are not the best days for programming ;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;cartman&amp;gt; &amp;lt;poirierg&amp;gt; cartman, you don't see smart girls if you only watch pr0n&lt;br /&gt;
&amp;lt;dalias&amp;gt; :)&lt;br /&gt;
&amp;lt;cartman&amp;gt; this is all I get for reporting quality pr0n bugs&lt;br /&gt;
&amp;lt;dalias&amp;gt; cartman, it's what you get for making statements about girls being stupid&lt;br /&gt;
&amp;lt;cartman&amp;gt; dalias: girls are stupid anyway&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;ShadowJK&amp;gt; &amp;quot;I have to agree with Rich's supposed opinion here.  It is beyond mad.&amp;quot;&lt;br /&gt;
&amp;lt;ShadowJK&amp;gt; dalias, you've become quite efficient at flamewars, when you don't even need &lt;br /&gt;
to participate anymore, people just assume what you were going to say :)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;iive&amp;gt; btw does somebody know a way to get the xvid bitstream syntax number&lt;br /&gt;
&amp;lt;iive&amp;gt; the number that xvid put to identify what bugs they had when encoding it.&lt;br /&gt;
&amp;lt;Rathann&amp;gt; rtfs?&lt;br /&gt;
&amp;lt;iive&amp;gt; i ask if somebody knows&lt;br /&gt;
&amp;lt;iive&amp;gt; this is if nobody knows&lt;br /&gt;
&amp;lt;iive&amp;gt; fucker&lt;br /&gt;
&amp;lt;rxt&amp;gt; hehe, nothing changed on mplayer while I was away :)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;snacky&amp;gt; ugh... you guys should see how polite superdump is being to lusers on #ffmpeg . it's really disgusting&lt;br /&gt;
&amp;lt;superdump&amp;gt; :)&lt;br /&gt;
&amp;lt;snacky&amp;gt; what is it with polite people?! don't you realize you are making the rest of us look bad?&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;KotH&amp;gt; i talked with an ubuntu guy here&lt;br /&gt;
&amp;lt;KotH&amp;gt; and the biggest problem they have is that upstream is uncooperative&lt;br /&gt;
&amp;lt;Rathann&amp;gt; is it?&lt;br /&gt;
&amp;lt;KotH&amp;gt; from their perspective yes&lt;br /&gt;
&amp;lt;Rathann&amp;gt; I haven't seen any patches from anyone @ubuntu&lt;br /&gt;
&amp;lt;Rathann&amp;gt; nor bugreports, for that matter&lt;br /&gt;
&amp;lt;KotH&amp;gt; well, replace upstream by downstream and you get the same in green&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;KotH&amp;gt; the biggest outcome of a 2h+ discussion was that both sites want to work with each other, but think it's impossible&lt;br /&gt;
&amp;lt;Rathann&amp;gt; why do they think we're uncooperative?&lt;br /&gt;
&amp;lt;Rathann&amp;gt; (obviously we aren't)&lt;br /&gt;
&amp;lt;KotH&amp;gt; well... have a look at our history&lt;br /&gt;
&amp;lt;ShadowJK&amp;gt; Obviously uncooperative. Refusing to integrate with gstreamer, copying libraries &lt;br /&gt;
randomly into source tree, breaking compilation with gcc2.96 on purpose, stuff doesn't compile with PIC, etc etc ;)&lt;br /&gt;
&amp;lt;KotH&amp;gt; yeah.. these points come into play too&lt;br /&gt;
&amp;lt;KotH&amp;gt; but that's a longer story&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;ShadowJK&amp;gt; You know, I don't think those MPlayer developers even go to church of Xiph every &lt;br /&gt;
week to worship a speedy emergence of Tarkin and ogm as the world dominating system&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;KotH&amp;gt; anyone here who has an understanding of x11?&lt;br /&gt;
&amp;lt;ods15&amp;gt; it shows graphics :P&lt;br /&gt;
&amp;lt;KotH&amp;gt; yeah, right&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;uau&amp;gt; i was already a better coder than most existing developers when i got involved with mplayer&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;snacky&amp;gt; you guys and your secrets&lt;br /&gt;
&amp;lt;KotH&amp;gt; there are more secrets around mplayer than you could possibly imagine&lt;br /&gt;
&amp;lt;KotH&amp;gt; like, is there really a michael niedermayer? and if he exists, is he a single entity? is he alien?&lt;br /&gt;
&amp;lt;snacky&amp;gt; I wonder if he/they/it has/have any spies in here.&lt;br /&gt;
* KotH whistels&lt;br /&gt;
* Rathann checks if his tinfoil hat is in place&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;xiphmont_&amp;gt; Vorbis still stands up nicely.  Theora, OTOH, is a a bit embarrassing.&lt;br /&gt;
* dalias tries to be polite about theora..&lt;br /&gt;
&amp;lt;xiphmont_&amp;gt; rather, it's a bit embarrassing until you look at the code, then it's alot embarrassing.&lt;br /&gt;
&amp;lt;xiphmont_&amp;gt; and that's 70% 'really fucking stupid encoder, really On2, be ashamed' and 40% 'format&lt;br /&gt;
design flaws'.  It's so bad it adds up to 110%.&lt;br /&gt;
&amp;lt;xiphmont_&amp;gt; I plan to help Theora limp along not too embarrassingly until it can be replaced for&lt;br /&gt;
real-- possibly 2-4 years.&lt;br /&gt;
&amp;lt;xiphmont_&amp;gt; Theora is actually fixable tho.  The amount of low-hanging fruit is staggering.&lt;br /&gt;
&amp;lt;xiphmont_&amp;gt; I mean, an entropy backend that results in *more* bits being written than went in?  It's&lt;br /&gt;
just... wow.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;|Bio|&amp;gt; but i need fix fo win&lt;br /&gt;
&amp;lt;iive&amp;gt; how much do you need it?&lt;br /&gt;
&amp;lt;|Bio|&amp;gt; very much.&lt;br /&gt;
&amp;lt;iive&amp;gt; as i said, it is not really mplayer problem, mingw is the support library, it should take the ucs2 convert it to utf8 then do the opposite.&lt;br /&gt;
&amp;lt;iive&amp;gt; and, very much is not enough.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;@beastd&amp;gt; hallo iive&lt;br /&gt;
&amp;lt;@iive&amp;gt; hi beastd&lt;br /&gt;
&amp;lt;@beastd&amp;gt; and what's up with you these times, ivan?&lt;br /&gt;
&amp;lt;@iive&amp;gt; nothing much, flaming diego mostly&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;KotH&amp;gt; video player development is anime driven anyways...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;KotH&amp;gt; damn... now i know again, why i keep that much stone age scsi hardware around&lt;br /&gt;
&amp;lt;KotH&amp;gt; if everything else fails...scsi will always boot&lt;br /&gt;
&amp;lt;iive&amp;gt; :O&lt;br /&gt;
&amp;lt;KotH&amp;gt; i dont think i had that much problems booting a pc since i got that toshiba laptop with non-standard floppy working&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===#mplayer===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* KotH wants a point and click solution... w/o the click&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Micksa&amp;gt; I'm reading about motion compensation&lt;br /&gt;
&amp;lt;Micksa&amp;gt; some of this is serious voodoo&lt;br /&gt;
&amp;lt;Micksa&amp;gt; I love it :)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;dtm&amp;gt; you're a free software pimp, Commn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Jan_&amp;gt; mplayer has a number of command line options that is large enough to overflow a 32-bit variable.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;iive&amp;gt; Commn: yeh.. usa people usually have problem with foregin languages like british, australian or canadian. :)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;CarlFK&amp;gt; how many gig is an hour of raw DV ?&lt;br /&gt;
&amp;lt;DogBoy&amp;gt; like from a porno?&lt;br /&gt;
&amp;lt;CarlFK&amp;gt; right&lt;br /&gt;
&amp;lt;DogBoy&amp;gt; just how raw are we talking&lt;br /&gt;
&amp;lt;CarlFK&amp;gt; right from the cam corder's firewire&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;dtm&amp;gt; Commn: i read all of your wiki page and you forgot the final entry for &amp;quot;and seek professional &lt;br /&gt;
  help immediately for the mental illness that either&lt;br /&gt;
   1) made you want to follow all these steps for lazy, codependent fools on irc or&lt;br /&gt;
   2) that you WILL HAVE after faithfully trying to implement all these steps for a week&amp;quot;&lt;br /&gt;
&amp;lt;dtm&amp;gt; http://mfrost.typepad.com/photos/uncategorized/gaaallllgh.jpg    that big dog is the cumulative laziness of a lot&lt;br /&gt;
      of irc users   the medium sized cat is Commn     and the one watching, frozen in horror, is me&lt;br /&gt;
&amp;lt;dtm&amp;gt; now is that a normal response for a cat who has a self preservation instinct?  i think not.&lt;br /&gt;
&amp;lt;dtm&amp;gt; HE LIKES IT!&lt;br /&gt;
&amp;lt;Commn&amp;gt; dtm : haha how long did it take to find that picture?&lt;br /&gt;
&amp;lt;dtm&amp;gt; Commn: somebody gave it to me and i kept it in a firefox tab all week coz it's so awesome coz&lt;br /&gt;
      I KNEW IT WOULD HAVE A GREAT PURPOSE&lt;br /&gt;
&amp;lt;dtm&amp;gt; Commn: since you asked for feedback, i'll say that you're extraordinarily diligent and conscientious, and&lt;br /&gt;
      the minority of that content is directly relevant to mplayer, and the majority is relevant to a &amp;quot;how to ask&lt;br /&gt;
      questions the smart way&amp;quot; type of document if not being totally redundant thereof&lt;br /&gt;
&amp;lt;dtm&amp;gt; you are a gentleman and a scholar, and true patriot&lt;br /&gt;
&amp;lt;sacarasc&amp;gt; dtm is cute when he is adoring someone&lt;br /&gt;
&amp;lt;Commn&amp;gt; dtm : yes, its a modified 'how to ask questions' docu&lt;br /&gt;
&amp;lt;Commn&amp;gt; its lame tho&lt;br /&gt;
&amp;lt;Commn&amp;gt; i might delete it &lt;br /&gt;
&amp;lt;Rathann&amp;gt; dtm is such a clear case of user-support-induced insanity that I wonder why I am still sane sometimes...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;pianoboy3333&amp;gt; how long does mplayer take to compile?&lt;br /&gt;
&amp;lt;dtm&amp;gt; how long til the Point of Know Return?&lt;br /&gt;
&amp;lt;pianoboy3333&amp;gt; ...&lt;br /&gt;
&amp;lt;dtm&amp;gt; i'm sorry, was that question not as dumb as yours?  oh well i tried!&lt;br /&gt;
&amp;lt;dtm&amp;gt; &amp;lt;3&lt;br /&gt;
&amp;lt;iive&amp;gt; dtm: you are starting to sound like me.&lt;br /&gt;
&amp;lt;dtm&amp;gt; Hmmmm.&lt;br /&gt;
* dtm commits honorable ninja suicide&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Erb&amp;gt; Does anyone know how to launch the GUI MPlayer in Linux via PHP (in Firefox)? I can run MPlayer scripts&lt;br /&gt;
      in the background fine. I only need to do this for local videos for an application I'm building.&lt;br /&gt;
* dtm throws his brain into a blender in an attempt to comprehend Erb's question but fails sadly&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;dtm&amp;gt; tell me what i want to know, and nobody gets hurst.&lt;br /&gt;
&amp;lt;dtm&amp;gt; hurt.&lt;br /&gt;
&amp;lt;Rathann&amp;gt; o_O&lt;br /&gt;
&amp;lt;dtm&amp;gt; i'm feeling like the giant cactus wants to be plastered in ascii screenshots&lt;br /&gt;
&amp;lt;dtm&amp;gt; I MUST COMPLY&lt;br /&gt;
&amp;lt;dtm&amp;gt; HELP ME DO THIS, Rathann&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;DazBrum&amp;gt; what is the channel for developers&lt;br /&gt;
&amp;lt;--     DazBrum has quit ()&lt;br /&gt;
&amp;lt;dtm&amp;gt; lols&lt;br /&gt;
&amp;lt;dtm&amp;gt; i think i'll spare them from that&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;netstat&amp;gt; how come mplayer eating memory&lt;br /&gt;
&amp;lt;netstat&amp;gt; it uses up to 90% cpu&lt;br /&gt;
&amp;lt;dtm&amp;gt; must be a good movie&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;cappicard&amp;gt; o/~ Ich versteh euch nicht! o/~&lt;br /&gt;
&amp;lt;dtm&amp;gt; i'm sorry cappicard i dont speak satanic&lt;br /&gt;
&amp;lt;cappicard&amp;gt; LOL&lt;br /&gt;
&amp;lt;cappicard&amp;gt; it's just German&lt;br /&gt;
&amp;lt;dtm&amp;gt; yeah but not when they're singing it.&lt;br /&gt;
&amp;lt;cappicard&amp;gt; heh :)&lt;br /&gt;
&amp;lt;iive&amp;gt; cappicard: isn't it the same&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;gioele&amp;gt; How come that I get a 35 minutes MP3 from a 5 minutes FLV video with -dumpaudio?&lt;br /&gt;
&amp;lt;Compn&amp;gt; aliens beaming audio into your mp3&lt;br /&gt;
&amp;lt;spuck00&amp;gt; ^^&lt;br /&gt;
&amp;lt;gioele&amp;gt; Compn: time to call SETI?&lt;br /&gt;
&amp;lt;Compn&amp;gt; yep&lt;br /&gt;
&amp;lt;Compn&amp;gt; if the aliens are peaceful, say hello&lt;br /&gt;
&amp;lt;Compn&amp;gt; if they are aggressive, look out!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* richard___ wonders why so many people join this channel for no apparent purpose&lt;br /&gt;
&amp;lt;rsk&amp;gt; they share the love of mplayer ;-(&lt;br /&gt;
&amp;lt;sacarasc&amp;gt; i have a purpose&lt;br /&gt;
&amp;lt;richard___&amp;gt; I wasn't implying that there's anything wrong with it :)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;rms&amp;gt; please tell me how to use dd_rescue&lt;br /&gt;
&amp;lt;KotH&amp;gt; RTFM&lt;br /&gt;
&amp;lt;rms&amp;gt; and what  special will it do, except regular copy?&lt;br /&gt;
&amp;lt;KotH&amp;gt; RTFM&lt;br /&gt;
&amp;lt;rms&amp;gt; RTFM?&lt;br /&gt;
&amp;lt;KotH&amp;gt; the manual says everything oyu need to know&lt;br /&gt;
&amp;lt;KotH&amp;gt; read the fucking manual&lt;br /&gt;
&amp;lt;rms&amp;gt; oh ok&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;iive&amp;gt; -dumpvideo&lt;br /&gt;
&amp;lt;LinuxCart&amp;gt; umm, that's a good idea. i'll try that.&lt;br /&gt;
&amp;lt;LinuxCart&amp;gt; thank you iive&lt;br /&gt;
&amp;lt;KotH&amp;gt; LinuxCart: if in doubt, it's iive's fault ;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;LinuxCart&amp;gt; how could this be explained?&lt;br /&gt;
&amp;lt;iive&amp;gt; it just another of dv misteries&lt;br /&gt;
&amp;lt;iive&amp;gt; it's KotH fault.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;LinuxMafia&amp;gt; how can i turn on language and sub&lt;br /&gt;
&amp;lt;KotH&amp;gt; RTFM&lt;br /&gt;
&amp;lt;LinuxMafia&amp;gt; KotH, using debian or freebsd?&lt;br /&gt;
&amp;lt;KotH&amp;gt; LinuxCart: doesnt matter, the FM is OS idenpedent&lt;br /&gt;
&amp;lt;LinuxCart&amp;gt;  KotH: is RTFM some dialect to say it's iive fault :P&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;ChaosR&amp;gt; MPlayer 1.0rc1-4.1.2-DFSG-free &amp;lt;- my version&lt;br /&gt;
&amp;lt;ChaosR&amp;gt; is it out of date&lt;br /&gt;
&amp;lt;mjunx&amp;gt; of course&lt;br /&gt;
&amp;lt;mjunx&amp;gt; if it wasn't built like within an hour ago at any given time, it's usually out of date&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Fatsobob&amp;gt; trying to get mplayer to play win32 on ubuntu makes me want to shoot myself&lt;br /&gt;
&amp;lt;Fatsobob&amp;gt; mostly because ubuntu is all &amp;quot;totem this&amp;quot; and &amp;quot;totem that&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Quintin&amp;gt; Is there any reason to use opengl vo device?&lt;br /&gt;
&amp;lt;sacarasc&amp;gt; nope&lt;br /&gt;
&amp;lt;Quintin&amp;gt; what's it there for?&lt;br /&gt;
&amp;lt;sacarasc&amp;gt; because you might want to use it...&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;reimar&amp;gt; sacarasc: is there any reason why I should think what you just said makes sense? ;-)&lt;br /&gt;
&amp;lt;sacarasc&amp;gt; reason and what people want are not always the same&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Commn&amp;gt; iive : dont call mplayer users dumb&lt;br /&gt;
&amp;lt;Commn&amp;gt; not to their faces anyhow&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Agiofws&amp;gt; has anyone tried cinerella ?&lt;br /&gt;
&amp;lt;Agiofws&amp;gt; i think it great &lt;br /&gt;
&amp;lt;Kunalagon&amp;gt; I tried , and I thin 80 % does not work&lt;br /&gt;
&amp;lt;MisT_&amp;gt; never get compiled here&lt;br /&gt;
&amp;lt;Kunalagon&amp;gt; it has more bugs than my shelter&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;voltagex&amp;gt; ArneB: at one stage I was able to do the maths to crack CSS on paper :P&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;ArneB&amp;gt; voltagex: Obviously your mind and paper are illegal.&lt;br /&gt;
&amp;lt;ArneB&amp;gt; Better hand them over to the MPAA.&lt;br /&gt;
&amp;lt;voltagex&amp;gt; I think you could sneeze and accidentally crack CSS&lt;br /&gt;
&amp;lt;voltagex&amp;gt; yep&lt;br /&gt;
&amp;lt;voltagex&amp;gt; no more pencils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;danny500&amp;gt; how do I convert a ogm file into an mpeg file using mencoder?&lt;br /&gt;
&amp;lt;danny500&amp;gt; anyone&amp;gt;&lt;br /&gt;
&amp;lt;danny500&amp;gt; hello?&lt;br /&gt;
&amp;lt;danny500&amp;gt; ?&lt;br /&gt;
&amp;lt;danny500&amp;gt; help&lt;br /&gt;
&amp;lt;BenrA&amp;gt; mencoder -of mpeg -oac lavc -ovc lavc -lavcopts vcodec=mpeg2video -o foo.mpg foo.ogm&lt;br /&gt;
&amp;lt;danny500&amp;gt; ?&lt;br /&gt;
&amp;lt;BenrA&amp;gt; If you want quality and/or DVD compatibility or anything, consult the docs. ;)&lt;br /&gt;
&amp;lt;danny500&amp;gt; ok that was confusing&lt;br /&gt;
&amp;lt;danny500&amp;gt; file equals = file:///home/danny500/Trigun/Trigun%20-%201%20-%20The%20%24%2460%20Billion%20Man &lt;br /&gt;
&amp;lt;danny500&amp;gt; now, rewrite that code so that It'll work&lt;br /&gt;
&amp;lt;danny500&amp;gt; well then?&lt;br /&gt;
&amp;lt;BenrA&amp;gt; What is your problem?&lt;br /&gt;
&amp;lt;housetier&amp;gt; I'd try replacing &amp;quot;foo.ogm&amp;quot; with /home/danny500/Trigun/Trigun%20-%201%20-%20The%20%24%2460%20Billion%20Man &lt;br /&gt;
(if that is the real file name), and see how far it goes&lt;br /&gt;
&amp;lt;danny500&amp;gt; fine then, don't help me, I'll go to a room where I'll actually get help. Fucking assholes&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;crackedboy&amp;gt; hi, can I ask something about kmplayer?&lt;br /&gt;
&amp;lt;md`&amp;gt; no&lt;br /&gt;
&amp;lt;crackedboy&amp;gt; ok, sorry&lt;br /&gt;
&amp;lt;md`&amp;gt; you're forgiven&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; I have a program that's basically just generating RGB data for a framebuffer. &lt;br /&gt;
&amp;lt;CHodapp&amp;gt; I'm having major issues figuring out how to get this data to an encoded video.&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; ffmpeg seems to only want some particular kind of YUV&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; can I make mencoder handle raw RGB or raw YUV or anything like that?&lt;br /&gt;
&amp;lt;Commn&amp;gt; its easier to get it working with mplayer, to see what options you need&lt;br /&gt;
&amp;lt;Commn&amp;gt; mplayer file -demuxer rawvideo -vc rawbgr16&lt;br /&gt;
&amp;lt;Commn&amp;gt; etc&lt;br /&gt;
&amp;lt;Commn&amp;gt; then you can do mencoder with those opts&lt;br /&gt;
&amp;lt;Commn&amp;gt; or maybe even mplayer -vo yuv4mpeg , which ffmpeg probably accepts &lt;br /&gt;
&amp;lt;Commn&amp;gt; maybe even use a named pipe... mkfifo stream.yuv &amp;amp;&amp;amp; ffmpeg -i stream.yuv -options ...&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; ugh, documentation is so sparse on stuff like this&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; ugh, why is this such a pain in the ass, with everything&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; hrm, maybe rawrgb24 is what I need&lt;br /&gt;
&amp;lt;Commn&amp;gt; what part is sparse?&lt;br /&gt;
&amp;lt;Commn&amp;gt; if you tell us, we can improve mplayer docs&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; well, not so much in mplayer as everything else I've tried... I was mostly searching on &lt;br /&gt;
the web to get some clue of how I'd convert what kind of raw input to encoded output&lt;br /&gt;
&amp;lt;Commn&amp;gt; mplayer -vc help|grep raw&lt;br /&gt;
&amp;lt;Commn&amp;gt; will show what raw codecs mplayer has&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; Yeah, I just now found that&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; blah . . . Cannot find codec matching selected -vo and .video format 0x30323449.&lt;br /&gt;
&amp;lt;Commn&amp;gt; CHodapp : try -vc +rawrgb32 or whatnot&lt;br /&gt;
&amp;lt;Commn&amp;gt; just add + in front of it &lt;br /&gt;
&amp;lt;CHodapp&amp;gt; then it says the selected video_out device is incompatible with this codec&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; tried sdl and x11&lt;br /&gt;
&amp;lt;Commn&amp;gt; if you can make a small sample of your file&lt;br /&gt;
&amp;lt;Commn&amp;gt; dd if=input of=output count=3 bs=1024k&lt;br /&gt;
&amp;lt;Commn&amp;gt; i can try to get it working in mplayer&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; you might as well just take 640*480*3*100 bytes of data from /dev/urandom and try &lt;br /&gt;
that... it will be functionally equivalent&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; I'm using this right now:  mplayer -rawvideo w=640:h=480 -demuxer rawvideo -vc +rawrgb24 -vo sdl temp.rgb&lt;br /&gt;
&amp;lt;Commn&amp;gt; whats random got to do with it ?&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; it's just a bunch of bytes, completely unorganized, and mplayer needs to know the resolution&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; it doesn't care about the contents&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; something else is wrong, otherwise I'd be getting something on the screen&lt;br /&gt;
&amp;lt;Commn&amp;gt; if you give me some file i can help&lt;br /&gt;
&amp;lt;Commn&amp;gt; otherwise its hard to debug from here ;p&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; www.uc.edu/~hodappcm/temp2.rgb&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; not the most coherent video, but you won't find that out unless you get something on the screen&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; it's 320x240, 10 frames worth&lt;br /&gt;
&amp;lt;Commn&amp;gt; what program generates it ?&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; just something I'm writing. it's all procedural.&lt;br /&gt;
&amp;lt;Commn&amp;gt; i'm trying to remember why it defaults to i420&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; i420? like yuv?&lt;br /&gt;
&amp;lt;Commn&amp;gt; ya&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; definitely shouldn't be yuv...&lt;br /&gt;
&amp;lt;Commn&amp;gt; i know, mplayer -rawvideo is defaulting to that&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; hmm&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; still no output?&lt;br /&gt;
&amp;lt;Commn&amp;gt; CHodapp : something like this didnt work ? ffmpeg -f rawvideo -pix_fmt rgb24&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; couldn't find codec parameters...&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; wait, I forgot the size&lt;br /&gt;
&amp;lt;Commn&amp;gt; haha more static&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; what commandline did you use?&lt;br /&gt;
&amp;lt;Commn&amp;gt; ffplay -f rawvideo -pix_fmt rgb24 -s 320x240 temp2.rgb&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; wonder if my endianness is wrong...&lt;br /&gt;
&amp;lt;Commn&amp;gt; is it black frames ?&lt;br /&gt;
&amp;lt;Commn&amp;gt; ffplay -f rawvideo -pix_fmt bgr32 -s 320x240 temp2.rgb&lt;br /&gt;
&amp;lt;Commn&amp;gt; CHodapp : http://64.233.167.104/search?q=cache:0o70XuNe5QkJ:www.kingcot.eclipse.co.uk/unichrome/tvoutTest.html+mplayer+rawvideo+rgb&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;cd=50&amp;amp;gl=us&amp;amp;client=opera&lt;br /&gt;
&amp;lt;Commn&amp;gt; CHodapp : there is an app on that page which generates rgb data&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; yeah...&lt;br /&gt;
&amp;lt;CHodapp&amp;gt; by the way, I just sent you data from /dev/urandom&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Jan-&amp;gt; Just so you know, you do realise, the reason we're after using mplayer is because it's f@&amp;amp;^@ng brilliant.&lt;br /&gt;
&amp;lt;Jan-&amp;gt; It plays, as they say, *.&lt;br /&gt;
&amp;lt;Jan-&amp;gt; It'd play a bucket of cornflour if you painted the word &amp;quot;MOVIE&amp;quot; on it.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;nyersa&amp;gt; do I need to also specify the aspect ratio?&lt;br /&gt;
&amp;lt;Rathann&amp;gt; that's too vague a question&lt;br /&gt;
&amp;lt;Rathann&amp;gt; so my answer is: maybe&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;judaz&amp;gt; i hear music, but not de voices&lt;br /&gt;
&amp;lt;judaz&amp;gt; the *&lt;br /&gt;
&amp;lt;Rathann&amp;gt; well, it's good that you don't hear voices&lt;br /&gt;
&amp;lt;Rathann&amp;gt; hearing voices is usually a sign of insanity&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;sacarasc&amp;gt; i want mplayer 1.0 final so i can laugh and hell freezes over and people stop being idiots&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;ma3x&amp;gt; what do you need mplayer for?&lt;br /&gt;
&amp;lt;ma3x&amp;gt; full of bugs&lt;br /&gt;
&amp;lt;ma3x&amp;gt; get windows media centre&lt;br /&gt;
&amp;lt;rsk&amp;gt; yea&lt;br /&gt;
&amp;lt;rsk&amp;gt; get a brain&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;individ&amp;gt; using mplayer revision 26668 fixed my obscure problem, thanks for the tough love :]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;^^MAg^^&amp;gt; Arwen: I'm not blind, it's using ffh264&lt;br /&gt;
&amp;lt;Arwen&amp;gt; ^^MAg^^, and where do you read &amp;quot;x264&amp;quot; in that?&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;ProN00b&amp;gt; Kovensky, i like it better without ass&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Kovensky&amp;gt; ProN00b: you're weird&lt;br /&gt;
&amp;lt;anon32&amp;gt; Kovensky, why? Because he likes his text without ZOMGPONIES?&lt;br /&gt;
&amp;lt;ProN00b&amp;gt; no, but there are no ponies anyways, just smaller text&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Compn&amp;gt; the topic is getting a bit large &lt;br /&gt;
&amp;lt;Zider&amp;gt; compress it with H.264&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== #ffmpeg ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;tomyu&amp;gt; can i use ffmpeg to split a movie or i will loose quaility&lt;br /&gt;
&amp;lt;merbzt&amp;gt; tomyu: use -vcodec copy&lt;br /&gt;
&amp;lt;tomyu&amp;gt; iam on ubuntu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;grepper&amp;gt; you don't have -pix_fmt ?&lt;br /&gt;
&amp;lt;aum&amp;gt; '-pix_fmt list' worked - it just isn't advertised on the manpage&lt;br /&gt;
* aum pays due respect, and acknowledges that the *real* manpages are those files ending in .c, .h, .cxx etc&lt;br /&gt;
&amp;lt;grepper&amp;gt; it sure IS in my manpage&lt;br /&gt;
&amp;lt;grepper&amp;gt; maybe debian makes it from ffmpeg -h&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;jaredthane&amp;gt; Now I'll just shoot myself in the head for being so stupid!&lt;br /&gt;
&amp;lt;andoma&amp;gt; do you want help with that as well? :-)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;benoit-&amp;gt; zinfandel: read the code&lt;br /&gt;
&amp;lt;benoit-&amp;gt; and come back when you know what you're talking about&lt;br /&gt;
&amp;lt;zinfandel&amp;gt; thats the 15 minutes i dont have now, but ok you win&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;kshishkov|work&amp;gt; well, strictness of laws here is compensated by inability to enforce them often&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;encompass&amp;gt; so what does FFMpeg actually stand for?&lt;br /&gt;
 &amp;lt;Kuukunen&amp;gt; fast forward moving picture experts group&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;peleg&amp;gt; oh, awful!!!&lt;br /&gt;
&amp;lt;peleg&amp;gt; these terrible sounds ripped my ears...&lt;br /&gt;
&amp;lt;iive&amp;gt; aac have been committed to ffmpeg?&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;bigbear2&amp;gt; ok r 15190 is fine too&lt;br /&gt;
&amp;lt;zap0&amp;gt; is that 'stable' version now?&lt;br /&gt;
&amp;lt;Rathann&amp;gt; zap0: define 'stable' ;)&lt;br /&gt;
&amp;lt;zap0&amp;gt; somewhere you keep horses&lt;br /&gt;
&amp;lt;Rathann&amp;gt; oh, the horses have run already&lt;br /&gt;
&amp;lt;zap0&amp;gt; wild horses...   damn you horses!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; TroyMcClure?&lt;br /&gt;
&amp;lt;TroyMcClure&amp;gt; yep&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; the TroyMcClure we remember from such video-conversion instructional films as &amp;quot;MPEG-4 - Suitable for Porn?&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; In order to make FCP* display this stuff without insisting on a render, all the stars will have to be in alignment, if you see what I mean.&lt;br /&gt;
&lt;br /&gt;
* Final Cut Pro&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; Most NLEs are utterly trashy pieces of software&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; with video support that makes most late-90s apps look good&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Couldn't agree more.&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; despite being supposedly &amp;quot;professional&amp;quot; video editors they don't actually support any &amp;quot;professional&amp;quot; formats&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; However, they are utterly trashy pieces of software I am bound to support.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Uh-oh. Looks like it needs to me MXF-wrapped.&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; does FCP take DirectShow input?&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; I know Premiere does.&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Final Cut is available only on the Mac.&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; This makes my life... interesting.&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Premiere also knows how to import EDLs with timecode and so forth, which FCP doesn't; absolutely the only way to get anything into FCP is using Quicktime embeds.&lt;br /&gt;
[...]&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; you're intentionally torturing yourself ;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; You are aware I assume of what an egregious train wreck of a format MXF is.&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; so there's no mxf muxer I'd assume&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; I don't pay attention to awful container formats :&amp;gt;&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; that's the great part of working on a pure encoder app, you can let the ffmpeg devs torture themselves over awfully designed container formats instead ;)&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; MXF is extremely awful. One cannot help but raise an eyebrow when a container format touts itself as solving all interchange problems, overnight and for ever.&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; lol&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; What it actually does is take the interchange problem, wrap it up in a pretty box with a ribbon on it marked &amp;quot;MXF&amp;quot;, and pretend that helps.&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; I think there's some inverse relationship between marketing claims and actual substance&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; If it's any consolation, I'm having enormous grief trying to create timecoded Quicktimes on a Windows PC.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; ...yes, AVCI is MXF-wrapped. Curses.&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Oh, good grief, it's split-file A/V.&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; oh god&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; its not even interleaved?!&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; With external XML metadata.&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; I believe MXF can be. But in the case of AVC-Intra, it's not.&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; :&amp;gt;&lt;br /&gt;
* Hfuy allows his head to fall forward onto the desk&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; What in God's name is --wrong-- with these people?!&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; lol&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Allow me to quote from the AVC-Intra whitepaper.&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; ugh, whitepapers&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Basic concept of AVC-Intra &lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Guarantee interoperability  Adoption of International video coding standard and MXF fle format&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Words fail me.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; So, how much money do I have to give you to have you implement MXF wrapping to SMPTE 381M?&lt;br /&gt;
* Hfuy ducks&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; I'm not going to touch it with a 10 foot pole :&amp;gt;&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; So let me get this straight, for a moment. We can have ffmpeg create the highly advanced compressed video data, but we can't make FCP read it, because it isn't wearing a nice enough suit?&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; lol&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Don't mock the afflicted.&lt;br /&gt;
&amp;lt;Hfuy&amp;gt; Doesn't this imply that FCP's importer is rather lacking in the generality department?&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; what, you're surprised?&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== #ffmpeg-devel ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;superdump&amp;gt; well, i've been hailed as a guru and i'm owed a pint (see #ffmpeg)&lt;br /&gt;
&amp;lt;superdump&amp;gt; hehe&lt;br /&gt;
&amp;lt;andoma&amp;gt; i want a pint too!&lt;br /&gt;
&amp;lt;superdump&amp;gt; it's loud and annoying&lt;br /&gt;
&amp;lt;kshishkov|work&amp;gt; so what, I've got one marriage proposal (from female) there once&lt;br /&gt;
&amp;lt;superdump&amp;gt; o rly?&lt;br /&gt;
&amp;lt;andoma&amp;gt; that ranks higher indeed ..&lt;br /&gt;
&amp;lt;andoma&amp;gt; kshishkov &amp;gt; superdump&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;caldo_de_cana&amp;gt; ok, I need a little CS help... my callback function for vfwcap&lt;br /&gt;
locks a mutex to add packets to a list. lavf's read_packet function also locks&lt;br /&gt;
the same mutex to read packets from the list. If there are no packets on the&lt;br /&gt;
list and read_packet has to wait, I could make it wait for a semaphore that is&lt;br /&gt;
set from inside the callback, right?&lt;br /&gt;
&amp;lt;iive&amp;gt; lavf (ffmpeg in general) using mutex is news for me.&lt;br /&gt;
&amp;lt;caldo_de_cana&amp;gt; iive: windows stuff... I had to make up for vfw's misdesign&lt;br /&gt;
&amp;lt;caldo_de_cana&amp;gt; actually it's lavd... most files there have huge hacks&lt;br /&gt;
* iive runs and hides&lt;br /&gt;
* mru makes up for windows misdesign by not using it&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* KotH threatens to not bring any chocolate to next LT&lt;br /&gt;
&amp;lt;mru&amp;gt; noooo&lt;br /&gt;
&amp;lt;mru&amp;gt; KotH: what are your demands?&lt;br /&gt;
&amp;lt;KotH&amp;gt; uhm... that you do something... or dont do it... dont know&lt;br /&gt;
&amp;lt;mru&amp;gt; well, I'm doing something, and I'm also not doing some things&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;KotH&amp;gt; chocolate is serious business!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt; patrakov&amp;gt; yes, I have already solved one organizational issue (invalid XML from clueless partners)&lt;br /&gt;
&amp;lt;@mru&amp;gt; all xml is invalid&lt;br /&gt;
&amp;lt;@mru&amp;gt; or should be&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;mru&amp;gt; when it locks up, it only responds to external reset&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;mru&amp;gt; it's almost impossible to intentionally trigger the bug&lt;br /&gt;
&amp;lt;mru&amp;gt; so far, the most reliable way has been to run ffmpeg for a few minutes&lt;br /&gt;
&amp;lt;mru&amp;gt; FFmpeg, killer of compilers and CPUs alike&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; (Reminds me, a bit ago when I sent in a patch to implement&lt;br /&gt;
 a feature for H.264 decoding, Michael messaged me giving me a really clever&lt;br /&gt;
 way to do it, saying we should commit the better way in a few months after&lt;br /&gt;
 waiting for all competitors to do it the inefficient way.)&lt;br /&gt;
&amp;lt;Rathann&amp;gt; did he, really?&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; yes&lt;br /&gt;
&amp;lt;Dark_Shikari&amp;gt; He's just that awesome&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;mru&amp;gt; the only &amp;quot;valid&amp;quot; reason I can think of for using theora is because it works in ogg&lt;br /&gt;
&amp;lt;mru&amp;gt; and the only &amp;quot;valid&amp;quot; reason I can think of for using ogg is that theora works there&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Mailing lists==&lt;br /&gt;
&lt;br /&gt;
===[http://lists.mplayerhq.hu/mailman/listinfo/mencoder-users mencoder-users]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; But trust me: Both Core Duo and Core 2 Duo support 64bit extensions,&lt;br /&gt;
&amp;gt; almost identically.&lt;br /&gt;
&lt;br /&gt;
Don't trust me! I'm wrong! I'm ashamed! There do exist Core Duos&lt;br /&gt;
without AMD64/EM64T/Intel 64 extensions.&lt;br /&gt;
-- Moritz Barsnick, correcting himself&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[http://lists.mplayerhq.hu/mailman/listinfo/mplayer-cvslog mplayer-cvslog]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; btw, anyone has a copy of the ISO-english spec? ;)&lt;br /&gt;
&lt;br /&gt;
Ok. :)&lt;br /&gt;
&lt;br /&gt;
1. There isn't a spec, since the language hasn't been standardized. All&lt;br /&gt;
we have are numerous competing drafts written by independent,&lt;br /&gt;
non-authoritative organizations.&lt;br /&gt;
&lt;br /&gt;
2. A large amount of existing English code, such as Shakespeare, is&lt;br /&gt;
unparseable by modern English speakers.&lt;br /&gt;
&lt;br /&gt;
3. If an element of the language has been frequently misused over a long&lt;br /&gt;
enough period of time, such misuse often becomes acceptable.&lt;br /&gt;
&lt;br /&gt;
4. An English speaker can be considered reasonably feature-complete even&lt;br /&gt;
if such speaker only recognizes a small subset of the language.&lt;br /&gt;
&lt;br /&gt;
5. Certain keywords tend to cause internal compiler errors. Such&lt;br /&gt;
keywords are known as &amp;quot;profanity&amp;quot;, and existing English speakers weakly&lt;br /&gt;
attempt to prevent recently-written speakers from being aware of them.&lt;br /&gt;
&lt;br /&gt;
6. English is a highly context dependent. Many keywords, when used in&lt;br /&gt;
their own particular context, take on an entirely illogical meaning.&lt;br /&gt;
These &amp;quot;idioms&amp;quot; cause compilation errors, especially when an old speaker&lt;br /&gt;
is attempting to communicate with a new one.&lt;br /&gt;
&lt;br /&gt;
7. ....&lt;br /&gt;
&lt;br /&gt;
I could go on, but that's enough fun for now. :)&lt;br /&gt;
-- Michael Niedermayer and Corey Hickey in mplayer-cvslog at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Sat, Dec 01, 2007 at 02:35:25PM +0100, reimar wrote:&lt;br /&gt;
&amp;gt; Author: reimar&lt;br /&gt;
&amp;gt; Date: Sat Dec  1 14:35:25 2007&lt;br /&gt;
&amp;gt; New Revision: 25225&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; Log:&lt;br /&gt;
&amp;gt; Fox typos&lt;br /&gt;
&lt;br /&gt;
well ...&lt;br /&gt;
&lt;br /&gt;
[...]&lt;br /&gt;
-- &lt;br /&gt;
Michael &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Author: michael&lt;br /&gt;
Date: Thu Sep  4 21:49:13 2008&lt;br /&gt;
New Revision: 27519&lt;br /&gt;
&lt;br /&gt;
Log:&lt;br /&gt;
Fix 4 of the unscaled rgb15/16 converters, each of these contained&lt;br /&gt;
2-3 bugs each of which made it fail completely, this code clearly&lt;br /&gt;
has never been tested and been written by somone who knows the&lt;br /&gt;
difference between a potato and a computer is that the first is round.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[http://lists.mplayerhq.hu/mailman/listinfo/mplayer-dev-eng mplayer-dev-eng]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Without a frontend, mplayer is useless.&lt;br /&gt;
-- Jean-Philippe Guillemin in mplayer-dev-eng at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[about alsa resampler]&lt;br /&gt;
Now why on earth would anyone want to use this crap?? It's only&lt;br /&gt;
configurable between two extremes of sucking: very bad quality, or&lt;br /&gt;
very bad performance.&lt;br /&gt;
-- Rich Felker in mplayer-dev-eng at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Reinventing the wheel certainly is annoying, but as long as all other&lt;br /&gt;
wheels are square...&lt;br /&gt;
&lt;br /&gt;
Reimar Döffinger&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Thu, Aug 24, 2006 at 01:10:18PM -0400, Dave Dodge wrote:&lt;br /&gt;
&amp;gt; IA64 compilation is an ongoing research project.&lt;br /&gt;
&lt;br /&gt;
Which is what leaves me always wondering where on earth (or actually far&lt;br /&gt;
away from earth) Intel engineers left their brains when designing&lt;br /&gt;
IA64...&lt;br /&gt;
Technology for the next century. As in we will get it to work properly&lt;br /&gt;
somewhen in the next century...&lt;br /&gt;
&lt;br /&gt;
Reimar Döffinger&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[http://lists.mplayerhq.hu/mailman/listinfo/mplayer-users mplayer-users]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; &amp;gt; yes, video decoding is not perfect either so even if u decode the bitstream u &lt;br /&gt;
&amp;gt; &amp;gt; loose quality (idct inaccuracies and such) so u should really use a hexeditor &lt;br /&gt;
&amp;gt; &amp;gt; instead of mplayer to view ur movies&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; Perhaps we could rewrite xmatrix so it takes its input from AVI&lt;br /&gt;
&amp;gt; files...&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Do you always look at it encoded?&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Well ya have to. The video codecs work FOR the construct program. But&lt;br /&gt;
there's way too much information to decode this DIVX. You get used to&lt;br /&gt;
it -- I don't even see the code. All I see is blonde, brunette,&lt;br /&gt;
redhead...&amp;quot;&lt;br /&gt;
-- Michael Niedermayer, Moritz Bunkus and D Richard Felker III in mplayer-users at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; Is there any possibility to convert a Ream Media video stream to&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; ogg/theora video?&lt;br /&gt;
&amp;gt;&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt; no, ogg is banned for good from the list of possible outputs for&lt;br /&gt;
&amp;gt;&amp;gt; manifest insanity&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; Thank you for your answer, but can you be more specific?&lt;br /&gt;
&lt;br /&gt;
ogg is by far the most insane mux format ever conceived,&lt;br /&gt;
thus no conscious coder wants to permit to give birth to an abomination&lt;br /&gt;
like that&lt;br /&gt;
-- Marek Mahut and Nico Sabbi in mplayer users at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; &amp;gt; &amp;gt; 1. ok, true, I wanted to say mad TAG right ?  How can I get this&lt;br /&gt;
&amp;gt; &amp;gt; &amp;gt; to MP3 tag ?&lt;br /&gt;
&amp;gt; &amp;gt;&lt;br /&gt;
&amp;gt; &amp;gt; There is no such thing as a MAD tag.  MAD only plays MP1/MP2/MP3. &lt;br /&gt;
&amp;gt; &amp;gt; Your file has to have one of those as the audio track for MAD to be&lt;br /&gt;
&amp;gt; &amp;gt; able to play it at all.  You also didn't read the rest of my post.&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; MAD audio codec then ?&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
I'd love to help, but I have to go bang my head against that wall over&lt;br /&gt;
there...&lt;br /&gt;
-- wim delvaux and RC in mplayer-users at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Tobias Damisch wrote:&lt;br /&gt;
&amp;gt; Guillaume Poirier wrote:&lt;br /&gt;
&amp;gt; &amp;gt; MPlayer still lacks &amp;quot;fairies&amp;quot; support to invent the pixels in between,&lt;br /&gt;
&amp;gt; &amp;gt; needed to get a truly HD picture.&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; Just get latest SVN and recompile with:&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; --enable-fairies&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; Then try adding -vf fscale=1600:1200 (or any other resolution you&lt;br /&gt;
&amp;gt; might desire) to your command line.&lt;br /&gt;
&lt;br /&gt;
Gentoo's latest mplayer ebuild is apparently an SVN snapshot from&lt;br /&gt;
08/10/2006 and doesn't seem to include a fairies USE flag for&lt;br /&gt;
compilation.  Was fairies support added after that date, or is the&lt;br /&gt;
ebuild missing a USE flag?&lt;br /&gt;
&lt;br /&gt;
Grant&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[http://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-cvslog ffmpeg-cvslog]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt; I'm sure Michael knows how to capitalize and punctuate at&lt;br /&gt;
&amp;gt;&amp;gt; least a little bit.&lt;br /&gt;
&amp;gt; thats defamation, ive never capitalized and punktuated correctly&lt;br /&gt;
&amp;gt; besides that i dont like pure capitalism ;)&lt;br /&gt;
I NEVER ASKED YOU TO WRITE LIKE THIS.&lt;br /&gt;
-- Måns Rullgård and Michael Niedermayer in ffmpeg-cvslog at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Michael Niedermayer CVS &amp;lt;michael@mplayerhq.hu&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modified Files:&lt;br /&gt;
       ffmpeg-doc.texi&lt;br /&gt;
Log Message:&lt;br /&gt;
split string to avoid buffer overflow in native english speaking persons (fix suggested by The Wanderer)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Mon, Dec 26, 2005 at 09:57:36PM +0100, Alexander Strasser wrote:&lt;br /&gt;
&amp;gt;   Oh, I just saw it was in the original mail. I must have&lt;br /&gt;
&amp;gt; accidently deleted it while writing the answer. Sorry for&lt;br /&gt;
&amp;gt; the trouble.&lt;br /&gt;
&lt;br /&gt;
no problem at all, better to ask then to miss some typos by the CIA/KGB guys&lt;br /&gt;
who edit all my outgoing and incoming mails&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;Log:&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;use pr -n -t instead of non-standard cat -n&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;Is this purely to be standard compliant or did you manage to find a &lt;br /&gt;
&amp;gt;&amp;gt;system that doesn't accept cat -n?&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt;Rich has one, apparently.&lt;br /&gt;
&lt;br /&gt;
That's funny...&lt;br /&gt;
I admire FFmpeg's standard compliance. It gets to the point where you&lt;br /&gt;
create systems to justify such changes.&lt;br /&gt;
-- Måns Rullgård and Ramiro Polla&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Besides, people with non-compliant systems need to be taught a lesson.&lt;br /&gt;
-- Måns Rullgård&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[http://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel ffmpeg-devel]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Mon, Jan 02, 2006 at 05:14:20AM +0100, Michael Niedermayer wrote:&lt;br /&gt;
&amp;gt; Hi&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; On Fri, Dec 16, 2005 at 03:45:37PM -1000, Steve Lhomme wrote:&lt;br /&gt;
&amp;gt; &amp;gt; This code moves the AR detection in the codec part so that it works when&lt;br /&gt;
&amp;gt; &amp;gt; the DV stream is in AVI (or else) too. Plus the interlacing detection&lt;br /&gt;
&amp;gt; &amp;gt; now works.&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; roman, please choose&lt;br /&gt;
&amp;gt; [ ] patch ok&lt;br /&gt;
&amp;gt; [ ] patch not ok&lt;br /&gt;
&amp;gt; [ ] dv maintainer lazy&lt;br /&gt;
&amp;gt; [ ] dv maintainer busy&lt;br /&gt;
&amp;gt; [ ] dv maintainer dead&lt;br /&gt;
&lt;br /&gt;
  Michael you've forgotten a very important option for somebody who decided&lt;br /&gt;
  to celebrate New Year in Russia:&lt;br /&gt;
&lt;br /&gt;
  [X] dv maintainer drunk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; All right, new screening process for prospective FFmpeg contributors:&lt;br /&gt;
&amp;gt; &amp;quot;Are you now, or have you ever been, a Microsoft Visual C++ user?&amp;quot;&lt;br /&gt;
&amp;gt; There's going to be scandal when the oversight committee investigates my&lt;br /&gt;
&amp;gt; employment history.&lt;br /&gt;
If you used msvc on your day job it doesn't count, as long as you really hated it.&lt;br /&gt;
-- Mike Melanson and Måns Rullgård in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;I never understood the point of those supposedly &amp;quot;cool&amp;quot; aliases some&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;people use.&lt;br /&gt;
&amp;gt;&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt; What about the supposedly &amp;quot;cool&amp;quot; circle you put over the 'a's in &lt;br /&gt;
&amp;gt;&amp;gt; your name? :)&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; It's Swedish and turns the 'a' into something that sounds like an 'o' as&lt;br /&gt;
&amp;gt; in 'hot'...&lt;br /&gt;
&lt;br /&gt;
Ah, so that's the difference. It's not &amp;quot;cool&amp;quot;, it's 'hot'.&lt;br /&gt;
-- Måns Rullgård, Mike Melanson, and Diego Biurrun in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; patching file configure&lt;br /&gt;
&amp;gt; Hunk #1 FAILED at 914.&lt;br /&gt;
&amp;gt; 1 out of 1 hunk FAILED -- saving rejects to file configure.rej&lt;br /&gt;
Ah, yes, the swift evolution of ffmpeg made the patch obsolete in 24h.&lt;br /&gt;
-- Måns Rullgård and Víctor Paesa in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[about the lack of &amp;quot;chained ogg&amp;quot; support]&lt;br /&gt;
I'm aware of this problem, and I've been trying to think of a&lt;br /&gt;
solution.  The more I think about it, the more it appears as an&lt;br /&gt;
abomination.  Just like everything Ogg related.  No surprises there.&lt;br /&gt;
-- Måns Rullgård in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
not everything from OO is necessarily bad, like not everything from M$&lt;br /&gt;
is necessarily bad, if later where the case M$ would gone bankrupt long&lt;br /&gt;
ago ...&lt;br /&gt;
but thats geting deeply off topic, lets rather concentrate on flames and&lt;br /&gt;
insults  ...&lt;br /&gt;
-- Michael Niedermayer in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[Marco Gerards submits a THP demuxer]&lt;br /&gt;
Coooool. I have hundreds of THP files. I will find some that have sound&lt;br /&gt;
and get them posted soon. In the meantime, Niedermayer will be along&lt;br /&gt;
shortly to tear apart your patch. Good luck! :)&lt;br /&gt;
-- Mike Melanson in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[about SwScaler rewrite]&lt;br /&gt;
&amp;gt; &amp;gt; And then we can call an architecture dependent init function that can&lt;br /&gt;
&amp;gt; &amp;gt; overide the C behavior much like is done for the dsputils.&lt;br /&gt;
&amp;gt; I was thinking about that too&lt;br /&gt;
thinking is good patch is better ...&lt;br /&gt;
-- Marc Hoffman, Luca Barbato and Michael Niedermayer in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Sun, Jan 15, 2006 at 06:27:55PM +0100, Reimar Döffinger wrote:&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; Oh, and the image of my RE drawing is up as well :-) :&lt;br /&gt;
&amp;gt; http://www.stud.uni-karlsruhe.de/~uvhe/LZODraw_bw.png&lt;br /&gt;
&lt;br /&gt;
Thank goodness your coding skills are better than your handwriting ;)&lt;br /&gt;
&lt;br /&gt;
Diego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Thu, Sep 22, 2005 at 10:51:05AM +0200, oandrieu@gmail.com wrote:&lt;br /&gt;
&amp;gt;  Michael Niedermayer [Wednesday 21 September 2005] :&lt;br /&gt;
&amp;gt;  &amp;gt; cosmetics&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; Yes. And ?&lt;br /&gt;
&lt;br /&gt;
sorry, i should have been more verbose, maybe i should be restarted with -v&lt;br /&gt;
can someone of the admin(s) do that?&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
as far as i can see this AVI file has _many_ video frames in each chunk, sick&lt;br /&gt;
how can a person be capable of using a text editor (and writing software) and&lt;br /&gt;
at the same time be such a complete idiot writing a program generating so&lt;br /&gt;
broken avi files ...&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
michaels law: &amp;quot;if gcc can mess up, it does mess up&amp;quot; ;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; &amp;gt;&amp;gt; +     &amp;quot;psllw     $1, %%mm1               \n\t&amp;quot;          &lt;br /&gt;
&amp;gt; &amp;gt;&amp;gt; +     &amp;quot;psllw     $1, %%mm2               \n\t&amp;quot;          &lt;br /&gt;
&amp;gt; &amp;gt; &lt;br /&gt;
&amp;gt; &amp;gt; paddw&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; Is that always faster?&lt;br /&gt;
&lt;br /&gt;
no, you can design a cpu where its not&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if you think that this patch will be accepted due to you whining how much&lt;br /&gt;
time you spend on it already then you live in some strange fantasy world&lt;br /&gt;
-- Michael Niedermayer in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rich, I always knew you were a little out of the ordinary, but&lt;br /&gt;
pirating gay porn wasn't quite what I was expecting even from you.&lt;br /&gt;
-- Måns Rullgård in ffmpeg-devel at mplayerhq.hu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[after a discussion of a patch with a new audio decoder evolved into &lt;br /&gt;
 runtime generation of tables vs. hardcoding them in the object file debate]&lt;br /&gt;
&lt;br /&gt;
what is the name of this bikeshed?&lt;br /&gt;
-- compn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Thu, Oct 18, 2007 at 11:04:23AM +0200, Jean-Michel Pouré wrote:&lt;br /&gt;
&amp;gt; Some days ago, Christian Marillat reported that it was impossible to&lt;br /&gt;
&amp;gt; compile ffmpeg/libavcodec packages under Debian. Any idea where the&lt;br /&gt;
&amp;gt; problem comes from? Was it fixed lately?&lt;br /&gt;
&lt;br /&gt;
Sure.  My crystal ball tells me that fiendish aliens have been using&lt;br /&gt;
force fields to obstruct the flow of cosmic energies in Christian's&lt;br /&gt;
machine.  The fact that the aliens have decided to sabotage FFmpeg first&lt;br /&gt;
should give us all pause.  It is a rare compliment to receive but it&lt;br /&gt;
carries along a great responsibility.&lt;br /&gt;
&lt;br /&gt;
Now everybody remember that the survival of the human race rests on our&lt;br /&gt;
shoulders.  If we are to remain victorious in this epic conflict we must&lt;br /&gt;
not succumb to darkness.  The pureness of our hearts is our most potent&lt;br /&gt;
defense.  We must preserve it at any cost.&lt;br /&gt;
&lt;br /&gt;
Diego&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Tue, Oct 30, 2007 at 12:15:28AM -0400, Ronald S. Bultje wrote:&lt;br /&gt;
[...]&lt;br /&gt;
&amp;gt; I'm not &amp;quot;they&amp;quot; anymore, I left Fluendo +/- 2 1/2 years ago and GStreamer +/-&lt;br /&gt;
&amp;gt; 2 years ago.&lt;br /&gt;
&lt;br /&gt;
i see, ill get the kgb chief liquidated for providing me with outdated&lt;br /&gt;
information&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On Fri, Dec 14, 2007 at 08:01:51PM +0100, Diego Biurrun wrote:&lt;br /&gt;
[...]&lt;br /&gt;
&amp;gt; &amp;gt; + * @file rectanlge.h&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; rectANgle.h&lt;br /&gt;
&lt;br /&gt;
diego: /dev/brain: Permission denied ;)&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
The only officially correct spelling of snow is in the form of a frozen&lt;br /&gt;
snowflake placed on 5000 year old papyrus and illuminated by the light of&lt;br /&gt;
a population III star.&lt;br /&gt;
&lt;br /&gt;
Now please diego fix it to the official spelling!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
O, mercyfull Diego, hast thou not given the dear needed access?&lt;br /&gt;
Wherefore did thou create ye, if not to commit?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
FFmpeg preys on weak, unmaintained or closed-source codecs. If your&lt;br /&gt;
library does not meet those requirements, ffmpeg won't consume it (and&lt;br /&gt;
will use a wrapper if it is good one).&lt;br /&gt;
&lt;br /&gt;
Kostya&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;gt; &lt;br /&gt;
 &amp;gt; Just curios, is it possible to add hardware DVD, h.264 and VC-1 decoding to ffmpeg?&lt;br /&gt;
&lt;br /&gt;
Yes, through ./configure --dont-hijack-threads --see-ffmpeg-users&lt;br /&gt;
&lt;br /&gt;
Benjamin Zores&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Thats like giving a painting from Leonardo da Vinci to a wild boar so it can&lt;br /&gt;
correct the fine details.&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
But the only correct usage of autotools is as argument to rm&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Diego Biurrun wrote:&lt;br /&gt;
&amp;gt; I came across this excellent paper from 15 years ago:&lt;br /&gt;
&amp;gt;                                                                                                                                                                                           &lt;br /&gt;
&amp;gt; #ifdef Considered Harmful, or Portability Experience With C News &lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; It's a nice short read and emphasizes the experiences we have had around&lt;br /&gt;
&amp;gt; here.  It also comes to very similar conclusions, which is quite&lt;br /&gt;
&amp;gt; gratifying.&lt;br /&gt;
&lt;br /&gt;
In the other news water is considered harmful yet useful...&lt;br /&gt;
&lt;br /&gt;
lu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; &amp;gt; &amp;gt; &amp;gt; Considering 'lag' versus 'delay', I think I have consistently used                                                                                                                  &lt;br /&gt;
&amp;gt; &amp;gt; &amp;gt; &amp;gt; 'lag' in my AMR code I think, mainly because it's shorter. :)                                                                                                                       &lt;br /&gt;
&amp;gt; &amp;gt; &amp;gt;                                                                                                                                                                                       &lt;br /&gt;
&amp;gt; &amp;gt; &amp;gt; Repent ye bloody sinner!  Thy code showest the innermost part of thy                                                                                                                  &lt;br /&gt;
&amp;gt; &amp;gt; &amp;gt; heart, lagging as it is behind the times!  Now delay ye no longer with                                                                                                                &lt;br /&gt;
&amp;gt; &amp;gt; &amp;gt; updating it as thy Lord commands ye!                                                                                                                                                  &lt;br /&gt;
&amp;gt; &amp;gt;                                                                                                                                                                                         &lt;br /&gt;
&amp;gt; &amp;gt; I didnt know robert was worshiping the spirit who denies everything always.                                                                                                             &lt;br /&gt;
&amp;gt;                                                                                                                                                                                           &lt;br /&gt;
&amp;gt; He has taken to worshipping all manner of devilishly spirits, as                                                                                                                          &lt;br /&gt;
&amp;gt; islander folks are known to do ...                                                                                                                                                        &lt;br /&gt;
&amp;gt;                                                                                                                                                                                           &lt;br /&gt;
&amp;gt; &amp;gt; And reconsidering the whole, if they are equivalent, the shorter has                                                                                                                    &lt;br /&gt;
&amp;gt; &amp;gt; some undenyable advantage.                                                                                                                                                              &lt;br /&gt;
&amp;gt; &amp;gt; Dont ye agree?                                                                                                                                                                          &lt;br /&gt;
&amp;gt;                                                                                                                                                                                           &lt;br /&gt;
&amp;gt; Nay, ye mind is clouded by the charms of the islander's charms.  Pray                                                                                                                     &lt;br /&gt;
&amp;gt; that the daemon's have mercy upon ye and lift those spells from thou...                                                                                                                   &lt;br /&gt;
&lt;br /&gt;
If you ever write a fantasy novel id want a copy ...&lt;br /&gt;
&lt;br /&gt;
Robert Swain, Diego and Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; My spare time is taken up 20% MythTV, 10% SCST, 85% drinking heavily.&lt;br /&gt;
&lt;br /&gt;
And the remainder you spend on maths studies, right?&lt;br /&gt;
&lt;br /&gt;
Some man and Måns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[some weird problem on MacOSX 10.5]&lt;br /&gt;
&amp;gt; The regular not-postfixed symbols are there, however. It's just that the&lt;br /&gt;
&amp;gt; compiler ignores that it's compiling for an older version whenever it&lt;br /&gt;
&amp;gt; encounters the _XOPEN_SOURCE flag.&lt;br /&gt;
&lt;br /&gt;
Our code conforms to widely accepted standards.  Your compiler decides&lt;br /&gt;
to replace a few symbols with non-standard names, which the linker&lt;br /&gt;
then cannot find.  Around here, that's called Your Problem.&lt;br /&gt;
&lt;br /&gt;
&amp;gt; To fix compiling on OSX for older versions, all _XOPEN_SOURCE&lt;br /&gt;
&amp;gt; definitions should check for __APPLE__ first.&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; #if !defined(_XOPEN_SOURCE) &amp;amp;&amp;amp; !defined(__DARWIN__) &amp;amp;&amp;amp; !defined(__APPLE__)&lt;br /&gt;
&amp;gt; # define _XOPEN_SOURCE 500&lt;br /&gt;
&amp;gt; #endif&lt;br /&gt;
&lt;br /&gt;
In my part of the world, when there's a hole in the road, they don't&lt;br /&gt;
require people to mount wings on their cars; they fix the hole.  You&lt;br /&gt;
should do the same.  Or stay home.&lt;br /&gt;
-- Adrian Stutz and Måns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt; In file included from /usr/include/math.h:26,&lt;br /&gt;
&amp;gt;&amp;gt;                 from ./libavutil/mathematics.h:25,&lt;br /&gt;
&amp;gt;&amp;gt;                 from ./libavutil/avutil.h:57,&lt;br /&gt;
&amp;gt;&amp;gt;                 from liba52/parse.c:40:&lt;br /&gt;
&amp;gt;&amp;gt; /usr/include/architecture/ppc/math.h:179: error: parse error before&lt;br /&gt;
&amp;gt;&amp;gt; '__attribute__'&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;gt; Well, wtf is in math.h that it stumbles over?&lt;br /&gt;
&lt;br /&gt;
This is getting better and better.  First macosx can't link with its&lt;br /&gt;
own libs, and now it can't even compile its own headers.  If this&lt;br /&gt;
keeps up, it won't be long before it stops booting at all, and we'll&lt;br /&gt;
finally see an end to these problems.&lt;br /&gt;
-- Guillaume, Reimar and Måns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; Oh, one more thing: In my world it is common to top-reply (and I am&lt;br /&gt;
&lt;br /&gt;
Then we don't like your world.  Please go back there, and don't come&lt;br /&gt;
here again.&lt;br /&gt;
&lt;br /&gt;
&amp;gt; doing this for almost 29 years). But now I know that the FFmpeg&lt;br /&gt;
&lt;br /&gt;
I see you're attempting a proof by doing-it-for-a-long-time approach.&lt;br /&gt;
That doesn't work in this world.&lt;br /&gt;
-- Frans de Boer and Måns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; balatoni denes tried to get a half optimized idct in and i nicely told&lt;br /&gt;
&amp;gt; him that it has to include all tricks and optimizations we could think of.&lt;br /&gt;
&amp;gt; We ended up with something that was clearly quite a bit faster than&lt;br /&gt;
&amp;gt; what he submitted first, that is between all the complaints about how&lt;br /&gt;
&amp;gt; little time he had and how evil we were for not just acceptiing it as&lt;br /&gt;
&amp;gt; is.&lt;br /&gt;
&lt;br /&gt;
The Legend of the Warrior - now I am officially part of the ffmpeg&lt;br /&gt;
mythology :)&lt;br /&gt;
-- Michael Niedermayer and Balatoni Denes&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt; Do you intend to actually implement a .ass demuxer?&lt;br /&gt;
&lt;br /&gt;
As you ask so nicely, Ill see what i can do. Iam starting to think that&lt;br /&gt;
it might take less time to just implement everything related to ASS than&lt;br /&gt;
continue this discussion.&lt;br /&gt;
-- Uoti Urpala and Michael Niedermayer&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[about withdrawing Snow development prize/donation]&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; I'll be sorry to do this but it seems snow will die before beeing born.&lt;br /&gt;
&amp;gt;&amp;gt; &lt;br /&gt;
&amp;gt;&amp;gt; Well it seems that as 2008 comes to a close, Loren's prediction has&lt;br /&gt;
&amp;gt;&amp;gt; finally been proven wrong ;)&lt;br /&gt;
&amp;gt;&amp;gt; &lt;br /&gt;
&amp;gt;&amp;gt; (from ~2005)&lt;br /&gt;
&amp;gt;&amp;gt; &amp;lt;OpenSourced&amp;gt; where do you think x264 will be in 3 years&lt;br /&gt;
&amp;gt;&amp;gt; &amp;lt;pengvado&amp;gt; replaced by snow :)&lt;br /&gt;
&amp;gt;&amp;gt; &lt;br /&gt;
&amp;gt; Darn, I thought you x264 devels were expert at various types of&lt;br /&gt;
&amp;gt; prediction...&lt;br /&gt;
&lt;br /&gt;
That was only the first pass.&lt;br /&gt;
-- Lars Täuber, Jason Garrett-Glaser, Andreas Öman and Måns Rullgård&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[http://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-soc ffmpeg-soc]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Alexander Strange wrote:&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; On Apr 23, 2008, at 2:24 PM, vitor wrote:&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt;&amp;gt; Author: vitor&lt;br /&gt;
&amp;gt;&amp;gt; Date: Wed Apr 23 20:24:46 2008&lt;br /&gt;
&amp;gt;&amp;gt; New Revision: 2152&lt;br /&gt;
&amp;gt;&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt; Log:&lt;br /&gt;
&amp;gt;&amp;gt; Replace if(acroread appli_Goethe.pdf &amp;amp;){B}else{C} by if(a){C}else{B}&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; Too much tab completion?&lt;br /&gt;
&lt;br /&gt;
Is there a price for the most nonsense commit log? ;-)&lt;br /&gt;
&lt;br /&gt;
-Vitor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[http://lists.mplayerhq.hu/mailman/listinfo/nut-devel NUT-devel]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
We should have some nut samples.&lt;br /&gt;
Someone, (not me, I am lazy), should mux some free video and &lt;br /&gt;
audio into NUT (or just grab a camera and film something funny &lt;br /&gt;
like what happens with an egg in the microwave or something &lt;br /&gt;
else where A-V sync can be seen).&lt;br /&gt;
&lt;br /&gt;
Michael&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
A &amp;quot;spec&amp;quot; as readable as a sendmail configuration file doesn't make&lt;br /&gt;
matters better...&lt;br /&gt;
&lt;br /&gt;
Måns Rullgård&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===other===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
i've remembered i have root access at new mphq, but probably&lt;br /&gt;
it was just a dream :)))&lt;br /&gt;
-- A'rpi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
FFmpeg works like a human being: something nice comes in, crap comes out.&lt;br /&gt;
-- superdump on an S-Bahn train in Berlin&lt;br /&gt;
(written from memory, please fix)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Michael Niedermayer &amp;lt;michaelni@gmx.at&amp;gt; added the comment:&lt;br /&gt;
&lt;br /&gt;
this is for bugreports not guess reports&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Sun Nov 11 10:32:18 CET 2007 &lt;br /&gt;
Previous message: [Ffmpeg-user] Anyone? &lt;br /&gt;
&amp;gt;Anyone?&lt;br /&gt;
&lt;br /&gt;
someone?&lt;br /&gt;
&lt;br /&gt;
&amp;gt;I still can't make it work.&lt;br /&gt;
&lt;br /&gt;
have you tried cialis?&lt;br /&gt;
&lt;br /&gt;
of course maybe you're referring to an audiovisual problem, &lt;br /&gt;
and maybe it even pertains to ffmpeg...&lt;br /&gt;
really hard to tell!&lt;br /&gt;
&lt;br /&gt;
tripp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Breaking DRM is a little like attempting to break through a door even&lt;br /&gt;
though the window is wide open and the only thing in the house is a bunch&lt;br /&gt;
of things you dont want and which you would get tomorrow for free anyway&lt;br /&gt;
-- Michael Niedermayer&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello,&lt;br /&gt;
&lt;br /&gt;
I have downloaded the latest version of vhook modules from&lt;br /&gt;
&amp;quot;svn://svn.mplayerhq.hu/ffmpeg/trunk&amp;quot;&lt;br /&gt;
but they are a bunch of .c and .h files.&lt;br /&gt;
Please tell me how to generate a .dll file from them.&lt;br /&gt;
I am using Windows XP.&lt;br /&gt;
Thank you.&lt;br /&gt;
&lt;br /&gt;
-- An ordinary Windows user on ffmpeg-user (long lines broken manually&lt;br /&gt;
   and Yahoo signature removed to keep the wiki clean)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code&amp;diff=10554</id>
		<title>FFmpeg / Libav Summer Of Code</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_/_Libav_Summer_Of_Code&amp;diff=10554"/>
		<updated>2008-12-01T14:26:29Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: /* RealVideo 4 Decoder */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The [[FFmpeg]] project has been a participant in the [http://code.google.com/soc/ Google Summer of Code] program since 2006.&lt;br /&gt;
&lt;br /&gt;
* [[FFmpeg Summer Of Code 2008|2008 project page]]&lt;br /&gt;
* [[FFmpeg Summer Of Code 2007|2007 project page]]&lt;br /&gt;
* [[FFmpeg Summer Of Code 2006|2006 project page]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== 2006 Projects ==&lt;br /&gt;
&lt;br /&gt;
=== VC-1 Decoder ===&lt;br /&gt;
* Student: [[User:Kostya|Kostya Shishkov]]&lt;br /&gt;
* Mentor: [[User:Multimedia Mike|Mike Melanson]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;FFmpeg committer&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;Accepted into the FFmpeg codebase.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== AMR-NB Decoder ===&lt;br /&gt;
* Student: [[User:superdump|Robert Swain]]&lt;br /&gt;
* Mentor: [[User:Merbanan|Benjamin Larsson]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;FFmpeg committer.&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;Project not finished during SoC. Development is continued as time permits.&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;Floating point code has been implemented up to synthesis.&amp;lt;/font&amp;gt; The next step is to debug the synthesis input and code. Documented on [[AMR-NB]].&lt;br /&gt;
&lt;br /&gt;
=== AC-3 Decoder ===&lt;br /&gt;
* Student: [[User:Cloud9|Kartikey Mahendra BHATT]]&lt;br /&gt;
* Mentor: [[User:Merbanan|Benjamin Larsson]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#CC0000&amp;quot;&amp;gt;disappeared, project unfinished&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: Picked up by [[User:Jruggle|Justin Ruggles]] and &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;committed to FFmpeg&amp;lt;/font&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== AAC Decoder ===&lt;br /&gt;
* Student: Maxim Gavrilov&lt;br /&gt;
* Mentor: [[User:ods15|Oded Shimon]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#CC0000&amp;quot;&amp;gt;disappeared, project unfinished&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: Picked up by [[User:andoma|Andreas Öman]] and [[User:superdump|Robert Swain]] and &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;committed to FFmpeg&amp;lt;/font&amp;gt;. Robert intends to add HE AAC v1/v2 support.&lt;br /&gt;
&lt;br /&gt;
=== Vorbis Encoder ===&lt;br /&gt;
* Student: Mathew Philip&lt;br /&gt;
* Mentor: [[User:ods15|Oded Shimon]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#CC0000&amp;quot;&amp;gt;disappeared, project barely started&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: Picked up by [[User:ods15|Oded Shimon]] and &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;committed to FFmpeg&amp;lt;/font&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== 2007 Projects ==&lt;br /&gt;
&lt;br /&gt;
=== RealVideo 4 Decoder ===&lt;br /&gt;
* Student: [[User:Kostya|Kostya Shishkov]]&lt;br /&gt;
* Mentor: [[User:Multimedia Mike|Mike Melanson]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;FFmpeg committer&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;Accepted into the FFmpeg codebase.&amp;lt;/font&amp;gt; The project goal has also morphed to include a RealVideo 3 decoder since the 2 schemes are so similar. RV30 decode with visual artifacts. RV40 is now enabled by default in FFmpeg.&lt;br /&gt;
&lt;br /&gt;
=== QCELP Decoder ===&lt;br /&gt;
* Student: [[User:Reynaldo|Reynaldo Verdejo Pinochet]]&lt;br /&gt;
* Mentor: [[User:Merbanan|Benjamin Larsson]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;project not finished during SoC but continues working on it&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;slowly progressing, it's working though&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Matroska Muxer ===&lt;br /&gt;
* Student: David Conrad&lt;br /&gt;
* Mentor: [[User:aurel|Aurélien Jacobs]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;FFmpeg committer&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;Accepted into the FFmpeg codebase.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Video Filter API (AKA [[Libavfilter|libavfilter]]) ===&lt;br /&gt;
* Student: [[User:Koorogi|Bobby Bingham]]&lt;br /&gt;
* Mentor: [[User:Merbanan|Benjamin Larsson]] and Michael Niedermayer&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;project not finished during SoC but continues working on it&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;Parts have been committed to FFmpeg, but remain disabled.&amp;lt;/font&amp;gt; Still in  development (albeit slowly) by [[User:Koorogi|Bobby Bingham]] and [[User:Vitor|Vitor]].&lt;br /&gt;
&lt;br /&gt;
=== E-AC-3 Decoder ===&lt;br /&gt;
* Student: Bartlomiej Wolowiec&lt;br /&gt;
* Mentor:  [[User:Jruggle|Justin Ruggles]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;FFmpeg committer&amp;lt;/font&amp;gt;; &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;code produced worked for most available samples, but there were some unimplemented features.&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: Picked up by [[User:Jruggle|Justin Ruggles]], finished and &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;committed to FFmpeg&amp;lt;/font&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== JPEG 2000 Encoder and Decoder ===&lt;br /&gt;
* Student: Kamil Nowosad&lt;br /&gt;
* Mentor: [[User:pengvado|Loren Merritt]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#CC0000&amp;quot;&amp;gt;disappeared, project unfinished&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;The code is working but not all features are supported.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Dirac Encoder and Decoder ===&lt;br /&gt;
* Student: Marco Gerards&lt;br /&gt;
* Mentor: [[User:Lu_zero|Luca Barbato]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;project not finished during SoC but continues working on it&amp;lt;/font&amp;gt;, just slower than before due to other tasks taking priority. (Winter vacations approaching!)&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;The decoder is in good shape, the encoder still needs more work. Both need to be updated to the latest spec.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TS Muxer ===&lt;br /&gt;
* Student: Xiaohui Sun&lt;br /&gt;
* Mentor:  [[User:bcoudurier|Baptiste Coudurier]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#CC0000&amp;quot;&amp;gt;disappeared, project unfinished&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt; [[Interesting Patches#PES packetizer by Xiaohui Sun|Changes]] requested during the review process for FFmpeg inclusion were never made.&amp;lt;/font&amp;gt; Now [[User:bcoudurier|Baptiste Coudurier]] is cleaning it up for inclusion in FFmpeg.&lt;br /&gt;
&lt;br /&gt;
== 2008 Projects ==&lt;br /&gt;
&lt;br /&gt;
=== Generic frame-level multithreading support  ===&lt;br /&gt;
* Student: Alexander Strange &lt;br /&gt;
* Mentor: Kristian Jerpetjoen&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;active&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;in process&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Nellymoser Encoder ===&lt;br /&gt;
* Student: Bartlomiej Wolowiec &lt;br /&gt;
* Mentor: [[User:Merbanan|Benjamin Larsson]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;FFmpeg committer&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;Accepted into the FFmpeg codebase.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===  Apple Lossless Encoder for FFmpeg ===&lt;br /&gt;
* Student: Jai Menon&lt;br /&gt;
* Mentor: [[User:Jruggle|Justin Ruggles]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;FFmpeg committer&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;Accepted into the FFmpeg codebase.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== LGPL reimplementation of GPL sws_scale parts ===&lt;br /&gt;
* Student: Keiji Costantini&lt;br /&gt;
* Mentor: [[User:Lu_zero|Luca Barbato]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;active&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;in process&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== AAC-LC Encoder ===&lt;br /&gt;
* Student: [[User:Kostya|Kostya]]&lt;br /&gt;
* Mentor: [[User:Andoma|Andreas Öman]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;active&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;in process&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MLP/TrueHD encoder ===&lt;br /&gt;
* Student: [[User:Angustia|Ramiro Polla]]&lt;br /&gt;
* Mentor: [[User:Jruggle|Justin Ruggles]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;active&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;in process&amp;lt;/font&amp;gt;, the first stage, getting the MLP decoder into shape and committed, has been accomplished.&lt;br /&gt;
&lt;br /&gt;
=== WMA Pro Decoder ===&lt;br /&gt;
* Student: Sascha Sommer&lt;br /&gt;
* Mentor: [[User:Merbanan|Benjamin Larsson]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;active&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#CCCC00&amp;quot;&amp;gt;in process&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MXF Muxer ===&lt;br /&gt;
* Student: [[User:spyfeng|Zhentan Feng]]&lt;br /&gt;
* Mentor:  [[User:Bcoudurier|Baptiste Coudurier]]&lt;br /&gt;
* Student Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;finished project&amp;lt;/font&amp;gt;&lt;br /&gt;
* Code Status: &amp;lt;font color=&amp;quot;#00CC00&amp;quot;&amp;gt;Accepted into the FFmpeg codebase.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=10420</id>
		<title>Small FFmpeg Tasks</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=10420"/>
		<updated>2008-09-10T19:23:01Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: removed some finished projects and removed some other invalid stuff&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains ideas for small, relatively simple tasks for the [[FFmpeg]] project. People who might be interested in trying one of these tasks:&lt;br /&gt;
* Someone who wants to contribute to FFmpeg and needs to find a well-defined task to start with&lt;br /&gt;
* Someone who wishes to qualify for one of FFmpeg's coveted [[FFmpeg Summer Of Code|Summer of Code]] project slots&lt;br /&gt;
* An existing FFmpeg developer who has been away from the project for a while and needs a smaller task as motivation for re-learning the codebase&lt;br /&gt;
&lt;br /&gt;
'''If you would like to work on one of these tasks''', please take these steps:&lt;br /&gt;
* Subscribe to the [https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel|FFmpeg development mailing list] and indicate your interest&lt;br /&gt;
* Ask [[User:Multimedia Mike|Multimedia Mike]] for a Wiki account so you can claim your task on this Wiki&lt;br /&gt;
&lt;br /&gt;
'''If you would like to add to this list''', please be prepared to explain some useful details about the task. Excessively vague tasks with no supporting details will be ruthlessly deleted.&lt;br /&gt;
&lt;br /&gt;
=== Finish up a previous incomplete SoC project ===&lt;br /&gt;
&lt;br /&gt;
Several SoC projects from previous years have not yet made it into FFmpeg. Taking any of them and finishing them up to the point that they can be included should make for a good qualification task. Check out the [[FFmpeg Summer Of Code]] overview page and look for the unfinished projects, like AMR-NB, QCELP, Dirac, TS muxer, JPEG 2000.&lt;br /&gt;
&lt;br /&gt;
=== Generic Colorspace system ===&lt;br /&gt;
This task involves adding support more than 8 bits per component (Y on 10 bits, U on 10 bits, V on 10 bits for example)&lt;br /&gt;
and generic simple conversion to other colorspaces.&lt;br /&gt;
&lt;br /&gt;
''Does this have to do with revising FFmpeg's infrastructure? If so, then it doesn't feel like a qualification task. If it's something simpler, then the vague description does not convey that simplicity. Please expound.'' --[[User:Multimedia Mike|Multimedia Mike]] 12:56, 25 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
''I don't think so, extending PixFmt to extended structure with finegrained description like depth, range values, colorspace, sample period, and write generic simple conversion from all formats to all others, like suggested by Michael on the mailing list. Conversion routine can be a good qualification task for video encoders/decoders. What do you think ?&lt;br /&gt;
--[[User:Bcoudurier|Baptiste Coudurier]] 00:30, 29 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Make the SoC dts encoder multichannel capable ===&lt;br /&gt;
Here is a skeleton for a dts encoder http://svn.mplayerhq.hu/soc/dcaenc/, currently it can only encode stereo streams.&lt;br /&gt;
The task is to extend it to support 5.1 channels also.&lt;br /&gt;
&lt;br /&gt;
Specs and info can be found here:&lt;br /&gt;
http://wiki.multimedia.cx/index.php?title=DTS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Support PB frame mode for H.263i ===&lt;br /&gt;
Details are in the issue tracker: http://roundup.mplayerhq.hu/roundup/ffmpeg/issue27&lt;br /&gt;
&lt;br /&gt;
H.263 spec describing PB frames and improved PB frames: http://www.itu.int/rec/T-REC-H.263-200501-I/en&lt;br /&gt;
&lt;br /&gt;
=== Patch cleanup for MPEG 1 &amp;amp; 2 optimizations ===&lt;br /&gt;
Details are in the issue tracker: http://roundup.mplayerhq.hu/roundup/ffmpeg/issue100&lt;br /&gt;
&lt;br /&gt;
=== Implement a Vivo demuxer for FFmpeg ===&lt;br /&gt;
Implement an FFmpeg demuxer for the [[Vivo]] file format. The best reference for understanding the format would be MPlayer's [http://svn.mplayerhq.hu/mplayer/trunk/libmpdemux/demux_viv.c?view=markup existing .viv demuxer].&lt;br /&gt;
&lt;br /&gt;
This task corresponds to issue 99: http://roundup.mplayerhq.hu/roundup/ffmpeg/issue99&lt;br /&gt;
&lt;br /&gt;
''I am ready to help out with understanding MPlayer's demuxer, esp. MPlayer API stuff if necessary.&lt;br /&gt;
--[[User:Reimar|Reimar]] 15:46, 1 March 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Port missing demuxers from MPlayer to FFmpeg ===&lt;br /&gt;
MPlayer supports a few container formats in libmpdemux that are not yet present in libavformat. Porting them over and gettting them relicensed as LGPL or reimplementing them from scratch should make reasonable small tasks.&lt;br /&gt;
&lt;br /&gt;
=== Optimal Huffman tables for (M)JPEG ===&lt;br /&gt;
This task is outlined at http://guru.multimedia.cx/small-tasks-for-ffmpeg/ and is tracked in the issue tracker: http://roundup.mplayerhq.hu/roundup/ffmpeg/issue267&lt;br /&gt;
&lt;br /&gt;
=== YOP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[Psygnosis YOP]] files. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[Psygnosis YOP|The Psygnosis YOP page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== M95 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[M95]] files. This will entail writing a new file demuxer and video decoder (the audio is already uncompressed), both of which are trivial by FFmpeg standards. [[M95|The M95 page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== BRP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[BRP]] files. This will entail writing a new file demuxer as well as a video decoder that can handle at least 2 variations of format data. Further, write an audio decoder for the custom DPCM format in the file. All of these tasks are considered trivial by FFmpeg standards. [[BRP|The BRP page]] contains the specs necessary to complete this task and points to downloadable samples for both known variations.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit Interplay Video Decoder ===&lt;br /&gt;
FFmpeg already supports [[Interplay MVE]] files with [[Interplay Video|8-bit video data]] inside. This task involves supporting 16-bit video data. The video encoding format is mostly the same but the pixel size is twice as large. Engage the ffmpeg-devel list to discuss how best to approach this task.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit VQA Video Decoder ===&lt;br /&gt;
FFmpeg already supports Westwood [[VQA]] files. However, there are 3 variations of its custom video codec. The first 2 are supported in FFmpeg. This task involves implementing support for the 3rd variation. Visit the VQA samples repository: http://samples.mplayerhq.hu/game-formats/vqa/ -- The files in the directories Tiberian Sun VQAs/, bladerunner/, and dune2000/ use the 3rd variation of this codec. The [[VQA|VQA page]] should link to all the details you need to support this format.&lt;br /&gt;
&lt;br /&gt;
=== HNM4 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[HNM4]] variant of the [[HNM]] format. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[HNM4|The HNM4 page]] contains the specs necessary to complete this task and links to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== FunCom ISS Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[FunCom ISS]] files. This will entail writing a new file demuxer and connecting it to the existing FFmpeg decoder for IMA ADPCM data. [[FunCom ISS|The FunCom ISS page]] contains the specs necessary to complete this task and links to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== Apple RPZA encoder ===&lt;br /&gt;
A patch was once sent to the ffmpeg-devel mailing list to include and encoder for the [[Apple RPZA]] video codec. That code can be found on the &amp;quot;[[Interesting Patches]]&amp;quot; page. This qualification task involves applying that patch so that it can compile with current FFmpeg SVN code and then cleaning it up per the standards of the project. Engage the mailing list to learn more about what to do.&lt;br /&gt;
&lt;br /&gt;
=== QuickTime Edit List Support ===&lt;br /&gt;
Implement edit list support in FFmpeg's QuickTime demuxer (libavformat/mov.c). This involves parsing the 'elst' atom in a QuickTime file. For a demonstration of how this is a problem, download the file menace00.mov from http://samples.mplayerhq.hu/mov/editlist/ and play it with ffplay or transcode it with ffmpeg. Notice that the audio and video are ever so slightly out of sync. Proper edit list support will solve that. Other samples in that directory also presumably exhibit edit list-related bugs. The [http://xine.cvs.sourceforge.net/xine/xine-lib/src/demuxers/demux_qt.c?view=markup Xine demuxer] has support for this, it might be useful for hints.&lt;br /&gt;
&lt;br /&gt;
=== Reimplement libavcodec/fdctref.c ===&lt;br /&gt;
The forward double precision DCT in this file has a non-free license. We need an LGPL replacement of this file.&lt;br /&gt;
&lt;br /&gt;
=== Implement the Flash Screen Video codec version 2 ===&lt;br /&gt;
FFmpeg is missing both a decoder and an encoder. Would be nice to have that.&lt;br /&gt;
&lt;br /&gt;
=== Add wma fixed point decoder back into libavcodec ===&lt;br /&gt;
http://svn.rockbox.org/viewvc.cgi/trunk/apps/codecs/libwma/&lt;br /&gt;
Rockbox's fixed-point WMA decoder was adapted from the decoder in libavcodec.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10290</id>
		<title>SPDIF</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10290"/>
		<updated>2008-07-24T13:53:34Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Added ac3 filter paper about spdif.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Official Name: Sony/Philips Digital Interconnect Format AKA Sony/Philips Digital InterFace&lt;br /&gt;
* Company: Sony/Philips&lt;br /&gt;
* Official Specification Number: IEC 60958, IEC 958 type II&lt;br /&gt;
* Official Specification: http://v3.espacenet.com/origdoc?DB=EPODOC&amp;amp;IDX=EP811295&amp;amp;QPN=EP0811295#&lt;br /&gt;
* Links: http://en.wikipedia.org/wiki/Spdif http://www.epanorama.net/documents/audio/spdif.html&lt;br /&gt;
&lt;br /&gt;
S/PDIF is mostly used to transmit compressed multichannel audio from a media player to an amplifier/receiver. &lt;br /&gt;
&lt;br /&gt;
The following audio formats are known to be transmitted over S/PDIF:&lt;br /&gt;
&lt;br /&gt;
*[[DTS]]&lt;br /&gt;
*[[AC3]]&lt;br /&gt;
*[[PCM]]&lt;br /&gt;
*[[MLP]]&lt;br /&gt;
*[[AAC]] - The name for the standard describing the formating is BS EN 61937-1:2007, preview can be seen [http://www.saiglobal.com/PDFTemp/Previews/OSH/iec/iec61000/61900/iec61937-6%7Bed2.0%7Den.pdf here].&lt;br /&gt;
*[[MP2]]&lt;br /&gt;
*[[MP3]]&lt;br /&gt;
*[[Windows_Media_Audio_Pro|Wma Pro]] - Useless [http://download.microsoft.com/download/5/b/5/5b5bec17-ea71-4653-9539-204a672f11cf/wmadrv.doc Specification] and better [http://www.saiglobal.com/PDFTemp/Previews/OSH/iec/iec61000/61900/iec61937-8%7Bed1.0%7Den.pdf Specification].&lt;br /&gt;
&lt;br /&gt;
[[Mplayer]] is able to play PCM,DTS and AC3 over S/PDIF. http://www.cs.tut.fi/~ik/mpegspdif.html has the details on how to transmit MP2 and MP3.&lt;br /&gt;
&lt;br /&gt;
http://www.ac3filter.net/projects/spdifer also explains how to transmit MP3,DTS and AC3.&lt;br /&gt;
&lt;br /&gt;
The details how to transmit Wma Pro is also known but not published yet.&lt;br /&gt;
&lt;br /&gt;
Info about SPDIF http://ac3filter.net/files/docs/ac3filter_1_30b/spdif_eng.pdf.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Container Formats]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10289</id>
		<title>SPDIF</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10289"/>
		<updated>2008-07-24T13:43:16Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: wmapro over spdif specs&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Official Name: Sony/Philips Digital Interconnect Format AKA Sony/Philips Digital InterFace&lt;br /&gt;
* Company: Sony/Philips&lt;br /&gt;
* Official Specification Number: IEC 60958, IEC 958 type II&lt;br /&gt;
* Official Specification: http://v3.espacenet.com/origdoc?DB=EPODOC&amp;amp;IDX=EP811295&amp;amp;QPN=EP0811295#&lt;br /&gt;
* Links: http://en.wikipedia.org/wiki/Spdif http://www.epanorama.net/documents/audio/spdif.html&lt;br /&gt;
&lt;br /&gt;
S/PDIF is mostly used to transmit compressed multichannel audio from a media player to an amplifier/receiver. &lt;br /&gt;
&lt;br /&gt;
The following audio formats are known to be transmitted over S/PDIF:&lt;br /&gt;
&lt;br /&gt;
*[[DTS]]&lt;br /&gt;
*[[AC3]]&lt;br /&gt;
*[[PCM]]&lt;br /&gt;
*[[MLP]]&lt;br /&gt;
*[[AAC]] - The name for the standard describing the formating is BS EN 61937-1:2007, preview can be seen [http://www.saiglobal.com/PDFTemp/Previews/OSH/iec/iec61000/61900/iec61937-6%7Bed2.0%7Den.pdf here].&lt;br /&gt;
*[[MP2]]&lt;br /&gt;
*[[MP3]]&lt;br /&gt;
*[[Windows_Media_Audio_Pro|Wma Pro]] - Useless [http://download.microsoft.com/download/5/b/5/5b5bec17-ea71-4653-9539-204a672f11cf/wmadrv.doc Specification] and better [http://www.saiglobal.com/PDFTemp/Previews/OSH/iec/iec61000/61900/iec61937-8%7Bed1.0%7Den.pdf Specification].&lt;br /&gt;
&lt;br /&gt;
[[Mplayer]] is able to play PCM,DTS and AC3 over S/PDIF. http://www.cs.tut.fi/~ik/mpegspdif.html has the details on how to transmit MP2 and MP3.&lt;br /&gt;
&lt;br /&gt;
http://www.ac3filter.net/projects/spdifer also explains how to transmit MP3,DTS and AC3.&lt;br /&gt;
&lt;br /&gt;
The details how to transmit Wma Pro is also known but not published yet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Container Formats]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10288</id>
		<title>SPDIF</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10288"/>
		<updated>2008-07-24T13:22:08Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: AAC in spdif specification.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Official Name: Sony/Philips Digital Interconnect Format AKA Sony/Philips Digital InterFace&lt;br /&gt;
* Company: Sony/Philips&lt;br /&gt;
* Official Specification Number: IEC 60958, IEC 958 type II&lt;br /&gt;
* Official Specification: http://v3.espacenet.com/origdoc?DB=EPODOC&amp;amp;IDX=EP811295&amp;amp;QPN=EP0811295#&lt;br /&gt;
* Links: http://en.wikipedia.org/wiki/Spdif http://www.epanorama.net/documents/audio/spdif.html&lt;br /&gt;
&lt;br /&gt;
S/PDIF is mostly used to transmit compressed multichannel audio from a media player to an amplifier/receiver. &lt;br /&gt;
&lt;br /&gt;
The following audio formats are known to be transmitted over S/PDIF:&lt;br /&gt;
&lt;br /&gt;
*[[DTS]]&lt;br /&gt;
*[[AC3]]&lt;br /&gt;
*[[PCM]]&lt;br /&gt;
*[[MLP]]&lt;br /&gt;
*[[AAC]] - The name for the standard describing the formating is BS EN 61937-1:2007, preview can be seen [http://www.saiglobal.com/PDFTemp/Previews/OSH/iec/iec61000/61900/iec61937-6%7Bed2.0%7Den.pdf here].&lt;br /&gt;
*[[MP2]]&lt;br /&gt;
*[[MP3]]&lt;br /&gt;
*[[Windows_Media_Audio_Pro|Wma Pro]] - Useless [http://download.microsoft.com/download/5/b/5/5b5bec17-ea71-4653-9539-204a672f11cf/wmadrv.doc Specification]&lt;br /&gt;
&lt;br /&gt;
[[Mplayer]] is able to play PCM,DTS and AC3 over S/PDIF. http://www.cs.tut.fi/~ik/mpegspdif.html has the details on how to transmit MP2 and MP3.&lt;br /&gt;
&lt;br /&gt;
http://www.ac3filter.net/projects/spdifer also explains how to transmit MP3,DTS and AC3.&lt;br /&gt;
&lt;br /&gt;
The details how to transmit Wma Pro is also known but not published yet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Container Formats]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10287</id>
		<title>SPDIF</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10287"/>
		<updated>2008-07-24T13:03:52Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Added wmapro spdif info&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Official Name: Sony/Philips Digital Interconnect Format AKA Sony/Philips Digital InterFace&lt;br /&gt;
* Company: Sony/Philips&lt;br /&gt;
* Official Specification Number: IEC 60958, IEC 958 type II&lt;br /&gt;
* Official Specification: http://v3.espacenet.com/origdoc?DB=EPODOC&amp;amp;IDX=EP811295&amp;amp;QPN=EP0811295#&lt;br /&gt;
* Links: http://en.wikipedia.org/wiki/Spdif http://www.epanorama.net/documents/audio/spdif.html&lt;br /&gt;
&lt;br /&gt;
S/PDIF is mostly used to transmit compressed multichannel audio from a media player to an amplifier/receiver. &lt;br /&gt;
&lt;br /&gt;
The following audio formats are known to be transmitted over S/PDIF:&lt;br /&gt;
&lt;br /&gt;
*[[DTS]]&lt;br /&gt;
*[[AC3]]&lt;br /&gt;
*[[PCM]]&lt;br /&gt;
*[[MLP]]&lt;br /&gt;
*[[AAC]]&lt;br /&gt;
*[[MP2]]&lt;br /&gt;
*[[MP3]]&lt;br /&gt;
*[[Windows_Media_Audio_Pro|Wma Pro]] - Useless [http://download.microsoft.com/download/5/b/5/5b5bec17-ea71-4653-9539-204a672f11cf/wmadrv.doc Specification]&lt;br /&gt;
&lt;br /&gt;
[[Mplayer]] is able to play PCM,DTS and AC3 over S/PDIF. http://www.cs.tut.fi/~ik/mpegspdif.html has the details on how to transmit MP2 and MP3.&lt;br /&gt;
&lt;br /&gt;
http://www.ac3filter.net/projects/spdifer also explains how to transmit MP3,DTS and AC3.&lt;br /&gt;
&lt;br /&gt;
The details how to transmit Wma Pro is also known but not published yet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Container Formats]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10286</id>
		<title>SPDIF</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10286"/>
		<updated>2008-07-24T12:19:10Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Added the spdiffer project.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Official Name: Sony/Philips Digital Interconnect Format AKA Sony/Philips Digital InterFace&lt;br /&gt;
* Company: Sony/Philips&lt;br /&gt;
* Official Specification Number: IEC 60958, IEC 958 type II&lt;br /&gt;
* Official Specification: http://v3.espacenet.com/origdoc?DB=EPODOC&amp;amp;IDX=EP811295&amp;amp;QPN=EP0811295#&lt;br /&gt;
* Links: http://en.wikipedia.org/wiki/Spdif http://www.epanorama.net/documents/audio/spdif.html&lt;br /&gt;
&lt;br /&gt;
S/PDIF is mostly used to transmit compressed multichannel audio from a media player to an amplifier/receiver. &lt;br /&gt;
&lt;br /&gt;
The following audio formats are known to be transmitted over S/PDIF:&lt;br /&gt;
&lt;br /&gt;
*[[DTS]]&lt;br /&gt;
*[[AC3]]&lt;br /&gt;
*[[PCM]]&lt;br /&gt;
*[[MLP]]&lt;br /&gt;
*[[AAC]]&lt;br /&gt;
*[[MP2]]&lt;br /&gt;
*[[MP3]]&lt;br /&gt;
*[[Windows_Media_Audio_Pro|Wma Pro]]&lt;br /&gt;
&lt;br /&gt;
[[Mplayer]] is able to play PCM,DTS and AC3 over S/PDIF. http://www.cs.tut.fi/~ik/mpegspdif.html has the details on how to transmit MP2 and MP3.&lt;br /&gt;
&lt;br /&gt;
http://www.ac3filter.net/projects/spdifer also explains how to transmit MP3,DTS and AC3.&lt;br /&gt;
&lt;br /&gt;
The details how to transmit Wma Pro is also known but not published yet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Container Formats]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10285</id>
		<title>SPDIF</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=SPDIF&amp;diff=10285"/>
		<updated>2008-07-24T11:26:13Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Initial S/PDIF article&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Official Name: Sony/Philips Digital Interconnect Format AKA Sony/Philips Digital InterFace&lt;br /&gt;
* Company: Sony/Philips&lt;br /&gt;
* Official Specification Number: IEC 60958, IEC 958 type II&lt;br /&gt;
* Official Specification: http://v3.espacenet.com/origdoc?DB=EPODOC&amp;amp;IDX=EP811295&amp;amp;QPN=EP0811295#&lt;br /&gt;
* Links: http://en.wikipedia.org/wiki/Spdif http://www.epanorama.net/documents/audio/spdif.html&lt;br /&gt;
&lt;br /&gt;
S/PDIF is mostly used to transmit compressed multichannel audio from a media player to an amplifier/receiver. &lt;br /&gt;
&lt;br /&gt;
The following audio formats are known to be transmitted over S/PDIF:&lt;br /&gt;
&lt;br /&gt;
*[[DTS]]&lt;br /&gt;
*[[AC3]]&lt;br /&gt;
*[[PCM]]&lt;br /&gt;
*[[MLP]]&lt;br /&gt;
*[[AAC]]&lt;br /&gt;
*[[MP2]]&lt;br /&gt;
*[[MP3]]&lt;br /&gt;
*[[Windows_Media_Audio_Pro|Wma Pro]]&lt;br /&gt;
&lt;br /&gt;
[[Mplayer]] is able to play PCM,DTS and AC3 over S/PDIF. http://www.cs.tut.fi/~ik/mpegspdif.html has the details on how to transmit MP2 and MP3. The details how to transmit Wma Pro is also known but not published yet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Container Formats]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=10261</id>
		<title>Small FFmpeg Tasks</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Small_FFmpeg_Tasks&amp;diff=10261"/>
		<updated>2008-07-05T18:31:15Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Done&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains ideas for small, relatively simple tasks for the [[FFmpeg]] project. People who might be interested in trying one of these tasks:&lt;br /&gt;
* Someone who wants to contribute to FFmpeg and needs to find a well-defined task to start with&lt;br /&gt;
* Someone who wishes to qualify for one of FFmpeg's coveted [[FFmpeg Summer Of Code|Summer of Code]] project slots&lt;br /&gt;
* An existing FFmpeg developer who has been away from the project for a while and needs a smaller task as motivation for re-learning the codebase&lt;br /&gt;
&lt;br /&gt;
'''If you would like to work on one of these tasks''', please take these steps:&lt;br /&gt;
* Subscribe to the [https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel|FFmpeg development mailing list] and indicate your interest&lt;br /&gt;
* Ask [[User:Multimedia Mike|Multimedia Mike]] for a Wiki account so you can claim your task on this Wiki&lt;br /&gt;
&lt;br /&gt;
'''If you would like to add to this list''', please be prepared to explain some useful details about the task. Excessively vague tasks with no supporting details will be ruthlessly deleted.&lt;br /&gt;
&lt;br /&gt;
=== Finish up a previous incomplete SoC project ===&lt;br /&gt;
&lt;br /&gt;
Several SoC projects from previous years have not yet made it into FFmpeg. Taking any of them and finishing them up to the point that they can be included should make for a good qualification task. Check out the [[FFmpeg Summer Of Code]] overview page and look for the unfinished projects, like AMR-NB, QCELP, Dirac, TS muxer, JPEG 2000.&lt;br /&gt;
&lt;br /&gt;
* Bartlomiej Wolowiec is working on finishing the EAC3 decoder [http://lists.mplayerhq.hu/pipermail/ffmpeg-soc/2008-March/002745.html].&lt;br /&gt;
&lt;br /&gt;
* Zhentan Feng is working on the [[FFmpeg Summer Of Code#TS Muxer|TS Muxer]] [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-March/043773.html].&lt;br /&gt;
&lt;br /&gt;
* Reynaldo H. Verdejo Pinochet is working on the [[FFmpeg Summer Of Code#QCELP Decoder|QCELP Decoder]] [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-March/043806.html].&lt;br /&gt;
&lt;br /&gt;
=== Generic Colorspace system ===&lt;br /&gt;
This task involves adding support more than 8 bits per component (Y on 10 bits, U on 10 bits, V on 10 bits for example)&lt;br /&gt;
and generic simple conversion to other colorspaces.&lt;br /&gt;
&lt;br /&gt;
''Does this have to do with revising FFmpeg's infrastructure? If so, then it doesn't feel like a qualification task. If it's something simpler, then the vague description does not convey that simplicity. Please expound.'' --[[User:Multimedia Mike|Multimedia Mike]] 12:56, 25 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
''I don't think so, extending PixFmt to extended structure with finegrained description like depth, range values, colorspace, sample period, and write generic simple conversion from all formats to all others, like suggested by Michael on the mailing list. Conversion routine can be a good qualification task for video encoders/decoders. What do you think ?&lt;br /&gt;
--[[User:Bcoudurier|Baptiste Coudurier]] 00:30, 29 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Make the SoC dts encoder multichannel capable ===&lt;br /&gt;
Here is a skeleton for a dts encoder http://svn.mplayerhq.hu/soc/dcaenc/, currently it can only encode stereo streams.&lt;br /&gt;
The task is to extend it to support 5.1 channels also.&lt;br /&gt;
&lt;br /&gt;
Specs and info can be found here:&lt;br /&gt;
http://wiki.multimedia.cx/index.php?title=DTS&lt;br /&gt;
&lt;br /&gt;
:''Osunkunle Biodun Isaac''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Support PB frame mode for H.263i ===&lt;br /&gt;
Details are in the issue tracker: http://roundup.mplayerhq.hu/roundup/ffmpeg/issue27&lt;br /&gt;
&lt;br /&gt;
H.263 spec describing PB frames and improved PB frames: http://www.itu.int/rec/T-REC-H.263-200501-I/en&lt;br /&gt;
&lt;br /&gt;
=== Patch cleanup for MPEG 1 &amp;amp; 2 optimizations ===&lt;br /&gt;
Details are in the issue tracker: http://roundup.mplayerhq.hu/roundup/ffmpeg/issue100&lt;br /&gt;
&lt;br /&gt;
=== Implement a Vivo demuxer for FFmpeg ===&lt;br /&gt;
Implement an FFmpeg demuxer for the [[Vivo]] file format. The best reference for understanding the format would be MPlayer's [http://svn.mplayerhq.hu/mplayer/trunk/libmpdemux/demux_viv.c?view=markup existing .viv demuxer].&lt;br /&gt;
&lt;br /&gt;
This task corresponds to issue 99: http://roundup.mplayerhq.hu/roundup/ffmpeg/issue99&lt;br /&gt;
&lt;br /&gt;
''I am ready to help out with understanding MPlayer's demuxer, esp. MPlayer API stuff if necessary.&lt;br /&gt;
--[[User:Reimar|Reimar]] 15:46, 1 March 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Port missing demuxers from MPlayer to FFmpeg ===&lt;br /&gt;
MPlayer supports a few container formats in libmpdemux that are not yet present in libavformat. Porting them over and gettting them relicensed as LGPL or reimplementing them from scratch should make reasonable small tasks.&lt;br /&gt;
&lt;br /&gt;
=== Optimal Huffman tables for (M)JPEG ===&lt;br /&gt;
This task is outlined at http://guru.multimedia.cx/small-tasks-for-ffmpeg/ and is tracked in the issue tracker: http://roundup.mplayerhq.hu/roundup/ffmpeg/issue267&lt;br /&gt;
&lt;br /&gt;
=== YOP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[Psygnosis YOP]] files. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[Psygnosis YOP|The Psygnosis YOP page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== M95 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[M95]] files. This will entail writing a new file demuxer and video decoder (the audio is already uncompressed), both of which are trivial by FFmpeg standards. [[M95|The M95 page]] contains the specs necessary to complete this task and points to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== BRP Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[BRP]] files. This will entail writing a new file demuxer as well as a video decoder that can handle at least 2 variations of format data. Further, write an audio decoder for the custom DPCM format in the file. All of these tasks are considered trivial by FFmpeg standards. [[BRP|The BRP page]] contains the specs necessary to complete this task and points to downloadable samples for both known variations.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit Interplay Video Decoder ===&lt;br /&gt;
FFmpeg already supports [[Interplay MVE]] files with [[Interplay Video|8-bit video data]] inside. This task involves supporting 16-bit video data. The video encoding format is mostly the same but the pixel size is twice as large. Engage the ffmpeg-devel list to discuss how best to approach this task.&lt;br /&gt;
&lt;br /&gt;
=== 16-bit VQA Video Decoder ===&lt;br /&gt;
FFmpeg already supports Westwood [[VQA]] files. However, there are 3 variations of its custom video codec. The first 2 are supported in FFmpeg. This task involves implementing support for the 3rd variation. Visit the VQA samples repository: http://samples.mplayerhq.hu/game-formats/vqa/ -- The files in the directories Tiberian Sun VQAs/, bladerunner/, and dune2000/ use the 3rd variation of this codec. The [[VQA|VQA page]] should link to all the details you need to support this format.&lt;br /&gt;
&lt;br /&gt;
=== HNM4 Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[HNM4]] variant of the [[HNM]] format. This will entail writing a new file demuxer and video decoder, both of which are trivial by FFmpeg standards. [[HNM4|The HNM4 page]] contains the specs necessary to complete this task and links to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
:''Jai Menon is working on this task''&lt;br /&gt;
&lt;br /&gt;
=== FunCom ISS Playback System ===&lt;br /&gt;
This task is to implement an FFmpeg playback subsystem for [[FunCom ISS]] files. This will entail writing a new file demuxer and connecting it to the existing FFmpeg decoder for IMA ADPCM data. [[FunCom ISS|The FunCom ISS page]] contains the specs necessary to complete this task and links to downloadable samples.&lt;br /&gt;
&lt;br /&gt;
=== Apple RPZA encoder ===&lt;br /&gt;
A patch was once sent to the ffmpeg-devel mailing list to include and encoder for the [[Apple RPZA]] video codec. That code can be found on the &amp;quot;[[Interesting Patches]]&amp;quot; page. This qualification task involves applying that patch so that it can compile with current FFmpeg SVN code and then cleaning it up per the standards of the project. Engage the mailing list to learn more about what to do.&lt;br /&gt;
&lt;br /&gt;
=== QuickTime Edit List Support ===&lt;br /&gt;
Implement edit list support in FFmpeg's QuickTime demuxer (libavformat/mov.c). This involves parsing the 'elst' atom in a QuickTime file. For a demonstration of how this is a problem, download the file menace00.mov from http://samples.mplayerhq.hu/mov/editlist/ and play it with ffplay or transcode it with ffmpeg. Notice that the audio and video are ever so slightly out of sync. Proper edit list support will solve that. Other samples in that directory also presumably exhibit edit list-related bugs. The [http://xine.cvs.sourceforge.net/xine/xine-lib/src/demuxers/demux_qt.c?view=markup Xine demuxer] has support for this, it might be useful for hints.&lt;br /&gt;
&lt;br /&gt;
=== Complete QuickTime RLE Encoder ===&lt;br /&gt;
FFmpeg already has a decoder for the [[Apple QuickTime RLE]] video format. It needs work, though. Pursuant to [[Interesting_Patches#1_and_2_bit_QTRLE_decoder_by_Roberto_Togni|this patch]] and [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-March/043352.html this email thread], revise the patch so that it is suitable for inclusion into the main codebase. This involves adding support for 1-bit and 2-bit variants, and refactoring the whole decoder to be cleaner. Ask on the list for specific advice.&lt;br /&gt;
&lt;br /&gt;
=== Reimplement libavcodec/fdctref.c ===&lt;br /&gt;
The forward double precision DCT in this file has a non-free license. We need an LGPL replacement of this file.&lt;br /&gt;
&lt;br /&gt;
=== SIMD optimize  qmf_32_subbands in dca.c===&lt;br /&gt;
qmf_32_subbands needs some SSE and altivec love. The C code could use some speedups also.&lt;br /&gt;
&lt;br /&gt;
=== Implement the Flash Screen Video codec version 2 ===&lt;br /&gt;
FFmpeg is missing both a decoder and an encoder. Would be nice to have that.&lt;br /&gt;
&lt;br /&gt;
=== Add wma fixed point decoder back into libavcodec ===&lt;br /&gt;
http://svn.rockbox.org/viewvc.cgi/trunk/apps/codecs/libwma/&lt;br /&gt;
Rockbox's fixed-point WMA decoder was adapted from the decoder in libavcodec.&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Interesting_Patches&amp;diff=10255</id>
		<title>Interesting Patches</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Interesting_Patches&amp;diff=10255"/>
		<updated>2008-07-04T15:47:36Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: MLP decoder was just added to svn&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page tries to collect some useful patches that didn't make into SVN for some reason or another.&lt;br /&gt;
&lt;br /&gt;
== native [[Zlib]] decoder by Mans Rullgard ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-July/032820.html&lt;br /&gt;
&lt;br /&gt;
In the same thread, there are patches to use the native decoder in several FFmpeg decoders.&lt;br /&gt;
&lt;br /&gt;
== [[WMV3]] encoder by Denis Fortin ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-June/031699.html&lt;br /&gt;
&lt;br /&gt;
== [[H.263]] rtp patch ==&lt;br /&gt;
http://www.voxgratia.org/bin/ffmpeg-0.4.7.patch.zip, originally at http://www.salyens.com/downloads/index.html#ffmpeg-0.4.7, now removed.&lt;br /&gt;
&lt;br /&gt;
== [[Apple RPZA]] encoder by Todd Kirby ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2005-June/001673.html&lt;br /&gt;
&lt;br /&gt;
== 1 and 2 bit [[Apple QuickTime RLE|QTRLE]] decoder by Roberto Togni ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-January/022046.html&lt;br /&gt;
&lt;br /&gt;
== Test Pattern Generator Demuxer by Nicholas George ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-October/036838.html&lt;br /&gt;
&lt;br /&gt;
== Test Pattern Generator Demuxer by [[User:Angustia|Ramiro Ribeiro Polla]] ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-April/028226.html&lt;br /&gt;
Or &lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/49447&lt;br /&gt;
&lt;br /&gt;
== PES packetizer by Xiaohui Sun ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-September/034849.html&lt;br /&gt;
&lt;br /&gt;
Part of the work of [[FFmpeg Summer Of Code#TS Muxer|Summer Of Code TS Muxer]]&lt;br /&gt;
&lt;br /&gt;
== Imlib2script: a scriptable vhook by [[User:Wzrlpy|Víctor Paesa]] ==&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/52341&lt;br /&gt;
&lt;br /&gt;
== vf_imlib2: a libavfilter filter by [[User:Wzrlpy|Víctor Paesa]] ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-soc/2007-December/002162.html&lt;br /&gt;
&lt;br /&gt;
== File concatenation by Wolfram Gloger ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-July/032131.html&lt;br /&gt;
&lt;br /&gt;
== &amp;quot;mem&amp;quot; file protocol by Lagrange Multiplier ==&lt;br /&gt;
The &amp;quot;mem&amp;quot; protocol simply uses RAM as a source for input multimedia data, akin to how the &amp;quot;file&amp;quot; and &amp;quot;pipe&amp;quot; protocols use filesystem files and pipes as sources.&lt;br /&gt;
&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-May/028489.html&lt;br /&gt;
&lt;br /&gt;
== Presets/profiles for usual targets by Panagiotis Issaris ==&lt;br /&gt;
Allow to keep in a text file groups of command options, and apply them at once by specifying the target name.&lt;br /&gt;
&lt;br /&gt;
Handy for iPod, PSP, or any other picky multimedia player that otherwise requires lengthy command lines.&lt;br /&gt;
&lt;br /&gt;
http://article.gmane.org/gmane.comp.video.ffmpeg.devel/37244&lt;br /&gt;
&lt;br /&gt;
== PiP (Picture in Picture): a vhook filter by Mihail Stoyanov ==&lt;br /&gt;
http://article.gmane.org/gmane.comp.video.ffmpeg.devel/38896&lt;br /&gt;
&lt;br /&gt;
== [[AMV]] encoder ==&lt;br /&gt;
http://code.google.com/p/amv-codec-tools/&lt;br /&gt;
&lt;br /&gt;
See this post [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-October/037356.html] to see what is missing to get it into SVN.&lt;br /&gt;
&lt;br /&gt;
== [[Electronic Arts Formats]] demuxer/decoder by [[User:Suxen drol|Peter Ross]]==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-October/036938.html&lt;br /&gt;
The format demuxer modifications and the EA video codecs have not yet been applied to FFmpeg.&lt;br /&gt;
&lt;br /&gt;
== Experimental MSVC port by Ole André Vadla Ravnås ==&lt;br /&gt;
Code in the [http://bazaar-vcs.org bazaar] branch at http://people.collabora.co.uk/~oleavr/OABuild/bzr/ffmpeg/&lt;br /&gt;
&lt;br /&gt;
Patch at http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-March/044463.html&lt;br /&gt;
&lt;br /&gt;
== H264 encoder by Jori Liesenborgs &amp;amp; Panagiotis Issaris ==&lt;br /&gt;
http://research.edm.uhasselt.be/~h264/&lt;br /&gt;
&lt;br /&gt;
== DTS/AC3 in wav autodetection ==&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/49812/focus=49909&lt;br /&gt;
Clean up this patch and also add detection of AC3 in wav, it is similar. Samples for both can be found here: http://www.sr.se/cgi-bin/mall/artikel.asp?ProgramID=2445&amp;amp;Artikel=739973&lt;br /&gt;
&lt;br /&gt;
== [[Bink Audio]] decoder by [[User:Suxen drol|Peter Ross]] ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-April/045346.html&lt;br /&gt;
&lt;br /&gt;
Note: An updated patch is available from the [[User:Suxen drol|author]].&lt;br /&gt;
&lt;br /&gt;
== G722 decoder by Chas Williams ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-June/048457.html&lt;br /&gt;
&lt;br /&gt;
It is basically an adaptation to FFmpeg of the [http://www.soft-switch.org/ SirenDSP] decoder.&lt;br /&gt;
&lt;br /&gt;
== [[Chinese AVS]] video encoder by [[User:StefanG|Stefan Gehrer]] ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-July/033286.html&lt;br /&gt;
&lt;br /&gt;
==  Lossless msmpeg4v3 to mpeg4 transcoder ==&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/17074&lt;br /&gt;
&lt;br /&gt;
== Fixed point cook decoder ==&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/46024&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/54008&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/54553&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Interesting_Patches&amp;diff=10247</id>
		<title>Interesting Patches</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Interesting_Patches&amp;diff=10247"/>
		<updated>2008-06-28T10:32:19Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: Fixed point cook decoder patch and related threads.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page tries to collect some useful patches that didn't make into SVN for some reason or another.&lt;br /&gt;
&lt;br /&gt;
== native [[Zlib]] decoder by Mans Rullgard ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-July/032820.html&lt;br /&gt;
&lt;br /&gt;
In the same thread, there are patches to use the native decoder in several FFmpeg decoders.&lt;br /&gt;
&lt;br /&gt;
== [[WMV3]] encoder by Denis Fortin ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-June/031699.html&lt;br /&gt;
&lt;br /&gt;
== [[H.263]] rtp patch ==&lt;br /&gt;
http://www.voxgratia.org/bin/ffmpeg-0.4.7.patch.zip, originally at http://www.salyens.com/downloads/index.html#ffmpeg-0.4.7, now removed.&lt;br /&gt;
&lt;br /&gt;
== [[Apple RPZA]] encoder by Todd Kirby ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2005-June/001673.html&lt;br /&gt;
&lt;br /&gt;
== 1 and 2 bit [[Apple QuickTime RLE|QTRLE]] decoder by Roberto Togni ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-January/022046.html&lt;br /&gt;
&lt;br /&gt;
== Test Pattern Generator Demuxer by Nicholas George ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-October/036838.html&lt;br /&gt;
&lt;br /&gt;
== Test Pattern Generator Demuxer by [[User:Angustia|Ramiro Ribeiro Polla]] ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-April/028226.html&lt;br /&gt;
Or &lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/49447&lt;br /&gt;
&lt;br /&gt;
== PES packetizer by Xiaohui Sun ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-September/034849.html&lt;br /&gt;
&lt;br /&gt;
Part of the work of [[FFmpeg Summer Of Code#TS Muxer|Summer Of Code TS Muxer]]&lt;br /&gt;
&lt;br /&gt;
== Imlib2script: a scriptable vhook by [[User:Wzrlpy|Víctor Paesa]] ==&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/52341&lt;br /&gt;
&lt;br /&gt;
== vf_imlib2: a libavfilter filter by [[User:Wzrlpy|Víctor Paesa]] ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-soc/2007-December/002162.html&lt;br /&gt;
&lt;br /&gt;
== File concatenation by Wolfram Gloger ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-July/032131.html&lt;br /&gt;
&lt;br /&gt;
== &amp;quot;mem&amp;quot; file protocol by Lagrange Multiplier ==&lt;br /&gt;
The &amp;quot;mem&amp;quot; protocol simply uses RAM as a source for input multimedia data, akin to how the &amp;quot;file&amp;quot; and &amp;quot;pipe&amp;quot; protocols use filesystem files and pipes as sources.&lt;br /&gt;
&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-May/028489.html&lt;br /&gt;
&lt;br /&gt;
== Presets/profiles for usual targets by Panagiotis Issaris ==&lt;br /&gt;
Allow to keep in a text file groups of command options, and apply them at once by specifying the target name.&lt;br /&gt;
&lt;br /&gt;
Handy for iPod, PSP, or any other picky multimedia player that otherwise requires lengthy command lines.&lt;br /&gt;
&lt;br /&gt;
http://article.gmane.org/gmane.comp.video.ffmpeg.devel/37244&lt;br /&gt;
&lt;br /&gt;
== PiP (Picture in Picture): a vhook filter by Mihail Stoyanov ==&lt;br /&gt;
http://article.gmane.org/gmane.comp.video.ffmpeg.devel/38896&lt;br /&gt;
&lt;br /&gt;
== [[MLP]]/[[TrueHD]] decoder by Ian Caulfield ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-January/040234.html&lt;br /&gt;
&lt;br /&gt;
More details in the [[Small FFmpeg Tasks#Cleanup of MLP decoder|Small FFmpeg Tasks]] page.&lt;br /&gt;
&lt;br /&gt;
== [[AMV]] encoder ==&lt;br /&gt;
http://code.google.com/p/amv-codec-tools/&lt;br /&gt;
&lt;br /&gt;
See this post [http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-October/037356.html] to see what is missing to get it into SVN.&lt;br /&gt;
&lt;br /&gt;
== [[Electronic Arts Formats]] demuxer/decoder by Peter Ross==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-October/036938.html&lt;br /&gt;
The format demuxer modifications and the EA video codecs have not yet been applied to FFmpeg.&lt;br /&gt;
&lt;br /&gt;
== Experimental MSVC port by Ole André Vadla Ravnås ==&lt;br /&gt;
Code in the [http://bazaar-vcs.org bazaar] branch at http://people.collabora.co.uk/~oleavr/OABuild/bzr/ffmpeg/&lt;br /&gt;
&lt;br /&gt;
Patch at http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-March/044463.html&lt;br /&gt;
&lt;br /&gt;
== H264 encoder by Jori Liesenborgs &amp;amp; Panagiotis Issaris ==&lt;br /&gt;
http://research.edm.uhasselt.be/~h264/&lt;br /&gt;
&lt;br /&gt;
== DTS/AC3 in wav autodetection ==&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/49812/focus=49909&lt;br /&gt;
Clean up this patch and also add detection of AC3 in wav, it is similar. Samples for both can be found here: http://www.sr.se/cgi-bin/mall/artikel.asp?ProgramID=2445&amp;amp;Artikel=739973&lt;br /&gt;
&lt;br /&gt;
== [[Bink Audio]] decoder by Peter Ross ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-April/045346.html&lt;br /&gt;
&lt;br /&gt;
Note: An updated patch is available from the [[User:Suxen drol|author]].&lt;br /&gt;
&lt;br /&gt;
== G722 decoder by Chas Williams ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-June/048457.html&lt;br /&gt;
&lt;br /&gt;
It is basically an adaptation to FFmpeg of the [http://www.soft-switch.org/ SirenDSP] decoder.&lt;br /&gt;
&lt;br /&gt;
== [[Chinese AVS]] video encoder by [[User:StefanG|Stefan Gehrer]] ==&lt;br /&gt;
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-July/033286.html&lt;br /&gt;
&lt;br /&gt;
==  Lossless msmpeg4v3 to mpeg4 transcoder ==&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/17074&lt;br /&gt;
&lt;br /&gt;
== Fixed point cook decoder ==&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/46024&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/54008&lt;br /&gt;
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/54553&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=FFmpeg_audio_API&amp;diff=10229</id>
		<title>FFmpeg audio API</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=FFmpeg_audio_API&amp;diff=10229"/>
		<updated>2008-06-18T11:18:48Z</updated>

		<summary type="html">&lt;p&gt;Merbanan: added dwChannelMask&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for discussion regarding the reworking of the FFmpeg audio API to accommodate the requirements needed for today's audio codecs.&lt;br /&gt;
&lt;br /&gt;
==Reasons why an audio API is needed in FFmpeg==&lt;br /&gt;
FFmpeg's already well-known [[libavcodec]] module has become the de facto standard library for video decoding and encoding in free software projects. Unfortunately, no similar standard library has surfaced for audio/video filtering and otherwise working with audio/video stream once it has been decoded. Various multimedia projects (such as MPlayer, Xine, GStreamer, VirtualDub, etc.) have implemented their own filter systems to various degrees of success. What is needed is a high quality audio and video filter API - efficient, flexible enough to meet all the requirements which have led various projects to invent their own filter system, and yet easy to use or develop new filters with. This proposal is to implement a high quality audio API and filter library for FFmpeg, where it can be easily used by other multimedia-related software projects.&lt;br /&gt;
&lt;br /&gt;
== To Do ==&lt;br /&gt;
* Decide what will be implemented as functions in the public API and what will be implemented as a filter in the [[Libavfilter]] framework&lt;br /&gt;
&lt;br /&gt;
== Features needed ==&lt;br /&gt;
* Generalized channel mixing (SIMD optimized) - users should be able to set their own channel mixing coefficients.&lt;br /&gt;
* Codec alterable channel mixing coefficients - the codec should be able to set and update the channel mixing coefficients during runtime (DCA and AC-3 support this).&lt;br /&gt;
* Output channel request function - specify the number of desired output channels. The decoder may or may not be able to grant the request. If not, a general mixing filter should be used.&lt;br /&gt;
* Distinguish between number of coded channels, requested channels, and output channels. Demuxers and/or parsers would only need to set the number of coded channels.&lt;br /&gt;
* Channel reordering - currently there are different orders depending on the codec and/or container.&lt;br /&gt;
* SIMD optimized interleaving&lt;br /&gt;
* Allow planar output - don't duplicate the interleaving code in every codec&lt;br /&gt;
* Support bit depths other than 16-bit - 8-bit/24-bit/32-bit/float&lt;br /&gt;
* Channel selection - ability to access one channel from a multichannel stream&lt;br /&gt;
* SPDIF passthough support&lt;br /&gt;
* Decide on name of a such A/V filter API.&lt;br /&gt;
** libavmunge, or simply extend on the existing libavfilter have been suggested so far.&lt;br /&gt;
&lt;br /&gt;
== Feature wish list ==&lt;br /&gt;
'''Warning:''' This is not an official wish list. Before implementing any one of these items, ask first in the ffmpeg-devel mailing-list.&lt;br /&gt;
* Dolby Pro Logic Surround Sound decoding (Prologic 1 and Prologic 2).&lt;br /&gt;
* Add a better FFT routine. (Would the KISS implementation be a good candidate?)&lt;br /&gt;
* Fixed point MDCT/FFT implementations&lt;br /&gt;
* Custom audio filter support. (Basing it on the video filter API ideas?)&lt;br /&gt;
* Proper API for enabling SIMD optimized code.&lt;br /&gt;
* Create (or port) additional pre-process and post-process audio filters:&lt;br /&gt;
** Psychoacoustic audio processing&lt;br /&gt;
** Artificial reverberation&lt;br /&gt;
*Create a SDK (Software Development Kit) with templates for the A/V filter APIs&lt;br /&gt;
* Replace AVCODEC_MAX_AUDIO_FRAME_SIZE with a run-time calculated buffer size, that is tailored to the selected encoder/decoder. Currently, user applications must supply ffmpeg with an input/output buffer of AVCODEC_MAX_AUDIO_FRAME_SIZE bytes, irrespective of whether the codec will read/write that many samples.&lt;br /&gt;
&lt;br /&gt;
== Current ideas ==&lt;br /&gt;
Threads with previous discussions in the subject:&lt;br /&gt;
&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/47485/focus=48097&lt;br /&gt;
** This thread has several ideas that has already been implemented.&lt;br /&gt;
* http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-November/038323.html&lt;br /&gt;
** Discussion of general ideas and requirements for the new API.&lt;br /&gt;
* http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-January/040816.html&lt;br /&gt;
** This thread goes in to futher ideas about expanding the audio bitdepth support &lt;br /&gt;
&lt;br /&gt;
*Take a look at other existing players API for filter plugins, like for example:&lt;br /&gt;
** [http://xinehq.de/index.php/hackersguide#AEN864 Xine]&lt;br /&gt;
** [http://gstreamer.freedesktop.org/data/doc/gstreamer/head/pwg/html/index.html GStreamer]&lt;br /&gt;
** [http://www.xmms.org XMMS (X MultiMedia System)]&lt;br /&gt;
&lt;br /&gt;
== Proposal for internal audio mixing api/system ==&lt;br /&gt;
&lt;br /&gt;
=== ff_mix usage ===&lt;br /&gt;
To setup the mixing you need an AVMIXContext to hold all settings. After that just initialize the context with the proper mixing coefficient&lt;br /&gt;
tables and channel layouts.&lt;br /&gt;
&lt;br /&gt;
 AVMIXContext* mix=NULL;&lt;br /&gt;
 stream_dwChannelMask = FRONT_LEFT|FRONT_RIGHT|CENTER|LFE|REAR_LEFT|REAR_RIGHT;&lt;br /&gt;
 out_dwChannelMask = FRONT_LEFT|FRONT_RIGHT;&lt;br /&gt;
 result = ff_mix_init(mix, 6, 2, stream_dwChannelMask, out_dwChannelMask, codec_mixing_table ,mixing_coeffs_table);&lt;br /&gt;
&lt;br /&gt;
After this and if the result from ff_mix is 1 then set the pointers to the in and out buffers. Here is a possibility to reorder&lt;br /&gt;
the channels if that is needed.&lt;br /&gt;
&lt;br /&gt;
 mix-&amp;gt;inchannel[0]  = codec-&amp;gt;channel[0];&lt;br /&gt;
 mix-&amp;gt;inchannel[1]  = codec-&amp;gt;channel[1];&lt;br /&gt;
 mix-&amp;gt;inchannel[2]  = codec-&amp;gt;channel[2];&lt;br /&gt;
 mix-&amp;gt;inchannel[3]  = codec-&amp;gt;channel[3];&lt;br /&gt;
 mix-&amp;gt;inchannel[4]  = codec-&amp;gt;channel[4];&lt;br /&gt;
 mix-&amp;gt;inchannel[5]  = codec-&amp;gt;channel[5];&lt;br /&gt;
 mix-&amp;gt;outchannel[0] = codec-&amp;gt;outchannel[0];&lt;br /&gt;
 mix-&amp;gt;outchannel[1] = codec-&amp;gt;outchannel[1];&lt;br /&gt;
&lt;br /&gt;
Now everything should be setup properly. And to mix the buffers just use:&lt;br /&gt;
&lt;br /&gt;
 result = ff_mix(mix);&lt;br /&gt;
&lt;br /&gt;
If result is 0 then something was initialized wrongly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===struct codec_mix_struct===&lt;br /&gt;
&lt;br /&gt;
 /** This struct holds the possible stream channel configurations and the possible output configurations.&lt;br /&gt;
  *  The code will have a table of these struct's to define all the channel configurations it support.&lt;br /&gt;
  *  This table will be passes to the ff_mix_init function and the init will search through the table&lt;br /&gt;
  *  for a matching configuration and load the appropriate mixing coeffs.&lt;br /&gt;
  */&lt;br /&gt;
 typedef struct av_codec_mix_struct {&lt;br /&gt;
     unsigned int inchannels,            ///&amp;lt; amount of channels in the input stream&lt;br /&gt;
     unsigned int outchannels,           ///&amp;lt; amount of channels in the requested output stream&lt;br /&gt;
     unsinged int stream_channel_mask,   ///&amp;lt; channelmask for the input stream&lt;br /&gt;
     unsinged int out_channel_mask,      ///&amp;lt; channelmask for the output data&lt;br /&gt;
     int8_t* mixing_coeff_index_matrix,  ///&amp;lt; mixing matrix that correspond to the mixing configuration&lt;br /&gt;
                                         ///&amp;lt; Table with inchannels*outchannels index elements, a negative index means that the mixing coeffs should be negated.&lt;br /&gt;
                                         ///&amp;lt; For example (simplified) [1,2] would mean coeff[1]+coeff[2] while [1,-2] would mean coeff[1]-coeff[2].&lt;br /&gt;
 } av_codec_mix_struct;&lt;br /&gt;
&lt;br /&gt;
===struct AVMIXContext===&lt;br /&gt;
&lt;br /&gt;
 /** Main AVMIX context&lt;br /&gt;
  *&lt;br /&gt;
  */&lt;br /&gt;
 typedef struct AVMIXContext {&lt;br /&gt;
     unsigned int inchannels,            ///&amp;lt; amount of channels in the input stream&lt;br /&gt;
     unsigned int outchannels,           ///&amp;lt; amount of channels in the requested output stream&lt;br /&gt;
     void* inchannel[MAX_MIX_CHANNELS];  ///&amp;lt; pointers to the inchannels in channelmask order&lt;br /&gt;
     void* outchannel[MAX_MIX_CHANNELS]; ///&amp;lt; pointers to the outchannels in channelmask order&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
===function ff_mix_init===&lt;br /&gt;
 /** Initialization routine for the libavcodec multichannel audio mixer&lt;br /&gt;
  *&lt;br /&gt;
  * The multichannel mixer does not know the &amp;quot;position&amp;quot; of the speakers and it doesn't need to either. But&lt;br /&gt;
  * depending on the mixing matrix it will unknowingly reorder channels to the native order.&lt;br /&gt;
  *&lt;br /&gt;
  * @param[in|out] mix&lt;br /&gt;
  * This is the actual mixing context. It will hold all the information needed to perform mixing.&lt;br /&gt;
  * If the passed argument is NULL it will allocate a context. If not null it will reinit the passed&lt;br /&gt;
  * context. The mix context is of fixed size and will be large enough to support a MAX_MIX_CHANNELS&lt;br /&gt;
  * amount of channels.&lt;br /&gt;
  *&lt;br /&gt;
  * @param[in] inchannels&lt;br /&gt;
  * Number of inchannels, this is set by the input stream. This value will be stored in the mixing context.&lt;br /&gt;
  *&lt;br /&gt;
  * @param[in] outchannels &lt;br /&gt;
  * Number of outchannels, this is set by the user. This value will be stored in the mixing context.&lt;br /&gt;
  *&lt;br /&gt;
  * @param stream_channel_mask&lt;br /&gt;
  * This is the parameter describing the possible channel configuration a codec can have. This info is taken from&lt;br /&gt;
  * the input stream and converted to a channel mask.&lt;br /&gt;
  *&lt;br /&gt;
  * @param out_channel_mask&lt;br /&gt;
  * This mask will contain the user selected out channel configuration.&lt;br /&gt;
  *&lt;br /&gt;
  * @param mix_table[in]&lt;br /&gt;
  * Table of av_codec_mix_struct's. &lt;br /&gt;
  *&lt;br /&gt;
  * @param[in] mixing_coeffs_table&lt;br /&gt;
  * Table with mixing coeffs, it is this table the mixing_coeff_index_matrix will refer too. It is declared as void* to&lt;br /&gt;
  * make it possible for a future addition of fixed point mixing.&lt;br /&gt;
  *&lt;br /&gt;
  * @return[out]&lt;br /&gt;
  * The init will do a lookup for a matching mixing configuration with the help of the in and out channel masks.&lt;br /&gt;
  * If there isn't any matching configuration return 0 otherwise return 1. &lt;br /&gt;
  */&lt;br /&gt;
 int ff_mix_init(AVMIXContext* mix, unsigned int inchannels, unsigned int outchannels, unsigned int stream_channel_mask,&lt;br /&gt;
                 unsigned int out_channel_mask, av_codec_mix_table* mix_table, void* mixing_coeffs_table);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===select_mixing_matrix===&lt;br /&gt;
 /** Function to get the appropriate mixing_coeff_index_matrix.&lt;br /&gt;
  *&lt;br /&gt;
  *&lt;br /&gt;
  * @param[in] inchannels[in]&lt;br /&gt;
  * Number of inchannels, this is set by the input stream. This value will be stored in the mixing context.&lt;br /&gt;
  *&lt;br /&gt;
  * @param[in] outchannels[in]&lt;br /&gt;
  * Number of outchannels, this is set by the user. This value will be stored in the mixing context.&lt;br /&gt;
  *&lt;br /&gt;
  * @param stream_channel_mask[in]&lt;br /&gt;
  * This is the parameter describing the possible channel configuration a codec can have. This info is taken from&lt;br /&gt;
  * the input stream and converted to a channel mask.&lt;br /&gt;
  *&lt;br /&gt;
  * @param out_channel_mask[in]&lt;br /&gt;
  * This mask will contain the user selected out channel configuration.&lt;br /&gt;
  *&lt;br /&gt;
  * @param mix_table[in]&lt;br /&gt;
  * Table of av_codec_mix_struct's. &lt;br /&gt;
  *&lt;br /&gt;
  * @returns[out]&lt;br /&gt;
  * A mixing_coeff_index_matrix if the configuration could be found in the mix_table, NULL if not.&lt;br /&gt;
  */&lt;br /&gt;
 int8_t* select_mixing_matrix(unsigned int inchannels, unsigned int outchannels, unsigned int stream_channel_mask,&lt;br /&gt;
                              unsigned int out_channel_mask, av_codec_mix_table* mix_table);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/** Function to perform the mixing of audio in the input pointers to the output pointers&lt;br /&gt;
 *&lt;br /&gt;
 * This function should be called to initiate the mixing of source channels to the destination channels.&lt;br /&gt;
 *&lt;br /&gt;
 * @returns[out]&lt;br /&gt;
 * If something went bad (NULL pointers for src or dst etc) return 0 and if everything is ok return 1.&lt;br /&gt;
 */&lt;br /&gt;
int ff_mix(AVMIXContext* mix);&lt;br /&gt;
&lt;br /&gt;
===dwChannelMask===&lt;br /&gt;
This is the mask that is used in wav, that could be used in FFmpeg with some additions.&lt;br /&gt;
&lt;br /&gt;
 #define SPEAKER_FRONT_LEFT             0x00000001&lt;br /&gt;
 #define SPEAKER_FRONT_RIGHT            0x00000002&lt;br /&gt;
 #define SPEAKER_FRONT_CENTER           0x00000004&lt;br /&gt;
 #define SPEAKER_LOW_FREQUENCY          0x00000008&lt;br /&gt;
 #define SPEAKER_BACK_LEFT              0x00000010&lt;br /&gt;
 #define SPEAKER_BACK_RIGHT             0x00000020&lt;br /&gt;
 #define SPEAKER_FRONT_LEFT_OF_CENTER   0x00000040&lt;br /&gt;
 #define SPEAKER_FRONT_RIGHT_OF_CENTER  0x00000080&lt;br /&gt;
 #define SPEAKER_BACK_CENTER            0x00000100&lt;br /&gt;
 #define SPEAKER_SIDE_LEFT              0x00000200&lt;br /&gt;
 #define SPEAKER_SIDE_RIGHT             0x00000400&lt;br /&gt;
 #define SPEAKER_TOP_CENTER             0x00000800&lt;br /&gt;
 #define SPEAKER_TOP_FRONT_LEFT         0x00001000&lt;br /&gt;
 #define SPEAKER_TOP_FRONT_CENTER       0x00002000&lt;br /&gt;
 #define SPEAKER_TOP_FRONT_RIGHT        0x00004000&lt;br /&gt;
 #define SPEAKER_TOP_BACK_LEFT          0x00008000&lt;br /&gt;
 #define SPEAKER_TOP_BACK_CENTER        0x00010000&lt;br /&gt;
 #define SPEAKER_TOP_BACK_RIGHT         0x00020000&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Libavfilter]]&lt;br /&gt;
* [[FFmpeg filter howto]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:FFmpeg]]&lt;/div&gt;</summary>
		<author><name>Merbanan</name></author>
	</entry>
</feed>