Android: ¿Cómo configurar la última versión de FFMPEG en el estudio de Android?

Quiero configurar FFMPEG en el estudio de Android, pero no puedo obtener ningún documento o enlace para eso. Github en muchos FFMPEG lib disponible para Android, pero que todos están con la versión anterior. ¿Y cómo ejecutar el comando en Android? y quiero saber después de configurar FFMPEG , ¿cómo podemos ejecutar los comandos FFMPEG ? Ayudame por eso Gracias de antemano.

He utilizado enlaces a continuación pero no éxito en la última versión.

http://writingminds.github.io/ffmpegandroidjava

https://github.com/WritingMinds/ffmpeg-android-java

https://github.com/havlenapetr/FFMpeg

https://github.com/appunite/AndroidFFmpeg

https://github.com/WritingMinds/ffmpeg-android

La última versión de FFMPEG es 3.1.1, acaba de lanzar antes de 12 días. Así que creo que no hay una demo disponible como esta antigua .

Necesitamos construir la biblioteca FFMPEG por nuestra cuenta. Algunas preguntas que encontré pegar aquí podrían ayudarte. (No probado)

Cómo construir FFmpeg para Android

  1. Comstackndo FFmpeg 2.3 con Android NDK r10
  2. Cómo comstackr ffmpeg-2.5.3 en windows con android-ndk-r10d
  3. Cómo comstackr ffmpeg-2.2.2 en Windows con cygwin y android ndk r9c
  4. Cómo construir ffmpeg con android-ndk-r10d en Windows

Debe comstackrlo por su cuenta descargando Android NDK y la última versión de FFMPEG .

Un tutorial también está allí: cómo construir FFmpeg para Android . Esto es bastante antiguo, así que solo necesita cambiar las versiones mencionadas aquí. Para FFMPEG será 3.1.1 y NDK será r12b .


Construyendo FFMPEG con NDK r12b:

  1. Descargue Android NDK : la última versión de Android NDK se puede descargar en el sitio web de Android NDK . En el momento de escribir esta respuesta, la última versión es NDK r12. simplemente descomprime el archivo

  2. Descargue el código fuente de ffmpeg : el código fuente de FFMPEG se puede descargar desde el sitio web de ffmpeg . La última versión estable es 3.1.1 (en el momento de escribir esto). Descargue el código fuente y descomprímalo en la carpeta $ NDK / sources.

  3. Actualizar archivo de configuración: abra el archivo ffmpeg-3.1.1 / configure con un editor de texto y ubique las siguientes líneas.

     SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)' LIB_INSTALL_EXTRA_CMD='$$(RANLIB) "$(LIBDIR)/$(LIBNAME)"' SLIB_INSTALL_NAME='$(SLIBNAME_WITH_VERSION)' SLIB_INSTALL_LINKS='$(SLIBNAME_WITH_MAJOR) $(SLIBNAME)' 

    Esto causa que las bibliotecas compartidas de ffmpeg se compilen en libavcodec.so. (por ejemplo, libavcodec.so.55), que no es compatible con el sistema de comstackción de Android. Por lo tanto, tendremos que reemplazar las líneas anteriores con las siguientes líneas.

     SLIBNAME_WITH_MAJOR='$(SLIBPREF)$(FULLNAME)-$(LIBMAJOR)$(SLIBSUF)' LIB_INSTALL_EXTRA_CMD='$$(RANLIB) "$(LIBDIR)/$(LIBNAME)"' SLIB_INSTALL_NAME='$(SLIBNAME_WITH_MAJOR)' SLIB_INSTALL_LINKS='$(SLIBNAME) 
  4. Build ffmpeg: copie el siguiente texto en un editor de texto y guárdelo como build_android.sh en la carpeta ffmpeg_3.1.1.

      #!/bin/bash NDK=$HOME/Desktop/adt/android-ndk-r9 SYSROOT=$NDK/platforms/android-9/arch-arm/ TOOLCHAIN=$NDK/toolchains/arm-linux-androidabi-4.8/prebuilt/linux-x86_64 function build_one { ./configure --prefix=$PREFIX --enable-shared --disable-static --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-avdevice --disable-doc --disable-symver --cross-prefix=$TOOLCHAIN/bin/arm-linux-androidabi- --target-os=linux --arch=arm --enable-cross-compile --sysroot=$SYSROOT --extra-cflags="-Os -fpic $ADDI_CFLAGS" --extra-ldflags="$ADDI_LDFLAGS" $ADDITIONAL_CONFIGURE_FLAG make clean make make install } CPU=arm PREFIX=$(pwd)/android/$CPU ADDI_CFLAGS="-marm" build_one 

    Una vez que se guarda el archivo, vaya al directorio donde se encuentra este archivo y ejecute el comando a continuación,

     sudo chmod +x build_android.sh 

    Luego ejecuta la secuencia de comandos por el comando,

     ./build_android.sh 
  5. Generar salida: la comstackción puede demorar un tiempo para finalizar dependiendo de la velocidad de su computadora. Una vez hecho, deberías poder encontrar una carpeta $ NDK / sources / ffmpeg-3.1.1 / android, que contiene las carpetas arm / lib y arm / include.

  6. Haga que las bibliotecas ffmpeg estén disponibles para sus proyectos

Los pasos anteriores están completamente probados y los realicé en mi máquina y la construcción fue exitosa. Para escribir esta respuesta, he tomado la referencia de este artículo Cómo construir ffmpeg con NDK r9, pero como era para una versión anterior, he hecho algunas correcciones por mi cuenta.

Abierto para preguntar cualquier duda.

¿Has visto este enlace? La biblioteca FFmpeg de Writingminds proporcionó toda la explicación al respecto en este enlace

La última versión de esa biblioteca escribiendo está aquí https://github.com/WritingMinds/ffmpeg-android-java/releases enter image description here

Si desea utilizar la última versión de cualquier biblioteca, puede hacerlo desde build.gradle ya que si no hay ninguna biblioteca actualizada, se puede ver y se puede actualizar desde build.gradle . Esto siempre lo hago para la última biblioteca disponible. versión.

Para gradle en FFMpeg usa esto

 compile 'com.writingminds:FFmpegAndroid:0.3.2' 

Se ofrecen más bibliotecas similares en este enlace https://android-arsenal.com/details/1/925

También te sugiero que leas esta que , y esta que

Si desea utilizar la última versión de la biblioteca original, vaya aquí: FFmpeg [la última versión estará aquí ]

para agregar con código nativo, estos blogs pueden ayudarte

http://ffmpeg-android.blogspot.in/ y

http://www.roman10.net/2011/07/17/how-to-build-android-applications-based-on-ffmpeg-by-an-example/

He experimentado con ffmpeg para Android durante algunas semanas.

La biblioteca se llama FFmpeg4Android y se puede encontrar aquí en WarZone .

Sé que el título lo dice desde el 6 de diciembre de 2011, pero probé y trabajé con él, y todo funciona sin problemas. No ha mencionado cuál es su necesidad exacta con esta biblioteca, pero podría leer sobre las capacidades de ffmpeg en el sitio oficial .

El FFmpeg4Android tiene un proyecto de ejemplo que puede ser una gran referencia, y también su apoyo es inmediato y claro.

Los comandos se ejecutan de acuerdo con su entrada de cadena, por ejemplo:

ffmpeg -y -i /sdcard/videokit/in.mp4 -strict experimental -s 160×120 -r 25 -vcodec mpeg4 -b 150k -ab 48000 -ac 2 -ar 22050 /sdcard/videokit/out.mp4

hágamelo saber si necesita ayuda adicional, estaré encantado de ayudar.