Вниз
Скачать: CL | DM;

Вопрос по захвату потокового видео.   Найти похожие ветки 

 
Fredericco ©   (2002-07-05 16:31) [0]

Эта тема уже поднималась, но у меня конкретный вопрос. Есть видео карта, туда идет видео, просматриваю это изображение с помощью компоненты TVideoCap (скачал на торри). Эта компонента выводит изоб-ние на себя. А мне в будущем надо будет это видео передавать через инет. Через инет я умею передавать пока только бмп и жпг. Поставил себе задачу засунуть кадр из получаемого видео в TBitmap. В исходниках компоненты нашел процедуру:
procedure FrameToBitmap(Bitmap:TBitmap;FrameBuffer:pointer; BitmapInfo:TBitmapInfo);
var hdd:Thandle;

begin

with Bitmap do
begin
Width:= BitmapInfo.bmiHeader.biWidth; // New size of Bitmap
Height:=Bitmapinfo.bmiHeader.biHeight;
hdd:= DrawDibOpen;
DrawDibDraw(hdd,canvas.handle,0,0,
BitmapInfo.BmiHeader.biwidth,
BitmapInfo.bmiheader.biheight,
@BitmapInfo.bmiHeader,
frameBuffer,0,0,
bitmapInfo.bmiHeader.biWidth,
bitmapInfo.bmiHeader.biheight,0);
DrawDibClose(hdd);
end;
end;


Вроде то, что мне надо. Однако никак не могу понять где взять переменную FrameBuffer. Код процедуры DrawDibDraw находиться в vfw.pas и выглядит так :
function DrawDibDraw(
hdd : HDRAWDIB;
hdc : HDC;
xDst : integer;
yDst : integer;
dxDst : integer;
dyDst : integer;
lpbi : PBITMAPINFOHEADER;
lpBits : Pointer;
xSrc : integer;
ySrc : integer;
dxSrc : integer;
dySrc : integer;
wFlags : UINT
): BOOL; stdcall; external VFWDLL;

Вообщем у меня все есть, кроме FrameBuffer. Не могли бы вы подсказать на что этот указатель и где приблизительно мне искать переменную на которую должен указывать FrameBuffer?
Заранее благодарен.
Fredericco.


 
Chezarre ©   (2002-08-26 15:10) [1]

Посмотри в хелпе к видеокапе (или в демках, не помню)- там на OnFrameCallback по-моему в параметрах передается этот самый поинтер (хотя... щас припоминаю, там он назывался lpVideoHdr или что-то в этом роде - можа, версии не совпадають?)



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
1-28117
mila
2002-11-28 16:09
2002.12.09
стоит ли апгрейдить?


8-28151
robbit
2002-08-19 18:03
2002.12.09
сохранение содержимого canvas в файл


6-28190
acid_v
2002-10-11 18:25
2002.12.09
Как определить имя пользователя на удаленном компьютере ?..


1-27944
sers
2002-11-29 09:14
2002.12.09
Много ли занимает форма в памяти


14-28287
Юрий К
2002-11-18 23:15
2002.12.09
---|Ветка была без названия|---




   Наверх