ref: 612104bb8dd3b40a635deebaca445f00aa069220
parent: ce3780251cd9cab3b9495fb78b7f8d2773f45acf
author: Ronald S. Bultje <[email protected]>
date: Wed Sep 30 18:01:41 EDT 2015
vp10: extend range for delta Q values. See issue 1051. 6 bits is fairly arbitrary but at least allows writing delta Q values that are fairly normal in other codecs. I can extend to 8 if people want full range, although I personally don't have any need for that. Change-Id: I0a5a7c3d9b8eb3de4418430ab0e925d4a08cd7a0
--- a/vp10/decoder/decodeframe.c
+++ b/vp10/decoder/decodeframe.c
@@ -1125,7 +1125,8 @@
}
static INLINE int read_delta_q(struct vpx_read_bit_buffer *rb) {
- return vpx_rb_read_bit(rb) ? vpx_rb_read_inv_signed_literal(rb, 4) : 0;
+ return vpx_rb_read_bit(rb) ?
+ vpx_rb_read_inv_signed_literal(rb, CONFIG_MISC_FIXES ? 6 : 4) : 0;
}
static void setup_quantization(VP10_COMMON *const cm, MACROBLOCKD *const xd,
--- a/vp10/encoder/bitstream.c
+++ b/vp10/encoder/bitstream.c
@@ -733,7 +733,7 @@
static void write_delta_q(struct vpx_write_bit_buffer *wb, int delta_q) {
if (delta_q != 0) {
vpx_wb_write_bit(wb, 1);
- vpx_wb_write_inv_signed_literal(wb, delta_q, 4);
+ vpx_wb_write_inv_signed_literal(wb, delta_q, CONFIG_MISC_FIXES ? 6 : 4);
} else {
vpx_wb_write_bit(wb, 0);
}