Frage

Ich kompile den FFMPEG unter dem ARMV5, es kann gut für Android NDK R5 funktionieren, aber ich kompile den FFMPEG unter dem ARMV6, es kann Erfolg haben, aber wenn ich die Funktion av_new_stream nenne, wird er abgestürzt und es wird auf dem Libavutil abgestürzt. c/rational.c:

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

Dosis jemand auf dieses Problem stoßen?

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

Gibt es hier etwas Fehler?

War es hilfreich?

Lösung

Wenn Sie Ihren Code unter dem Emulator ausführen, ist dies völlig normal. Der Emulator unterstützt nur ARMV5. Nicht ARMV6 und sicherlich nicht ARMV7.

Aktualisieren: Dies gilt nicht mehr mit den neueren Versionen des Emulators. Es unterstützt ARMV7 voll und ganz.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top