Replace High 4:4:4 profile lossless with High 4:4:4 Predictive.
authorFiona Glaser <fiona@x264.com>
Sat, 27 Sep 2008 23:37:27 +0000 (16:37 -0700)
committerFiona Glaser <fiona@x264.com>
Sun, 28 Sep 2008 10:34:44 +0000 (03:34 -0700)
commita9e86d248d8d5f1e892159a7d86dcea2f884a859
tree77c5c10841313bcb5a233bd14466312a590314cb
parentadccf49a631a9e424dc0e86476752d511065582d
Replace High 4:4:4 profile lossless with High 4:4:4 Predictive.
This improves lossless compression by about 4-25% depending on source.
The benefit is generally higher for intra-only compression.
Also add support for 8x8dct and i8x8 blocks in lossless mode; this improves compression very slightly.
In some rare cases 8x8dct can hurt compression in lossless mode, but its usually helpful, albeit marginally.
Note that 8x8dct is only available with CABAC as it is never useful with CAVLC.
High 4:4:4 Predictive replaced the previous profile in a 2007 revision to the H.264 standard.
The only known compliant decoder for this profile is the latest version of CoreAVC.
As I write this, JM does not actually correctly decode this profile.
Hopefully this lack of support will soon change with this commit, as x264 will be (to my knowledge) the first compliant encoder.
13 files changed:
common/common.h
common/dct.c
common/dct.h
common/macroblock.c
common/mc.c
common/mc.h
common/set.h
common/x86/mc-c.c
encoder/analyse.c
encoder/encoder.c
encoder/macroblock.c
encoder/macroblock.h
encoder/set.c