Sobre o projeto
Xabe.FFmpeg fornece uma interface .NET em torno dos executáveis FFmpeg e FFprobe, em vez de se ligar diretamente às bibliotecas libav. Um aplicativo cria uma conversão, inspeciona opcionalmente a string de argumentos gerada e inicia o processo externo. Ambos os executáveis devem estar disponíveis; a descoberta verifica um diretório configurado, o diretório do aplicativo e o PATH. O pacote opcional Xabe.FFmpeg.Downloader pode obter builds para sistemas operacionais selecionados.
A API suporta operações comuns como saída MP4, TS, WebM, OGV e GIF; extração ou adição de áudio; capturas de tela; divisão e concatenação; marcas d'água; captura HLS; e envio de mídia ou saída de desktop para RTSP. Os desenvolvedores podem analisar metadados de mídia, selecionar fluxos de vídeo, áudio e legenda, definir codecs e bitrates, redimensionar vídeo, aplicar filtros e controlar o comportamento de substituição. Eventos de progresso e saída do processo são expostos, e a saída de vídeo por pipe é suportada. A aceleração de hardware é repassada para opções como NVENC, QuickSync, VideoToolbox e VAAPI quando o build do FFmpeg instalado e o host oferecem suporte a elas. Para opções não suportadas, argumentos arbitrários podem ser colocados antes ou depois da entrada, e o comando pode ser construído para inspeção antes da execução.
O pacote tem como alvo o .NET Standard 2.0 e é executado no Windows, macOS e Linux com runtimes compatíveis. Ele funciona com arquivos e URIs de fluxo, não com buffers em memória. O downloader não permite fixar versões arbitrárias do FFmpeg. Os codificadores, decodificadores, filtros e aceleração de hardware disponíveis dependem do build externo do FFmpeg. O wrapper é oferecido sob CC BY-NC-SA 3.0 para uso não comercial, com licença comercial separada; os binários FFmpeg e FFprobe possuem suas próprias licenças.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.