Я использую класс захвата кадра для захвата и обработки каждого кадра в видео. Класс можно найти здесь: http://www.codeproject.com/KB/graphics/FrameGrabber.aspx
Однако у меня проблемы с запуском. При загрузке файла он пытается маршалировать указатель формата видео в VideoInfoHeader (я использую DirectShow.Net). Код, который делает это следующим образом:
videoInfo = (VideoInfoHeader)Marshal.PtrToStructure(mediaType.formatPtr, typeof(VideoInfoHeader));
Когда я запускаю это, оно немедленно вылетает из среды отладки, возможно, с переполнением стека. При просмотре я вижу, что formatPtr всегда равен 93, хотя я не знаю, что с этим делать, так как я довольно плохо знаком с маршаллингом.
Я проверил, нормально ли работает видео в проигрывателе Windows Media.
Это важно для определения размеров видео, а также размера заголовка, который необходимо пропустить, прежде чем можно будет прочитать кадры.
Я использую Windows 7 x64.
Любая помощь по этому вопросу будет принята с благодарностью, я, должно быть, попробовал пятнадцать различных методов захвата кадров.