PasLibVlcPlayer mit Overlay oder Zeichnen auf Stream

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Marc
Lazarusforum e. V.
Beiträge: 208
Registriert: Fr 11. Nov 2016, 14:09
OS, Lazarus, FPC: Linux Mint 20 (WinXP VBox)
CPU-Target: 64Bit
Wohnort: Schweiz

PasLibVlcPlayer mit Overlay oder Zeichnen auf Stream

Beitrag von Marc »

Hallo Zusammen
Von einer USB Webcam habe ich einen Stream. Darauf möchte ich zeichnen können wie auf ein Timage.
Das sieht so aus:

Code: Alles auswählen

unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls,
  PasLibVlcPlayerUnit;

type

  { TForm1 }

  TForm1 = class(TForm)
    btnCam: TButton;
    PasLibVlcPlayer1: TPasLibVlcPlayer;
    procedure btnCamClick(Sender: TObject);
  private

  public

  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.btnCamClick(Sender: TObject);
Var
  source : WideString;
begin
  source:='v4l2:///dev/video0';
  PasLibVlcPlayer1.Play(source);

  PasLibVlcPlayer1.Canvas.Brush.Color:=clYellow ;
  PasLibVlcPlayer1.Canvas.Rectangle(10,10,30,30);

end;

end.
Natürlich klappt das so nicht.
Aber warum?
Könnte eventuell in einem TImage Snapshots des Streams darstellen und dann darauf zeichnen?
Oder wie geht man da elegant vor?
Möchte einfach ein paar Linien zeichnen und Text einblenden.
Good code comes from experience, experience comes from bad code.

Antworten