Its been quite some time, hasn’t it? I’ve managed to go a few months without updates here, mostly because of my work at Avail and school also, but also because I’ve been intentionally putting it off. So, I’m going to actually put in some updates.
x264 now supports Predictive Lossless, the new lossless format introduced in the 2007 revision of the H.264 standard. The compression improvement is considerable; about 4-25% depending on source, with numbers generally higher in intra-only compression. There is no significant speed difference; if anything, it is faster, since lower bitrate means less time spent in bitstream coding. The downside is that only a single decoder in the entire world currently supports it correctly: CoreAVC. Not even JM supports it correctly (its i16×16 prediction support is bugged). A patch is available on the ffmpeg mailing list (simply search for Predictive Lossless or similar) to add support in libavcodec for the format. The strategy here is that since the main reason any decoder anywhere supported lossless to begin with is likely because of x264, this change should force the adoption of the much-superior Predictive Lossless profile.
I’ve begun merging much of the Google Summer of Code work; next on the menu will be the rest of Holger’s assembly and Joey Degges’ much improved multi-ref p8×8 partition search algorithm.
I also have acquired access to a pre-release Nehalem machine through Avail Media; this will allow for a series of Nehalem-specific speed optimizations to be committed on the day of Nehalem’s official release, giving a significant speed boost to users of the new processor in addition to the already-enormous benefit it gives.
x264 is now used by Facebook for their internet video; at this point in time, 25% of all new Facebook videos are encoded using x264. This will likely soon increase to 100% as VP6 is phased out in favor of H.264.
x264 is now at revision 999: only one left to 1000, and indeed we have special plans… more on that when it happens!