1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
// ConsoleApplication7.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "opencv2/opencv.hpp"
#include <iostream>
using namespace std;
using namespace cv;
int main() {
VideoCapture vcap(0);
if (!vcap.isOpened()) {
cout << "Error opening video stream or file" << endl;
return -1;
}
int frame_width = vcap.get(CV_CAP_PROP_FRAME_WIDTH);
int frame_height = vcap.get(CV_CAP_PROP_FRAME_HEIGHT);
VideoWriter video("out.avi", CV_FOURCC('M', 'J', 'P', 'G'), 10, Size(frame_width, frame_height), true);
for (;;) {
Mat frame;
vcap >> frame;
video.write(frame);
imshow("Frame", frame);
char c = (char)waitKey(33);
if (c == 27) break;
}
return 0;
}
|
Trying to get this code compiled in x64. I successfully compiled it in x86. But in x64 I'm getting:
1>------ Build started: Project: ConsoleApplication4, Configuration: Release x64 ------
1> stdafx.cpp
1> ConsoleApplication4.cpp
1>ConsoleApplication4.cpp(21): warning C4244: 'initializing' : conversion from 'double' to 'int', possible loss of data
1>ConsoleApplication4.cpp(22): warning C4244: 'initializing' : conversion from 'double' to 'int', possible loss of data
1>ConsoleApplication4.obj : error LNK2001: unresolved external symbol "private: char * __cdecl cv::String::allocate(unsigned __int64)" (?allocate@String@cv@@AEAAPEAD_K@Z)
1>ConsoleApplication4.obj : error LNK2001: unresolved external symbol "private: void __cdecl cv::String::deallocate(void)" (?deallocate@String@cv@@AEAAXXZ)
1>ConsoleApplication4.obj : error LNK2001: unresolved external symbol "public: virtual double __cdecl cv::VideoCapture::get(int)const " (?get@VideoCapture@cv@@UEBANH@Z)
1>ConsoleApplication4.obj : error LNK2001: unresolved external symbol "public: __cdecl cv::VideoWriter::VideoWriter(class cv::String const &,int,double,class cv::Size_<int>,bool)" (??0VideoWriter@cv@@QEAA@AEBVString@1@HNV?$Size_@H@1@_N@Z)
1>c:\users\vartotojas\documents\visual studio 2013\Projects\ConsoleApplication4\x64\Release\ConsoleApplication4.exe : fatal error LNK1120: 4 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Additional dependencies:
opencv_core2411.lib
opencv_imgproc2411.lib
opencv_highgui2411.lib
opencv_ml2411.lib
opencv_video2411.lib
opencv_features2d2411.lib
opencv_calib3d2411.lib
opencv_objdetect2411.lib
opencv_contrib2411.lib
opencv_legacy2411.lib
opencv_flann2411.lib
libpng.lib
libtiff.lib
zlib.lib
IlmImf.lib
libjasper.lib
libjpeg.lib
comctl32.lib
gdi32.lib
vfw32.lib
OpenCV version: 2.411
Visual Studio 2013
settings:
Platform - x64
Didn't forget to change libraries from x86 to x64.