• 4277阅读
  • 0回复

实时监控 无法read,显示画面 [复制链接]

上一主题 下一主题
离线lengyufeixue
 
只看楼主 倒序阅读 楼主  发表于: 2011-08-16
我在网上下载了个qt做的监控界面  移植到开发板上  想要在触摸屏显示监控的实时画面,但是出现黑屏,并有错误提示“VIDEO_READ ERROR”,从我以下的程序可以看出,已经open成功,在read的时候出错了  ,这个程序应该是从cmos摄像头获取图像,所以我看到在程序中有一个rgb565Torgb24的格式转换函数,而我的摄像头是usb的 。我想请问出现VIDEO_READ ERROR,是不是因为格式转换的问题(usb摄像头获取的图片格式是yuv的)?   如果是要怎么解决?如果不是,还有其他的什么可能会造出VIDEO_READ ERROR?

void Widget::do_view()
{
        int ret ;
       // int video_fd =-1;
        pp = (unsigned char*)malloc(320*240*2*sizeof(char));
        frame = new QImage(pp,320,240,QImage::Format_RGB16);
        video_fd = open(VIDEO_DEV_NODE,O_RDWR);
        if(video_fd<0)
            QMessageBox::warning(this,tr("VIDEO_DEV_NODE"),tr("VIDEO_DEV_NODE OPEN ERROR"));
        ret = read(video_fd,pp,320*240*2);
        if(ret<0)
            QMessageBox::warning(this,tr("VIDEO_READ"),tr("VIDEO_READ ERROR"));
        //QPainter *painter =new QPainter(this);
        timer = new QTimer(this);
        connect(timer,SIGNAL(timeout()),this,SLOT(readFrame()));
        timer->start(30);
}
快速回复
限100 字节
 
上一个 下一个