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
This commit is contained in:
Ronald S. Bultje 2015-09-30 22:01:41 -04:00
Родитель ce3780251c
Коммит 612104bb8d
2 изменённых файлов: 3 добавлений и 2 удалений

Просмотреть файл

@ -1125,7 +1125,8 @@ static void setup_loopfilter(struct loopfilter *lf,
} }
static INLINE int read_delta_q(struct vpx_read_bit_buffer *rb) { 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, static void setup_quantization(VP10_COMMON *const cm, MACROBLOCKD *const xd,

Просмотреть файл

@ -733,7 +733,7 @@ static void encode_loopfilter(struct loopfilter *lf,
static void write_delta_q(struct vpx_write_bit_buffer *wb, int delta_q) { static void write_delta_q(struct vpx_write_bit_buffer *wb, int delta_q) {
if (delta_q != 0) { if (delta_q != 0) {
vpx_wb_write_bit(wb, 1); 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 { } else {
vpx_wb_write_bit(wb, 0); vpx_wb_write_bit(wb, 0);
} }