summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_lookahead.h
diff options
context:
space:
mode:
authorMinghai Shang <minghai@google.com>2014-06-24 14:01:17 -0700
committerMinghai Shang <minghai@google.com>2014-06-24 14:01:17 -0700
commit277338f7488d40d27a9ea8d3a5b2bf1a0f32aa95 (patch)
tree047e43aad291f4ab1fef5a62c97446ec13af2664 /vp9/encoder/vp9_lookahead.h
parent5e7242dfda069046dced13cac8170bfe0fdb5f05 (diff)
downloadlibvpx-277338f7488d40d27a9ea8d3a5b2bf1a0f32aa95.tar
libvpx-277338f7488d40d27a9ea8d3a5b2bf1a0f32aa95.tar.gz
libvpx-277338f7488d40d27a9ea8d3a5b2bf1a0f32aa95.tar.bz2
libvpx-277338f7488d40d27a9ea8d3a5b2bf1a0f32aa95.zip
[spatial svc]Implement lag in frames for spatial svc
Change-Id: I930dced169c9d53f8044d2754a04332138347409
Diffstat (limited to 'vp9/encoder/vp9_lookahead.h')
-rw-r--r--vp9/encoder/vp9_lookahead.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_lookahead.h b/vp9/encoder/vp9_lookahead.h
index ff63c0d0d..f9cc3c8db 100644
--- a/vp9/encoder/vp9_lookahead.h
+++ b/vp9/encoder/vp9_lookahead.h
@@ -14,6 +14,11 @@
#include "vpx_scale/yv12config.h"
#include "vpx/vpx_integer.h"
+#ifdef CONFIG_SPATIAL_SVC
+#include "vpx/vp8cx.h"
+#include "vpx/vpx_encoder.h"
+#endif
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -25,10 +30,22 @@ struct lookahead_entry {
int64_t ts_start;
int64_t ts_end;
unsigned int flags;
+
+#ifdef CONFIG_SPATIAL_SVC
+ vpx_svc_parameters_t svc_params[VPX_SS_MAX_LAYERS];
+#endif
};
+// The max of past frames we want to keep in the queue.
+#define MAX_PRE_FRAMES 1
-struct lookahead_ctx;
+struct lookahead_ctx {
+ unsigned int max_sz; /* Absolute size of the queue */
+ unsigned int sz; /* Number of buffers currently in the queue */
+ unsigned int read_idx; /* Read index */
+ unsigned int write_idx; /* Write index */
+ struct lookahead_entry *buf; /* Buffer list */
+};
/**\brief Initializes the lookahead stage
*