On Sat, Aug 15, 2009 at 6:36 AM, Rath<mailings@xxxxxxxxxxxxxxxxxxxxx> wrote: > Hi, > > with this code from the internet I only get pictures with some undefined > pixels on the top and black pixels on the bottom. > > Where's the problem? I only want a simple example for image captureing. > > Here is the code: > > #include <stdio.h> > #include <unistd.h> > #include <fcntl.h> > #include <sys/ioctl.h> > #include <libv4l1.h> > #include <linux/videodev.h> > > #define GES_LAENGE (640*480) > > unsigned char bild[GES_LAENGE]; > > int main() > { > int fd; > long laenge; > struct video_window video_win; > FILE *bilddatei; > > if((fd = v4l1_open("/dev/video0", O_RDONLY)) == -1) > { > printf("Fehler beim Oeffnen von /dev/video0\r\n"); > return 1; > } > if( v4l1_ioctl( fd, VIDIOCGWIN, &video_win) == -1) > { > printf("Fehler beim setzen der Einstellungen\r\n"); > return 1; > } > laenge = video_win.width * video_win.height; > if( laenge > GES_LAENGE) > { > printf("Bild ist groesser als angegeben\r\n"); > return 1; > } > > > if( v4l1_read( fd, bild, laenge) == -1) > { > printf("Auslesen der Kamera nicht möglch\r\n"); > return 1; > } > if((bilddatei = fopen( "bild.ppm", "w+b")) == NULL) > { > printf("Konnte die datei zum schreiben nicht öffnen\r\n"); > return 1; > } > v4l1_close(fd); > fprintf( bilddatei, "P6\n%d %d\n255\n",video_win.width, > video_win.height); > fwrite( bild, 1, video_win.width*video_win.height,bilddatei); > fclose(bilddatei); > return 0; > } > Hi Joern, That code seems to be using v4l1 APIs. How about using current version of video4linux? You can find a simple example code at following document: http://www.linuxtv.org/downloads/video4linux/API/V4L2_API/spec-single/v4l2.html#CAPTURE-EXAMPLE And about the weird image you got from the v4l1 example code, could be a pixelformat missmatch or just some noise fetched but I can't say any further without knowing your environment :-) Cheers, Nate > Regards, Joern > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- = DongSoo, Nathaniel Kim Engineer Mobile S/W Platform Lab. Digital Media & Communications R&D Centre Samsung Electronics CO., LTD. e-mail : dongsoo.kim@xxxxxxxxx dongsoo45.kim@xxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html