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
9622ca0e
Commit
9622ca0e
authored
Apr 25, 2018
by
Vitaly Tuzov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MSMF-based VideoCapture and VideoWriter backend changed to C++ interface
parent
8307e06c
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 @
9622ca0e
...
...
@@ -188,11 +188,6 @@ CV_IMPL CvCapture * cvCreateCameraCapture (int index)
// bail out to let the user know that it is not available
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
#ifdef HAVE_VFW
TRY_OPEN
(
capture
,
cvCreateCameraCapture_VFW
(
index
))
...
...
@@ -303,12 +298,6 @@ CV_IMPL CvCapture * cvCreateFileCaptureWithPreference (const char * filename, in
if
(
apiPreference
)
break
;
#endif
#ifdef HAVE_MSMF
case
CAP_MSMF
:
TRY_OPEN
(
result
,
cvCreateFileCapture_MSMF
(
filename
))
if
(
apiPreference
)
break
;
#endif
#ifdef HAVE_VFW
case
CAP_VFW
:
TRY_OPEN
(
result
,
cvCreateFileCapture_VFW
(
filename
))
...
...
@@ -377,11 +366,6 @@ static CvVideoWriter* cvCreateVideoWriterWithPreference(const char* filename, in
default
:
//exit if the specified API is unavaliable
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
case
CAP_VFW
:
TRY_OPEN
(
result
,
cvCreateVideoWriter_VFW
(
filename
,
fourcc
,
fps
,
frameSize
,
is_color
))
...
...
@@ -440,6 +424,9 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
#ifdef HAVE_GSTREAMER
CAP_GSTREAMER
,
#endif
#ifdef HAVE_MSMF
CAP_MSMF
,
#endif
#ifdef HAVE_DSHOW
CAP_DSHOW
,
#endif
...
...
@@ -468,6 +455,7 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
for
(
int
i
=
0
;
domains
[
i
]
>=
0
;
i
++
)
{
#if defined(HAVE_GSTREAMER) || \
defined(HAVE_MSMF) || \
defined(HAVE_DSHOW) || \
defined(HAVE_INTELPERC) || \
defined(WINRT_VIDEO) || \
...
...
@@ -482,6 +470,11 @@ static Ptr<IVideoCapture> IVideoCapture_create(int index)
capture
=
createGStreamerCapture
(
index
);
break
;
#endif
#ifdef HAVE_MSMF
case
CAP_MSMF
:
capture
=
cvCreateCapture_MSMF
(
index
);
break
;
// CAP_MSMF
#endif
#ifdef HAVE_DSHOW
case
CAP_DSHOW
:
capture
=
makePtr
<
VideoCapture_DShow
>
(
index
);
...
...
@@ -543,6 +536,14 @@ static Ptr<IVideoCapture> IVideoCapture_create(const String& filename, int apiPr
return
capture
;
}
#endif
#ifdef HAVE_MSMF
if
(
useAny
||
apiPreference
==
CAP_MSMF
)
{
capture
=
cvCreateCapture_MSMF
(
filename
);
if
(
capture
&&
capture
->
isOpened
())
return
capture
;
}
#endif
#ifdef HAVE_GPHOTO2
if
(
useAny
||
apiPreference
==
CAP_GPHOTO2
)
{
...
...
@@ -581,6 +582,14 @@ static Ptr<IVideoWriter> IVideoWriter_create(const String& filename, int apiPref
return
iwriter
;
}
#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
if
(
apiPreference
==
CAP_INTEL_MFX
||
apiPreference
==
CAP_ANY
)
{
...
...
modules/videoio/src/cap_msmf.cpp
View file @
9622ca0e
This diff is collapsed.
Click to expand it.
modules/videoio/src/precomp.hpp
View file @
9622ca0e
...
...
@@ -116,10 +116,6 @@ CvVideoWriter* cvCreateVideoWriter_Win32( const char* filename, int fourcc,
CvVideoWriter
*
cvCreateVideoWriter_VFW
(
const
char
*
filename
,
int
fourcc
,
double
fps
,
CvSize
frameSize
,
int
is_color
);
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_OpenNI2
(
int
index
);
CvCapture
*
cvCreateFileCapture_OpenNI
(
const
char
*
filename
);
...
...
@@ -195,6 +191,10 @@ namespace cv
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
<
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_ */
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