原始H264为JPEG,在C#中

时间:2016-03-18 09:08:25

标签: c# ffmpeg jpeg h.264

我得到一个帧流,一个初始SPS和PPS h264数据包,然后是I帧和P帧的数据包。

使用c#.NET我想转换成一系列JPEG?有没有人这样做过? 我试过AForge.NET FFMpeg包装器,但只能从MP4文件转到JPEGs? 还看了DirectShow。

我似乎无法找到一个甚至接近这样做的例子?

由于

1 个答案:

答案 0 :(得分:0)

在Directshow中,您需要在过滤器图形中引入SampleGrabber过滤器。在H264解码器之后插入它。

这是一个传递过滤器,可以接收包含每个视频帧的回调。然后你可以明显选择你对框架做什么,将其作为jpeg等保存到磁盘。

有一个很好的页面解释它的用法,而不是反刍MSDN:

https://msdn.microsoft.com/en-us/library/windows/desktop/dd407288(v=vs.85).aspx

更新考虑到罗马的评论:

SampleGrabber已被弃用,作为Directshow编辑服务的一部分。但是,它是完全独立的。如果它从更高版本的Windows中删除,则可以直接替换为替代过滤器。我仍然在我的一个消费者应用程序中使用它。罗马是正确的 - 它有一个陡峭的学习曲线。