Fix WebM module for HTML5 platform

This commit is contained in:
Leon Krause 2018-08-27 04:08:04 +02:00
parent 12290c172a
commit 92b259ccf1
2 changed files with 17 additions and 2 deletions

View file

@ -38,7 +38,6 @@ libvpx_sources = [
"vp8/decoder/decodemv.c", "vp8/decoder/decodemv.c",
"vp8/decoder/detokenize.c", "vp8/decoder/detokenize.c",
"vp8/decoder/onyxd_if.c", "vp8/decoder/onyxd_if.c",
"vp8/decoder/threading.c",
"vp9/vp9_dx_iface.c", "vp9/vp9_dx_iface.c",
@ -102,6 +101,10 @@ libvpx_sources = [
"vpx_util/vpx_thread.c" "vpx_util/vpx_thread.c"
] ]
libvpx_sources_mt = [
"vp8/decoder/threading.c",
]
libvpx_sources_intrin_x86 = [ libvpx_sources_intrin_x86 = [
"vp8/common/x86/filter_x86.c", "vp8/common/x86/filter_x86.c",
"vp8/common/x86/loopfilter_x86.c", "vp8/common/x86/loopfilter_x86.c",
@ -231,6 +234,7 @@ libvpx_sources_arm_neon_gas_apple = [
] ]
libvpx_sources = [libvpx_dir + file for file in libvpx_sources] libvpx_sources = [libvpx_dir + file for file in libvpx_sources]
libvpx_sources_mt = [libvpx_dir + file for file in libvpx_sources_mt]
libvpx_sources_intrin_x86 = [libvpx_dir + file for file in libvpx_sources_intrin_x86] libvpx_sources_intrin_x86 = [libvpx_dir + file for file in libvpx_sources_intrin_x86]
libvpx_sources_intrin_x86_mmx = [libvpx_dir + file for file in libvpx_sources_intrin_x86_mmx] libvpx_sources_intrin_x86_mmx = [libvpx_dir + file for file in libvpx_sources_intrin_x86_mmx]
libvpx_sources_intrin_x86_sse2 = [libvpx_dir + file for file in libvpx_sources_intrin_x86_sse2] libvpx_sources_intrin_x86_sse2 = [libvpx_dir + file for file in libvpx_sources_intrin_x86_sse2]
@ -253,6 +257,8 @@ env_webm.Append(CPPPATH=[libvpx_dir])
env_libvpx = env.Clone() env_libvpx = env.Clone()
env_libvpx.Append(CPPPATH=[libvpx_dir]) env_libvpx.Append(CPPPATH=[libvpx_dir])
webm_multithread = env["platform"] != 'javascript'
cpu_bits = env["bits"] cpu_bits = env["bits"]
webm_cpu_x86 = False webm_cpu_x86 = False
webm_cpu_arm = False webm_cpu_arm = False
@ -338,6 +344,10 @@ if webm_simd_optimizations == False:
print("WebM SIMD optimizations are disabled. Check if your CPU architecture, CPU bits or platform are supported!") print("WebM SIMD optimizations are disabled. Check if your CPU architecture, CPU bits or platform are supported!")
env_libvpx.add_source_files(env.modules_sources, libvpx_sources) env_libvpx.add_source_files(env.modules_sources, libvpx_sources)
if webm_multithread:
env_libvpx.add_source_files(env.modules_sources, libvpx_sources_mt)
if webm_cpu_x86: if webm_cpu_x86:
is_clang_or_gcc = ('gcc' in env["CC"]) or ('clang' in env["CC"]) or ("OSXCROSS_ROOT" in os.environ) is_clang_or_gcc = ('gcc' in env["CC"]) or ('clang' in env["CC"]) or ("OSXCROSS_ROOT" in os.environ)

View file

@ -67,6 +67,12 @@
#define CONFIG_BIG_ENDIAN 0 //TODO: Autodetect #define CONFIG_BIG_ENDIAN 0 //TODO: Autodetect
#ifdef __EMSCRIPTEN__
#define CONFIG_MULTITHREAD 0
#else
#define CONFIG_MULTITHREAD 1
#endif
#ifdef _WIN32 #ifdef _WIN32
#define HAVE_PTHREAD_H 0 #define HAVE_PTHREAD_H 0
#define HAVE_UNISTD_H 0 #define HAVE_UNISTD_H 0
@ -95,7 +101,6 @@
#define CONFIG_RUNTIME_CPU_DETECT 1 #define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_POSTPROC 0 #define CONFIG_POSTPROC 0
#define CONFIG_VP9_POSTPROC 0 #define CONFIG_VP9_POSTPROC 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_INTERNAL_STATS 0 #define CONFIG_INTERNAL_STATS 0
#define CONFIG_VP8_ENCODER 0 #define CONFIG_VP8_ENCODER 0
#define CONFIG_VP8_DECODER 1 #define CONFIG_VP8_DECODER 1