Quantcast
Channel: Jobs
Viewing all articles
Browse latest Browse all 18427

Opencv ffmpeg: Video capture ("Filename.avi") crashes on a non development machine - MAC 10.8.2

$
0
0
I was trying to deploy a simple Qt Opencv Application, the following is the code: Qt: .pro file:    QT       += core gui     greaterThan(QT_MAJOR_VERSION, 4): QT += widgets     TARGET = opencvVideoTest     TEMPLATE = app       SOURCES += main.cpp\         mainwindow.cpp       HEADERS  += mainwindow.h       FORMS    += mainwindow.ui       INCLUDEPATH = -I/usr/local/include       LIBS += -lm -lopencv_core -lopencv_highgui -lopencv_imgproc Mainwindow.cpp:  #include "mainwindow.h"     #include "ui_mainwindow.h"     #include <opencv2/core/core.hpp>     #include <opencv/cv.h>     #include <opencv2/highgui/highgui.hpp>     #include <opencv2/imgproc/imgproc.hpp>             MainWindow::MainWindow(QWidget *parent) :         QMainWindow(parent),         ui(new Ui::MainWindow)     {         ui->setupUi(this);             cv::Mat img;            cv::VideoCapture cap("video.avi");            if(cap.isOpened()){            for(;;){            cap.read(img);            cv::resize(img,img,cv::Size(604,480));            cv::imshow("Opencv", img);            cv::waitKey(33);        }        }        else{            }             }       MainWindow::~MainWindow()     {         delete ui;     } The above snippet works fine on the development machine, which by the has Opencv 2.4.3, ffmpeg 1.1.2 & Qt 5.0.1. This what happens when I try to deploy, running the otool before using macdeployqt and the output:  >  /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current      version 169.3.0)  /usr/local/opt/opencv/lib/libopencv_core.2.4.3.dylib      (compatibility version 2.4.0, current version 2.4.3)      > /usr/local/opt/opencv/lib/libopencv_highgui.2.4.3.dylib      (compatibility version 2.4.0, current version 2.4.3)     >  /usr/local/opt/opencv/lib/libopencv_imgproc.2.4.3.dylib        (compatibility version 2.4.0, current version 2.4.3)     >  /usr/local/Qt5.0.1/5.0.1/clang_64/lib/QtWidgets.framework/Versions/5/QtWidgets       (compatibility version 5.0.0, current version 5.0.1)     >  /usr/local/Qt5.0.1/5.0.1/clang_64/lib/QtGui.framework/Versions/5/QtGui       (compatibility version 5.0.0, current version 5.0.1)     >  /usr/local/Qt5.0.1/5.0.1/clang_64/lib/QtCore.framework/Versions/5/QtCore       (compatibility version 5.0.0, current version 5.0.1)     >  /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL       (compatibility version 1.0.0, current version 1.0.0)     >  /System/Library/Frameworks/AGL.framework/Versions/A/AGL       (compatibility version 1.0.0, current version 1.0.0)     >  /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current       version 56.0.0) otool after macdeployqt output: >     /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)       @executable_path/../Frameworks/libopencv_core.2.4.3.dylib (compatibility version 2.4.0, current version 2.4.3) >      @executable_path/../Frameworks/libopencv_highgui.2.4.3.dylib (compatibility version 2.4.0, current version 2.4.3) >      @executable_path/../Frameworks/libopencv_imgproc.2.4.3.dylib (compatibility version 2.4.0, current version 2.4.3) >      @executable_path/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets   (compatibility version 5.0.0, current version 5.0.1) >      @executable_path/../Frameworks/QtGui.framework/Versions/5/QtGui (compatibility version 5.0.0, current version 5.0.1) >      @executable_path/../Frameworks/QtCore.framework/Versions/5/QtCore (compatibility version 5.0.0, current version 5.0.1) >      /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0) >      /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0) >      /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0) But after deploying it, when I try and run the app on the user’s machine it crashes, no error reported either, the exact samething used to happen in Windows but when I copied the opencv_ffmpeg.dll into the exe folder it worked fine. I tried to use the same logic here and failed, then I manually addded each lib files of all the ffmpeg and its dependency into the project folder and still failed. Any other solution, please help? I’m a newbie to mac dpeloyment. Am i missing or overlooked something?

Viewing all articles
Browse latest Browse all 18427

Trending Articles