[x264-devel] Lossless Compression

Alain Champenois achampen at matrox.com
Wed Aug 21 18:26:40 CEST 2013


Hi Raul,

I reported the same issue two months ago (Subject: Potential bug in transform bypass 8x8).
Transform bypass is the technical name for lossless compression.

In summary, for lossless compresison x264 is not compliant with the H.264 spec and neither
is ffmpeg (libavcodec) because it was developped to be compatible with x264.

The issue is related to the 8x8dct functionnality. If you want to generate lossless stream 
with x264 respecting the standard (compatible with JM), you need to disable 8x8dct by using 
the option  --no-8x8dct  when encoding. The streams generated by x264 will then respect the 
standard while still being compatible with the buggy ffmpeg (libavcodec).

I suggested the --no-8x8dct option become enabled automaticly when doing lossless, but this 
modification has not been accepted (yet).

Btw, the loss of compression resulting from disabling 8x8dct is minimal (less then 0.03%).

   Alain
  


More information about the x264-devel mailing list