使用opencv保存libvlc图像

时间:2014-05-05 19:23:31

标签: c++ opencv libvlc

我喜欢从libvlc媒体的视频流图像中创建一个cv:Mat对象图像。

sprintf( width, ":vmem-width=%i",VIDEOWIDTH);
sprintf( height,":vmem-height=%i",VIDEOHEIGHT);
sprintf( chroma,":vmem-chroma=%s","RV32");
sprintf( pitch, ":vmem-pitch=%i",VIDEOWIDTH * 4);
libvlc_media_add_option(Media,width);
libvlc_media_add_option(Media,height);
libvlc_media_add_option(Media,chroma);
libvlc_media_add_option(Media,pitch);
libvlc_video_set_callbacks(MediaPlayer,lock,unlock,display,NULL);

.. ..和

void * MainHandler::lock(void *data, void **p_pixels){ 
  *p_pixels = (void *)pic;
  return NULL;
} 

void MainHandler::display(void *data, void *id){
   cv::Mat image(VIDEOHEIGHT,VIDEOWIDTH,CV_8UC3,pic);
    ....
}

这显然是CV_8UC3中的问题,因为色度= RV32会产生32位RGB图像。 但是这个的正确类型是什么? 我没有看到类似的内容:http://ninghang.blogspot.hu/2012/11/list-of-mat-type-in-opencv.html

0 个答案:

没有答案