[x264-devel] Potential bug in transform bypass 8x8

Jason Garrett-Glaser jason at x264.com
Mon Jun 3 22:39:16 CEST 2013


On Mon, Jun 3, 2013 at 1:04 PM, Alain Champenois <achampen at matrox.com> wrote:
> Good day x264-dev,
>
> I was reviewing H264 transform bypass functionality (lossless) implementation in
> x264 and base on my understanding of the H264 specifications, x264 doesn't implement
> I_PRED_8x8_V or I_PRED_8x8_H modes correctly.
>
> For all intra 8x8 predictions, the spec mentions the filtered samples should be used
> but x264 is using the source samples when doing I_PRED_8x8_V or I_PRED_8x8_H
> modes in lossless (see detail explication below).

This is a known bug, but unfortunately there's not much that can be
done at this point; as far as I know libavcodec and coreavc are the
only (non-reference) implementations of H.264 lossless, and they both
do things the "wrong" way, as does x264. Since x264 seems to basically
be the first to implement this, the "mistake" has become part of the
de-facto spec (although if I remember right it does marginally improve
compression...). It could be changed, but everyone would need to
update their decoders, and it would be a gigantic hassle for everyone
for years. I don't think it's worth bothering with without a good
reason.

Jason


More information about the x264-devel mailing list