OCV_OPTION(WITH_CUBLAS "Include NVidia Cuda Basic Linear Algebra Subprograms (BLAS) library support" OFF IF (CMAKE_VERSION VERSION_GREATER "2.8" AND NOT ANDROID AND NOT IOS) )
OCV_OPTION(WITH_NVCUVID "Include NVidia Video Decoding library support" OFF IF (CMAKE_VERSION VERSION_GREATER "2.8" AND NOT ANDROID AND NOT IOS AND NOT APPLE) )
OCV_OPTION(WITH_EIGEN "Include Eigen2/Eigen3 support" ON)
+OCV_OPTION(WITH_VFW "Include Video for Windows support" ON IF (WIN32))
OCV_OPTION(WITH_FFMPEG "Include FFMPEG support" ON IF (NOT ANDROID AND NOT IOS))
OCV_OPTION(WITH_GSTREAMER "Include Gstreamer support" ON IF (UNIX AND NOT APPLE AND NOT ANDROID) )
OCV_OPTION(WITH_GTK "Include GTK support" ON IF (UNIX AND NOT APPLE AND NOT ANDROID) )
OCV_OPTION(WITH_PVAPI "Include Prosilica GigE support" ON IF (NOT ANDROID AND NOT IOS) )
OCV_OPTION(WITH_GIGEAPI "Include Smartek GigE support" ON IF (NOT ANDROID AND NOT IOS) )
OCV_OPTION(WITH_QT "Build with Qt Backend support" OFF IF (NOT ANDROID AND NOT IOS) )
+OCV_OPTION(WITH_WIN32UI "Build with Win32 UI Backend support" ON IF (WIN32) )
OCV_OPTION(WITH_QUICKTIME "Use QuickTime for Video I/O insted of QTKit" OFF IF APPLE )
OCV_OPTION(WITH_TBB "Include Intel TBB support" OFF IF (NOT IOS) )
OCV_OPTION(WITH_CSTRIPES "Include C= support" OFF IF WIN32 )
if(DEFINED WITH_QT)
status(" QT 4.x:" NO)
endif()
- if(WIN32)
- status(" Win32 UI:" ARM THEN NO ELSE YES)
+ if(DEFINED WITH_WIN32UI)
+ status(" Win32 UI:" HAVE_WIN32UI THEN YES ELSE NO)
else()
if(APPLE)
if(WITH_CARBON)
status("")
status(" Video I/O:")
+if (DEFINED WITH_VFW)
+ status(" Video for Windows:" HAVE_VFW THEN YES ELSE NO)
+endif(DEFINED WITH_VFW)
+
if(DEFINED WITH_1394)
status(" DC1394 1.x:" HAVE_DC1394 THEN "YES (ver ${ALIASOF_libdc1394_VERSION})" ELSE NO)
status(" DC1394 2.x:" HAVE_DC1394_2 THEN "YES (ver ${ALIASOF_libdc1394-2_VERSION})" ELSE NO)
# Detect 3rd-party GUI libraries
# ----------------------------------------------------------------------------
+#--- Win32 UI ---
+ocv_clear_vars(HAVE_WIN32UI)
+if(WITH_WIN32UI)
+ TRY_COMPILE(HAVE_WIN32UI
+ "${OPENCV_BINARY_DIR}/CMakeFiles/CMakeTmp"
+ "${OpenCV_SOURCE_DIR}/cmake/checks/win32uitest.cpp"
+ CMAKE_FLAGS "\"user32.lib\" \"gdi32.lib\""
+ OUTPUT_VARIABLE OUTPUT)
+endif(WITH_WIN32UI)
+
# --- QT4 ---
ocv_clear_vars(HAVE_QT)
if(WITH_QT)
# Detect 3rd-party video IO libraries
# ----------------------------------------------------------------------------
+ocv_clear_vars(HAVE_VFW)
+if (WITH_VFW)
+ TRY_COMPILE(HAVE_VFW
+ "${OPENCV_BINARY_DIR}/CMakeFiles/CMakeTmp"
+ "${OpenCV_SOURCE_DIR}/cmake/checks/vfwtest.cpp"
+ CMAKE_FLAGS "-DLINK_LIBRARIES:STRING=vfw32"
+ OUTPUT_VARIABLE OUTPUT)
+ endif(WITH_VFW)
+
# --- GStreamer ---
ocv_clear_vars(HAVE_GSTREAMER)
if(WITH_GSTREAMER)
set(PVAPI_SDK_SUBDIR x86)
elseif(X86_64)
set(PVAPI_SDK_SUBDIR x64)
- elseif(CMAKE_SYSTEM_PROCESSOR MATCHES arm)
+ elseif(ARM)
set(PVAPI_SDK_SUBDIR arm)
endif()
--- /dev/null
+
+#include <windows.h>
+#include <vfw.h>
+
+int main()
+{
+ AVIFileInit();
+ AVIFileExit();
+ return 0;
+}
\ No newline at end of file
--- /dev/null
+#include <windows.h>
+
+int main(int argc, char** argv)
+{
+ CreateWindow(NULL /*lpClassName*/, NULL /*lpWindowName*/, 0 /*dwStyle*/, 0 /*x*/,
+ 0 /*y*/, 0 /*nWidth*/, 0 /*nHeight*/, NULL /*hWndParent*/, NULL /*hMenu*/,
+ NULL /*hInstance*/, NULL /*lpParam*/);
+ DeleteDC(NULL);
+
+ return 0;
+}
*/
#cmakedefine HAVE_ALLOCA_H 1
+/* Video for Windows support */
+#cmakedefine HAVE_VFW
+
/* V4L capturing support */
#cmakedefine HAVE_CAMV4L
/* GTK+ 2.0 Thread support */
#cmakedefine HAVE_GTHREAD
+/* Win32 UI */
+#cmakedefine HAVE_WIN32UI
+
/* GTK+ 2.x toolkit */
#cmakedefine HAVE_GTK
return (int)lrint(value);
# endif
#else
- // while this is not IEEE754-compliant rounding, it's usually a good enough approximation
double intpart, fractpart;
fractpart = modf(value, &intpart);
if ((abs(fractpart) != 0.5) || ((((int)intpart) % 2) != 0))
if(${_have_flag})
set_source_files_properties(${_RCC_OUTFILES} PROPERTIES COMPILE_FLAGS -Wno-missing-declarations)
endif()
-elseif(WIN32 AND NOT ARM)
+elseif(HAVE_WIN32UI)
list(APPEND highgui_srcs src/window_w32.cpp)
elseif(HAVE_GTK)
list(APPEND highgui_srcs src/window_gtk.cpp)
defined(HAVE_QUICKTIME) || \
defined(HAVE_AVFOUNDATION) || \
/*defined(HAVE_OPENNI) || too specialized */ \
- defined(HAVE_FFMPEG) || \
- defined(WIN32) /* assume that we have ffmpeg */
+ defined(HAVE_FFMPEG)
# define BUILD_WITH_VIDEO_INPUT_SUPPORT 1
#else
defined(HAVE_GSTREAMER) || \
defined(HAVE_QUICKTIME) || \
defined(HAVE_AVFOUNDATION) || \
- defined(HAVE_FFMPEG) || \
- defined(WIN32) /* assume that we have ffmpeg */
+ defined(HAVE_FFMPEG)
# define BUILD_WITH_VIDEO_OUTPUT_SUPPORT 1
#else
# define BUILD_WITH_VIDEO_OUTPUT_SUPPORT 0
capture = cvCreateCameraCapture_DShow (index);
if (capture)
return capture;
- return NULL;
break;
#endif
if( result->open( filename ))
return result;
delete result;
-#if (defined WIN32 || defined _WIN32) && !defined _M_ARM
+#ifdef HAVE_VFW
return cvCreateFileCapture_VFW(filename);
#else
return 0;
if( result->open( filename, fourcc, fps, frameSize, isColor != 0 ))
return result;
delete result;
-#if (defined WIN32 || defined _WIN32) && !defined _M_ARM
+#ifdef HAVE_VFW
return cvCreateVideoWriter_VFW(filename, fourcc, fps, frameSize, isColor);
#else
return 0;
virtual bool writeFrame(const IplImage*) { return false; }
};
-#if (defined WIN32 || defined _WIN32) && !defined _M_ARM
-#define HAVE_VFW 1
-
-/* uncomment to enable CMUCamera1394 fireware camera module */
-//#define HAVE_CMU1394 1
-#endif
-
-
CvCapture * cvCreateCameraCapture_V4L( int index );
CvCapture * cvCreateCameraCapture_DC1394( int index );
CvCapture * cvCreateCameraCapture_DC1394_2( int index );
#if defined (HAVE_QT)
cvSetModeWindow_QT(name,prop_value);
- #elif (defined WIN32 || defined _WIN32) && !defined _M_ARM
+ #elif defined(HAVE_WIN32UI)
cvSetModeWindow_W32(name,prop_value);
#elif defined (HAVE_GTK)
cvSetModeWindow_GTK(name,prop_value);
#if defined (HAVE_QT)
return cvGetModeWindow_QT(name);
- #elif (defined WIN32 || defined _WIN32) && !defined _M_ARM
+ #elif defined(HAVE_WIN32UI)
return cvGetModeWindow_W32(name);
#elif defined (HAVE_GTK)
return cvGetModeWindow_GTK(name);
#if defined (HAVE_QT)
return cvGetPropWindow_QT(name);
- #elif (defined WIN32 || defined _WIN32) && !defined _M_ARM
+ #elif defined(HAVE_WIN32UI)
return cvGetPropWindowAutoSize_W32(name);
#elif defined (HAVE_GTK)
return cvGetPropWindowAutoSize_GTK(name);
#if defined (HAVE_QT)
return cvGetRatioWindow_QT(name);
- #elif (defined WIN32 || defined _WIN32) && !defined _M_ARM
+ #elif defined(HAVE_WIN32UI)
return cvGetRatioWindow_W32(name);
#elif defined (HAVE_GTK)
return cvGetRatioWindow_GTK(name);
#if defined (HAVE_QT)
return cvGetOpenGlProp_QT(name);
- #elif (defined WIN32 || defined _WIN32) && !defined _M_ARM
+ #elif defined(HAVE_WIN32UI)
return cvGetOpenGlProp_W32(name);
#elif defined (HAVE_GTK)
return cvGetOpenGlProp_GTK(name);
#endif
-#if (defined WIN32 || defined _WIN32) && !defined _M_ARM // see window_w32.cpp
+#if defined(HAVE_WIN32UI) // see window_w32.cpp
#elif defined (HAVE_GTK) // see window_gtk.cpp
#elif defined (HAVE_COCOA) // see window_carbon.cpp
#elif defined (HAVE_CARBON)
#endif
-#if defined(HAVE_FFMPEG) || ((defined(WIN32) || defined(_WIN32)) && !defined(_M_ARM))
+#if defined(HAVE_FFMPEG)
//////////////////////////////// Parallel VideoWriters and VideoCaptures ////////////////////////////////////
#include "test_precomp.hpp"
#include "opencv2/highgui/highgui.hpp"
-#if defined HAVE_GTK || defined HAVE_QT || ((defined WIN32 || defined _WIN32) && !_M_ARM) || defined HAVE_CARBON || defined HAVE_COCOA
+#if defined HAVE_GTK || defined HAVE_QT || defined HAVE_WIN32UI || defined HAVE_CARBON || defined HAVE_COCOA
using namespace cv;
using namespace std;
defined(HAVE_QUICKTIME) || \
defined(HAVE_AVFOUNDATION) || \
/*defined(HAVE_OPENNI) || too specialized */ \
- defined(HAVE_FFMPEG) || \
- (defined(WIN32) && !defined(_M_ARM))/* assume that we have ffmpeg on x86 and no on ARM */
-
+ defined(HAVE_FFMPEG)
# define BUILD_WITH_VIDEO_INPUT_SUPPORT 1
#else
# define BUILD_WITH_VIDEO_INPUT_SUPPORT 0
defined(HAVE_GSTREAMER) || \
defined(HAVE_QUICKTIME) || \
defined(HAVE_AVFOUNDATION) || \
- defined(HAVE_FFMPEG) || \
- (defined(WIN32) && !defined(_M_ARM)) /* assume that we have ffmpeg */
+ defined(HAVE_FFMPEG)
# define BUILD_WITH_VIDEO_OUTPUT_SUPPORT 1
#else
# define BUILD_WITH_VIDEO_OUTPUT_SUPPORT 0