Commit Graph

90 Commits

Author SHA1 Message Date
Alexander Alekhin
7a2448672c videoio(MSMF): avoid OpenCV load failure on Win7 machines
OpenCV binaries are compiled on Win10 environment
2018-06-29 20:22:26 +00:00
Alexander Alekhin
c3a90ccbad videoio(MSMF): remove "always true" check 2018-06-29 15:23:48 +03:00
Vadim Pisarevsky
67259d7082 Merge pull request #11768 from alalek:videoio_msmf_async_live_capture 2018-06-27 18:12:10 +00:00
Vitaly Tuzov
67b67003c5 Disable MSMF VideoCapture fallback to existing camera in case provided index is out of range. 2018-06-26 14:04:02 +03:00
Alexander Alekhin
9629af1aa9 videoio: MSMF async reader for camera stream
Synchronized reading from camera with heavy frame processing
provides bad effects (huge frame latency, processing frames from the past).
Generally, there is no way to process each frame and some frames will be dropped.
Allow preventive frame dropping to reduce lag of processed frames.

This mode is applied to cameras only (opened by 'index').
2018-06-14 18:37:05 +03:00
Alexander Alekhin
2bb5d1bca3 videoio(msmf): cleanup unused methods from ComPtr wrapper
Use Win32 TRUE/FALSE in SetUINT32() calls for bool parameters
2018-06-14 14:15:09 +03:00
Alexander Alekhin
8f24db048c Merge pull request #11735 from alalek:videoio_msmf_fix_configureHW_reopen_condition 2018-06-14 09:57:39 +00:00
Alexander Alekhin
09c63e4f00 videoio(msmf): fix reopen condition in configureHW()
`camid` value is always -1 after close().
2018-06-13 16:29:45 +03:00
Alexander Alekhin
0d249c7448 videoio(msmf): replace custom debug print function 2018-06-09 17:38:32 +03:00
Alexander Alekhin
f72633b9f5 Merge pull request #11727 from alalek:videoio_msmf_use_Lock2D 2018-06-08 19:01:40 +00:00
Vitaly Tuzov
cb4b6bb2dc Fixed setting of frame size properties for MSMF-based VideoCapture 2018-06-08 18:55:06 +03:00
Alexander Alekhin
c64f6b3c22 videoio(MSMF): refactor grabFrame() / retrieveFrame() methods
- no behavior changes in grabFrame()
- added Lock2D() support into retrieveFrame()
2018-06-08 17:20:47 +03:00
Vitaly Tuzov
9622ca0e37 MSMF-based VideoCapture and VideoWriter backend changed to C++ interface 2018-05-23 17:54:08 +03:00
Vitaly Tuzov
1dc73281f8 Added precise seek to MSMF-based VideoCapture::set(CAP_PROP_POS_FRAMES) 2018-04-26 16:15:23 +03:00
Vitaly Tuzov
80600e5cdc Added DXVA hardware acceleration to MSMF-based VideoCapture 2018-04-24 13:42:49 +03:00
Vitaly Tuzov
916f094ce6 Integrated camera and file MSMF-based VideoCaptures and implemented configuration properties get/set 2018-04-24 12:13:20 +03:00
Vitaly Tuzov
b0b2d8de44 Remove unused code 2018-04-24 12:13:19 +03:00
Vitaly Tuzov
44848d3241 MSMF-based CameraCapture reworked to use SourceReader 2018-04-23 17:04:54 +03:00
Vitaly Tuzov
65c46d0cc6 Removed WINRT related code 2018-04-23 17:04:53 +03:00
Alexander Alekhin
d2d9fd6945 build: fix MSVS build problems
with 'CL=/permissive-'
2018-04-10 14:50:56 +03:00
Vitaly Tuzov
24bd44f088 MSMF-based VideoCapture reworked to use SourceReader 2018-04-06 17:39:56 +03:00
Vitaly Tuzov
628f04ae96 Merge pull request #11092 from terfendail:msmf_videocapture
Update for MSMF-based VideoCapture and VideoWriter (#11092)

* MSMF based VideoCapture updated to handle video stream formats different from RGB24

* MSMF based VideoWriter updated to handle video frame top-bottom line ordering regardless of output format

* Fixed race condition in MSMF based VideoCapture

* Refactored MSMF based VideoCapture and VideoWriter

* Disabled frame rate estimation for MP43

* Removed test for unsupported avi container from MSMF VideoWriter tests

* Enabled MSMF-based VideoIO by default
2018-04-05 13:55:42 +03:00
Alexander Alekhin
8f0669c300 videoio: apply CV_OVERRIDE/CV_FINAL 2018-03-28 17:57:59 +03:00
luz.paz
d05714995c Misc. modules/ cont. pt2
Found via `codespell`
2018-02-13 11:28:11 -05:00
Alexander Alekhin
602f047fe8 build: replace WIN32 => _WIN32 2017-07-25 13:30:48 +03:00
chacha21
166d75e3c5 Fix for unhandled error cases when using Media Foundation
Some function calls to Media Foundation can fail and retrun null
pointers. They should be checked before being dereferenced to avoid a
crash.
2016-12-13 10:40:06 +01:00
Adam Rankin
2577194c70 Correcting return type from videoDevice::findType to be int thus allowing detection of failed device init request 2016-06-07 15:18:40 -04:00
shengyu
2d41321ca0 fix quote 2016-04-06 14:31:06 +08:00
Gregory Morse
af5bec70cd merge Win10/VS2015 changes 2015-12-17 21:15:59 +01:00
mbarann
b48b2d43b0 MSMF expects a bottom-up video frame, so the buffer pointer must point to the end of the data and the stride needs to be negative 2015-11-12 13:13:45 +01:00
Maxim Kostin
cdd23440c9 Adding support for WinRT(WinPhone 8/8.1 and Win Store) via CMake 3.1
- Substituted HAVE_WINRT with WINRT
- Fixed compilation issues in ocl.cpp and parallel.cpp
- Fixed compiler issue for WP8: "C2678: binary '+' : no operator found which takes a left-hand - Fixed gitignore
- Added #ifdef HAVE_OPENCL to remove compiler warnings in ocl.cpp
- Used NO_GETENV similar to '3rdparty\libjpeg\jmemmgr.c;
- Added ole32.lib for core module (for WindowsStore 8.0 builds)
- Made OpenCV_ARCH aware of ARM

Signed-off-by: Maxim Kostin <v-maxkos@microsoft.com>
2015-03-02 22:26:43 +03:00
Artur Wieczorek
854a722c70 Implement VideoCapture::get, CvCapture::getProperty, IVideoCapture::getProperty as constant methods. 2014-12-16 16:08:22 +01:00
Artur Wieczorek
3a0b375104 Remove ATL dependency from MSMF capture code.
Use _com_ptr_t instead of CComPtr in ComPtr wrapper to avoid ATL dependency.
2014-10-01 12:02:28 +02:00
Artur Wieczorek
b91bd6716c Fixed MSMF file capture error while opening the file containing unsupported video stream format
Applied in PR3260 to 2.4 branch
2014-09-25 11:54:15 +02:00
Artur Wieczorek
8f334b4e41 Fixed assertion warning in MSMF frame grabber
Applied in PR3251 to 2.4 branch
2014-09-25 11:51:31 +02:00
Artur Wieczorek
7c00b17085 Fixed MSMF video capture initialization
Applied in PR3251 to 2.4 branch.
2014-09-25 11:49:31 +02:00
Artur Wieczorek
25cf51637d Fix linking error under Win 7 - do not import MinCore_Downlevel.lib if target is Win 7 or earlier.
Applied in PR3243 to 2.4 branch.
2014-09-25 11:45:11 +02:00
Artur Wieczorek
6ad3427426 Fixed compilation errors under VS 2010 and Win 7
Applied in PR3240 to 2.4 branch.
2014-09-25 11:43:13 +02:00
Vadim Pisarevsky
1578dd1027 Merge pull request #2702 from GregoryMorse:patch-3 2014-09-18 12:38:54 +00:00
vbystricky
d58f736935 Split highgui module to videoio and highgui 2014-07-14 23:16:47 +04:00