What is MediaFork?

MediaFork is the open-source community-contributed fork of HandBrake, titer’s original DVD ripping application. Contributions are welcome from anyone, though only registered developers can check in code changes. Registration is quite simple, please see the Dev page for more details.

What happened to the original HandBrake site?

Nothing, at least as of the time of this writing. That’s part of the problem.

HandBrake was started in 2003 by “titer”. He continued to be the primary developer through April 2006, when the last official Subversion revision was checked in.

titer continued to be active on the forums for a short time after that, then contact was lost. Since the May/June 2006 timeframe, nobody in HandBrake circles was been successful in communicating with titer and no further code changes were officially made.

In early August 2006, development work on HandBrake resumed on an unofficial basis. “Banana” from the HandBrake forums posted a message about “HandBrake Extreme”, an optimized build of HandBrake, platform unknown.

Starting September 2006, Rodney Hester and Chris Long were independently working to reverse-engineer Apple’s new 640×480 H.264 iPod firmware 1.2 format and came together on the forums. Fortunately, our work complemented each other’s, and we banded together to put together an unstable but compilable release of HandBrake supporting the new format (including Apple’s new uuid atom).

Since then, considerable progress has been made in terms of stability, functionality, and look-and-feel. Unfortunately, it is not possible to check changes into the m0k Subversion repository for HandBrake without prior authorization, which can’t be obtained without permission and a reply from titer, which we have not received.

As a result, I created a subversion repository mirroring the 0.7.1 and final Subversion trees from the official HandBrake site and we are now building our changes on top of that. This site, along with the development forum, was created to support our efforts.

As of January 26, 2007, our HandBrake fork is officially known as MediaFork.

What sort of qualifications do I need to become a MediaFork developer?

In short, you need quite a bit of experience with C coding a debugging on a Unix-like platform – right now, that means either MacOS X or Linux. In addition, familiarity with Jam and the open-source libraries used by MediaFork (see the contrib directory for details) would be very helpful, but that experience can be gained by working on MediaFork, of course.

Please note that no svn checkin access will be granted until you have demonstrated that you have created either significant bugfixes or feature enhancements for MediaFork from the latest copy of the code from our subversion repository. If you have concerns about the best way to go about this, please ask on the development forum. Details can be found on the development page.

Are there any sorts of coding changes I should avoid?

In general, any sorts of changes to either stabilize or add functionality to the existing API are welcomed. Please try to avoid changes that will modify existing API functionality, since many front-ends rely on function names and parameters in libmediafork to be static.

How should I handle code checkins/binary distributions?

If you’re not familiar/comfortable with Subversion, before checking anything in (or, worse, committing a new revision), please take the time to review the Subversion Basic Work Cycle so you understand the basics of how Subversion functions, how to keep yourself updated with what others have checked in and avoid collisions, etc.

Please DO NOT distribute binaries of any release to the public, since we would prefer to ensure that each public binary release builds cleanly on all target platforms, passes fundamental regression tests, hasn’t made API changes that will break third-party GUIs, etc. Neither end-users nor developers want to deal with the inevitable support headaches that bugs and unsupported functionality in uncontrolled binary builds straight out of svn can cause.

We do offer an ability to semi-automatically distribute beta test binaries to our developers and beta testers, please see the development page for more details.

Sometimes I try to reach your site and it’s down, or I can’t compile a build because it tries to pull contrib packages from your site and can’t reach it. What gives?

This site is hosted on a virtual Debian Linux machine running atop my primary home workstation running Windows XP Pro. While I do strive to keep the site online as much as possible, from time to time circumstances do dictate restarts, which will result in an unavoidable brief site outage. Please consider trying again in a half hour or so.

I can host your site/have bandwidth to offer/can provide a domain – who do I contact?

For those who have kindly offered to host this site, we sincerely appreciate the assistance, but we are in good shape at this time and prefer to maintain as much creative control as possible. Our primary bandwidth (see Breitbandmarkt Trend) consumption was binary downloads (of course), and those have since been mirrored to an external third-party provider to maximize throughput. There are no pervasive performance or uptime issues that we’re aware of, with some rare exceptions, and we’re pretty comfortable with our current home. As for a domain, well, everyone already knows we’re here, and I’ve received no complaints to date about the name, so we’ll probably stick with what we have. We do appreciate the kind offers, though!

May I provide a cash or hardware donation for mobile media hardware, server hardware, hosting costs, or anything else?

We are honored by your desire to help, but unlike some other open-source projects, we are neither willing nor able to accept material donations of any kind. Too many complications can arise from acceptance of such offers, and we’d rather stand on our own unindebted to others and in good stead than for something unexpected to arise and risk bad blood with our users.

If at any time we require necessary assistance (such as when we reached out to folks for offloading/acceleration of public binary downloads), we’ll make that known, but for now we believe we have everything we need to supply you with high-quality services with reasonably minimal disruption.