libmix: remove redundant code for VC1

BZ: 131068

remove redundant code for VC1

Change-Id: Ifa78010f253346fa90842d0275677d223e585afe
Signed-off-by: Tianmi Chen <tianmi.chen@intel.com>
Reviewed-on: http://android.intel.com:8080/138432
Reviewed-by: Shi, PingX <pingx.shi@intel.com>
Tested-by: Shi, PingX <pingx.shi@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
diff --git a/mixvbp/include/viddec_fw_common_defs.h b/mixvbp/include/viddec_fw_common_defs.h
index 2cc32b7..270327d 100644
--- a/mixvbp/include/viddec_fw_common_defs.h
+++ b/mixvbp/include/viddec_fw_common_defs.h
@@ -200,8 +200,6 @@
     VIDDEC_FW_MPEG2_ERR_CORRUPTED_QMAT_EXT      = (1 << 29),/* Parser detected corruption in quantization matrix extension. */
 };
 
-#ifdef VBP
-
 #ifndef NULL
 #define NULL (void*)0x0
 #endif
@@ -218,6 +216,3 @@
 #endif
 
 #endif
-/* end of #ifdef VBP */
-
-#endif
diff --git a/mixvbp/vbp_manager/vbp_vc1_parser.c b/mixvbp/vbp_manager/vbp_vc1_parser.c
index 4a8d6d3..3026ec9 100755
--- a/mixvbp/vbp_manager/vbp_vc1_parser.c
+++ b/mixvbp/vbp_manager/vbp_vc1_parser.c
@@ -106,19 +106,8 @@
         return VBP_LOAD;
     }
 
-    pcontext->parser_ops->is_wkld_done = dlsym(pcontext->fd_parser, "viddec_vc1_wkld_done");
-    if (NULL == pcontext->parser_ops->is_wkld_done)
-    {
-        ETRACE ("Failed to set entry point.");
-        return VBP_LOAD;
-    }
-
-    pcontext->parser_ops->is_frame_start = dlsym(pcontext->fd_parser, "viddec_vc1_is_start_frame");
-    if (NULL == pcontext->parser_ops->is_frame_start)
-    {
-        ETRACE ("Failed to set entry point.");
-        return VBP_LOAD;
-    }
+    pcontext->parser_ops->is_wkld_done = NULL;
+    pcontext->parser_ops->is_frame_start = NULL;
 
     /* entry point not needed */
     pcontext->parser_ops->flush = NULL;
diff --git a/mixvbp/vbp_plugin/vc1/Android.mk b/mixvbp/vbp_plugin/vc1/Android.mk
index b0245fa..229e067 100755
--- a/mixvbp/vbp_plugin/vc1/Android.mk
+++ b/mixvbp/vbp_plugin/vc1/Android.mk
@@ -3,12 +3,11 @@
 include $(CLEAR_VARS)
 
 LOCAL_SRC_FILES := \
-    mix_vbp_vc1_stubs.c \
+    viddec_vc1_parse.c \
     vc1parse_bpic_adv.c \
     vc1parse_huffman.c \
     vc1parse_mv_com.c \
     vc1parse_ppic_adv.c \
-    viddec_vc1_parse.c \
     vc1parse_bpic.c \
     vc1parse_common_tables.c \
     vc1parse_ipic_adv.c \
@@ -20,8 +19,6 @@
     vc1parse_pic_com.c \
     vc1parse_vopdq.c
 
-LOCAL_CFLAGS := -DVBP -DHOST_ONLY
-
 LOCAL_C_INCLUDES := \
     $(MIXVBP_DIR)/include   \
     $(MIXVBP_DIR)/vbp_manager/include   \
@@ -31,6 +28,7 @@
 LOCAL_MODULE := libmixvbp_vc1
 
 LOCAL_SHARED_LIBRARIES := \
-    libmixvbp
+    libmixvbp \
+    liblog
 
 include $(BUILD_SHARED_LIBRARY)
diff --git a/mixvbp/vbp_plugin/vc1/mix_vbp_vc1_stubs.c b/mixvbp/vbp_plugin/vc1/mix_vbp_vc1_stubs.c
deleted file mode 100755
index cffa7b8..0000000
--- a/mixvbp/vbp_plugin/vc1/mix_vbp_vc1_stubs.c
+++ /dev/null
@@ -1,30 +0,0 @@
-#include "vc1.h"
-
-void vc1_start_new_frame (void *parent, vc1_viddec_parser_t   *parser )
-{
-    return;
-}
-
-void vc1_end_frame (vc1_viddec_parser_t *parser)
-{
-    return;
-}
-
-
-int32_t vc1_parse_emit_current_frame( void *parent,  vc1_viddec_parser_t   *parser )
-{
-    return(0);
-}
-
-
-void vc1_parse_emit_frame_start(void *parent, vc1_viddec_parser_t *parser)
-{
-}
-
-void vc1_parse_emit_second_field_start(void *parent, vc1_viddec_parser_t *parser)
-{
-}
-
-void vc1_parse_emit_current_slice(void *parent, vc1_viddec_parser_t *parser)
-{
-}
diff --git a/mixvbp/vbp_plugin/vc1/vc1.h b/mixvbp/vbp_plugin/vc1/vc1.h
index e7d0ac2..dd522ee 100755
--- a/mixvbp/vbp_plugin/vc1/vc1.h
+++ b/mixvbp/vbp_plugin/vc1/vc1.h
@@ -13,29 +13,9 @@
 #ifndef _VC1_H_
 #define _VC1_H_
 
-#ifdef MFD_FIRMWARE
-typedef unsigned int size_t;
-#define LOG(...)
-#else
-
 #include <stdio.h>
 #include <unistd.h>
 #include <stdint.h>
-#ifndef VBP
-enum {
-    NONE = 0,
-    CRITICAL,
-    WARNING,
-    INFO,
-    DEBUG,
-} ;
-
-#define vc1_log_level DEBUG
-
-#define LOG( log_lev, format, args ... ) \
-      if (vc1_log_level >= log_lev) { OS_INFO("%s[%d]:: " format "\n", __FUNCTION__ , __LINE__ ,  ## args ); }
-#endif
-#endif
 
 #include "viddec_fw_common_defs.h"
 #include "viddec_fw_frame_attr.h"
@@ -45,17 +25,6 @@
 extern "C" {
 #endif
 
-#ifndef VBP
-#define LOG_CRIT(format, args ... )  LOG( CRITICAL, format, ## args)
-#define LOG_WARN(format, args ... )  LOG( WARNING,  format, ## args)
-#define LOG_INFO(format, args ... )  LOG( INFO,     format, ## args)
-#define LOG_DEBUG(format, args ... ) LOG( DEBUG,    format, ## args)
-#else
-#define LOG_CRIT(format, args ... )
-#define LOG_WARN(format, args ... )
-#define LOG_INFO(format, args ... )
-#define LOG_DEBUG(format, args ... )
-#endif
 
 // Seems to be hardware bug: DO NOT TRY TO SWAP BITPLANE0 and BITPLANE2
 // Block Control Register at offset 222C uses Bitplane_raw_ID0 to indicate directmb/fieldtx while
@@ -190,11 +159,8 @@
 
 typedef struct {
     int id;
-    uint32_t intcomp_top;
-    uint32_t intcomp_bot;
     int fcm;         /* frame coding mode */
     int type;
-    int anchor[2];   /* one per field */
     int rr_en;       /* range reduction enable flag at sequence layer */
     int rr_frm;      /* range reduction flag at picture layer */
     int tff;
@@ -202,18 +168,12 @@
 
 typedef struct
 {
-    uint32_t      sc_seen_since_last_wkld;
     uint32_t      sc_seen;
-    uint32_t      is_frame_start;
-    uint32_t      is_second_start;
     uint32_t      is_reference_picture;
-    uint32_t      intcomp_last[4]; /* for B frames */
-    uint32_t      intcomp_top[2];
-    uint32_t      intcomp_bot[2];
     vc1_Info      info;
     VC1D_SPR_REGS spr;
     ref_frame_t   ref_frame[VC1_NUM_REFERENCE_FRAMES];
-#ifdef VBP
+
     /* A storage area is provided for each type of bit plane.  Only one of */
     /* each type will ever be used for a picture and never more than three */
     /* bit-planes per picture, and often only one is used.  We never clear */
@@ -229,7 +189,6 @@
     uint32_t      bp_directmb[4096];
     uint32_t      bp_fieldtx[4096];
     uint32_t	  start_code;
-#endif
 } vc1_viddec_parser_t;
 
 #endif  //_VC1_H_
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse.c b/mixvbp/vbp_plugin/vc1/vc1parse.c
index bce1f57..62dfd84 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse.c
+++ b/mixvbp/vbp_plugin/vc1/vc1parse.c
@@ -11,6 +11,7 @@
 //
 */
 
+#include <vbp_trace.h>
 #include "vc1parse.h"
 
 #define VC1_PIXEL_IN_LUMA 16
@@ -36,13 +37,11 @@
     result = viddec_pm_get_bits(ctxt, &rcv.struct_a_rcv, 32);
     md->width = rcv.struct_a.HORIZ_SIZE;
     md->height = rcv.struct_a.VERT_SIZE;
-#ifdef VBP
     //The HRD rate and HRD buffer size may be encoded according to a 64 bit sequence header data structure B
     //if there is no data strcuture B metadata contained in the bitstream, we will not be able to get the
     //bitrate data, hence we set it to 0 for now
     md->HRD_NUM_LEAKY_BUCKETS = 0;
     md->hrd_initial_state.sLeakyBucket[0].HRD_RATE = 0;
-#endif
 
     result = viddec_pm_get_bits(ctxt, &rcv.struct_c_rcv, 32);
     md->PROFILE = rcv.struct_c.PROFILE >> 2;
@@ -57,9 +56,7 @@
     md->MAXBFRAMES = rcv.struct_c.MAXBFRAMES;
     md->QUANTIZER = rcv.struct_c.QUANTIZER;
     md->FINTERPFLAG = rcv.struct_c.FINTERPFLAG;
-#ifdef VBP
     md->SYNCMARKER = rcv.struct_c.SYNCMARKER;
-#endif
 
     if ((md->PROFILE == VC1_PROFILE_SIMPLE) ||
             (md->MULTIRES && md->PROFILE == VC1_PROFILE_MAIN))
@@ -71,13 +68,13 @@
     md->widthMB = (md->width + 15 )  / VC1_PIXEL_IN_LUMA;
     md->heightMB = (md->height + 15) / VC1_PIXEL_IN_LUMA;
 
-    DEB("rcv: beforemod: res: %dx%d\n", md->width, md->height);
+    VTRACE("rcv: beforemod: res: %dx%d\n", md->width, md->height);
 
     /* WL takes resolution in unit of 2 pel - sec. 6.2.13.1 */
     md->width = md->width/2 -1;
     md->height = md->height/2 -1;
 
-    DEB("rcv: res: %dx%d\n", md->width, md->height);
+    VTRACE("rcv: res: %dx%d\n", md->width, md->height);
 
     return status;
 }
@@ -138,12 +135,10 @@
                 {
                     result = viddec_pm_get_bits(ctxt, &sh.aspect_size, 16);
                 }
-#ifdef VBP
                 md->ASPECT_RATIO_FLAG = 1;
                 md->ASPECT_RATIO = sh.ASPECT_RATIO;
                 md->ASPECT_HORIZ_SIZE = sh.seq_aspect_size.ASPECT_HORIZ_SIZE;
                 md->ASPECT_VERT_SIZE = sh.seq_aspect_size.ASPECT_VERT_SIZE;
-#endif
             }
 
             result = viddec_pm_get_bits(ctxt, &tempValue, 1);
@@ -169,10 +164,8 @@
             {
                 result = viddec_pm_get_bits(ctxt, &sh.color_format, 24);
             }
-#ifdef VBP
             md->COLOR_FORMAT_FLAG = sh.COLOR_FORMAT_FLAG;
             md->MATRIX_COEF = sh.seq_color_format.MATRIX_COEF;
-#endif
         } // Successful get of display size
     } // DISPLAY_EXT is 1
 
@@ -184,9 +177,7 @@
         result = viddec_pm_get_bits(ctxt, &tempValue, 5);
         sh.HRD_NUM_LEAKY_BUCKETS = tempValue;
         md->HRD_NUM_LEAKY_BUCKETS = sh.HRD_NUM_LEAKY_BUCKETS;
-#ifndef VBP
-        // Skip the rest of the parsing - hrdinfo is not required for decode or for attributes
-#else
+
         {
             uint8_t count;
             uint8_t bitRateExponent;
@@ -214,21 +205,18 @@
                     (uint32_t)(tempValue + 1) << bufferSizeExponent;
             }
         }
-#endif
     }
     else
     {
         md->HRD_NUM_LEAKY_BUCKETS = 0;
-#ifdef VBP
         md->hrd_initial_state.sLeakyBucket[0].HRD_RATE = 0;
-#endif
     }
 
     md->widthMB = (((md->width + 1) * 2) + 15) / VC1_PIXEL_IN_LUMA;
     md->heightMB = (((md->height + 1) * 2) + 15) / VC1_PIXEL_IN_LUMA;
 
-    DEB("md: res: %dx%d\n", md->width, md->height);
-    DEB("sh: dispres: %dx%d\n", sh.seq_disp_size.DISP_HORIZ_SIZE, sh.seq_disp_size.DISP_VERT_SIZE);
+    VTRACE("md: res: %dx%d\n", md->width, md->height);
+    VTRACE("sh: dispres: %dx%d\n", sh.seq_disp_size.DISP_HORIZ_SIZE, sh.seq_disp_size.DISP_VERT_SIZE);
 
     return status;
 }
@@ -318,8 +306,8 @@
         }
     }
 
-    DEB("ep: res: %dx%d\n", ep.ep_size.CODED_WIDTH, ep.ep_size.CODED_HEIGHT);
-    DEB("md: after ep: res: %dx%d\n", md->width, md->height);
+    VTRACE("ep: res: %dx%d\n", ep.ep_size.CODED_WIDTH, ep.ep_size.CODED_HEIGHT);
+    VTRACE("md: after ep: res: %dx%d\n", md->width, md->height);
     return status;
 }
 
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse.h b/mixvbp/vbp_plugin/vc1/vc1parse.h
index e8c5167..619c4fb 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse.h
+++ b/mixvbp/vbp_plugin/vc1/vc1parse.h
@@ -13,6 +13,7 @@
 #ifndef _VC1PARSE_H_
 #define _VC1PARSE_H_
 #include <vbp_common.h>
+#include <vbp_trace.h>
 #include "viddec_parser_ops.h"
 #include "vc1.h"
 
@@ -20,17 +21,6 @@
 /** @ingroup vc1parse_defs */
 /*@{*/
 
-/* This macro gets the next less-than-nine bits from the bitstream.  It is
-assumed that numBits is less than ten. */
-#ifdef VC1_VERBOSE
-#include <stdio.h>
-#define AUTO_TRACE OS_INFO("trace: %s\n", __FUNCTION__)
-#define DEBUGBITS(arg1, args ...) OS_INFO( arg1, ## args)
-#else
-#define AUTO_TRACE
-#define DEBUGBITS(...)
-#endif
-
 extern void *memset(void *s, int32_t c, uint32_t n);
 
 /* This macro gets the next numBits from the bitstream. */
@@ -38,27 +28,21 @@
 #define VC1_GET_BITS9(numBits, value) \
 {   uint32_t __tmp__; \
     viddec_pm_get_bits(ctxt, (uint32_t*)&__tmp__, numBits ); \
-    value = __tmp__;\
-    DEBUGBITS("BIT:%40s= 0x%x\tNo. of bits=%d\tbyte = %02x\t%s[%d]\n", #value, value, numBits, 0, __FILE__, __LINE__); \
+    value = __tmp__; \
 }
 
 #define VC1_PEEK_BITS(numBits, value) \
 {   uint32_t __tmp__; \
     viddec_pm_peek_bits(ctxt, (uint32_t*)&__tmp__, numBits ); \
-    value = __tmp__;\
-    DEBUGBITS("PEEK%40s= 0x%x\tNo. of bits=%d\tbyte = %02x\t%s[%d]\n", #value, value, numBits, 0, __FILE__, __LINE__); \
+    value = __tmp__; \
 }
 
 /* This macro asserts if the condition is not true. */
-#ifdef VC1_VERBOSE
 #define VC1_ASSERT(condition) \
 { \
     if (! (condition)) \
-        OS_INFO("Failed " #condition "!\n"); \
+        ETRACE("Failed " #condition "!\n"); \
 }
-#else
-#define VC1_ASSERT(condition)
-#endif
 
 /*@}*/
 
@@ -73,7 +57,6 @@
 extern const int32_t VC1_BFRACTION_TBL[];
 extern const int32_t VC1_REFDIST_TBL[];
 
-void vc1_end_frame(vc1_viddec_parser_t *parser);
 
 /* Top-level functions to parse bitstream layers for rcv format. */
 vc1_Status vc1_ParseRCVSequenceLayer (void* ctxt, vc1_Info *pInfo);
@@ -125,11 +108,6 @@
 vc1_Status vc1_DecodeHuffmanOne(void* ctxt, int32_t *pDst, const int32_t *pDecodeTable);
 vc1_Status vc1_DecodeHuffmanPair(void* ctxt, const int32_t *pDecodeTable, int8_t *pFirst, int16_t *pSecond);
 
-void vc1_parse_emit_frame_start(void *parent, vc1_viddec_parser_t *parser);
-void vc1_parse_emit_second_field_start(void *parent, vc1_viddec_parser_t *parser);
-void vc1_parse_emit_current_slice(void *parent, vc1_viddec_parser_t *parser);
-
-
 /*@}*/
 
 #endif /* _VC1PARSE_H_. */
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse_bitplane.c b/mixvbp/vbp_plugin/vc1/vc1parse_bitplane.c
index 94e4d42..d2f2e7c 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse_bitplane.c
+++ b/mixvbp/vbp_plugin/vc1/vc1parse_bitplane.c
@@ -11,10 +11,7 @@
 */
 
 #include "vc1parse.h"
-
-#ifdef VBP
 #include "viddec_pm.h"
-#endif
 
 /*----------------------------------------------------------------------------*/
 
@@ -545,7 +542,6 @@
 
     }
 
-#ifdef VBP
     {
         viddec_pm_cxt_t     *cxt    = (viddec_pm_cxt_t *)ctxt;
         vc1_viddec_parser_t *parser = (vc1_viddec_parser_t *)(cxt->codec_data);
@@ -693,7 +689,6 @@
             break;
         }
     }
-#endif
 
     return status;
 }
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse_common_defs.h b/mixvbp/vbp_plugin/vc1/vc1parse_common_defs.h
index e474800..faed472 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse_common_defs.h
+++ b/mixvbp/vbp_plugin/vc1/vc1parse_common_defs.h
@@ -76,13 +76,8 @@
     enum
     {
         VC1_MVMODE_1MV,
-#ifdef VBP
         VC1_MVMODE_HPELBI_1MV,
         VC1_MVMODE_HPEL_1MV,
-#else
-        VC1_MVMODE_HPEL_1MV,
-        VC1_MVMODE_HPELBI_1MV,
-#endif
         VC1_MVMODE_MIXED_MV,
         VC1_MVMODE_INTENSCOMP
     };
@@ -141,26 +136,23 @@
         uint32_t *databits;
     } vc1_Bitplane;
 
-#ifdef VBP
 #define VC1_MAX_HRD_NUM_LEAKY_BUCKETS   32
 
     typedef struct
     {
-        uint32_t	 HRD_RATE;				 /** Maximum bit rate in bits per second */
-        uint32_t	 HRD_BUFFER;			 /** Buffer size in bits */
-        uint32_t	 HRD_FULLNESS;			 /** Buffer fullness in complete bits */
-        uint32_t	 HRD_FULLFRACTION;		 /** Numerator of fractional bit buffer fullness count */
-        uint32_t	 HRD_FULLDENOMINATOR;	 /** Denominator of fractional bit buffer fullness count */
+        uint32_t         HRD_RATE;     /** Maximum bit rate in bits per second */
+        uint32_t         HRD_BUFFER;   /** Buffer size in bits */
+        uint32_t         HRD_FULLNESS; /** Buffer fullness in complete bits */
+        uint32_t         HRD_FULLFRACTION; /** Numerator of fractional bit buffer fullness count */
+        uint32_t         HRD_FULLDENOMINATOR; /** Denominator of fractional bit buffer fullness count */
     } vc1_leaky_bucket;
 
     typedef struct _vc1_hrd_state
     {
-        uint8_t 		 BIT_RATE_EXPONENT; 							  /** Buckets
-																			(0 if none specified) */
-        uint8_t 		 BUFFER_SIZE_EXPONENT;
-        vc1_leaky_bucket sLeakyBucket[VC1_MAX_HRD_NUM_LEAKY_BUCKETS];	/** Per-bucket information */
+        uint8_t    BIT_RATE_EXPONENT;  /** Buckets (0 if none specified) */
+        uint8_t    BUFFER_SIZE_EXPONENT;
+        vc1_leaky_bucket sLeakyBucket[VC1_MAX_HRD_NUM_LEAKY_BUCKETS]; /** Per-bucket information */
     } vc1_hrd_state, *vc1_hrd_state_ptr;
-#endif
 
     /** This structure represents all bitstream metadata needed for register programming. */
     typedef struct
@@ -227,7 +219,6 @@
         uint16_t widthMB;
         uint16_t heightMB;
 
-#ifdef VBP
         uint8_t COLOR_FORMAT_FLAG;
         uint8_t MATRIX_COEF;
         uint8_t SYNCMARKER;
@@ -236,7 +227,6 @@
         uint8_t ASPECT_HORIZ_SIZE;
         uint8_t ASPECT_VERT_SIZE;
         vc1_hrd_state hrd_initial_state;
-#endif
 
     } vc1_metadata_t;
 
@@ -245,7 +235,6 @@
     {
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned BITRTQ_POSTPROC:5;
@@ -255,23 +244,12 @@
                 unsigned PROFILE:2;
                 unsigned pad:17;
             } seq_flags;
-#else
-            struct
-            {
-                unsigned pad:17;
-                unsigned PROFILE:2;
-                unsigned LEVEL:3;
-                unsigned COLORDIFF_FORMAT:2;
-                unsigned FRMRTQ_POSTPROC:3;
-                unsigned BITRTQ_POSTPROC:5;
-            } seq_flags;
-#endif
+
             uint32_t flags;
         };
 
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned DISPLAY_EXT:1;
@@ -285,27 +263,12 @@
                 unsigned MAX_CODED_WIDTH:12;
                 unsigned POSTPROCFLAG:1;
             } seq_max_size;
-#else
-            struct
-            {
-                unsigned POSTPROCFLAG:1;
-                unsigned MAX_CODED_WIDTH:12;
-                unsigned MAX_CODED_HEIGHT:12;
-                unsigned PULLDOWN:1;
-                unsigned INTERLACE:1;
-                unsigned TFCNTRFLAG:1;
-                unsigned FINTERPFLAG:1;
-                unsigned RESERVED:1;
-                unsigned PSF:1;
-                unsigned DISPLAY_EXT:1;
-            } seq_max_size;
-#endif
+
             uint32_t max_size;
         };
 
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned ASPECT_RATIO_FLAG:1;
@@ -313,15 +276,7 @@
                 unsigned DISP_HORIZ_SIZE:14;
                 unsigned pad:3;
             } seq_disp_size;
-#else
-            struct
-            {
-                unsigned pad:3;
-                unsigned DISP_HORIZ_SIZE:14;
-                unsigned DISP_VERT_SIZE:14;
-                unsigned ASPECT_RATIO_FLAG:1;
-            } seq_disp_size;
-#endif
+
             uint32_t disp_size;
         };
 
@@ -329,21 +284,13 @@
 
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned ASPECT_VERT_SIZE:8;
                 unsigned ASPECT_HORIZ_SIZE:8;
                 unsigned pad:16;
             } seq_aspect_size;
-#else
-            struct
-            {
-                unsigned pad:16;
-                unsigned ASPECT_HORIZ_SIZE:8;
-                unsigned ASPECT_VERT_SIZE:8;
-            } seq_aspect_size;
-#endif
+
             uint32_t aspect_size;
         };
 
@@ -352,21 +299,13 @@
 
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned FRAMERATEDR:4;
                 unsigned FRAMERATENR:8;
                 unsigned pad:20;
             } seq_framerate_fraction;
-#else
-            struct
-            {
-                unsigned pad:20;
-                unsigned FRAMERATENR:8;
-                unsigned FRAMERATEDR:4;
-            } seq_framerate_fraction;
-#endif
+
             uint32_t framerate_fraction;
         };
 
@@ -375,7 +314,6 @@
 
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned MATRIX_COEF:8;
@@ -383,15 +321,7 @@
                 unsigned COLOR_PRIM:8;
                 unsigned pad:8;
             } seq_color_format;
-#else
-            struct
-            {
-                unsigned pad:8;
-                unsigned COLOR_PRIM:8;
-                unsigned TRANSFER_CHAR:8;
-                unsigned MATRIX_COEF:8;
-            } seq_color_format;
-#endif
+
             uint32_t color_format;
         };
 
@@ -405,7 +335,6 @@
     {
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned res6:1;
@@ -428,48 +357,18 @@
                 unsigned FRMRTQ_POSTPROC:3;
                 unsigned PROFILE:4;
             } struct_c;
-#else
-            struct
-            {
-                unsigned PROFILE:4;
-                unsigned FRMRTQ_POSTPROC:3;
-                unsigned BITRTQ_POSTPROC:5;
-                unsigned LOOPFILTER:1;
-                unsigned res3:1;
-                unsigned MULTIRES:1;
-                unsigned res4:1;
-                unsigned FASTUVMC:1;
-                unsigned EXTENDED_MV:1;
-                unsigned DQUANT:2;
-                unsigned VSTRANSFORM:1;
-                unsigned res5:1;
-                unsigned OVERLAP:1;
-                unsigned SYNCMARKER:1;
-                unsigned RANGERED:1;
-                unsigned MAXBFRAMES:3;
-                unsigned QUANTIZER:2;
-                unsigned FINTERPFLAG:1;
-                unsigned res6:1;
-            } struct_c;
-#endif
+
             uint32_t struct_c_rcv;
         };
 
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned VERT_SIZE:16;
                 unsigned HORIZ_SIZE:16;
             } struct_a;
-#else
-            struct
-            {
-                unsigned HORIZ_SIZE:16;
-                unsigned VERT_SIZE:16;
-            } struct_a;
-#endif
+
             uint32_t struct_a_rcv;
         };
 
@@ -480,7 +379,6 @@
     {
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned QUANTIZER:2;
@@ -496,23 +394,7 @@
                 unsigned BROKEN_LINK:1;
                 unsigned pad1:19;
             } ep_flags;
-#else
-            struct
-            {
-                unsigned pad1:19;
-                unsigned BROKEN_LINK:1;
-                unsigned CLOSED_ENTRY:1;
-                unsigned PANSCAN_FLAG:1;
-                unsigned REFDIST_FLAG:1;
-                unsigned LOOPFILTER:1;
-                unsigned FASTUVMC:1;
-                unsigned EXTENDED_MV:1;
-                unsigned DQUANT:2;
-                unsigned VSTRANSFORM:1;
-                unsigned OVERLAP:1;
-                unsigned QUANTIZER:2;
-            } ep_flags;
-#endif
+
             uint32_t flags;
         };
 
@@ -520,21 +402,13 @@
 
         union
         {
-#ifndef MFDBIGENDIAN
             struct
             {
                 unsigned CODED_HEIGHT:12;
                 unsigned CODED_WIDTH:12;
                 unsigned pad2:8;
             } ep_size;
-#else
-            struct
-            {
-                unsigned pad2:8;
-                unsigned CODED_WIDTH:12;
-                unsigned CODED_HEIGHT:12;
-            } ep_size;
-#endif
+
             uint32_t size;
         };
 
@@ -614,7 +488,6 @@
         uint8_t  BottomField;
         uint32_t UniformQuant;
 
-#ifdef VBP
         uint8_t  raw_MVTYPEMB;
         uint8_t  raw_DIRECTMB;
         uint8_t  raw_SKIPMB;
@@ -631,8 +504,7 @@
         vc1_Bitplane OVERFLAGS;
         vc1_Bitplane FORWARDMB;
         uint32_t  ALTPQUANT;
-        uint8_t		DQDBEDGE;
-#endif
+        uint8_t   DQDBEDGE;
 
     } vc1_PictureLayerHeader;
 
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse_ipic_adv.c b/mixvbp/vbp_plugin/vc1/vc1parse_ipic_adv.c
index 4e98d96..f437624 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse_ipic_adv.c
+++ b/mixvbp/vbp_plugin/vc1/vc1parse_ipic_adv.c
@@ -11,6 +11,7 @@
 //
 */
 
+#include <vbp_trace.h>
 #include "vc1parse.h"
 /*------------------------------------------------------------------------------
  * Parse picture layer.  This function parses progressive I or BI picture for
@@ -175,7 +176,7 @@
 
     VC1_GET_BITS9(5, picLayerHeader->PQINDEX);
     if ((status = vc1_CalculatePQuant(pInfo)) != VC1_STATUS_OK) {
-        DEB("Error parsing I field \n");
+        ETRACE("Error parsing I field \n");
         return status;
     }
 
@@ -198,7 +199,7 @@
                                      md->widthMB, (md->heightMB+1)/2, BPP_ACPRED)) !=
             VC1_STATUS_OK)
     {
-        DEB("Error parsing I field \n");
+        ETRACE("Error parsing I field \n");
         return status;
     }
 
@@ -219,7 +220,7 @@
                                                  (md->heightMB+1)/2, BPP_OVERFLAGS)) !=
                         VC1_STATUS_OK)
                 {
-                    DEB("Error parsing I field \n");
+                    ETRACE("Error parsing I field \n");
                     return status;
                 }
             }
@@ -246,7 +247,7 @@
 
     status = vc1_VOPDQuant(ctxt, pInfo);
     if (status != VC1_STATUS_OK) {
-        DEB("Error parsing I field \n");
+        ETRACE("Error parsing I field \n");
         return status;
     }
 
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse_pic_com_adv.c b/mixvbp/vbp_plugin/vc1/vc1parse_pic_com_adv.c
index dcfdb26..f37baf8 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse_pic_com_adv.c
+++ b/mixvbp/vbp_plugin/vc1/vc1parse_pic_com_adv.c
@@ -298,9 +298,7 @@
     }
     VC1_GET_BITS9(1, md->RNDCTRL);
 
-#ifdef VBP
     picLayerHeader->RNDCTRL = md->RNDCTRL;
-#endif
 
     VC1_GET_BITS9(1, picLayerHeader->UVSAMP);
 
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse_ppic.c b/mixvbp/vbp_plugin/vc1/vc1parse_ppic.c
index b921af0..8fb7118 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse_ppic.c
+++ b/mixvbp/vbp_plugin/vc1/vc1parse_ppic.c
@@ -93,11 +93,7 @@
         VC1_GET_BITS9(6, picLayerHeader->LUMSHIFT);
     }
     else
-#ifdef VBP
         picLayerHeader->MVMODE2 = 0;
-#else
-        picLayerHeader->MVMODE2 = picLayerHeader->MVMODE;
-#endif
 
     if ((picLayerHeader->MVMODE == VC1_MVMODE_MIXED_MV) ||
             ((picLayerHeader->MVMODE == VC1_MVMODE_INTENSCOMP) &&
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse_ppic_adv.c b/mixvbp/vbp_plugin/vc1/vc1parse_ppic_adv.c
index 99edf6f..bab3e9f 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse_ppic_adv.c
+++ b/mixvbp/vbp_plugin/vc1/vc1parse_ppic_adv.c
@@ -10,6 +10,8 @@
 //  profile bitstream.
 //
 */
+
+#include <vbp_trace.h>
 #include <vbp_common.h>
 #include "vc1parse.h"
 /*------------------------------------------------------------------------------
@@ -67,11 +69,7 @@
         md->LUMSHIFT2 = picLayerHeader->LUMSHIFT;
     }
     else
-#ifdef VBP
         picLayerHeader->MVMODE2 = 0;
-#else
-        picLayerHeader->MVMODE2 = picLayerHeader->MVMODE;
-#endif
 
     if ((picLayerHeader->MVMODE == VC1_MVMODE_MIXED_MV) ||
             ((picLayerHeader->MVMODE == VC1_MVMODE_INTENSCOMP) &&
@@ -245,7 +243,7 @@
     }
 
     if ((status = vc1_MVRangeDecode(ctxt, pInfo)) != VC1_STATUS_OK) {
-        DEB("Error in vc1_MVRangeDecode \n");
+        ETRACE("Error in vc1_MVRangeDecode \n");
         return status;
     }
 
@@ -311,11 +309,7 @@
         }
     }
     else
-#ifdef VBP
         picLayerHeader->MVMODE2 = 0;
-#else
-        picLayerHeader->MVMODE2 = picLayerHeader->MVMODE;
-#endif
 
     VC1_GET_BITS9(3, picLayerHeader->MBMODETAB);
 
@@ -330,11 +324,7 @@
 
     VC1_GET_BITS9(3, picLayerHeader->CBPTAB); /* ICBPTAB. */
 
-#ifdef VBP
     if (picLayerHeader->MVMODE == VC1_MVMODE_MIXED_MV)
-#else
-    if (picLayerHeader->MVMODE2 == VC1_MVMODE_MIXED_MV)
-#endif
     {
         VC1_GET_BITS9(2, picLayerHeader->MV4BPTAB); /* 4MVBPTAB. */
     }
diff --git a/mixvbp/vbp_plugin/vc1/vc1parse_vopdq.c b/mixvbp/vbp_plugin/vc1/vc1parse_vopdq.c
index 95b556c..00d6640 100755
--- a/mixvbp/vbp_plugin/vc1/vc1parse_vopdq.c
+++ b/mixvbp/vbp_plugin/vc1/vc1parse_vopdq.c
@@ -57,11 +57,7 @@
             }
             else if (picLayerHeader->DQPROFILE == VC1_DQPROFILE_DBLEDGES)
             {
-#ifdef VBP
                 VC1_GET_BITS9(2, picLayerHeader->DQDBEDGE);
-#else
-                VC1_GET_BITS9(2, picLayerHeader->DQSBEDGE); /* DQDBEDGE. */
-#endif
             }
             else if (picLayerHeader->DQPROFILE == VC1_DQPROFILE_ALLMBLKS)
             {
@@ -78,7 +74,6 @@
             }
         }
     }
-#ifdef VBP
     if ((picLayerHeader->DQUANTFRM == 1 && md->DQUANT == 1) || (md->DQUANT == 2))
     {
         if (picLayerHeader->PQDIFF == 7)
@@ -90,7 +85,6 @@
             picLayerHeader->ALTPQUANT = picLayerHeader->PQUANT + picLayerHeader->PQDIFF + 1;
         }
     }
-#endif
     return status;
 }
 
diff --git a/mixvbp/vbp_plugin/vc1/viddec_vc1_parse.c b/mixvbp/vbp_plugin/vc1/viddec_vc1_parse.c
index ad83a18..b3023ec 100755
--- a/mixvbp/vbp_plugin/vc1/viddec_vc1_parse.c
+++ b/mixvbp/vbp_plugin/vc1/viddec_vc1_parse.c
@@ -1,18 +1,13 @@
-#include "viddec_parser_ops.h"  // For parser helper functions
+#include <vbp_trace.h>
 #include "vc1.h"                // For the parser structure
+#include "viddec_parser_ops.h"  // For parser helper functions
 #include "vc1parse.h"           // For vc1 parser helper functions
-#ifdef VBP
 #include "viddec_pm.h"
-#endif
 #define vc1_is_frame_start_code( ch )                                   \
     (( vc1_SCField == ch ||vc1_SCSlice == ch || vc1_SCFrameHeader == ch ) ? 1 : 0)
 
 /* init function */
-#ifdef VBP
 void viddec_vc1_init(void *ctxt, uint32_t *persist_mem, uint32_t preserve)
-#else
-static void viddec_vc1_init(void *ctxt, uint32_t *persist_mem, uint32_t preserve)
-#endif
 {
     vc1_viddec_parser_t *parser = ctxt;
     int i;
@@ -22,17 +17,9 @@
     for (i=0; i<VC1_NUM_REFERENCE_FRAMES; i++)
     {
         parser->ref_frame[i].id   = -1; /* first I frame checks that value */
-        parser->ref_frame[i].anchor[0] = 1;
-        parser->ref_frame[i].anchor[1] = 1;
-        parser->ref_frame[i].intcomp_top = 0;
-        parser->ref_frame[i].intcomp_bot = 0;
         parser->ref_frame[i].tff=0;
     }
 
-    parser->intcomp_top[0] = 0;
-    parser->intcomp_bot[0] = 0;
-    parser->intcomp_top[1] = 0;
-    parser->intcomp_bot[1] = 0;
     parser->is_reference_picture = false;
 
     memset(&parser->info.picLayerHeader, 0, sizeof(vc1_PictureLayerHeader));
@@ -40,39 +27,22 @@
     if (preserve)
     {
         parser->sc_seen &= VC1_EP_MASK;
-        parser->sc_seen_since_last_wkld &= VC1_EP_MASK;
     }
     else
     {
         parser->sc_seen = VC1_SC_INVALID;
-        parser->sc_seen_since_last_wkld = VC1_SC_INVALID;
         memset(&parser->info.metadata, 0, sizeof(parser->info.metadata));
     }
 
     return;
 } // viddec_vc1_init
 
-static void vc1_swap_intcomp(vc1_viddec_parser_t *parser)
-{
-    parser->intcomp_top[1] = parser->intcomp_top[0];
-    parser->intcomp_bot[1] = parser->intcomp_bot[0];
-    parser->intcomp_top[0] = 0;
-    parser->intcomp_bot[0] = 0;
-
-    return;
-} // vc1_swap_intcomp
-
-#ifdef VBP
 uint32_t viddec_vc1_parse(void *parent, void *ctxt)
-#else
-static uint32_t viddec_vc1_parse(void *parent, void *ctxt)
-#endif
 {
     vc1_viddec_parser_t *parser = ctxt;
     uint32_t sc=0x0;
     int32_t ret=0, status=0;
 
-#ifdef VBP
     /* This works only if there is one slice and no start codes */
     /* A better fix would be to insert start codes it there aren't any. */
     ret = viddec_pm_peek_bits(parent, &sc, 32);
@@ -86,22 +56,13 @@
         /* that this is a frame of data. We may have to fix this later. */
         sc = vc1_SCFrameHeader;
     }
-#else
-    ret = viddec_pm_get_bits(parent, &sc, 32);
-#endif
     sc = sc & 0xFF;
-    parser->is_frame_start = 0;
-    parser->is_second_start = 0;
-    DEB("START_CODE = %02x\n", sc);
+    VTRACE("START_CODE = %02x\n", sc);
     switch ( sc )
     {
     case vc1_SCSequenceHeader:
     {
         uint32_t data;
-        parser->ref_frame[0].anchor[0] = 1;
-        parser->ref_frame[0].anchor[1] = 1;
-        parser->ref_frame[1].anchor[0] = 1;
-        parser->ref_frame[1].anchor[1] = 1;
         memset( &parser->info.metadata, 0, sizeof(parser->info.metadata));
         /* look if we have a rcv header for main or simple profile */
         ret = viddec_pm_peek_bits(parent,&data ,2);
@@ -115,8 +76,6 @@
             status = vc1_ParseRCVSequenceLayer(parent, &parser->info);
         }
         parser->sc_seen = VC1_SC_SEQ;
-        parser->sc_seen_since_last_wkld |= VC1_SC_SEQ;
-#ifdef VBP
         parser->start_code = VC1_SC_SEQ;
         if (parser->info.metadata.HRD_NUM_LEAKY_BUCKETS == 0)
         {
@@ -167,7 +126,6 @@
             }
         }
 
-#endif
         break;
     }
 
@@ -177,10 +135,7 @@
         parser->sc_seen |= VC1_SC_EP;
         // Clear all bits indicating data below ep header
         parser->sc_seen &= VC1_EP_MASK;
-        parser->sc_seen_since_last_wkld |= VC1_SC_EP;
-#ifdef VBP
         parser->start_code = VC1_SC_EP;
-#endif
         break;
     }
 
@@ -188,37 +143,18 @@
     {
         memset(&parser->info.picLayerHeader, 0, sizeof(vc1_PictureLayerHeader));
         status = vc1_ParsePictureLayer(parent, &parser->info);
-        if ((parser->info.picLayerHeader.PTypeField1 == VC1_I_FRAME) ||
-                (parser->info.picLayerHeader.PTypeField1 == VC1_P_FRAME) ||
-                (parser->info.picLayerHeader.PTYPE == VC1_I_FRAME) ||
-                (parser->info.picLayerHeader.PTYPE == VC1_P_FRAME))
-        {
-            vc1_swap_intcomp(parser);
-        }
         parser->sc_seen |= VC1_SC_FRM;
         // Clear all bits indicating data below frm header
         parser->sc_seen &= VC1_FRM_MASK;
-        parser->sc_seen_since_last_wkld |= VC1_SC_FRM;
-        //vc1_start_new_frame ( parent, parser );
-
-        parser->is_frame_start = 1;
-        vc1_parse_emit_frame_start( parent, parser );
-#ifdef VBP
         parser->start_code = VC1_SC_FRM;
-#endif
         break;
     }
 
     case vc1_SCSlice:
     {
         status = vc1_ParseSliceLayer(parent, &parser->info);
-        parser->sc_seen_since_last_wkld |= VC1_SC_SLC;
 
-        vc1_parse_emit_current_slice( parent, parser );
-
-#ifdef VBP
         parser->start_code = VC1_SC_SLC;
-#endif
         break;
     }
 
@@ -234,7 +170,6 @@
         parser->info.picLayerHeader.MVTAB = 0;
         parser->info.picLayerHeader.MVMODE = 0;
         parser->info.picLayerHeader.MVRANGE = 0;
-#ifdef VBP
         parser->info.picLayerHeader.raw_MVTYPEMB = 0;
         parser->info.picLayerHeader.raw_DIRECTMB = 0;
         parser->info.picLayerHeader.raw_SKIPMB = 0;
@@ -253,22 +188,10 @@
 
         parser->info.picLayerHeader.ALTPQUANT = 0;
         parser->info.picLayerHeader.DQDBEDGE = 0;
-#endif
 
         status = vc1_ParseFieldLayer(parent, &parser->info);
-        if ((parser->info.picLayerHeader.PTypeField2 == VC1_I_FRAME) ||
-                (parser->info.picLayerHeader.PTypeField2 == VC1_P_FRAME))
-        {
-            //vc1_swap_intcomp(parser);
-        }
         parser->sc_seen |= VC1_SC_FLD;
-        parser->sc_seen_since_last_wkld |= VC1_SC_FLD;
-
-        parser->is_second_start = 1;
-        vc1_parse_emit_second_field_start( parent, parser );
-#ifdef VBP
         parser->start_code = VC1_SC_FLD;
-#endif
         break;
     }
 
@@ -278,123 +201,30 @@
     case vc1_SCSliceUser:
     case vc1_SCFieldUser:
     {/* Handle user data */
-        parser->sc_seen_since_last_wkld |= VC1_SC_UD;
-#ifdef VBP
         parser->start_code = VC1_SC_UD;
-#endif
         break;
     }
 
     case vc1_SCEndOfSequence:
     {
         parser->sc_seen = VC1_SC_INVALID;
-        parser->sc_seen_since_last_wkld |= VC1_SC_INVALID;
-#ifdef VBP
         parser->start_code = VC1_SC_INVALID;
-#endif
         break;
     }
     default: /* Any other SC that is not handled */
     {
-        DEB("SC = %02x - unhandled\n", sc );
-#ifdef VBP
+        WTRACE("SC = %02x - unhandled\n", sc );
         parser->start_code = VC1_SC_INVALID;
-#endif
         break;
     }
     }
 
-
-
     return VIDDEC_PARSE_SUCESS;
 } // viddec_vc1_parse
 
-/**
-   If a picture header was seen and the next start code is a sequence header, entrypoint header,
-   end of sequence or another frame header, this api returns frame done.
-   If a sequence header and a frame header was not seen before this point, all the
-   information needed for decode is not present and parser errors are reported.
-*/
-#ifdef VBP
-uint32_t viddec_vc1_wkld_done(void *parent, void *ctxt, unsigned int next_sc, uint32_t *codec_specific_errors)
-#else
-static uint32_t viddec_vc1_wkld_done(void *parent, void *ctxt, unsigned int next_sc, uint32_t *codec_specific_errors)
-#endif
-{
-    vc1_viddec_parser_t *parser = ctxt;
-    int ret = VIDDEC_PARSE_SUCESS;
-    parent = parent;
-    switch (next_sc)
-    {
-    case vc1_SCFrameHeader:
-        if (((parser->sc_seen_since_last_wkld & VC1_SC_EP) ||
-                (parser->sc_seen_since_last_wkld & VC1_SC_SEQ)) &&
-                (!(parser->sc_seen_since_last_wkld & VC1_SC_FRM)))
-        {
-            break;
-        }
-        // Deliberate fall-thru case
-    case vc1_SCEntryPointHeader:
-        if ((next_sc == vc1_SCEntryPointHeader) &&
-                (parser->sc_seen_since_last_wkld & VC1_SC_SEQ) &&
-                (!(parser->sc_seen_since_last_wkld & VC1_SC_EP)))
-        {
-            break;
-        }
-        // Deliberate fall-thru case
-    case vc1_SCSequenceHeader:
-    case vc1_SCEndOfSequence:
-    case VIDDEC_PARSE_EOS:
-    case VIDDEC_PARSE_DISCONTINUITY:
-        ret = VIDDEC_PARSE_FRMDONE;
-        // Set errors for progressive
-        if ((parser->sc_seen & VC1_SC_SEQ) && (parser->sc_seen & VC1_SC_FRM))
-            *codec_specific_errors = 0;
-        else
-            *codec_specific_errors |= VIDDEC_FW_WORKLOAD_ERR_NOTDECODABLE;
-        vc1_end_frame(parser);
-        parser->sc_seen_since_last_wkld = VC1_SC_INVALID;
-        // TODO: Need to check for interlaced
-        break;
-    default:
-        ret = VIDDEC_PARSE_SUCESS;
-        break;
-    } //switch
-    DEB("sc: 0x%x, sc_seen: 0x%x, sc_since_last_wkld:%d, error:%d, ret: %d\n",
-        next_sc, parser->sc_seen, parser->sc_seen_since_last_wkld,
-        *codec_specific_errors, ret);
-
-    return ret;
-} // viddec_vc1_wkld_done
-
-#ifdef VBP
 void viddec_vc1_get_context_size(viddec_parser_memory_sizes_t *size)
-#else
-static void viddec_vc1_get_context_size(viddec_parser_memory_sizes_t *size)
-#endif
 {
     size->context_size = sizeof(vc1_viddec_parser_t);
     size->persist_size = 0;
     return;
 } // viddec_vc1_get_context_size
-
-#ifdef VBP
-uint32_t viddec_vc1_is_start_frame(void *ctxt)
-#else
-static uint32_t viddec_vc1_is_start_frame(void *ctxt)
-#endif
-{
-    vc1_viddec_parser_t *parser = (vc1_viddec_parser_t *) ctxt;
-    return parser->is_frame_start;
-} // viddec_vc1_is_start_frame
-
-void viddec_vc1_get_ops(viddec_parser_ops_t *ops)
-{
-    ops->init = viddec_vc1_init;
-    ops->parse_syntax = viddec_vc1_parse;
-    ops->get_cxt_size = viddec_vc1_get_context_size;
-    ops->is_wkld_done = viddec_vc1_wkld_done;
-    ops->is_frame_start = viddec_vc1_is_start_frame;
-    return;
-} // viddec_vc1_get_ops
-