From bc023ebe0000bbe32cbd89e91fbdb91c3ce91f50 Mon Sep 17 00:00:00 2001
From: philippegorley <philippe.gorley@savoirfairelinux.com>
Date: Thu, 13 Jul 2017 17:58:42 -0400
Subject: [PATCH] android: fix video on arm 32 bits

Neon would cause a SIGBUS on ARM 32 bits and mediacodec would cause
issues with the video feed. Disable them for now.

Change-Id: I8a44f638b041e5ce0bd42e865576f47779e07546
---
 contrib/src/ffmpeg/rules.mak | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/contrib/src/ffmpeg/rules.mak b/contrib/src/ffmpeg/rules.mak
index aca7ef8679..d6f4255ca8 100644
--- a/contrib/src/ffmpeg/rules.mak
+++ b/contrib/src/ffmpeg/rules.mak
@@ -96,12 +96,16 @@ ifdef HAVE_ANDROID
 # Android Linux
 FFMPEGCONF += \
 	--target-os=android \
-	--enable-jni \
+	--enable-jni
+# ARM 32 bits has trouble with mediacodec
+ifneq ($(ARCH),arm)
+FFMPEGCONF += \
 	--enable-mediacodec \
 	--enable-hwaccel=vp8_mediacodec \
 	--enable-hwaccel=mpeg4_mediacodec \
 	--enable-decoder=vp8_mediacodec \
 	--enable-decoder=mpeg4_mediacodec
+endif
 # ASM not working on Android x86 https://trac.ffmpeg.org/ticket/4928
 ifeq ($(ARCH),i386)
 FFMPEGCONF += --disable-asm
@@ -164,15 +168,14 @@ endif
 
 # ARM stuff
 ifeq ($(ARCH),arm)
+# neon causes SIGBUS error on ARM 32 bits
+FFMPEGCONF += --disable-neon
 FFMPEGCONF += --arch=arm
-ifdef HAVE_NEON
-FFMPEGCONF += --enable-neon
-endif
 ifdef HAVE_ARMV7A
 FFMPEGCONF += --cpu=cortex-a8
 endif
 ifdef HAVE_ARMV6
-FFMPEGCONF += --cpu=armv6 --disable-neon
+FFMPEGCONF += --cpu=armv6
 endif
 endif
 
-- 
GitLab