ref: 985f09fdca14c74fbd6c6dcffe260bf3132c4b7e
parent: 2b59e14a0023be9d084349d58ee156a49cc674bb
author: Jim Bankoski <jimbankoski@google.com>
date: Mon Aug 20 08:58:31 EDT 2012
static threshold fix for realtime This code allows us to skip encoding if the sse is less than the error we could possibly encode. Change-Id: Iefb590dc0ee30b660495218398c7969f7d5fd19f
--- a/vp8/encoder/pickinter.c
+++ b/vp8/encoder/pickinter.c
@@ -458,7 +458,15 @@
static void check_for_encode_breakout(unsigned int sse, MACROBLOCK* x)
{
- if (sse < x->encode_breakout)
+ MACROBLOCKD *xd = &x->e_mbd;
+
+ unsigned int threshold = (xd->block[0].dequant[1]
+ * xd->block[0].dequant[1] >>4);
+
+ if(threshold < x->encode_breakout)
+ threshold = x->encode_breakout;
+
+ if (sse < threshold )
{
/* Check u and v to make sure skip is ok */
unsigned int sse2 = 0;
--
⑨