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;
}
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