46356
Goto Top

Webcamframe abspeichern mit Csharp

Guten Tag.

Ich habe nun schon zahlreiche Foren, Chats durchgestöbert und schon dutzende Tutorials (á la codeproject, msdn,...) abgeklappert,
bin aber noch immer nicht zu dem gewünschten Ergebnis gekommen.

Folgendes:
Eine Webcam ist an einen PC (in meinem Fall an ein Notebook ;) ) angeschlossen. Meine Software erkennt die Webcam und
kann das Webcam Bild auch innerhalb des Programmes als live-stream wiedergeben.

Nun möchte ich aber einen Frame (~ein Bild) der Webcam auf meine Platte bekommen.

Das funktioniert nun auch schon ansatzweise, aber
ENTWEDER ich bekomme ich nur ein schwarzes Bild (in der größe des webcam-streams) ODER eine Error Meldung, dass
die "Null reference exception" nicht behandelt wurde bzw. "Object reference not set to an instance of an object.".


Klar. Ich hätte von anfang an die directX Library verwenden sollen. Will nun nicht den ganzen Code umschreiben, nur um ein
bmp abzuspeichern.

Der Code:

Schwarzes Bild in richtiger Größe:

PictureBox pictureBox1 = this.videostream;

int h = pictureBox1.Height;
int w = pictureBox1.Width;

Bitmap bmp = new Bitmap(w, h);

bmp.Save(@"example.bmp",System.Drawing.Imaging.ImageFormat.Bmp);


"Error Message Bild"

PictureBox pictureBox1 = this.videostream;

int h = pictureBox1.Height;
int w = pictureBox1.Width;

Bitmap bmp = new Bitmap(w, h);

pictureBox1.Image.Save(@"example.bmp",System.Drawing.Imaging.ImageFormat.Bmp);


Wäre echt toll, wenn mir jmd. einen Verbesserungsvorschlag mitteilen könnte.

Freundliche Grüße,
Alex**

Content-Key: 116541

Url: https://administrator.de/contentid/116541

Printed on: May 3, 2024 at 23:05 o'clock

Member: flipworld12
flipworld12 Jun 04, 2009 at 13:34:51 (UTC)
Goto Top
Hallo!
Kannst du mir sagen, wie du das Bild überhaupt in dein Programm bekommst?
Welche Klassen, Namespaces oder Assemblies nutzt du?