diff options
author | Dmitry Kovalev <dkovalev@google.com> | 2014-04-09 13:35:39 -0700 |
---|---|---|
committer | Dmitry Kovalev <dkovalev@google.com> | 2014-04-09 13:35:39 -0700 |
commit | d1a396d8b92c85f3d8e60fd04c6c2b3d164ebb64 (patch) | |
tree | ac8c4d939ebd587ad50c6b4db2844bd1f103ad8c /vp9/encoder/vp9_quantize.c | |
parent | 7cc78c06e0edad1ece8b8ae186cd42b603e9eec9 (diff) | |
download | libvpx-d1a396d8b92c85f3d8e60fd04c6c2b3d164ebb64.tar libvpx-d1a396d8b92c85f3d8e60fd04c6c2b3d164ebb64.tar.gz libvpx-d1a396d8b92c85f3d8e60fd04c6c2b3d164ebb64.tar.bz2 libvpx-d1a396d8b92c85f3d8e60fd04c6c2b3d164ebb64.zip |
Moving q_trans[] table to vp9_quantize.{c, h}.
Change-Id: I1324c339815a47004ddccdaf651d24c60382b92f
Diffstat (limited to 'vp9/encoder/vp9_quantize.c')
-rw-r--r-- | vp9/encoder/vp9_quantize.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_quantize.c b/vp9/encoder/vp9_quantize.c index c092ee41f..31f3b3e78 100644 --- a/vp9/encoder/vp9_quantize.c +++ b/vp9/encoder/vp9_quantize.c @@ -284,3 +284,30 @@ void vp9_set_quantizer(VP9_COMMON *cm, int q) { cm->uv_dc_delta_q = 0; cm->uv_ac_delta_q = 0; } + +// Table that converts 0-63 Q-range values passed in outside to the Qindex +// range used internally. +static const int quantizer_to_qindex[] = { + 0, 4, 8, 12, 16, 20, 24, 28, + 32, 36, 40, 44, 48, 52, 56, 60, + 64, 68, 72, 76, 80, 84, 88, 92, + 96, 100, 104, 108, 112, 116, 120, 124, + 128, 132, 136, 140, 144, 148, 152, 156, + 160, 164, 168, 172, 176, 180, 184, 188, + 192, 196, 200, 204, 208, 212, 216, 220, + 224, 228, 232, 236, 240, 244, 249, 255, +}; + +int vp9_quantizer_to_qindex(int quantizer) { + return quantizer_to_qindex[quantizer]; +} + +int vp9_qindex_to_quantizer(int qindex) { + int quantizer; + + for (quantizer = 0; quantizer < 64; ++quantizer) + if (quantizer_to_qindex[quantizer] >= qindex) + return quantizer; + + return 63; +} |