[x264-devel] x264 Development Newsletter: Vol 10

Jason Garrett-Glaser jason at x264.com
Wed Jan 26 02:57:08 CET 2011


This is the tenth x264 development newsletter.  If you missed the
first nine, this is a regular email containing updates on fixes and
improvements in the most recent x264 push, along with updates on
what's coming next.  Previous versions can be found in the mailing
list archives.

Fixes:

Some asm fixes to high bit depth: fix cases where SSE2-only
instructions were used in MMX functions (caused SIGILL on old CPUs).

Fix the cacheline check in cache32 avg2 code (minor speed improvement
on some old CPUs).

Fix CPU detection on Windows systems with >= 64 CPUs.  x264 still
doesn't use more than one processor group (it really doesn't need to),
but at least it'll work now.

Fix reconfiguration of b_tff: make changing field order during
encoding work properly.  Required for ffmpeg to signal TFF/BFF, since
ffmpeg's TFF/BFF is signaled per-frame instead of per-stream.

Fix cases where x264_encoder_encode failures (due to malloc failure)
could cause x264_encoder_close to crash.

Write the 3D frame packing SEI values more correctly (thanks to Nero
for the bug report).

Improvements:

Bump all the dates to 2011.

Add some missing values to the non-extended SAR table.

Improve the regression test script to not break with really complex
commandlines on OSs with limited filename length, as well as correctly
return to the original branch the user is on after testing.

Add an --input-fmt option to serve the same purpose of -f in ffmpeg;
useful for cases where ffmpeg can't successfully probe the format of
the input file.

Double the base framerate of frame-sequential 3D files; a "60fps"
frame-sequential 3D file is really only 30fps.

Add AVX support to x264's assembly abstraction layer as well as one
example function: still needs the actual AVX code to be written, but
x264 can now take advantage of 3-operand instructions.

VBV Emergency Mode is finally completed.  This makes x264 able to deal
gracefully with extreme input combined with VBV restrictions (e.g.
noise, Doremi Labs test boxes).  This is important for some broadcast
applications.

Upcoming:

--device and automatic --level restriction support is in the works, as
part of Google Code-In.  The patch is done, but needs review.

A per-option help system is in the works, as part of Google Code-In.
The patch is done, but needs editing of the help entries.

Adaptive MBAFF development is actually coming along for once this time.

x262 is under development: a best-in-class MPEG-2 encoder built using
the x264 framework.  Basic structure is done, with intra coding
finished and inter coding begun.

Work is planned to integrate x264 with the Sandy Bridge's encoding
ASIC for improved encoding performance.  Current status is: waiting on
Intel (these guys move at the speed of a paraplegic three-toed sloth swimming
down a river of frozen helium while chained to an osmium anchor stuck
inside a black hole).

Jason Garrett-Glaser

The x264 Team


More information about the x264-devel mailing list