|
Вопрос # 6 206/ вопрос открыт / |
|
Приветствую, уважаемые эксперты!
подскажите как наложить битмап на видео?(можно и через DirectShow) в примере bm накладываю на image1, использую DSPack. Сделал так: код ниже.
Вроде все работает но местами подвисает.
Приложение: Переключить в обычный режим-
- var
- VideoDevice:TSysDevEnum;
- begin
-
-
-
- ComboBox1.Items.Add(VideoDevice.Filters[i].FriendlyName);
-
- FilterGraph1.Active := false;
-
- FilterGraph1.Active := true;
- ComboBox1.ItemIndex := 0;
-
- with FilterGraph1 as ICaptureGraphBuilder2 do
- RenderStream(@PIN_CATEGORY_PREVIEW,nil,
- Filter1 as IBaseFilter,
- SampleGrabber1 as IBaseFilter,
- VideoWindow1 as IbaseFilter);
-
- FilterGraph1.Play;
- VideoWindow1.Visible := false;
-
- with bm.Canvas do
- begin
- Brush.Style := bsClear;
- Pen.Color := clRed;
- Pen.Width := 2;
- Font.Color := clLime;
- Font.Style := [fsBold];
- Font.Size := 10;
- end;
- tmp := TBitmap.Create;
- end;
- procedure TForm2.SampleGrabber1Buffer(sender: TObject; SampleTime: Double;
- pBuffer: Pointer; BufferLen: Integer);
- var
- x, y, size, c, n: Integer;
- bgrdata: PRGBTripleArray;
- begin
- SampleGrabber1.GetBitmap(tmp, pBuffer, BufferLen);
- if tmp = nil then Exit else
-
- bm.Assign(tmp);
-
 |
Вопрос задал: casio (статус: Посетитель)
Вопрос отправлен: 21 июня 2012, 13:57
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Мини-форум пуст.
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|