shithub: libvpx

Download patch

ref: d31b836193cc879e1ae2613d3621416bdff731fe
parent: eecc750b33521b4b46579751fa6495c18e4ceecd
author: Dmitry Kovalev <dkovalev@google.com>
date: Tue May 13 13:35:46 EDT 2014

Deadline is not supported in VP9 decoder, removing it completely.

Change-Id: I7675f23150404913f4b457add69fb846f6921997

--- a/vp9/decoder/vp9_decoder.c
+++ b/vp9/decoder/vp9_decoder.c
@@ -219,8 +219,7 @@
 }
 
 int vp9_receive_compressed_data(VP9Decoder *pbi,
-                                size_t size, const uint8_t **psource,
-                                int64_t time_stamp) {
+                                size_t size, const uint8_t **psource) {
   VP9_COMMON *const cm = &pbi->common;
   const uint8_t *source = *psource;
   int retcode = 0;
@@ -294,7 +293,6 @@
   }
 
   pbi->ready_for_new_data = 0;
-  pbi->last_time_stamp = time_stamp;
 
   cm->error.setjmp = 0;
   return retcode;
@@ -301,7 +299,6 @@
 }
 
 int vp9_get_raw_frame(VP9Decoder *pbi, YV12_BUFFER_CONFIG *sd,
-                      int64_t *time_stamp, int64_t *time_end_stamp,
                       vp9_ppflags_t *flags) {
   int ret = -1;
 
@@ -313,8 +310,6 @@
     return ret;
 
   pbi->ready_for_new_data = 1;
-  *time_stamp = pbi->last_time_stamp;
-  *time_end_stamp = 0;
 
 #if CONFIG_VP9_POSTPROC
   ret = vp9_post_proc_frame(&pbi->common, sd, flags);
--- a/vp9/decoder/vp9_decoder.h
+++ b/vp9/decoder/vp9_decoder.h
@@ -32,7 +32,6 @@
 
   DECLARE_ALIGNED(16, VP9_COMMON, common);
 
-  int64_t last_time_stamp;
   int ready_for_new_data;
 
   int refresh_frame_flags;
@@ -56,12 +55,9 @@
 void vp9_initialize_dec();
 
 int vp9_receive_compressed_data(struct VP9Decoder *pbi,
-                                size_t size, const uint8_t **dest,
-                                int64_t time_stamp);
+                                size_t size, const uint8_t **dest);
 
-int vp9_get_raw_frame(struct VP9Decoder *pbi,
-                      YV12_BUFFER_CONFIG *sd,
-                      int64_t *time_stamp, int64_t *time_end_stamp,
+int vp9_get_raw_frame(struct VP9Decoder *pbi, YV12_BUFFER_CONFIG *sd,
                       vp9_ppflags_t *flags);
 
 vpx_codec_err_t vp9_copy_reference_dec(struct VP9Decoder *pbi,
--- a/vp9/vp9_dx_iface.c
+++ b/vp9/vp9_dx_iface.c
@@ -267,10 +267,11 @@
                                   const uint8_t **data, unsigned int data_sz,
                                   void *user_priv, int64_t deadline) {
   YV12_BUFFER_CONFIG sd = { 0 };
-  int64_t time_stamp = 0, time_end_stamp = 0;
   vp9_ppflags_t flags = {0};
   VP9_COMMON *cm = NULL;
 
+  (void)deadline;
+
   ctx->img_avail = 0;
 
   // Determine the stream parameters. Note that we rely on peek_si to
@@ -300,13 +301,13 @@
 
   cm = &ctx->pbi->common;
 
-  if (vp9_receive_compressed_data(ctx->pbi, data_sz, data, deadline))
+  if (vp9_receive_compressed_data(ctx->pbi, data_sz, data))
     return update_error_state(ctx, &cm->error);
 
   if (ctx->base.init_flags & VPX_CODEC_USE_POSTPROC)
     set_ppflags(ctx, &flags);
 
-  if (vp9_get_raw_frame(ctx->pbi, &sd, &time_stamp, &time_end_stamp, &flags))
+  if (vp9_get_raw_frame(ctx->pbi, &sd, &flags))
     return update_error_state(ctx, &cm->error);
 
   yuvconfig2image(&ctx->img, &sd, user_priv);
--