我正在使用图像采集器类来捕获和处理视频中的每一帧。该类可以在这里找到:http: //www.codeproject.com/KB/graphics/FrameGrabber.aspx
但是,我在运行它时遇到问题。加载文件时,它会尝试将视频格式指针编组到 VideoInfoHeader(我使用的是 DirectShow.Net)。执行此操作的代码如下:
videoInfo = (VideoInfoHeader)Marshal.PtrToStructure(mediaType.formatPtr, typeof(VideoInfoHeader));
当我运行它时,它会立即从调试环境中崩溃,可能是堆栈溢出。单步执行时,我可以看到 formatPtr 始终等于 93,尽管我不知道该怎么做,因为我对编组相当陌生。
我检查了视频在 Windows Media Player 中运行良好。
这对于查找视频的尺寸以及标题的大小至关重要,在读取帧之前需要跳过它。
我正在运行 Windows 7 x64。
对此的任何帮助将不胜感激,我必须尝试十五种不同的帧抓取技术。