Cómo usar ndk para compilar bibliotecas estáticas para ffmpeg
1. Compile polarssl y vea su archivo Léame. No se requiere configuración. Solo necesita realizar make con los parámetros necesarios, pero recuerde traer el parámetro CC cada vez que ejecute el comando make. a tu brazo gcc), porque intenté realizar la instalación sin parámetros CC, aunque puede compilar la biblioteca estática polarssl. Porque intenté realizar la instalación sin el argumento CC y compiló polarssl pero rtmp no hizo referencia a él correctamente.
2, debido a que polarssl que usé antes es la última versión (1.3.7), y librtmp parece usar polarssl 1.0.0 o una versión inferior de la API, por lo que necesito usar librtmp.
2, debido a que el polarssl que usé antes es la última versión (1.3.7), y librtmp parece estar usando polarssl 1.0.0 o una versión inferior de la API, por lo que necesito modificar el rtmp en la parte del código fuente para permitirle llamar a la API de la nueva versión de polarssl. Para realizar modificaciones, consulte "Migración de PolarSSL-1.2 a la rama PolarSSL 1.3" y "[rtmpdump] rama maestra actualizada.
3. Referencia indefinida a `havege_random 'Error, esto se debe a que POLARSSL ha cerrado el módulo havege de forma predeterminada y debe abrirse manualmente, principalmente modificando include/polarssl/config.h y eliminando el módulo havege en POLARSSL.
h, elimine el comentario delante de POLARSSL_HAVEGE_C, es decir, defina POLARSSL_HAVEGE_C, de la siguiente manera:
#define POLARSSL_HAVEGE_C
4. Una vez compiladas las dos bibliotecas anteriores, puede comenzar a compilar ffmpeg (2.1.1), si encuentra los siguientes problemas check_pkg_config librtmp librtmp/rtmp.h RTMP_Socket
ERROR: librtmp no encontrado
Aquí hay tres formas de resolver el problema:
El primer método, debido a que es el método más extendido en Internet y relativamente simple, consiste en modificar ffmpeg configure y modificar las siguientes líneas:
enabled librtmp amp; ; require_pkg_config librtmp librtmp/rtmp.h RTMP_Socket
Cambiar a:
Librtmp amp;amp habilitado; require_pkg_config librtmp librtmp/rtmp. h RTMP_Socket -lrtmp -lpolarssl -lz
O comente la parte amp;amp; ****** directamente y luego agregue la ruta de la biblioteca librtmp usted mismo.
Segundo método (recomendado ya que arreglar esto solucionará la mayoría de los errores de biblioteca no encontrada):