摘要:FFMpegCore 是一个基于 .NET 的库,用于调用 FFmpeg 来处理音视频文件。它封装了与 FFmpeg 的交互,使得在 C# 或 .NET 项目中使用 FFmpeg 更加方便直观,而无需直接处理命令行语法。
FFMpegCore 是一个基于 .NET 的库,用于调用 FFmpeg 来处理音视频文件。它封装了与 FFmpeg 的交互,使得在 C# 或 .NET 项目中使用 FFmpeg 更加方便直观,而无需直接处理命令行语法。
FFMpegCore 提供了一组强类型的 API,用于:
转码(Transcoding)
截取帧(Screenshots / Thumbnails)
裁剪、缩放、旋转视频
合并音视频流
获取音视频文件的元数据
与 FFprobe 交互,获取媒体信息
基本转码
FFMpegArguments.FromFileInput("input.mp4")
.OutputToFile("output.avi",true, options => options
.WithVideoCodec("libx264")
.WithAudioCodec("aac"))
.ProcessSynchronously;
获取媒体信息
varmediaInfo =awaitFFProbe.AnalyseAsync("input.mp4");Console.WriteLine(mediaInfo.Duration);
截取缩略图
FFMpeg.Snapshot("input.mp4", "thumb.png", newSize(320240), TimeSpan.FromSeconds(10));您还可以从视频文件中捕获 GIF 快照:
FFMpeg.GifSnapshot(inputPath, outputPath, newSize(200400), TimeSpan.FromSeconds(10));awaitFFMpeg.GifSnapshotAsync(inputPath, outputPath,newSize(20040010));
awaitnewSize(480-110));
将视频部分合并为一个文件:
FFMpeg.Join(@"..\joined_video.mp4",@"..\part1.mp4",
@"..\part2.mp4",
@"..\part3.mp4"
);
将图像合并成视频:
FFMpeg.JoinImageSequence(@"..\joined_video.mp4", frameRate: 1ImageInfo.FromPath(@"..\1.png"),
ImageInfo.FromPath(@"..\2.png"),
ImageInfo.FromPath(@"..\3.png")
);
FFMpegCore 功能非常强大,它适合想在 .NET 项目中集成视频处理功能的开发者,适合不想手动拼写复杂 FFmpeg 命令的开发者。
可以很方便的开发如视频转码服务、自动化内容处理系统、媒体平台后端等。
项目地址
分享
来源:opendotnet
免责声明:本站系转载,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本站联系,我们将在第一时间删除内容!