Russian Qt Forum

Qt => Мультимедиа => Тема начата: agp1 от Октябрь 19, 2005, 07:00



Название: изображение с usb камеры Linux ? +
Отправлено: agp1 от Октябрь 19, 2005, 07:00
есть пример сьема изображений под gtk -
там снимается raw-data и конвертится в RGB24
Код:

/* Read raw-data from camera and convert to RGB24
 */
GdkImlibImage *get_new_frame(GdkImlibImage *current)
{
    GdkImlibImage *im = NULL;
    struct usb_spca50x *spca50x = spcadev;

    if ( spca50x->bridge == BRIDGE_TV8532 ) {
tv8532_grab(spca50x);
    } else {
spca_grab(spca50x);
    }
...................
    im = gdk_imlib_create_image_from_data(
spca50x->frame[USEFRAMENUM].data, NULL,
spca50x->frame[USEFRAMENUM].width,      
         spca50x->frame[USEFRAMENUM].height);
.................


//прототип ее:
  GdkImlibImage      *gdk_imlib_create_image_from_data(unsigned char *data, unsigned char *alpha, gint w, gint h);


про raw-data пока ничего не нашел.

вот пока нашел в Imlib.h
две функции, первая похожа на gdk-шную, вторая конвертит

ImlibImage в Pixmap. наверно,  из этого Pixmap уже не тяжело
 QPixmap получить. еще не проверил.
Код:

  ImlibImage         *Imlib_create_image_from_data(ImlibData * id, unsigned char *data, unsigned char *alpha, int w, int h);
....
  int                 Imlib_data_to_pixmap(ImlibData * id, char **data, Pixmap * pmap, Pixmap * mask);



вопрос:
можно ли без Impliba обойтись вообще?


Название: изображение с usb камеры Linux ? +
Отправлено: fanat9 от Октябрь 19, 2005, 16:06
Через iostream ???

unsigned char * yourwebcam::getImage() {
int len;
len =  read ( webcam_dev, cam_buffer_image, .... );
return cam_buffer_image;
}


Название: изображение с usb камеры Linux ? +
Отправлено: agp1 от Октябрь 30, 2005, 07:31
ну да.
а начало кадра?

http://users.iptelecom.net.ua/~agp1/ru/pCst.html


Название: изображение с usb камеры Linux ? +
Отправлено: agp1 от Октябрь 30, 2005, 07:32
люди используют вызов

 spca_grab(spca50x);