gpt4 book ai didi

c# - 以特定时间间隔从视频(mpg、wmv 等)中捕获帧

转载 作者:行者123 更新时间:2023-12-05 04:19:01 24 4
gpt4 key购买 nike

有没有一种方法可以在视频的特定点(例如 5 秒或第 25 帧)从视频文件(mpg、wmv、flv 等)中捕获单个帧?然后保存为图片?

[编辑]YouTube 做的一些链接。不能全部手动完成吗? ;)

最佳答案

我会使用 DirectShow.NET ,因为它可以让您在托管代码中完成大量工作,这比在 native 代码中更友好。

你必须构建一个过滤器图来呈现你想要的文件,你还需要一个文件格式的文件阅读器(即如果它是一个 MP4 文件,你将需要一个 MP4 解复用器) ,并且您需要视频格式的解码器(即,如果是 H264,则需要 H264 解码器过滤器)。如果可能,我会使用 Windows7,它有更好的媒体支持

您的图表应该类似于:

File Reader -> Video Decoder -> Sample Grabber -> Null Renderer

您将构建图表,然后调用 IMediaSeeking寻找你想要的样本的大概时间。然后运行图形。解压缩的帧将通过 Sample Grabber 回调接口(interface)进入。您可以检查时间戳并获得最接近您需要的时间戳。

从那里,您可以使用 .NET 将其保存为您喜欢的任何图像格式(JPEG 可能是最好的)。

关于c# - 以特定时间间隔从视频(mpg、wmv 等)中捕获帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3338354/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com