Me gustaría agregar capacidades de conversión de video a un programa que estoy escribiendo. La interfaz de línea de comandos de FFmpeg para hacer esto es simplemente ffmpeg -i InputFile OutputFile
, pero ¿hay alguna manera de usarlo como biblioteca, así que puedo hacer algo como ffmpeg_convert(InputFile, OutputFile)
?¿Se puede usar FFmpeg como biblioteca, en lugar de un programa independiente?
Espero no tener que usar libavcodec directamente, ya que imagino que será mucho más complejo que una función de una sola línea para convertir formatos. Si FFmpeg no se puede actualizar fácilmente para hacer esto, ¿existe tal vez otra biblioteca basada en él que sí lo haga? He oído hablar de libvlc, pero parece que solo muestra un video jugando a API, no conversión de video.
Gracias.
Sólo por curiosidad, ¿por qué prefiere usarlo como una DLL? ¿Cuál es la desventaja de ejecutarlo? –
No me gustaría ejecutarlo en un proceso separado, porque AFAIK I no podría monitorear su progreso o ejecutar una función una vez que se complete. –
En mi humilde opinión, ejecutar 'ffmpeg' en un proceso separado es una mejor idea, por lo que su aplicación no se bloqueará mientras dure el largo proceso de codificación de video. –