Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
0a6d1900
Commit
0a6d1900
authored
May 24, 2018
by
Alexander Alekhin
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #11396 from terfendail:msmf_icapture
parents
8a17ae29
9622ca0e
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
29 additions
and
20 deletions
+29
-20
cap.cpp
modules/videoio/src/cap.cpp
+25
-16
cap_msmf.cpp
modules/videoio/src/cap_msmf.cpp
+0
-0
precomp.hpp
modules/videoio/src/precomp.hpp
+4
-4
No files found.
modules/videoio/src/cap.cpp
View file @
0a6d1900
...
@@ -188,11 +188,6 @@ CV_IMPL CvCapture * cvCreateCameraCapture (int index)
...
@@ -188,11 +188,6 @@ CV_IMPL CvCapture * cvCreateCameraCapture (int index)
// bail out to let the user know that it is not available
// bail out to let the user know that it is not available
if
(
pref
)
break
;
if
(
pref
)
break
;
#ifdef HAVE_MSMF
case
CAP_MSMF
:
TRY_OPEN
(
capture
,
cvCreateCameraCapture_MSMF
(
index
))
if
(
pref
)
break
;
#endif
case
CAP_VFW
:
// or CAP_V4L or CAP_V4L2
case
CAP_VFW
:
// or CAP_V4L or CAP_V4L2
#ifdef HAVE_VFW
#ifdef HAVE_VFW
TRY_OPEN
(
capture
,
cvCreateCameraCapture_VFW
(
index
))
TRY_OPEN
(
capture
,
cvCreateCameraCapture_VFW
(
index
))
...
@@ -303,12 +298,6 @@ CV_IMPL CvCapture * cvCreateFileCaptureWithPreference (const char * filename, in
...
@@ -303,12 +298,6 @@ CV_IMPL CvCapture * cvCreateFileCaptureWithPreference (const char * filename, in
if
(
apiPreference
)
break
;
if
(
apiPreference
)
break
;
#endif
#endif
#ifdef HAVE_MSMF
case
CAP_MSMF
:
TRY_OPEN
(
result
,
cvCreateFileCapture_MSMF
(
filename
))
if
(
apiPreference
)
break
;
#endif
#ifdef HAVE_VFW
#ifdef HAVE_VFW
case
CAP_VFW
:
case
CAP_VFW
:
TRY_OPEN
(
result
,
cvCreateFileCapture_VFW
(
filename
))
TRY_OPEN
(
result
,
cvCreateFileCapture_VFW
(
filename
))
...
@@ -377,11 +366,6 @@ static CvVideoWriter* cvCreateVideoWriterWithPreference(const char* filename, in
...
@@ -377,11 +366,6 @@ static CvVideoWriter* cvCreateVideoWriterWithPreference(const char* filename, in
default
:
default
:
//exit if the specified API is unavaliable
//exit if the specified API is unavaliable
if
(
apiPreference
!=
CAP_ANY
)
break
;
if
(
apiPreference
!=
CAP_ANY
)
break
;
#ifdef HAVE_MSMF
case
CAP_MSMF
:
TRY_OPEN
(
result
,
cvCreateVideoWriter_MSMF
(
filename
,
fourcc
,
fps
,
frameSize
,
is_color
))
if
(
apiPreference
!=
CAP_ANY
)
break
;
#endif
#ifdef HAVE_VFW
#ifdef HAVE_VFW
case
CAP_VFW
:
case
CAP_VFW
:
TRY_OPEN
(
result
,
cvCreateVideoWriter_VFW
(
filename
,
fourcc
,
fps
,
frameSize
,
is_color
))
TRY_OPEN
(
result
,
cvCreateVideoWriter_VFW
(
filename
,
fourcc
,
fps
,
frameSize
,
is_color
))
...
@@ -440,6 +424,9 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
...
@@ -440,6 +424,9 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
#ifdef HAVE_GSTREAMER
#ifdef HAVE_GSTREAMER
CAP_GSTREAMER
,
CAP_GSTREAMER
,
#endif
#endif
#ifdef HAVE_MSMF
CAP_MSMF
,
#endif
#ifdef HAVE_DSHOW
#ifdef HAVE_DSHOW
CAP_DSHOW
,
CAP_DSHOW
,
#endif
#endif
...
@@ -468,6 +455,7 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
...
@@ -468,6 +455,7 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
for
(
int
i
=
0
;
domains
[
i
]
>=
0
;
i
++
)
for
(
int
i
=
0
;
domains
[
i
]
>=
0
;
i
++
)
{
{
#if defined(HAVE_GSTREAMER) || \
#if defined(HAVE_GSTREAMER) || \
defined(HAVE_MSMF) || \
defined(HAVE_DSHOW) || \
defined(HAVE_DSHOW) || \
defined(HAVE_INTELPERC) || \
defined(HAVE_INTELPERC) || \
defined(WINRT_VIDEO) || \
defined(WINRT_VIDEO) || \
...
@@ -482,6 +470,11 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
...
@@ -482,6 +470,11 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
capture
=
createGStreamerCapture
(
index
);
capture
=
createGStreamerCapture
(
index
);
break
;
break
;
#endif
#endif
#ifdef HAVE_MSMF
case
CAP_MSMF
:
capture
=
cvCreateCapture_MSMF
(
index
);
break
;
// CAP_MSMF
#endif
#ifdef HAVE_DSHOW
#ifdef HAVE_DSHOW
case
CAP_DSHOW
:
case
CAP_DSHOW
:
capture
=
makePtr
<
VideoCapture_DShow
>
(
index
);
capture
=
makePtr
<
VideoCapture_DShow
>
(
index
);
...
@@ -543,6 +536,14 @@ static Ptr<IVideoCapture> IVideoCapture_create(const String& filename, int apiPr
...
@@ -543,6 +536,14 @@ static Ptr<IVideoCapture> IVideoCapture_create(const String& filename, int apiPr
return
capture
;
return
capture
;
}
}
#endif
#endif
#ifdef HAVE_MSMF
if
(
useAny
||
apiPreference
==
CAP_MSMF
)
{
capture
=
cvCreateCapture_MSMF
(
filename
);
if
(
capture
&&
capture
->
isOpened
())
return
capture
;
}
#endif
#ifdef HAVE_GPHOTO2
#ifdef HAVE_GPHOTO2
if
(
useAny
||
apiPreference
==
CAP_GPHOTO2
)
if
(
useAny
||
apiPreference
==
CAP_GPHOTO2
)
{
{
...
@@ -581,6 +582,14 @@ static Ptr<IVideoWriter> IVideoWriter_create(const String& filename, int apiPref
...
@@ -581,6 +582,14 @@ static Ptr<IVideoWriter> IVideoWriter_create(const String& filename, int apiPref
return
iwriter
;
return
iwriter
;
}
}
#endif
#endif
#ifdef HAVE_MSMF
if
(
apiPreference
==
CAP_MSMF
||
apiPreference
==
CAP_ANY
)
{
iwriter
=
cvCreateVideoWriter_MSMF
(
filename
,
_fourcc
,
fps
,
frameSize
,
isColor
);
if
(
!
iwriter
.
empty
())
return
iwriter
;
}
#endif
#ifdef HAVE_MFX
#ifdef HAVE_MFX
if
(
apiPreference
==
CAP_INTEL_MFX
||
apiPreference
==
CAP_ANY
)
if
(
apiPreference
==
CAP_INTEL_MFX
||
apiPreference
==
CAP_ANY
)
{
{
...
...
modules/videoio/src/cap_msmf.cpp
View file @
0a6d1900
This diff is collapsed.
Click to expand it.
modules/videoio/src/precomp.hpp
View file @
0a6d1900
...
@@ -116,10 +116,6 @@ CvVideoWriter* cvCreateVideoWriter_Win32( const char* filename, int fourcc,
...
@@ -116,10 +116,6 @@ CvVideoWriter* cvCreateVideoWriter_Win32( const char* filename, int fourcc,
CvVideoWriter
*
cvCreateVideoWriter_VFW
(
const
char
*
filename
,
int
fourcc
,
CvVideoWriter
*
cvCreateVideoWriter_VFW
(
const
char
*
filename
,
int
fourcc
,
double
fps
,
CvSize
frameSize
,
int
is_color
);
double
fps
,
CvSize
frameSize
,
int
is_color
);
CvCapture
*
cvCreateCameraCapture_DShow
(
int
index
);
CvCapture
*
cvCreateCameraCapture_DShow
(
int
index
);
CvCapture
*
cvCreateCameraCapture_MSMF
(
int
index
);
CvCapture
*
cvCreateFileCapture_MSMF
(
const
char
*
filename
);
CvVideoWriter
*
cvCreateVideoWriter_MSMF
(
const
char
*
filename
,
int
fourcc
,
double
fps
,
CvSize
frameSize
,
int
is_color
);
CvCapture
*
cvCreateCameraCapture_OpenNI
(
int
index
);
CvCapture
*
cvCreateCameraCapture_OpenNI
(
int
index
);
CvCapture
*
cvCreateCameraCapture_OpenNI2
(
int
index
);
CvCapture
*
cvCreateCameraCapture_OpenNI2
(
int
index
);
CvCapture
*
cvCreateFileCapture_OpenNI
(
const
char
*
filename
);
CvCapture
*
cvCreateFileCapture_OpenNI
(
const
char
*
filename
);
...
@@ -195,6 +191,10 @@ namespace cv
...
@@ -195,6 +191,10 @@ namespace cv
Ptr
<
cv
::
IVideoCapture
>
cvCreateFileCapture_FFMPEG_proxy
(
const
String
&
filename
);
Ptr
<
cv
::
IVideoCapture
>
cvCreateFileCapture_FFMPEG_proxy
(
const
String
&
filename
);
Ptr
<
IVideoWriter
>
cvCreateVideoWriter_FFMPEG_proxy
(
const
String
&
filename
,
int
fourcc
,
double
fps
,
Size
frameSize
,
int
isColor
);
Ptr
<
IVideoWriter
>
cvCreateVideoWriter_FFMPEG_proxy
(
const
String
&
filename
,
int
fourcc
,
double
fps
,
Size
frameSize
,
int
isColor
);
Ptr
<
IVideoCapture
>
cvCreateCapture_MSMF
(
int
index
);
Ptr
<
IVideoCapture
>
cvCreateCapture_MSMF
(
const
String
&
filename
);
Ptr
<
IVideoWriter
>
cvCreateVideoWriter_MSMF
(
const
String
&
filename
,
int
fourcc
,
double
fps
,
Size
frameSize
,
int
is_color
);
}
}
#endif
/* __VIDEOIO_H_ */
#endif
/* __VIDEOIO_H_ */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment