Seite 1 von 2

VideoCapture

Verfasst: 08.02.2008 16:18
von Dadido3
Nach langer Suche nach einem Ersatz der Avicap.dll hab ich was interessantes gefunden:
VidCapture

Kurzum:
Das Teil ist so einfach wie Avicap, man hat eben mehr möglichkeiten.
(Man hat aber keine möglichkeit die Filter selber "zusammenzustecken")

Damit ihr euch nicht durch alles durchwursten müsst, habe ich mal eine halbe Nacht geopfert und ein Beispiel gemacht,
sollte ganz verständlich sein und es ist alles enthalten.
Es gibt noch ein Problem, dass die Farben verdreht sind (RGB -> BGR). Das hat aber nichts mit VidCapture oder so zu tun, es liegt an der Procedure wo der Speicher aufs Fenster gezeichnet wird. Also nicht wundern ;)

Beispiel

Falls es Fehler, Probleme oder Anregungen gibt einfach hier melden.

Verfasst: 08.02.2008 19:58
von gnasen
Folgender Fehler in Form einer Msgbox:
Error: -2147479520 (Acquire)
Dann is vorbei.

Mit Debugger passiert selbiges, Fehler is hier:

Code: Alles auswählen

Procedure CV_Acquire()
  CVRES = CVAcquireVidCap (@vidCapSystem\vidCapSystem)
  If CVRES <> #CVRES_SUCCESS
    Error_Message(CVRES, "Acquire")
    End
  EndIf
EndProcedure
Falls der Fehler bei mir liegt (weil zB was fehlt) dann bitte sagen ;)

Verfasst: 08.02.2008 21:41
von Dadido3
Kann so kaum sagen was der Fehler ist.

Also im Pack ist eigentlich alles enthalten: Starten und Freuen (bei dir leider nicht ;) )

1. Sag mal welches Windows du hast, und Direkt X...

2. Vielleicht baue ich noch ein Paar Fehlermessages ein, damit man genau sieht, woran es liegt. Muss mich aber nochmal durch den c code wursteln.

Verfasst: 08.02.2008 22:29
von legion
Bei mir leider der selbe Fehler ! :(
"Error: -2147479520 (Acquire)"

Kommt unter Windows XP (DirectX 9.0c (4.09.0000.0904)
und Vista (DirectX 10.0).

Lg. Legion

Verfasst: 08.02.2008 22:44
von Dadido3
Habs nach langem Wursteln fertig, hab alle Error-Konstanten reinkopiert.
Auch hab ich noch wichtige Fehlermessages reingemacht.

Sagt mal was für ein Fehler kommt.

Verfasst: 08.02.2008 22:54
von legion
Error: No devices found - no Enumeration possible. (Acquire)

Verfasst: 08.02.2008 22:59
von Dadido3
Ok, das ist klar.
Wer kein Englisch kann: Kein Gerät gefunden ;)

Was hast du denn für eine Webcam/Kamera/Videokarte ?
Hast du auch sicher WDM-Treiber, oder zumindest VfW? (das müsste im Gerätemanager stehen)

Achso, geht es überhaupt mit der Vidcap32.dll?

Verfasst: 09.02.2008 18:53
von legion
Meine Karte:
Pinnacle PCTV Hybrid Pro PCI

Funktioniert das überhaupt mit deinem Programm?

Lg. Legion

Verfasst: 09.02.2008 20:04
von Helle
Damit Dadido3 nicht dem Wahnsinn anheim fällt: Bei mir funktionierts. Mit Webcam (Logitech-Notebook-Irgendwas) und auch mit TV-Karte (Hauppauge WinTV).
@Dadido3: Warum machst Du zur Vermeidung des "Farbdrehers" nicht die For-Next-Schleife scharf? Ist bestimmt nicht die schnellste Variante, aber funktioniert auch schnell genug auf meinem Sempron.

Gruß
Helle

Verfasst: 10.02.2008 16:06
von NicTheQuick
Bei funktioniert es wunderbar. Aber das Fenster hat nie die Auflösung, die ich
eigentlich ausgewählt hab, sondern immer eine viel kleinere.
Es geht bei mit einer Webcam "USB-Dual-mode Camera" und einer TV-Karte
"Conexant's BtPCI Cap".

Die Farben sind bei mir auch vertauscht. Mit der Plot-Variante zum Farben
tauschen ist es aber ziemlich langsam.

Wie gesagt: Das mit der Auflösung ist noch ein bisschen komisch.