Sobre el proyecto
Xabe.FFmpeg proporciona una interfaz .NET alrededor de los ejecutables FFmpeg y FFprobe, en lugar de vincularse directamente con las bibliotecas libav. Una aplicación crea una conversión, opcionalmente inspecciona la cadena de argumentos generada e inicia el proceso externo. Ambos ejecutables deben estar disponibles; la detección verifica un directorio configurado, el directorio de la aplicación y la ruta de búsqueda (PATH). El paquete opcional Xabe.FFmpeg.Downloader puede recuperar compilaciones para sistemas operativos seleccionados.
La API soporta operaciones comunes como salida MP4, TS, WebM, OGV y GIF; extracción o adición de audio; capturas de pantalla; división y concatenación; marcas de agua; captura HLS; y envío de medios o salida de escritorio a RTSP. Los desarrolladores pueden sondear metadatos de medios, seleccionar flujos de video, audio y subtítulos, establecer códecs y tasas de bits, redimensionar video, aplicar filtros y controlar el comportamiento de sobrescritura. Se exponen eventos de progreso y salida del proceso, y se soporta salida de video por tuberías. La aceleración por hardware se pasa a opciones como NVENC, QuickSync, VideoToolbox y VAAPI cuando la compilación de FFmpeg instalada y el host lo soportan. Para opciones no compatibles, se pueden colocar argumentos arbitrarios antes o después de la entrada, y el comando puede construirse para inspección antes de la ejecución.
El paquete está dirigido a .NET Standard 2.0 y se ejecuta en Windows, macOS y Linux con tiempos de ejecución compatibles. Funciona con archivos y URIs de flujo, no con búferes en memoria. El descargador no permite fijar versiones arbitrarias de FFmpeg. Los codificadores, decodificadores, filtros y aceleración por hardware disponibles dependen de la compilación externa de FFmpeg. El envoltorio se ofrece bajo CC BY-NC-SA 3.0 para uso no comercial, con una licencia comercial separada; los binarios de FFmpeg y FFprobe tienen sus propias licencias.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.