HI ,
I try to write on sdpoFastForm canvas but not working...
I have use sample with video and sample fastForm with sdpopackage each other compile and well running separatly.
I don't understand how can I do it ?
procedure TFMain.VideoFrame(Sender: TObject; FramePtr: PByte);
var
c: TBGRAPixel;
begin
//FrameRate:=round(1/((GetTickCount-FrameTime)/1000)*0.5 + FrameRate*0.5);
FrameRate:=round(1/((GetTickCount-FrameTime)/1000));
FrameTime:=GetTickCount;
StatusBar.SimpleText := format('(%d, %d) %d fps', [video.Width, Video.Height, FrameRate]);
if Video.Width * Video.Height <> Image.Width * Image.Height then
begin
// I have seen this happening when the driver accepted
// the video dimensions without complaining but then
// silently set them to its own liking. For the sake of
// simplicity we simply raise an exception here and don't
// attempt to fix it.
raise Exception.Create('Video picture size is different from what we had requested');
end;
case Video.PixelFormat of
uvcpf_YUYV:
YUYV_to_Gray(PLongWord(FramePtr), PLongWord(Image.Data), Video.Width * Video.Height);
uvcpf_YUV420:
YUV420_to_Gray(FramePtr, Image.Data, Video.Width * Video.Height);
uvcpf_RGB24:
RGB24_to_TrueColor(PRGB24Pixel(FramePtr), Image.Data, Video.Width * Video.Height);
uvcpf_BGR24:
BGR24_to_TrueColor(PRGB24Pixel(FramePtr), Image.Data, Video.Width * Video.Height);
end;
//++++++++++++++++++++++++++++++++++++++++++++here my code to write
// ok on canvas but seem clear by BGR24_to_TrueColor how to supperpose ??
Image.DrawToPixmap;
Image.Canvas.TextOut(TextPos,Image.Height div 2,'coucou!');
inc(TextPos);
//Image.Canvas.Rectangle(Bounds(5,5,Image.Width-2*5,Image.Height-2*5));
Image.PaintFromPixmap;
//Image.Paint;
//Image.Sync;
end;
Regards
Laurent.