Abilita ARMv6 FFmpeg è schiantato sotto Android NDK
-
26-10-2019 - |
Domanda
I compilare il FFmpeg sotto l'ARMv5, si può lavorare bene su Android NDK R5, ma io compilare il FFmpeg sotto l'ARMv6, si può successo, ma quando chiamo la funzione av_new_stream, è caduto, e si è schiantato su il libavutil.c / rational.c:
if(num<=max && den<=max){
a1= (AVRational){num, den};
den=0;
}
Dosi chiunque incontrino questo problema?
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
C'è errore qualcosa qui?
Soluzione
Se si esegue il codice sotto l'emulatore, questo è perfettamente normale. L'emulatore supporta solo ARMv5. Non ARMv6 e certamente non ARMv7.
Aggiornamento: Questo non è più vero con le versioni più recenti del emulatore. Esso supporta pienamente ARMv7.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow