Compilación de FFmpeg 3.1.1 para x86 con Android NDK
La versión más reciente de FFmpeg
es 3.1.1
. Después de la versión 3.1
, no puedo compilar FFmpeg
para x86
. (Pero 3.0.2
o versiones anteriores pueden ser compiladas.)
El terminal muestra ld: error: libavutil/../compat/strtod.o: incompatible target
.
- Recepción de flujo de vídeo desde una cámara IP en android
- Utilizar FFMPEG en Android
- Ffmpeg con un conjunto de archivos de imagen no formateado como% d.jpg
- Decodificación Raw H264 corriente en android?
- Cómo utilizar el último FFMPEG en el proyecto de estudio de Android?
Mi sistema operativo es Xubuntu 14.04 x86
y x86_64
. (He intentado ambos.)
Mi versión NDK
es r10e(x86)
y r12b(x86_64)
.
Cuando compile FFmpeg 3.0.2
, no tiene ningún error.
Esta es mi configuración:
./configure \ --prefix="${PREFIX}" \ --enable-shared \ --disable-static \ --disable-doc \ --disable-ffplay \ --disable-ffprobe \ --disable-ffserver \ --cross-prefix="${PREFIX}/bin/i686-linux-android-" \ --target-os=linux \ --arch=x86 \ --enable-cross-compile \ --sysroot="${PREFIX}/sysroot" \ --extra-cflags="" \ --extra-ldflags="" \ --extra-libs="" \ --disable-debug
${PREFIX}
es una ruta de directorio utilizada para la opción --install-dir
mientras ejecuta make-standalone-toolchain.sh
que es una herramienta en Android NDK.
Sólo ocurre mientras compile FFmpeg
para x86
. ARM
arquitectura está bien.
- ¿Cómo uso realmente ffmpeg en Android?
- Moov átomo en android MeidaRecorder datos registrados
- Implementación de un gráfico de filtro de entrada múltiple con la librería Libavfilter en Android NDK
- Recuperar la carátula del álbum utilizando FFmpeg
- Cómo combinar múltiples archivos .mp4 en .mp4 simple ffmpeg android
- Pasar un fd int nativo a FFMPEG desde un URI abierto
- Error: solo se admiten ejecutables independientes de posición (PIE)
- Android FFmpegMediaPlayer Error (0, 0) mientras se reproduce?
Me encontré con el mismo problema y encontré una solución. Asegúrese de eliminar "compat / strtod.o" y "compat / strtod.d" si ha construido anteriormente para otra arquitectura. Por alguna razón estos no se reconstruyen si cambia la arquitectura en 3.1.1, pero funcionó bien en versiones anteriores. También debe hacer un "hacer limpio" antes de construir.
- ¿Se trata de una consulta SQLite válida?
- Ejecute la tarea después de packageApplication cuando utilice el complemento androide gradle