Add QPRD support as subme=10
authorFiona Glaser <fiona@x264.com>
Thu, 23 Jul 2009 19:20:39 +0000 (12:20 -0700)
committerFiona Glaser <fiona@x264.com>
Sun, 26 Jul 2009 08:46:18 +0000 (01:46 -0700)
commit4304c427fd6419b205c42aa139bfd8cebbdf60bf
treeb03386c1f598630a30cdeb3be7670acedd2b7008
parentd68f3b076acb1674c7cce95aaa2dc62372bbf7f4
Add QPRD support as subme=10
Refactor trellis lambda selection to be done in analyse_init instead of in trellis.
This will allow for more easy adaption of lambda later on; for now it allows constant lambda across variable QPs.
QPRD is only available with adaptive quantization enabled and generally improves SSIM and visual quality.
Additionally, weight the SSD values from RD based on the relative QP offset for chroma; helps visually at high QPs where chroma has a lower QP than luma.
This fixes some visual artifacts created by QPRD at high QPs.
Note that this generally hurts PSNR and SSIM, and so is only on when psy-RD is on.
Makefile
common/common.h
encoder/analyse.c
encoder/encoder.c
encoder/macroblock.c
encoder/macroblock.h
encoder/ratecontrol.c
encoder/rdo.c
x264.c