Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.13;
Скачать: CL | DM;

Вниз

PixelFormat у AVI кадра   Найти похожие ветки 

 
Ozone ©   (2004-11-29 12:04) [0]

Как получить PixelFormat кадра в AVI файле.

Пробовал так:


function GetBitmap(BITMAP: PBITMAPINFOHEADER): TBitmap;
var
  bmpDC : HDC;
  hBMP  : HBITMAP;
  bits  : PChar;
  bmp: TBitmap;
begin
    bmp := TBitmap.Create;
    bmp.Height := BITMAP.biHeight;
    bmp.Width := BITMAP.biWidth;
    bits := Pointer(Integer(BITMAP) + SizeOf(TBITMAPINFOHEADER));
    bmpDC := CreateDC("Display", nil, nil, nil);
    try
      hBMP := CreateDIBitmap( bmpDC,
                              BITMAP^,
                              CBM_INIT,
                              bits,
                              PBITMAPINFO(BITMAP)^,
                              DIB_RGB_COLORS);
    finally
      DeleteDC(bmpDC);
    end;
    bmp.Handle := hBMP;

    Result := bmp;
end;

var
  VideoStream: IAVIStream;
  AVIFrame: IGetFrame;
  BITMAP: PBITMAPINFOHEADER;
  Bmp: TBitmap;
begin
 { ... }
 AVIFrame := AVIStreamGetFrameOpen(VideoStream, nil);
 BITMAP := AVIStreamGetFrame(AVIFrame, 0);
 Bmp := GetBitmap(BITMAP);
 try
   // сдесь у Bmp.PixelFormat = pfDevice (всегда)
 finally
   Bmp.Free;
 end;


Как быть? Подскажите...


 
Ozone ©   (2004-11-29 12:31) [1]

Проблема решена. Спасибо MBo.



Страницы: 1 вся ветка

Текущий архив: 2005.03.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.046 c
6-1104768642
Sergey77
2005-01-03 19:10
2005.03.13
Частота обновления информации касательно подсчета трафика


4-1106906105
grigory
2005-01-28 12:55
2005.03.13
Послать сообщение CheckBox у!


14-1108713903
07BB:080Dh
2005-02-18 11:05
2005.03.13
Пить или не пить. за и против ?


1-1109574458
hgd
2005-02-28 10:07
2005.03.13
О знаке разделителе


1-1109359283
Willy
2005-02-25 22:21
2005.03.13
Панели