在 C# 中将视频转换为图像可以使用 FFmpeg 库。下面是一个示例代码来完成这个任务:
using System;
using System.Diagnostics;class Program
{static void Main(string[] args){string inputFile = "input_video.mp4"; // 输入的视频文件路径string outputFolder = "output_images/"; // 保存生成图像的文件夹路径Process ffmpegProcess = new Process();ffmpegProcess.StartInfo.FileName = "ffmpeg"; // 设置 FFmpeg 程序名称或者路径ffmpegProcess.StartInfo.Arguments = $"-i \"{inputFile}\" -vf fps=10 \"{outputFolder}%d.jpg\""; // 指定参数,每秒提取一张图像并命名为 %d.jpg(%d 会被自动替换)ffmpegProcess.EnableRaisingEvents = true;ffmpegProcess.Exited += (sender, e) => Console.WriteLine("FFmpeg process exited.");ffmpegProcess.ErrorDataReceived += (sender, e) => Console.WriteLine($"FFmpeg error: {e.Data}");ffmpegProcess.OutputDataReceived += (sender, e) => Console.WriteLine($"FFmpeg output: {e.Data}");ffmpegProcess.Start();ffmpegProcess.BeginOutputReadLine();ffmpegProcess.WaitForExit();}
}
上述代码通过调用 ffmpeg
进行视频到图像的转换。需要确保已经安装了 FFmpeg,并且将其添加到系统的 PATH 变量中。此外,还需要创建一个目录作为输出图像的保存位置。
本demo下载: http://download.csdn.net/download/djk8888/88927065