Merge remote branch 'origin/master' into experimental
Conflicts: configure Change-Id: I18c2292256d2387ff09da209aa9cf6891e1864a0
This commit is contained in:
Коммит
933dfe0a94
|
@ -664,7 +664,7 @@ process_common_toolchain() {
|
|||
elif enabled armv7
|
||||
then
|
||||
check_add_cflags -march=armv7-a -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-ftree-vectorize
|
||||
check_add_asflags -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-march=armv7-a
|
||||
check_add_asflags -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-march=armv7-a
|
||||
else
|
||||
check_add_cflags -march=${tgt_isa}
|
||||
check_add_asflags -march=${tgt_isa}
|
||||
|
@ -695,10 +695,17 @@ process_common_toolchain() {
|
|||
arch_int=${arch_int%%te}
|
||||
check_add_asflags --pd "\"ARCHITECTURE SETA ${arch_int}\""
|
||||
enabled debug && add_asflags -g
|
||||
add_cflags --gnu
|
||||
add_cflags --enum_is_int
|
||||
add_cflags --wchar32
|
||||
;;
|
||||
esac
|
||||
|
||||
case ${tgt_os} in
|
||||
none*)
|
||||
disable multithread
|
||||
disable os_support
|
||||
;;
|
||||
darwin*)
|
||||
SDK_PATH=/Developer/Platforms/iPhoneOS.platform/Developer
|
||||
TOOLCHAIN_PATH=${SDK_PATH}/usr/bin
|
||||
|
@ -747,13 +754,9 @@ process_common_toolchain() {
|
|||
|| die "Must supply --libc when targetting *-linux-rvct"
|
||||
|
||||
# Set up compiler
|
||||
add_cflags --gnu
|
||||
add_cflags --enum_is_int
|
||||
add_cflags --library_interface=aeabi_glibc
|
||||
add_cflags --no_hide_all
|
||||
add_cflags --wchar32
|
||||
add_cflags --dwarf2
|
||||
add_cflags --gnu
|
||||
|
||||
# Set up linker
|
||||
add_ldflags --sysv --no_startup --no_ref_cpp_init
|
||||
|
|
|
@ -79,11 +79,13 @@ EOF
|
|||
# alphabetically by architecture, generic-gnu last.
|
||||
all_platforms="${all_platforms} armv5te-linux-rvct"
|
||||
all_platforms="${all_platforms} armv5te-linux-gcc"
|
||||
all_platforms="${all_platforms} armv5te-none-rvct"
|
||||
all_platforms="${all_platforms} armv5te-symbian-gcc"
|
||||
all_platforms="${all_platforms} armv5te-wince-vs8"
|
||||
all_platforms="${all_platforms} armv6-darwin-gcc"
|
||||
all_platforms="${all_platforms} armv6-linux-rvct"
|
||||
all_platforms="${all_platforms} armv6-linux-gcc"
|
||||
all_platforms="${all_platforms} armv6-none-rvct"
|
||||
all_platforms="${all_platforms} armv6-symbian-gcc"
|
||||
all_platforms="${all_platforms} armv6-wince-vs8"
|
||||
all_platforms="${all_platforms} iwmmxt-linux-rvct"
|
||||
|
@ -95,6 +97,7 @@ all_platforms="${all_platforms} iwmmxt2-wince-vs8"
|
|||
all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8
|
||||
all_platforms="${all_platforms} armv7-linux-rvct" #neon Cortex-A8
|
||||
all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8
|
||||
all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8
|
||||
all_platforms="${all_platforms} mips32-linux-gcc"
|
||||
all_platforms="${all_platforms} ppc32-darwin8-gcc"
|
||||
all_platforms="${all_platforms} ppc32-darwin9-gcc"
|
||||
|
@ -159,6 +162,7 @@ enable fast_unaligned #allow unaligned accesses, if supported by hw
|
|||
enable md5
|
||||
enable spatial_resampling
|
||||
enable multithread
|
||||
enable os_support
|
||||
|
||||
[ -d ${source_path}/../include ] && enable alt_tree_layout
|
||||
for d in vp8; do
|
||||
|
@ -256,6 +260,7 @@ CONFIG_LIST="
|
|||
small
|
||||
arm_asm_detok
|
||||
postproc_visualizer
|
||||
os_support
|
||||
|
||||
experimental
|
||||
${EXPERIMENT_LIST}
|
||||
|
|
10
examples.mk
10
examples.mk
|
@ -93,8 +93,16 @@ vp8cx_set_ref.DESCRIPTION = VP8 set encoder reference frame
|
|||
|
||||
|
||||
# Handle extra library flags depending on codec configuration
|
||||
CODEC_EXTRA_LIBS-$(CONFIG_VP8) += m
|
||||
|
||||
# We should not link to math library (libm) on RVCT
|
||||
# when building for bare-metal targets
|
||||
ifeq ($(CONFIG_OS_SUPPORT), yes)
|
||||
CODEC_EXTRA_LIBS-$(CONFIG_VP8) += m
|
||||
else
|
||||
ifeq ($(CONFIG_GCC), yes)
|
||||
CODEC_EXTRA_LIBS-$(CONFIG_VP8) += m
|
||||
endif
|
||||
endif
|
||||
#
|
||||
# End of specified files. The rest of the build rules should happen
|
||||
# automagically from here.
|
||||
|
|
|
@ -20,8 +20,6 @@
|
|||
* Still in the public domain.
|
||||
*/
|
||||
|
||||
#include <sys/types.h> /* for stupid systems */
|
||||
|
||||
#include <string.h> /* for memcpy() */
|
||||
|
||||
#include "md5_utils.h"
|
||||
|
|
|
@ -243,8 +243,6 @@ skip_secondpass_hloop
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA subpelfilters8_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
_filter8_coeff_
|
||||
|
|
|
@ -350,10 +350,7 @@ filt_blk2d_spo16x16_loop_neon
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA bifilters16_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_bifilter16_coeff_
|
||||
DCD bifilter16_coeff
|
||||
bifilter16_coeff
|
||||
|
|
|
@ -123,10 +123,7 @@ skip_secondpass_filter
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA bilinearfilters4_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_bifilter4_coeff_
|
||||
DCD bifilter4_coeff
|
||||
bifilter4_coeff
|
||||
|
|
|
@ -128,10 +128,7 @@ skip_secondpass_filter
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA bifilters8x4_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_bifilter8x4_coeff_
|
||||
DCD bifilter8x4_coeff
|
||||
bifilter8x4_coeff
|
||||
|
|
|
@ -176,10 +176,7 @@ skip_secondpass_filter
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA bifilters8_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_bifilter8_coeff_
|
||||
DCD bifilter8_coeff
|
||||
bifilter8_coeff
|
||||
|
|
|
@ -397,7 +397,8 @@
|
|||
bx lr
|
||||
ENDP ; |vp8_loop_filter_horizontal_edge_y_neon|
|
||||
|
||||
AREA loopfilter_dat, DATA, READONLY
|
||||
;-----------------
|
||||
|
||||
_lf_coeff_
|
||||
DCD lf_coeff
|
||||
lf_coeff
|
||||
|
|
|
@ -104,10 +104,7 @@
|
|||
ENDP ; |vp8_loop_filter_simple_horizontal_edge_neon|
|
||||
|
||||
;-----------------
|
||||
AREA hloopfiltery_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 16 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_lfhy_coeff_
|
||||
DCD lfhy_coeff
|
||||
lfhy_coeff
|
||||
|
|
|
@ -145,10 +145,7 @@
|
|||
ENDP ; |vp8_loop_filter_simple_vertical_edge_neon|
|
||||
|
||||
;-----------------
|
||||
AREA vloopfiltery_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 16 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_vlfy_coeff_
|
||||
DCD vlfy_coeff
|
||||
vlfy_coeff
|
||||
|
|
|
@ -505,7 +505,8 @@
|
|||
bx lr
|
||||
ENDP ; |vp8_mbloop_filter_neon|
|
||||
|
||||
AREA mbloopfilter_dat, DATA, READONLY
|
||||
;-----------------
|
||||
|
||||
_mblf_coeff_
|
||||
DCD mblf_coeff
|
||||
mblf_coeff
|
||||
|
|
|
@ -113,10 +113,7 @@
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA idct4x4_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_idct_coeff_
|
||||
DCD idct_coeff
|
||||
idct_coeff
|
||||
|
|
|
@ -476,10 +476,7 @@ secondpass_only_inner_loop_neon
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA subpelfilters16_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_filter16_coeff_
|
||||
DCD filter16_coeff
|
||||
filter16_coeff
|
||||
|
|
|
@ -407,10 +407,7 @@ secondpass_filter4x4_only
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA subpelfilters4_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_filter4_coeff_
|
||||
DCD filter4_coeff
|
||||
filter4_coeff
|
||||
|
|
|
@ -458,10 +458,7 @@ secondpass_filter8x4_only
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA subpelfilters8_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_filter8_coeff_
|
||||
DCD filter8_coeff
|
||||
filter8_coeff
|
||||
|
|
|
@ -509,10 +509,7 @@ filt_blk2d_spo8x8_loop_neon
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA subpelfilters8_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_filter8_coeff_
|
||||
DCD filter8_coeff
|
||||
filter8_coeff
|
||||
|
|
|
@ -14,6 +14,8 @@
|
|||
|
||||
#define VPXINFINITE 10000 /* 10second. */
|
||||
|
||||
#if CONFIG_OS_SUPPORT
|
||||
|
||||
/* Thread management macros */
|
||||
#ifdef _WIN32
|
||||
/* Win32 */
|
||||
|
@ -88,4 +90,8 @@
|
|||
#define x86_pause_hint()
|
||||
#endif
|
||||
|
||||
#else /* CONFIG_OS_SUPPORT = 0 */
|
||||
#define THREAD_FUNCTION void *
|
||||
#endif /* CONFIG_OS_SUPPORT */
|
||||
|
||||
#endif
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
*/
|
||||
|
||||
|
||||
#ifndef WIN32
|
||||
#if !defined(WIN32) && CONFIG_OS_SUPPORT == 1
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
#ifdef __APPLE__
|
||||
|
|
|
@ -112,10 +112,7 @@
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA fastfdct_dat, DATA, READONLY
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_ffdct_coeff_
|
||||
DCD ffdct_coeff
|
||||
ffdct_coeff
|
||||
|
|
|
@ -165,10 +165,7 @@
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA fastfdct8x4_dat, DATA, READONLY
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_ffdct8_coeff_
|
||||
DCD ffdct8_coeff
|
||||
ffdct8_coeff
|
||||
|
|
|
@ -122,10 +122,7 @@
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA dct4x4_dat, DATA, READONLY
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_dct_matrix_
|
||||
DCD dct_matrix
|
||||
dct_matrix
|
||||
|
|
|
@ -416,10 +416,7 @@ sub_pixel_variance16x16_neon_loop
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA vp8e_bilinear_taps_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_BilinearTaps_coeff_
|
||||
DCD bilinear_taps_coeff
|
||||
bilinear_taps_coeff
|
||||
|
|
|
@ -215,10 +215,7 @@ sub_pixel_variance8x8_neon_loop
|
|||
ENDP
|
||||
|
||||
;-----------------
|
||||
AREA bilinear_taps_dat, DATA, READWRITE ;read/write by default
|
||||
;Data section with name data_area is specified. DCD reserves space in memory for 48 data.
|
||||
;One word each is reserved. Label filter_coeff can be used to access the data.
|
||||
;Data address: filter_coeff, filter_coeff+4, filter_coeff+8 ...
|
||||
|
||||
_BilinearTaps_coeff_
|
||||
DCD bilinear_taps_coeff
|
||||
bilinear_taps_coeff
|
||||
|
|
|
@ -874,7 +874,7 @@ int vp8_rd_pick_intra_mbuv_mode(VP8_COMP *cpi, MACROBLOCK *x, int *rate, int *ra
|
|||
rate_to = rd_cost_mbuv(x);
|
||||
rate = rate_to + x->intra_uv_mode_cost[x->e_mbd.frame_type][x->e_mbd.mode_info_context->mbmi.uv_mode];
|
||||
|
||||
distortion = vp8_get_mbuvrecon_error(IF_RTCD(&cpi->rtcd.variance), x);
|
||||
distortion = ENCODEMB_INVOKE(&cpi->rtcd.encodemb, mbuverr)(x) / 4;
|
||||
|
||||
this_rd = RDCOST(x->rdmult, x->rddiv, rate, distortion);
|
||||
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#ifndef VPX_TIMER_H
|
||||
#define VPX_TIMER_H
|
||||
|
||||
#if CONFIG_OS_SUPPORT
|
||||
|
||||
#if defined(_WIN32)
|
||||
/*
|
||||
* Win32 specific includes
|
||||
|
@ -93,5 +95,27 @@ vpx_usec_timer_elapsed(struct vpx_usec_timer *t)
|
|||
#endif
|
||||
}
|
||||
|
||||
#else /* CONFIG_OS_SUPPORT = 0*/
|
||||
|
||||
/* Empty timer functions if CONFIG_OS_SUPPORT = 0 */
|
||||
#ifndef timersub
|
||||
#define timersub(a, b, result)
|
||||
#endif
|
||||
|
||||
struct vpx_usec_timer
|
||||
{
|
||||
void *dummy;
|
||||
};
|
||||
|
||||
static void
|
||||
vpx_usec_timer_start(struct vpx_usec_timer *t) { }
|
||||
|
||||
static void
|
||||
vpx_usec_timer_mark(struct vpx_usec_timer *t) { }
|
||||
|
||||
static long
|
||||
vpx_usec_timer_elapsed(struct vpx_usec_timer *t) { return 0; }
|
||||
|
||||
#endif /* CONFIG_OS_SUPPORT */
|
||||
|
||||
#endif
|
||||
|
|
24
vpxdec.c
24
vpxdec.c
|
@ -17,14 +17,7 @@
|
|||
#include <stdarg.h>
|
||||
#include <string.h>
|
||||
#include <limits.h>
|
||||
#if defined(_WIN32)
|
||||
#include <io.h>
|
||||
#define snprintf _snprintf
|
||||
#define isatty _isatty
|
||||
#define fileno _fileno
|
||||
#else
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#define VPX_CODEC_DISABLE_COMPAT 1
|
||||
#include "vpx_config.h"
|
||||
#include "vpx/vpx_decoder.h"
|
||||
|
@ -38,6 +31,17 @@
|
|||
#include "tools_common.h"
|
||||
#include "nestegg/include/nestegg/nestegg.h"
|
||||
|
||||
#if CONFIG_OS_SUPPORT
|
||||
#if defined(_WIN32)
|
||||
#include <io.h>
|
||||
#define snprintf _snprintf
|
||||
#define isatty _isatty
|
||||
#define fileno _fileno
|
||||
#else
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef PATH_MAX
|
||||
#define PATH_MAX 256
|
||||
#endif
|
||||
|
@ -866,7 +870,7 @@ int main(int argc, const char **argv_)
|
|||
strcmp(fn, "-") ? fn : "stdin");
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
#if CONFIG_OS_SUPPORT
|
||||
/* Make sure we don't dump to the terminal, unless forced to with -o - */
|
||||
if(!outfile_pattern && isatty(fileno(stdout)) && !do_md5 && !noblit)
|
||||
{
|
||||
|
@ -875,7 +879,7 @@ int main(int argc, const char **argv_)
|
|||
"override.\n");
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
#endif
|
||||
input.infile = infile;
|
||||
if(file_is_ivf(infile, &fourcc, &width, &height, &fps_den,
|
||||
&fps_num))
|
||||
|
|
10
vpxenc.c
10
vpxenc.c
|
@ -12,7 +12,7 @@
|
|||
/* This is a simple program that encodes YV12 files and generates ivf
|
||||
* files using the new interface.
|
||||
*/
|
||||
#if defined(_WIN32)
|
||||
#if defined(_WIN32) || !CONFIG_OS_SUPPORT
|
||||
#define USE_POSIX_MMAP 0
|
||||
#else
|
||||
#define USE_POSIX_MMAP 1
|
||||
|
@ -58,6 +58,14 @@ typedef __int64 off_t;
|
|||
#define LITERALU64(n) n##LLU
|
||||
#endif
|
||||
|
||||
/* We should use 32-bit file operations in WebM file format
|
||||
* when building ARM executable file (.axf) with RVCT */
|
||||
#if !CONFIG_OS_SUPPORT
|
||||
typedef long off_t;
|
||||
#define fseeko fseek
|
||||
#define ftello ftell
|
||||
#endif
|
||||
|
||||
static const char *exec_name;
|
||||
|
||||
static const struct codec_item
|
||||
|
|
Загрузка…
Ссылка в новой задаче