Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка в коде. Работа с avi 
V
    Опции темы
Predator_2004
Дата 13.4.2011, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 26.4.2007

Репутация: нет
Всего: нет



Приветствую всех. Работаю с видео при помощи vfw. Есть такой код:
Код

/* функция извлечения кадра по индексу */
HBITMAP GetFrame(unsigned int FrameIndex)
{
    HBITMAP hBmp;
    gapgf=AVIStreamGetFrameOpen(AviStream,NULL);    //готовим поток к декомпрессии кадров
    if(gapgf==NULL)
    {
        UnloadAvi();
        return NULL;
    }
    lpbi=(PBITMAPINFOHEADER)AVIStreamGetFrame(gapgf,FrameIndex);    //получаем адрес кадра по индексу
    if(lpbi==NULL)
    {
        AVIStreamGetFrameClose(gapgf);    //освобождаем ресурсы выделенные для декомпрессии кадров
        return NULL;
    }
    bits=(char*)(int)lpbi+sizeof(BITMAPINFOHEADER);
    DC_Handle=CreateDC("Display",NULL,NULL,NULL);
    try
    {
        hBmp=CreateDIBitmap(DC_Handle,lpbi,4,bits,(PBITMAPINFO)lpbi,0);
    }
    finally
    {
        DeleteDC(DC_Handle);
    }
    AVIStreamGetFrameClose(gapgf);
    return hBmp;
}
 Проблема такая: через каждые 104-105 кадров функция возвращает ноль. Из-за чего может быть такое? Может в коде ошибка? Буду признателен за любую помощь!
PM MAIL   Вверх
Predator_2004
Дата 14.4.2011, 08:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 26.4.2007

Репутация: нет
Всего: нет



Вопрос решен.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.0561 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.