This is a snapshot release of SVN revision 2907. We do not promise this is stable code. It is possibly unstable (and mostly undocumented) development code which will soon lead to the stable release of HandBrake 0.9.4. But in order for that process to happen, it needs a little more bug testing.
Download it now.
If you find broken things in this snapshot--which you might--post a thorough bug report in our bugs forum.
A full change log can be found on the Trac.
Core:
- Better handling of transport streams where audio starts first
- Better handling of transport streams that have been spliced together, leading to duplicate timestamps
- Handle, in dvdnav mode, poorly mastered DVDs that had the menus ripped out of them
- Better VC-1 frame detection
- Fixed subtitle crashes from multi-character UTF8 codes
- Removed bold and underline bias from soft subs
- Aligns subtitles at the bottom on iPods
- Read UTF-16 SRT subtitle files
- Handle very short SRT subtitle files
- Allows two-line soft subtitles / close captions
- Flushes LAME encoder's final packets
- Allow specifying field parity for detelecine and decomb
- Solaris 10 build support
- x264 updated to r1318-fe83a90
- Use libdvdnav by default on DVD sources
- Removed Constant QP encoding option for x264 (use CRF)
- Various bug fixes and UI tweaks
- Improved subtitle panel UI
- Matches GUIs' default verbosity level of 1
As we've had on our roadmap for quite awhile now, one of our goals for version 0.9.4 is to refocus on HandBrake's key strengths and to remove dead weight. As part of this process, several presets, containers, and a codec have been removed from HandBrake.
* AVI: AVI is a rough beast. It is obsolete. It does not support modern container features like chapters, muxed-in subtitles, variable framerate video, or out of order frame display. Furthermore, HandBrake's AVI muxer is vanilla AVI 1.0 that doesn't even support large files. The code has not been actively maintained since 2005. Keeping it in the library while implementing new features means a very convoluted data pipeline, full of conditionals that make the code more difficult to read/maintain, and make output harder to predict. As such, it is now gone. It is not coming back, and good riddance.
* OGG/OGM: HandBrake's OGM muxer is just as out of date. It hasn't been actively maintained in years either, and it too lacks support for HandBrake's best features. It requires conditionals to work around missing functionality too...only this one gets tested so infrequently the conditionals were never even put in the code, so it just fails when you try to do anything advanced. This one is not coming back either. And yes, we're aware of HTML 5. For patent-free muxing, HandBrake still has Matroska.
* XviD: HandBrake, these days, is almost entirely about H.264 video, aka MPEG-4 Part 10. This makes it rather...superfluous to include two different encoders for an older codec, MPEG-4 Part 2. When choosing between FFmpeg's and XviD's, it came down to a matter of necessity. We need to include libavcodec (FFmpeg) for a bunch of other parts of its API, like decoding. Meanwhile, XviD's build system causes constant grief (it's the most common support query we get about compiling, after x264's requirement of yasm). Since we mainly use MPEG-4 Part 2 for testing/debugging, and recommend only H.264 for high quality encodes, Xvid's undisputed quality edge over FFmpeg's encoder is inconsequential, while FFmpeg's speed edge over XviD is important to us.
* Video game presets: There are no more presets for the PSP, PS3, or Xbox 360. Quite frankly, they didn't work well. None of the development team members own the devices, so testing was minimal and support was nonexistent. Keeping up with the firmware vagaries and ambiguous specifications of these devices was not fun -- we get enough of that from Apple's kit, and those we all have around to test on. The new "Normal" preset should work perfectly fine on any device that supports standard Main Profile H.264 with AAC-LC audio in an MP4 file, which the PS3 and 360 ostensibly do.
* High profile presets: Instead of a confusing series of content-targeted presets, there is now a single, constant quality, High Profile preset with automated filtering and all the H.264 bells and whistles.