GSoC/GCI Archive
Google Code-in 2010 VideoLAN

x264: Create a per-option help system

completed by: Nagato Yuki

mentors: Jason Garrett-Glaser

x264, a project under the Videolan organizational umbrella, is one of the most popular video compression libraries, used worldwide for applications such as web video, television broadcast, and Blu-ray creation. It outclasses practically all commercial implementations both speed and compression-wise.

x264 has many options, some of which are not sufficiently documented in the included --help.  However, there is much other documentation outside of the x264 application itself, much of which is more detailed than the included documentation.  This would, of course, be much more useful if it was included directly in x264!  The basic idea is that, in addition to the normal help page, a user could use --help optionname to get extra information on optionname.

This would largely consist of creating a basic system in code for doing this, as well as transcribing help information into this system (and editing it).  Bonus points if it's extensible enough that non-coders can easily dump in new help information.

IMPORTANT: if you want to work on an x264 task, it is required that you come to #x264dev on irc://irc.freenode.net.  We will help answer your questions, guide you through whatever issues you have, and do code reviews.  In order to successfully complete an x264 task, the result must be of sufficiently high quality to be committed to the official x264 repository.   To ensure this, we will review your code and give you comments on how to improve it.  A task is only completed when these steps are done.

In short: do not take an x264 task, work on it without telling anyone, and then dump the code on us.  You'll waste your time, our time, and won't get credit for the task.