C# 视频转图片

在 C# 中将视频转换为图像可以使用 FFmpeg 库。下面是一个示例代码来完成这个任务:

cs 复制代码
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

相关推荐
小码编匠28 分钟前
WPF 中的高级交互通过右键拖动实现图像灵活缩放
后端·c#·.net
唐青枫7 小时前
C#.NET 定时任务与队列利器:Hangfire 完整教程
c#·.net
hez201013 小时前
Runtime Async - 步入高性能异步时代
c#·.net·.net core·clr
mudtools1 天前
.NET驾驭Word之力:玩转文本与格式
c#·.net
唐青枫1 天前
C#.NET 数据库开发提速秘籍:SqlSugar 实战详解
c#·.net
mudtools2 天前
.NET驾驭Word之力:理解Word对象模型核心 (Application, Document, Range)
c#·.net
侃侃_天下2 天前
最终的信号类
开发语言·c++·算法
kaixin_啊啊2 天前
突破限制:Melody远程音频管理新体验
音视频
echoarts2 天前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Aomnitrix2 天前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式