0

我在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

这里有什么错误吗?

4

1 回答 1

1

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

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

于 2011-05-18T09:01:00.707 回答