2d60bee1fb
Alternative strategy for finding a list of candidate motion vectors to use as reference values in mv coding and as nearest and near. Sort by sad in vp8_find_best_ref_mvs() rather than just pick the best. Allow 0,0 as a best ref option but not a nearest or near unless there are no alternatives. Encode/Decode verified on at least some clips. Some commented out experimental and stats code still in place. Gain over existing code averages about 1% on derf (alll metrics) with improvement on all clips. Other test results pending. The entropy coding of the mode (nearest/near etc) still depends upon and requires the old "findnear" code so this needs looking at and may provide room for further gains. Change-Id: I871d7cba1d1c379c4bad9bcccce1fb19c46b8247
178 lines
8.7 KiB
Makefile
178 lines
8.7 KiB
Makefile
##
|
|
## Copyright (c) 2010 The WebM project authors. All Rights Reserved.
|
|
##
|
|
## Use of this source code is governed by a BSD-style license
|
|
## that can be found in the LICENSE file in the root of the source
|
|
## tree. An additional intellectual property rights grant can be found
|
|
## in the file PATENTS. All contributing project authors may
|
|
## be found in the AUTHORS file in the root of the source tree.
|
|
##
|
|
|
|
VP8_COMMON_SRCS-yes += vp8_common.mk
|
|
VP8_COMMON_SRCS-yes += common/type_aliases.h
|
|
VP8_COMMON_SRCS-yes += common/pragmas.h
|
|
VP8_COMMON_SRCS-yes += common/ppflags.h
|
|
VP8_COMMON_SRCS-yes += common/onyx.h
|
|
VP8_COMMON_SRCS-yes += common/onyxd.h
|
|
VP8_COMMON_SRCS-yes += common/alloccommon.c
|
|
VP8_COMMON_SRCS-yes += common/asm_com_offsets.c
|
|
VP8_COMMON_SRCS-yes += common/blockd.c
|
|
VP8_COMMON_SRCS-yes += common/coefupdateprobs.h
|
|
VP8_COMMON_SRCS-yes += common/debugmodes.c
|
|
VP8_COMMON_SRCS-yes += common/entropy.c
|
|
VP8_COMMON_SRCS-yes += common/entropymode.c
|
|
VP8_COMMON_SRCS-yes += common/entropymv.c
|
|
VP8_COMMON_SRCS-yes += common/extend.c
|
|
VP8_COMMON_SRCS-yes += common/filter.c
|
|
VP8_COMMON_SRCS-yes += common/filter.h
|
|
VP8_COMMON_SRCS-yes += common/findnearmv.c
|
|
VP8_COMMON_SRCS-yes += common/generic/systemdependent.c
|
|
VP8_COMMON_SRCS-yes += common/idctllm.c
|
|
VP8_COMMON_SRCS-yes += common/alloccommon.h
|
|
VP8_COMMON_SRCS-yes += common/blockd.h
|
|
VP8_COMMON_SRCS-yes += common/common.h
|
|
VP8_COMMON_SRCS-yes += common/common_types.h
|
|
VP8_COMMON_SRCS-yes += common/entropy.h
|
|
VP8_COMMON_SRCS-yes += common/entropymode.h
|
|
VP8_COMMON_SRCS-yes += common/entropymv.h
|
|
VP8_COMMON_SRCS-yes += common/extend.h
|
|
VP8_COMMON_SRCS-yes += common/findnearmv.h
|
|
VP8_COMMON_SRCS-yes += common/g_common.h
|
|
VP8_COMMON_SRCS-yes += common/header.h
|
|
VP8_COMMON_SRCS-yes += common/idct.h
|
|
VP8_COMMON_SRCS-yes += common/invtrans.h
|
|
VP8_COMMON_SRCS-yes += common/loopfilter.h
|
|
VP8_COMMON_SRCS-yes += common/modecont.h
|
|
VP8_COMMON_SRCS-yes += common/mv.h
|
|
VP8_COMMON_SRCS-yes += common/onyxc_int.h
|
|
VP8_COMMON_SRCS-yes += common/pred_common.h
|
|
VP8_COMMON_SRCS-yes += common/pred_common.c
|
|
VP8_COMMON_SRCS-yes += common/quant_common.h
|
|
VP8_COMMON_SRCS-yes += common/recon.h
|
|
VP8_COMMON_SRCS-yes += common/reconinter.h
|
|
VP8_COMMON_SRCS-yes += common/reconintra.h
|
|
VP8_COMMON_SRCS-yes += common/reconintra4x4.h
|
|
VP8_COMMON_SRCS-yes += common/rtcd.c
|
|
VP8_COMMON_SRCS-yes += common/rtcd_defs.sh
|
|
VP8_COMMON_SRCS-yes += common/seg_common.h
|
|
VP8_COMMON_SRCS-yes += common/seg_common.c
|
|
VP8_COMMON_SRCS-yes += common/setupintrarecon.h
|
|
VP8_COMMON_SRCS-yes += common/subpixel.h
|
|
VP8_COMMON_SRCS-yes += common/swapyv12buffer.h
|
|
VP8_COMMON_SRCS-yes += common/systemdependent.h
|
|
VP8_COMMON_SRCS-yes += common/treecoder.h
|
|
VP8_COMMON_SRCS-yes += common/invtrans.c
|
|
VP8_COMMON_SRCS-yes += common/loopfilter.c
|
|
VP8_COMMON_SRCS-yes += common/loopfilter_filters.c
|
|
VP8_COMMON_SRCS-yes += common/mbpitch.c
|
|
VP8_COMMON_SRCS-yes += common/modecont.c
|
|
VP8_COMMON_SRCS-yes += common/modecontext.c
|
|
VP8_COMMON_SRCS-yes += common/mvref_common.c
|
|
VP8_COMMON_SRCS-yes += common/mvref_common.h
|
|
VP8_COMMON_SRCS-yes += common/quant_common.c
|
|
VP8_COMMON_SRCS-yes += common/recon.c
|
|
VP8_COMMON_SRCS-yes += common/reconinter.c
|
|
VP8_COMMON_SRCS-yes += common/reconintra.c
|
|
VP8_COMMON_SRCS-yes += common/reconintra4x4.c
|
|
VP8_COMMON_SRCS-yes += common/setupintrarecon.c
|
|
VP8_COMMON_SRCS-yes += common/swapyv12buffer.c
|
|
VP8_COMMON_SRCS-$(CONFIG_POSTPROC_VISUALIZER) += common/textblit.c
|
|
VP8_COMMON_SRCS-yes += common/treecoder.c
|
|
VP8_COMMON_SRCS-yes += common/implicit_segmentation.c
|
|
|
|
VP8_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/idct_x86.h
|
|
VP8_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/subpixel_x86.h
|
|
VP8_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/recon_x86.h
|
|
VP8_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/loopfilter_x86.h
|
|
VP8_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/postproc_x86.h
|
|
VP8_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/x86_systemdependent.c
|
|
VP8_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/vp8_asm_stubs.c
|
|
VP8_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/loopfilter_x86.c
|
|
VP8_COMMON_SRCS-$(CONFIG_POSTPROC) += common/postproc.h
|
|
VP8_COMMON_SRCS-$(CONFIG_POSTPROC) += common/postproc.c
|
|
VP8_COMMON_SRCS-$(HAVE_MMX) += common/x86/idctllm_mmx.asm
|
|
VP8_COMMON_SRCS-$(HAVE_MMX) += common/x86/iwalsh_mmx.asm
|
|
VP8_COMMON_SRCS-$(HAVE_MMX) += common/x86/recon_mmx.asm
|
|
VP8_COMMON_SRCS-$(HAVE_MMX) += common/x86/subpixel_mmx.asm
|
|
VP8_COMMON_SRCS-$(HAVE_MMX) += common/x86/loopfilter_mmx.asm
|
|
VP8_COMMON_SRCS-$(HAVE_SSE2) += common/x86/idctllm_sse2.asm
|
|
VP8_COMMON_SRCS-$(HAVE_SSE2) += common/x86/recon_sse2.asm
|
|
VP8_COMMON_SRCS-$(HAVE_SSE2) += common/x86/recon_wrapper_sse2.c
|
|
VP8_COMMON_SRCS-$(HAVE_SSE2) += common/x86/subpixel_sse2.asm
|
|
VP8_COMMON_SRCS-$(HAVE_SSE2) += common/x86/loopfilter_sse2.asm
|
|
VP8_COMMON_SRCS-$(HAVE_SSE2) += common/x86/iwalsh_sse2.asm
|
|
VP8_COMMON_SRCS-$(HAVE_SSSE3) += common/x86/subpixel_ssse3.asm
|
|
ifeq ($(CONFIG_POSTPROC),yes)
|
|
VP8_COMMON_SRCS-$(HAVE_MMX) += common/x86/postproc_mmx.asm
|
|
VP8_COMMON_SRCS-$(HAVE_SSE2) += common/x86/postproc_sse2.asm
|
|
endif
|
|
|
|
# common (c)
|
|
ifeq ($(CONFIG_CSM),yes)
|
|
VP8_COMMON_SRCS-yes += common/maskingmv.c
|
|
VP8_COMMON_SRCS-$(HAVE_SSE3) += common/x86/mask_sse3.asm
|
|
endif
|
|
|
|
VP8_COMMON_SRCS-$(HAVE_SSE4_1) += common/x86/filter_sse4.c
|
|
ifeq ($(HAVE_SSE4_1),yes)
|
|
vp8/common/x86/filter_sse4.c.o: CFLAGS += -msse4
|
|
endif
|
|
|
|
VP8_COMMON_SRCS-$(HAVE_SSE2) += common/x86/filter_sse2.c
|
|
ifeq ($(HAVE_SSE2),yes)
|
|
vp8/common/x86/filter_sse2.c.o: CFLAGS += -msse2
|
|
endif
|
|
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/arm_systemdependent.c
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/bilinearfilter_arm.c
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/bilinearfilter_arm.h
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/filter_arm.c
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/idct_arm.h
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/loopfilter_arm.c
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/loopfilter_arm.h
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/recon_arm.h
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/reconintra_arm.c
|
|
VP8_COMMON_SRCS-$(ARCH_ARM) += common/arm/subpixel_arm.h
|
|
|
|
# common (armv6)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/bilinearfilter_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/copymem8x4_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/copymem8x8_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/copymem16x16_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/dc_only_idct_add_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/iwalsh_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/filter_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/idct_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/loopfilter_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/recon_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/simpleloopfilter_v6$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV6) += common/arm/armv6/sixtappredict8x4_v6$(ASM)
|
|
|
|
# common (neon)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/bilinearpredict4x4_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/bilinearpredict8x4_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/bilinearpredict8x8_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/bilinearpredict16x16_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/copymem8x4_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/copymem8x8_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/copymem16x16_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/dc_only_idct_add_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/iwalsh_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/loopfilter_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/loopfiltersimplehorizontaledge_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/loopfiltersimpleverticaledge_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/mbloopfilter_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/recon2b_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/recon4b_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/reconb_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/shortidct4x4llm_1_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/shortidct4x4llm_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/sixtappredict4x4_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/sixtappredict8x4_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/sixtappredict8x8_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/sixtappredict16x16_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/recon16x16mb_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/buildintrapredictorsmby_neon$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/save_neon_reg$(ASM)
|
|
VP8_COMMON_SRCS-$(HAVE_ARMV7) += common/arm/neon/recon_neon.c
|