auf Webcam Stream zeichnen



  • Hallo,

    bin erst ganz frisch im forum und hoffe mir kann jemand von euch weiterhelfen.
    Also,

    hab an meinem Rechner ne Webcam angeschlossen. Und hole mir den Stream von der Webcam. Der wird auf mein Panel gelegt. So weit funzt das auch alles.
    Jetzt möcht ich aber über diesen Stream nen Fadenkreuz zeichnen oder nen Bild darüber legen.
    Dadurch das der Stream ständig aktualisiert wird rutscht nur das Fadenkreuz immer wieder in den Hintergrund.

    Hat jemand von euch ne idee wie man das so programmieren kann das mein Fadenkreuz permanent über dem Stream liegt?

    Schon mal danke im voraus für eure Antworten.

    Webcam Stream

    HWND hwnd = Panel1->Handle;    //Handel vom Panel -> darauf wird der Webcam Stream gelegt
    
      hWebcam = capCreateCaptureWindow("Capture Window", WS_CHILD | WS_VISIBLE,0, 0, 640, 480, hwnd, 0);
    
      SendMessage(hWebcam, WM_CAP_DRIVER_CONNECT,0, 0); 
      SendMessage(hWebcam, WM_CAP_SET_SCALE,1, 0); 
      SendMessage(hWebcam, WM_CAP_SET_PREVIEWRATE,10,0); 
      SendMessage(hWebcam, WM_CAP_SET_PREVIEW,1,0);
    

    Fadenkreuz

    HDC hdc = GetDC(hWebcam);  //Device Handle des Capture fensters
      HPEN color = CreatePen(PS_SOLID, 2, RGB(255, 255, 0));  //farbstift gelb
      SelectObject(hdc,color);  //farbstift gelb festlegen
      Arc(hdc,305,225,335,255,0,0,0,0); //Kreis zeichen
      MoveToEx(hdc,300,240,NULL);
      LineTo(hdc,340,240);            //horizontale linie zeichnen
    
      MoveToEx(hdc,320,220,NULL);
      LineTo(hdc,320,260);            //vertikale linie zeichnen
    
      color = CreatePen(PS_SOLID, 2, RGB(251, 11, 11));  //farbstift rot
      SelectObject(hdc,color);  //farbstift rot festlegen
    
      Arc(hdc,318,238,322,242,0,0,0,0); //Kreis zeichen
    
      DeleteObject(color);
      ReleaseDC(hWebcam, hdc);        //Handle freigeben
    


  • Zeichne doch einfach ein Canvas darüber!


Anmelden zum Antworten