Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Генерация thumbnails для видео?


Автор: Alanov 5.7.2007, 13:30
Вобщем, есть некоторое приложение, которое должно видеофайлы разных типов (.avi, .mpg, .wmv), не расположенные в одном каталоге, отобразить в своем окне в виде списка эскизов (как в ХРшном эксплорере). Приложение пишется с использованием MFC, и с картинками я уже решил подобную задачу. Проблема состоит в том, что нужно каким-то образом вытащить из видео первый (2,3,...) кадр, как HBITMAP, CBitmap, ну или в каком-нибудь еще удобоваримом формате (чтобы потом его было не трудно StretchBlt'нуть до нужного размера).
Желательно обойтись без GDI+, настоятельно рекомендуют, чтобы прога работала в 98 винде без дополнительных библиотек.
У кого какие будут соображения на этот счет кроме "читай msdn", "гугли" и "юзай директшоу" - это и так понятно что придется делать?

Автор: zkv 5.7.2007, 22:06
посмотри http://www.codeproject.com/audio/ExtractAVIFrames.asp
Цитата(Alanov @  5.7.2007,  13:30 Найти цитируемый пост)
чтобы прога работала в 98 винде без дополнительных библиотек

насчет этого не уверен  smile посмотри в МСДН требования

Автор: Alanov 6.7.2007, 03:21
Большое спасибо за ссылку, но только код приведенный по ссылке работает только с AVI файлами. С MPG и WMV работать не хочет. И к тому же, ИМХО, vfw32.dll - стандартная виндовская DLL.

Автор: batraq 13.7.2007, 16:09
Alanov что за трудности. Video for windows это библиотеки которые используют кодеки системы, если кодек есть то библиотека тебе вернёт массив пикселей указаного кадра. Есть очень даже хорошая дока - "Рязанцев Д.Н. Краснодар 2002 Программирование мультимедиа в Win32 API" вот тут http://rcorp.boom.ru/chap5.htm . Сам год назад ваял прогу по работе с MPEG4. Кроме того настоятельно рекомендую просмотреть 35 урок Nehe про видеотестуру вот тут - http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=35 - или вот здесь перевод - http://pmg.org.ru/nehe/nehe35.htm

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)