使用Xabe.FFmpeg库可以实现视频的压缩和格式转换。以下是一个示例代码:

using Xabe.FFmpeg;

class Program
{
    static async Task Main(string[] args)
    {
        string inputFilePath = "input.mp4";
        string outputFilePath = "output.mp4";

        IMediaInfo mediaInfo = await FFmpeg.GetMediaInfo(inputFilePath);
        IConversion conversion = FFmpeg.Conversions.New();

        // 设置压缩参数
        conversion.AddParameter("-vf", "scale=1280:-2");
        conversion.AddParameter("-crf", "28");

        // 设置输出格式
        conversion.SetOutputFormat(Format.mp4);

        // 执行转换
        await conversion.Start(inputFilePath, outputFilePath);
    }
}

在上面的示例中,首先使用FFmpeg.GetMediaInfo方法获取输入视频的相关信息。然后创建一个IConversion对象,并设置压缩参数和输出格式。最后调用Start方法执行转换,将输入视频压缩并转换为指定格式的输出视频。

需要注意的是,要使用Xabe.FFmpeg库,需要在项目中添加对Xabe.FFmpeg和FFmpeg.Shared的引用,并将FFmpeg的可执行文件添加到项目的输出目录中。可以在https://www.ffmpeg.org/下载FFmpeg的可执行文件

C# XabeFFmpeg 视频压缩和格式转换

原文地址: https://www.cveoy.top/t/topic/iMKj 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录