Merge "Remove temporal alt ref from realtime only build"

This commit is contained in:
Johann 2011-02-25 06:55:17 -08:00 committed by Code Review
commit e4fa638653
5 changed files with 30 additions and 23 deletions

View File

@ -95,8 +95,9 @@ void vp8_cmachine_specific_config(VP8_COMP *cpi)
cpi->rtcd.search.full_search = vp8_full_search_sad; cpi->rtcd.search.full_search = vp8_full_search_sad;
#endif #endif
cpi->rtcd.search.diamond_search = vp8_diamond_search_sad; cpi->rtcd.search.diamond_search = vp8_diamond_search_sad;
#if !(CONFIG_REALTIME_ONLY)
cpi->rtcd.temporal.apply = vp8_temporal_filter_apply_c; cpi->rtcd.temporal.apply = vp8_temporal_filter_apply_c;
#endif
#endif #endif
// Pure C: // Pure C:

View File

@ -261,35 +261,31 @@ static void setup_features(VP8_COMP *cpi)
void vp8_dealloc_compressor_data(VP8_COMP *cpi) void vp8_dealloc_compressor_data(VP8_COMP *cpi)
{ {
vpx_free(cpi->tplist); vpx_free(cpi->tplist);
cpi->tplist = NULL; cpi->tplist = NULL;
// Delete last frame MV storage buffers // Delete last frame MV storage buffers
vpx_free(cpi->lfmv); vpx_free(cpi->lfmv);
cpi->lfmv = 0; cpi->lfmv = 0;
vpx_free(cpi->lf_ref_frame_sign_bias); vpx_free(cpi->lf_ref_frame_sign_bias);
cpi->lf_ref_frame_sign_bias = 0; cpi->lf_ref_frame_sign_bias = 0;
vpx_free(cpi->lf_ref_frame); vpx_free(cpi->lf_ref_frame);
cpi->lf_ref_frame = 0; cpi->lf_ref_frame = 0;
// Delete sementation map // Delete sementation map
vpx_free(cpi->segmentation_map); vpx_free(cpi->segmentation_map);
cpi->segmentation_map = 0; cpi->segmentation_map = 0;
vpx_free(cpi->active_map); vpx_free(cpi->active_map);
cpi->active_map = 0; cpi->active_map = 0;
#if !(CONFIG_REALTIME_ONLY)
// Delete first pass motion map // Delete first pass motion map
vpx_free(cpi->fp_motion_map); vpx_free(cpi->fp_motion_map);
cpi->fp_motion_map = 0; cpi->fp_motion_map = 0;
#endif
vp8_de_alloc_frame_buffers(&cpi->common); vp8_de_alloc_frame_buffers(&cpi->common);
@ -311,21 +307,17 @@ void vp8_dealloc_compressor_data(VP8_COMP *cpi)
cpi->tok = 0; cpi->tok = 0;
// Structure used to monitor GF usage // Structure used to monitor GF usage
vpx_free(cpi->gf_active_flags); vpx_free(cpi->gf_active_flags);
cpi->gf_active_flags = 0; cpi->gf_active_flags = 0;
vpx_free(cpi->mb.pip); vpx_free(cpi->mb.pip);
cpi->mb.pip = 0; cpi->mb.pip = 0;
#if !(CONFIG_REALTIME_ONLY) #if !(CONFIG_REALTIME_ONLY)
vpx_free(cpi->total_stats); vpx_free(cpi->total_stats);
cpi->total_stats = 0; cpi->total_stats = 0;
vpx_free(cpi->this_frame_stats); vpx_free(cpi->this_frame_stats);
cpi->this_frame_stats = 0; cpi->this_frame_stats = 0;
#endif #endif
} }
@ -2161,9 +2153,11 @@ VP8_PTR vp8_create_compressor(VP8_CONFIG *oxcf)
vpx_memset(cpi->active_map , 1, (cpi->common.mb_rows * cpi->common.mb_cols)); vpx_memset(cpi->active_map , 1, (cpi->common.mb_rows * cpi->common.mb_cols));
cpi->active_map_enabled = 0; cpi->active_map_enabled = 0;
#if !(CONFIG_REALTIME_ONLY)
// Create the first pass motion map structure and set to 0 // Create the first pass motion map structure and set to 0
// Allocate space for maximum of 15 buffers // Allocate space for maximum of 15 buffers
CHECK_MEM_ERROR(cpi->fp_motion_map, vpx_calloc(15*cpi->common.MBs, 1)); CHECK_MEM_ERROR(cpi->fp_motion_map, vpx_calloc(15*cpi->common.MBs, 1));
#endif
#if 0 #if 0
// Experimental code for lagged and one pass // Experimental code for lagged and one pass

View File

@ -51,7 +51,9 @@
#define MV_ZBIN_BOOST 4 #define MV_ZBIN_BOOST 4
#define ZBIN_OQ_MAX 192 #define ZBIN_OQ_MAX 192
#if !(CONFIG_REALTIME_ONLY)
#define VP8_TEMPORAL_ALT_REF 1 #define VP8_TEMPORAL_ALT_REF 1
#endif
typedef struct typedef struct
{ {
@ -492,9 +494,11 @@ typedef struct
FIRSTPASS_STATS *stats_in, *stats_in_end; FIRSTPASS_STATS *stats_in, *stats_in_end;
struct vpx_codec_pkt_list *output_pkt_list; struct vpx_codec_pkt_list *output_pkt_list;
int first_pass_done; int first_pass_done;
unsigned char *fp_motion_map;
#if !(CONFIG_REALTIME_ONLY)
unsigned char *fp_motion_map;
unsigned char *fp_motion_map_stats, *fp_motion_map_stats_save; unsigned char *fp_motion_map_stats, *fp_motion_map_stats_save;
#endif
#if 0 #if 0
// Experimental code for lagged and one pass // Experimental code for lagged and one pass

View File

@ -301,7 +301,9 @@ void vp8_arch_x86_encoder_init(VP8_COMP *cpi)
#endif #endif
cpi->rtcd.quantize.fastquantb = vp8_fast_quantize_b_sse2; cpi->rtcd.quantize.fastquantb = vp8_fast_quantize_b_sse2;
#if !(CONFIG_REALTIME_ONLY)
cpi->rtcd.temporal.apply = vp8_temporal_filter_apply_sse2; cpi->rtcd.temporal.apply = vp8_temporal_filter_apply_sse2;
#endif
} }
#endif #endif

View File

@ -85,6 +85,7 @@ VP8_CX_SRCS-yes += encoder/temporal_filter.h
ifeq ($(CONFIG_REALTIME_ONLY),yes) ifeq ($(CONFIG_REALTIME_ONLY),yes)
VP8_CX_SRCS_REMOVE-yes += encoder/firstpass.c VP8_CX_SRCS_REMOVE-yes += encoder/firstpass.c
VP8_CX_SRCS_REMOVE-yes += encoder/temporal_filter.c
endif endif
VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/encodemb_x86.h VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/encodemb_x86.h
@ -114,4 +115,9 @@ VP8_CX_SRCS-$(HAVE_SSE4_1) += encoder/x86/sad_sse4.asm
VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/quantize_mmx.asm VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/quantize_mmx.asm
VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/encodeopt.asm VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/encodeopt.asm
ifeq ($(CONFIG_REALTIME_ONLY),yes)
VP8_CX_SRCS_REMOVE-$(HAVE_SSE2) += encoder/x86/temporal_filter_apply_sse2.asm
endif
VP8_CX_SRCS-yes := $(filter-out $(VP8_CX_SRCS_REMOVE-yes),$(VP8_CX_SRCS-yes)) VP8_CX_SRCS-yes := $(filter-out $(VP8_CX_SRCS_REMOVE-yes),$(VP8_CX_SRCS-yes))