c# - 在c#中使用ffmpeg在特定帧数中分割视频

标签 c# image video ffmpeg emgucv

我想将视频拆分为特定数量的图像:
我在 C# 中使用 ffmpeg/EmguCV。

我从网络摄像头捕捉视频,我需要将视频分成 59 张图像。我正在使用 -i 命令和 ffmpeg 将我的视频分割成多个图像。

问题是每次捕获时我最后获得的图像数量都不同,因为由于 fps 下降,视频的持续时间并不完全相同。

因此,如果有人知道是否可以指定我希望将视频平均切割成 59 张图像。 (或任何其他想法来获得我想要的东西)

(目前我正在拍摄我从剪辑中获得的图像数量并将其除以 59,然后我将在“结果”中拍摄一张图像,但我一点也不精确,因为如果我得到一个十进制数丢失或添加图像)

最佳答案

你可以试试

ffmpeg -i D:/Temp/2.mp4 -r rate output_%04d.jpg



其中速率 =(图像数量 - 2)/(视频持续时间,以秒为单位)

这里我们取“-2”,因为它会自动从视频中生成开始和结束图像

关于c# - 在c#中使用ffmpeg在特定帧数中分割视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42934281/

相关文章:

javascript - 这个简单的 JavaScript 会在 DOM 中渲染任何内容吗?

video - 使用 ffprobe 从视频中获取帧号和时间戳

c# - C# 中的 C++ ">>"和 "<<"IO?

c# - LINQ Group by Query 中的组号

c# - Hadoop远程csharp代码执行

android - 如何使用 R.Drawable 获取图像列表

java - 图像识别 - Mat 中的二进制描述符表示 - OpenCV Android

javascript - chrome扩展程序应在youtube标签不清晰时暂停视频

html - 确定 HTML5 HLS 流的当前呈现

c# - SpriteFont 不适用于 MonoGame