[FFmpeg-devel] arm neon float instruction crash the ffmpeg

zhuhb zhuhongbo at qiyi.com
Tue Jan 5 12:05:11 CET 2016


I managed to compile/build the ffmpeg for the iOS arm32 version. But it crashed when I play bitstreams containing the aac and H.264 raw bitstreams.
I found that the neon float instruction is the reason, so I disable all neon float assembly code and the ffmpeg succeed to play the aac and H.264 bitstream.
What is the reason? How can I succeed to use the neon float instruction assembly code?

My configuration is as follows:
		FFMPEG_FLAGS="$FFMPEG_FLAGS_IOS"
		PLATFORM="iPhoneOS"
        EXTRA_CONFIG="--cpu=cortex-a8 --enable-cross-compile --disable-debug --disable-programs  --disable-doc --arch=arm --target-os=darwin --disable-armv5te"
        EXTRA_CFLAGS="-w -arch ${ARCH} -mfpu=neon -marm"
        EXTRA_LDFLAGS="-mfpu=neon"

		./configure $FFMPEG_FLAGS --prefix="${INTERDIR}/${ARCH}" --disable-armv6 --disable-armv6t2 --sysroot="${DEVELOPER}/Platforms/${PLATFORM}.platform/Developer/SDKs/${PLATFORM}${SDKVERSION}.sdk" --cc="${DEVELOPER}/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" --as='gas-preprocessor.pl /Applications/XCode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang' --extra-cflags="${EXTRA_CFLAGS} -miphoneos-version-min=${MIN_IPHONE_VERSION} -I${OUTPUTDIR}/include -I $SOURCE/include/ios" --extra-ldflags="-arch ${ARCH} ${EXTRA_LDFLAGS} -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/${PLATFORM}.platform/Developer/SDKs/${PLATFORM}${SDKVERSION}.sdk -miphoneos-version-min=${MIN_IPHONE_VERSION} -L${OUTPUTDIR}/lib -L $SOURCE/lib/ios" ${EXTRA_CONFIG} --enable-pic --extra-cxxflags="$CPPFLAGS -I${OUTPUTDIR}/include -isysroot ${DEVELOPER}/Platforms/${PLATFORM}.platform/Developer/SDKs/${PLATFORM}${SDKVERSION}.sdk" --extra-cflags="-I/Users/iqiyi/local/opencore-amr/ios/${ARCH}/include" --extra-ldflags="-L/Users/iqiyi/local/opencore-amr/ios/${ARCH}/lib" --extra-cflags="-fembed-bitcode"



More information about the ffmpeg-devel mailing list