ref: ce59a150a6e10a76489b6ca5bb3b7d58195d9326
parent: a358375c6dfc4a5a27a79a1c9b1480ad7a78415d
parent: 1f20202e2c6c137dd2e3464e2b14bba0fdc289ce
author: John Koleszar <jkoleszar@google.com>
date: Fri Aug 26 20:05:05 EDT 2011
Merge remote branch 'internal/upstream' into HEAD
--- a/vp8/encoder/onyx_if.c
+++ b/vp8/encoder/onyx_if.c
@@ -3385,16 +3385,17 @@
cpi->mb.e_mbd.update_mb_segmentation_map = 1;
#endif
-#if CONFIG_REALTIME_ONLY
- if(cpi->oxcf.auto_key && cm->frame_type != KEY_FRAME)
+ if (cpi->compressor_speed == 2)
{
- if(cpi->force_next_frame_intra)
+ if(cpi->oxcf.auto_key && cm->frame_type != KEY_FRAME)
{
- cm->frame_type = KEY_FRAME; /* delayed intra frame */
+ if(cpi->force_next_frame_intra)
+ {
+ cm->frame_type = KEY_FRAME; /* delayed intra frame */
+ }
}
+ cpi->force_next_frame_intra = 0;
}
- cpi->force_next_frame_intra = 0;
-#endif
// For an alt ref frame in 2 pass we skip the call to the second pass function that sets the target bandwidth
#if !(CONFIG_REALTIME_ONLY)
@@ -3934,15 +3935,15 @@
// (assuming that we didn't)!
if (cpi->pass != 2 && cpi->oxcf.auto_key && cm->frame_type != KEY_FRAME)
{
+ int key_frame_decision = decide_key_frame(cpi);
-#if CONFIG_REALTIME_ONLY
+ if (cpi->compressor_speed == 2)
{
/* we don't do re-encoding in realtime mode
* if key frame is decided than we force it on next frame */
- cpi->force_next_frame_intra = decide_key_frame(cpi);
+ cpi->force_next_frame_intra = key_frame_decision;
}
-#else
- if (decide_key_frame(cpi))
+ else if (key_frame_decision)
{
// Reset all our sizing numbers and recode
cm->frame_type = KEY_FRAME;
@@ -3979,7 +3980,6 @@
continue;
}
-#endif
}
vp8_clear_system_state();
--- a/vp8/encoder/onyx_int.h
+++ b/vp8/encoder/onyx_int.h
@@ -622,9 +622,8 @@
int *lf_ref_frame_sign_bias;
int *lf_ref_frame;
-#if CONFIG_REALTIME_ONLY
int force_next_frame_intra; /* force next frame to intra when kf_auto says so */
-#endif
+
int droppable;
} VP8_COMP;
--
⑨