Una clase Delphi para admitir la codificación de una serie de mapas de bits y videoclips a un archivo de video. Requiere la biblioteca FFMPEG y está destinada a ser una interfaz fácil de usar para esta biblioteca. La clase se ha desarrollado bajo Delphi 10.3.3, pero debería funcionar con versiones posteriores y algunas versiones anteriores también. Informe los problemas. Nos concentramos en escribir transmisiones de video, solo hay soporte rudimentario para agregar transmisiones de audio. El FFMPEG-Library-Version y el archivo de encabezado contenidos aquí Orginate de https://github.com/passbyyou888/ffmpeg-header ¡Gracias!
Hay 2 versiones de la clase del codificador:
TBitmapEncoder VCL-based for platforms Win32 and Win64,
relatively stable with H264, Mpeg-4, Mjpeg, Mpeg1/2 encoders and .avi, .mp4 containers.
TBitmapEncoderM fmx-based for cross platform, a little less tested.
Demo currently working with Win32, Win64, Android, Android64 thanks to TurboMagic.
Recently more features translated from Win-version, more thoroughly tested under
Android32, better demo.
La demostración de la plataforma cruzada requiere al menos Delphi 10.3.3, ya que contiene el soporte necesario para solicitar permiso para escribir al almacenamiento externo en tiempo de ejecución. El video creado en Android se almacena en la carpeta de descargas públicas y la demostración de Android se compila para 32 y 64 bits.
Se suministran objetos compartidos para iOS, pero ninguno de los desarrolladores actuales tiene una configuración de desarrollo de iOS en funcionamiento, por lo que no se han agregado al administrador de implementación y, por lo tanto, aún no se ha probado en iOS. Siéntase libre de hacerlo y crear una solicitud de extracción una vez que haya tenido éxito.
Áreas problemáticas:
El manejo de errores debe mejorarse.
Versión de la vía:
El constructor agregado createFromVideo (versión de ganar) tiene algunos problemas.
Versión multiplataforma:
El codificador H264 no funciona en Android (al menos no Android32). El uso de TBITMAP en hilos se ha vuelto más estable, pero puede haber problemas restantes. Delphi reclama la seguridad de hilo de TBITMAP, pero este no parece ser el caso, particularmente bajo Android. Hay algunas soluciones en su lugar, las operaciones de píxeles ahora se realizan principalmente en los videos, que parecen ser más seguros de hilos.
Ideas, informes, soluciones más bienvenidas. *
Los problemas se describen con más detalle en las demostraciones.