mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-02-07 14:18:25 +00:00
Apply the proposed fix for the garbling of vp8 here: https://code.google.com/p/webm/issues/detail?id=603#c45
This commit is contained in:
parent
5681581601
commit
5ab859fd08
2 changed files with 27 additions and 37 deletions
|
|
@ -2,7 +2,7 @@ libvpx_configure_options=\
|
|||
--enable-static --disable-shared \
|
||||
--enable-error-concealment --disable-examples \
|
||||
--enable-realtime-only --enable-spatial-resampling \
|
||||
--enable-vp8 --enable-multithread
|
||||
--enable-vp8 --enable-multithread --disable-vp9
|
||||
|
||||
ifneq (,$(findstring armv6,$(host)))
|
||||
libvpx_configure_options+= --target=armv6-darwin-gcc --cpu=arm1176jzf-s
|
||||
|
|
@ -20,11 +20,17 @@ all_p+=armv7-darwin-gcc #neon Cortex-A8
|
|||
all_p+=armv7s-darwin-gcc #neon Cortex-A8
|
||||
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(libvpx_dir)/config.mk:
|
||||
$(BUILDER_SRC_DIR)/$(libvpx_dir)/patched.stamp:
|
||||
cd $(BUILDER_SRC_DIR)/$(libvpx_dir) \
|
||||
&& git apply $(BUILDER_SRC_DIR)/build/builders.d/libvpx.patch \
|
||||
&& touch $@
|
||||
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(libvpx_dir)/config.mk: $(BUILDER_SRC_DIR)/$(libvpx_dir)/patched.stamp
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(libvpx_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(libvpx_dir)/ \
|
||||
&& host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& export all_platforms="${all_p}" && $(BUILDER_SRC_DIR)/$(libvpx_dir)/configure --prefix=$(prefix) --sdk-path=$$SDK_BIN_PATH/../../ --libc=$$SYSROOT_PATH $(libvpx_configure_options) --extra-cflags="-O1 -fno-strict-aliasing"
|
||||
&& export all_platforms="${all_p}" && $(BUILDER_SRC_DIR)/$(libvpx_dir)/configure --prefix=$(prefix) --sdk-path=$$SDK_BIN_PATH/../../ --libc=$$SYSROOT_PATH $(libvpx_configure_options) --extra-cflags="-fno-strict-aliasing"
|
||||
|
||||
build-libvpx: $(BUILDER_BUILD_DIR)/$(libvpx_dir)/config.mk
|
||||
cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) \
|
||||
|
|
@ -37,7 +43,8 @@ clean-libvpx:
|
|||
veryclean-libvpx:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) && make distclean
|
||||
cd $(BUILDER_SRC_DIR)/$(libvpx_dir) \
|
||||
&& git clean -f && git reset --hard
|
||||
&& git clean -f && git reset --hard \
|
||||
&& rm -f patched.stamp
|
||||
rm -rf $(BUILDER_BUILD_DIR)/$(libvpx_dir)
|
||||
|
||||
clean-makefile-libvpx:
|
||||
|
|
|
|||
|
|
@ -1,34 +1,17 @@
|
|||
diff --git a/build/make/configure.sh b/build/make/configure.sh
|
||||
index c99a01c..7fdf10d 100755
|
||||
--- a/build/make/configure.sh
|
||||
+++ b/build/make/configure.sh
|
||||
@@ -889,13 +889,13 @@ process_common_toolchain() {
|
||||
SDK_PATH=${sdk_path}
|
||||
fi
|
||||
TOOLCHAIN_PATH=${SDK_PATH}/usr/bin
|
||||
- CXX=${TOOLCHAIN_PATH}/g++
|
||||
- CC=${TOOLCHAIN_PATH}/gcc
|
||||
- AR=${TOOLCHAIN_PATH}/ar
|
||||
- LD=${TOOLCHAIN_PATH}/arm-apple-darwin10-llvm-gcc-4.2
|
||||
- AS=${TOOLCHAIN_PATH}/as
|
||||
- STRIP=${TOOLCHAIN_PATH}/strip
|
||||
- NM=${TOOLCHAIN_PATH}/nm
|
||||
+ CXX=`xcrun --find clang++`
|
||||
+ CC=`xcrun --find clang`
|
||||
+ AR=`xcrun --find ar`
|
||||
+ LD=`xcrun --find clang`
|
||||
+ AS=`xcrun --find as`
|
||||
+ STRIP=`xcrun --find strip`
|
||||
+ NM=`xcrun --find nm`
|
||||
AS_SFX=.s
|
||||
diff --git a/vp8/decoder/decodframe.c b/vp8/decoder/decodframe.c
|
||||
index 16da78a..fd9ca61 100644
|
||||
--- a/vp8/decoder/decodframe.c
|
||||
+++ b/vp8/decoder/decodframe.c
|
||||
@@ -248,7 +248,11 @@ static void decode_macroblock(VP8D_COMP *pbi, MACROBLOCKD *xd,
|
||||
|
||||
# ASFLAGS is written here instead of using check_add_asflags
|
||||
@@ -904,7 +904,7 @@ process_common_toolchain() {
|
||||
ASFLAGS="-version -arch ${tgt_isa} -g"
|
||||
|
||||
add_cflags -arch ${tgt_isa}
|
||||
- add_ldflags -arch_only ${tgt_isa}
|
||||
+ add_ldflags -arch ${tgt_isa}
|
||||
|
||||
if [ -z "${alt_libc}" ]; then
|
||||
alt_libc=${SDK_PATH}/SDKs/iPhoneOS5.1.sdk
|
||||
vp8_short_inv_walsh4x4(&b->dqcoeff[0],
|
||||
xd->qcoeff);
|
||||
- vpx_memset(b->qcoeff, 0, 16 * sizeof(b->qcoeff[0]));
|
||||
+ // TODO(johannkoenig): figure out why bzero below
|
||||
+ // works great on iOS Release but memset or
|
||||
+ // vpx_memset create terrible corruption on decode
|
||||
+ // (https://code.google.com/p/webm/issues/detail?id=603).
|
||||
+ bzero(b->qcoeff, 16 * sizeof(b->qcoeff[0]));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue