android - 启用 armv6 FFmpeg 在 Android NDK 下崩溃

标签 android ffmpeg android-ndk armv6

我在armv5下编译FFmpeg,在Android NDK r5上可以正常运行,但是我在armv6下编译FFmpeg,可以成功,但是当我调用函数av_new_stream的时候就崩溃了,在libavutil上也崩溃了。 c/rational.c:

if(num<=max && den<=max){
    a1= (AVRational){num, den};
    den=0;
}

有人遇到这个问题吗?
The LOCAL_FLAGS
include $(CLEAR_VARS)
LOCAL_ARM_MODE := arm
LOCAL_MODULE    := ffmpeg
LOCAL_CFLAGS := -DHAVE_AV_CONFIG_H  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC  -std=gnu99 -march=armv6

这里有什么错误吗?

最佳答案

如果您在模拟器下运行代码,这是完全正常的。模拟器仅支持 ARMv5。不是 ARMv6,当然也不是 ARMv7。

更新:对于较新版本的模拟器,这不再适用。它完全支持ARMv7。

关于android - 启用 armv6 FFmpeg 在 Android NDK 下崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5821695/

相关文章:

android - 我无法设置 Android 数据绑定(bind)

ruby (FFMPEG) "uninitialized constant"

android - 升级到 4.3 后 ScreenshotClient 报错

android - 在 Cursor 支持的 RecyclerView 中隐藏(并重新显示)卡片

android - Android 上的 ResourceBundle 在 Assets 文件夹中

android - Android 中的 .dex 文件是什么?

ffmpeg - 如何从 Wireshark Capture 中提取 RTP 数据包特定字段?

linux - 使用 ffmpeg 的 Raspberry Pi Youtube 流 : libx264 unknown

android - APK打包过程中文件重复或Android UnsatisfiedLinkError

android - TravisCI 中的 NDK、CMake 和 Android