Commit Graph

600 Commits

Author SHA1 Message Date
Maksim Shabunin
e031bada7d Fixed several issues found by static analysis, Windows-specific 2018-07-27 18:25:55 +03:00
Alexander Alekhin
5336b9ad19 Merge pull request #12048 from mshabunin:fix-static-2 2018-07-24 19:45:27 +00:00
Alexander Alekhin
8a2ce75d96 Merge pull request #12020 from alalek:videoio_backends_query_api 2018-07-24 19:43:49 +00:00
Maksim Shabunin
cbb1e867e5 More issues found by static analysis 2018-07-24 16:04:42 +03:00
Maksim Shabunin
e0603bb45f Fixed several issues found by static analysis tools 2018-07-23 17:22:47 +03:00
Alexander Alekhin
b117302bca Merge pull request #12016 from tyl12:fix_videoio_static_para 2018-07-21 03:50:58 +00:00
Teng Yiliang
dadde75ef0 use struct member width_set/height_set to replace static width/height.
the static variables will cause race-condition when operating in
multithread scenarios.

Signed-off-by: Teng Yiliang <ylteng@outlook.com>
Signed-off-by: Teng Yiliang <yiliang.teng@weimob.com>
2018-07-21 07:27:17 +08:00
Alexander Alekhin
270cc3bcbc videoio: add routines to query information about backends API
into cv::videoio_registry namespace
2018-07-19 17:27:37 +03:00
Maksim Shabunin
a2a9a01e05 AVI container: verbose error messages 2018-07-18 15:22:42 +03:00
Maksim Shabunin
53eb27f508 AVI container: use C++ streams for file operations, check some operations for overflow 2018-07-16 13:46:28 +03:00
Alexander Alekhin
b09a4a98d4 opencv: Use cv::AutoBuffer<>::data() 2018-07-04 19:11:29 +03:00
Alexander Alekhin
9a66331984 Merge pull request #11882 from alalek:videoio_vfw_lower_priority 2018-07-03 14:54:54 +00:00
Alexander Alekhin
f545aee66d videoio(VFW): lower priority (after DSHOW) 2018-07-03 15:54:45 +03:00
Alexander Alekhin
b3578710cf videoio(MSMF): fix 32-bit build crash 2018-07-03 15:28:55 +03:00
Alexander Alekhin
5a27f7c81f Merge pull request #11856 from alalek:videoio_msmf_fix_check 2018-06-30 04:52:36 +00:00
Alexander Alekhin
6ce26b72b1 Merge pull request #11860 from alalek:videoio_msmf_remove_cxx11_code 2018-06-30 04:51:20 +00:00
Alexander Alekhin
2dbaba077a videoio(msmf): avoid using of C++11 code
build fails with MSVS 2012 without additional flags
2018-06-29 20:48:58 +00:00
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
Rostislav Vasilikhin
18bc2a1a93 Kinect2 support added to OpenNI2 backend (#11794)
* Kinect2 support added to OpenNI2 backend

* more fixes for OpenNI2 backend

* whitespace fixed

* libfreenect2 support added

* const cast added

* mutable removed
2018-06-25 13:19:20 +03:00
Alexander Alekhin
8622b1254e Merge pull request #11774 from adamrankin:cap_dshow_autofocus 2018-06-16 14:11:44 +00:00
Adam Rankin
ecf4b639e1 Adding the ability to toggle autofocus on/off for DirectShow webcams 2018-06-15 12:32:12 -04: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
Vadim Pisarevsky
7c3090ddcf Merge pull request #11683 from alalek:videoio_ffmpeg_cleanup_dead_code 2018-06-06 12:21:00 +00:00
Alexander Alekhin
b0ae357cfb Merge pull request #11687 from alalek:gstreamer_write_pipeline 2018-06-05 20:06:55 +00:00
Alexander Alekhin
277e9279cc videoio(gstreamer): support dumping of VideoWriter pipeline 2018-06-04 18:39:20 +00:00
Alexander Alekhin
d041b0a599 videoio: fix capture modes 2018-06-04 19:48:51 +03:00
Alexander Alekhin
2628662586 videoio(ffmpeg): cleanup, remove dead code 2018-06-04 19:07:22 +03:00
Alexander Alekhin
ec30b1294f Merge pull request #11636 from alalek:cmake_ffmpeg_find_package 2018-06-04 14:37:36 +00:00
Alexander Alekhin
5d68c8dbe7 videoio(test): fixup information dump 2018-05-31 18:54:43 +03:00
Alexander Alekhin
b934702c7f cmake: support find_package(FFMPEG)
Use "OPENCV_FFMPEG_USE_FIND_PACKAGE" variable to specify find_package() parameters
2018-05-31 18:27:01 +03:00
Alexander Alekhin
c94fe0c7e7 videoio(v4l): eliminate global variable 2018-05-31 15:11:20 +03:00
Alexander Alekhin
83d915eca1 videoio(v4l): don't pre-scan or cache list of available cameras 2018-05-31 15:11:20 +03:00
Alexander Alekhin
22f435ff4d videoio(v4l): fix code indentation, tabs 2018-05-31 15:11:20 +03:00
Alexander Alekhin
ddba772297 videoio: fix isOpened() method for legacy APIs, fix "index" API list 2018-05-31 14:07:22 +03:00
Alexander Alekhin
133e9f2012 Merge pull request #11618 from alalek:ffmpeg_debug_log 2018-05-30 15:36:42 +00:00
Alexander Alekhin
8f28817373 Merge pull request #11617 from alalek:ffmpeg_fix_time_base 2018-05-29 15:19:13 +00:00
Alexander Alekhin
83ec0f526c videoio(ffmpeg): add option to enable debug logs 2018-05-29 12:40:52 +00:00
Alexander Alekhin
cd9e43704e videoio: backends priority list 2018-05-29 12:06:45 +00:00
Alexander Alekhin
5128c1ff1f videoio(ffmpeg): specify stream->time_base
Using codec->time_base is deprecated to specify muxer settings.
Resolves issue with FPS value for AVI files with FFmpeg 4.0.

Related FFmpeg commits:
- 194be1f43e
- 91736025b2
2018-05-29 11:42:50 +00:00
Alexander Alekhin
0a6d190095 Merge pull request #11396 from terfendail:msmf_icapture 2018-05-24 18:30:09 +00:00
Alexander Alekhin
5a706eee8a Merge pull request #11578 from alalek:build_warnings 2018-05-23 15:02:32 +00:00
Vitaly Tuzov
9622ca0e37 MSMF-based VideoCapture and VideoWriter backend changed to C++ interface 2018-05-23 17:54:08 +03:00
Alexander Alekhin
39b60f9b17 fix build warnings 2018-05-23 16:04:41 +03:00
Maksim Shabunin
1a15136536 GStreamer backend: fixed memory leak and version check 2018-05-23 10:48:13 +03:00
Alexander Alekhin
e21c01708a videoio: fix lifetime management of data of input frames 2018-05-21 12:29:24 +03:00
Vitaly Tuzov
aeed43ec90 FFMPEG-based VideoCapture and VideoWriter backend changed to C++ interface 2018-05-16 17:19:18 +03:00
shengyu
70455a959d tab to space 2018-05-09 21:15:51 +08:00
Damien Picard
ba000bf8ea Fixes 11480 : allow to force the video codec used to read videos
with the ffmpeg backend
2018-05-08 15:02:01 +02:00
Alexander Alekhin
e7adce851c
Merge pull request #11314 from terfendail:msmf_camera 2018-04-27 19:34:29 +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
Alexander Alekhin
8e15c6fd78 videoio(openni2): fix CV_CAP_PROP_OPENNI2_SYNC property 2018-04-26 14:16:03 +03:00
Alexander Alekhin
84db82a329 build: fix warnings 2018-04-24 16:15:22 +03:00
Alexander Alekhin
ef2548778c build: -Wimplicit-fallthrough warning for GCC 7+ only 2018-04-24 16:03:40 +03:00
Alexander Alekhin
6b581c4e51 build: unreachable code after CV_Error() (part 2) 2018-04-24 16:03:40 +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
Maksim Shabunin
5309832308 VideoIO: prettier test console output, gstreamer capture backend changed to C++ interface 2018-04-23 13:21:37 +03:00
Vadim Pisarevsky
9615f8c994 Merge pull request #11358 from mshabunin:enable-xine 2018-04-23 10:09:29 +00:00
Simon Que
705464258e Merge pull request #11353 from eecsninja:3.4
* Fix CV_Asserts with negation of strings

{!"string"} causes some compilers to throw a warning.

The value of the string is not that important -- it's only for printing
the assertion message.

Replace these calls with:

  CV_Error(Error::StsError, "string")

to suppress the warning.

* remove unnecessary 'break' after CV_Error()
2018-04-20 15:31:47 +03:00
Maksim Shabunin
a9bdf75c5b videoio: refactored XINE backend 2018-04-20 15:20:46 +03:00
Alexander Alekhin
12e8e33144 build: enable -Wimplicit-fallthrough warning for OpenCV modules 2018-04-19 19:54:03 +03:00
Alexander Alekhin
d2d9fd6945 build: fix MSVS build problems
with 'CL=/permissive-'
2018-04-10 14:50:56 +03:00
Alexander Alekhin
86488ac1bc Merge pull request #11130 from allnes:gst_test_pipeline 2018-04-09 18:21:11 +00:00
Alexander Nesterov
c0d6f3d23e Added tests for gstreamer pipeline 2018-04-10 02:33:26 +03:00
Alexander Alekhin
b76ce0e0a4 Merge pull request #11253 from mshabunin:decrease-tbb-dependency 2018-04-09 16:03:34 +00:00
tlanclos
a2c7afad77 V4L Buffer: Support CV_CAP_PROP_BUFFERSIZE in cap_v4l (#11047) 2018-04-09 17:34:00 +03:00
Vitaly Tuzov
24bd44f088 MSMF-based VideoCapture reworked to use SourceReader 2018-04-06 17:39:56 +03:00
Maksim Shabunin
b88609a921 Reduced direct TBB dependencies 2018-04-06 14:21:15 +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
Arkadiusz Raj
619e4c94d5 Protection to not run Eth config when USB camera is connected 2018-04-01 15:37:10 +02:00
Alexander Alekhin
177be2adda Merge pull request #11174 from corleypc:master 2018-03-29 13:50:44 +00:00
Alexander Alekhin
8f0669c300 videoio: apply CV_OVERRIDE/CV_FINAL 2018-03-28 17:57:59 +03:00
corley
a4b9ce764c Fixed silent failures in getting and setting properties 2018-03-28 00:05:54 +03:00
corley
f441515357 Fixed a couple of memory leaks in videoInput::getDevice() when multiple devices are present in the system 2018-03-27 00:54:48 +03:00
Anthony Wertz
c6cf7f8080 Sets a higher limit on videoio's AVI container's maximum chunk size, and adds an explanation of the assertion. Closes #11126 2018-03-23 12:03:46 -04:00
miqlas
f3a9f13cb4 Merge pull request #10984 from extrowerk:advanced_haiku_patches
* Haiku supporting patches

* Revert uneeded changes

* Whitespace cleanup
2018-03-14 17:09:10 +03:00
Alexander Alekhin
8edc2e5aaf Merge pull request #10928 from Mehanik:fix_timeout 2018-03-07 12:34:09 +00:00
Eugene Mikhantiev
c790299906 Fix return code in case of timeout 2018-03-07 17:26:34 +07:00
Tomoaki Teshima
a9f3a7de39 add workaround of old gstreamer 2018-03-05 19:27:49 +09:00
Maksim Shabunin
fbb2cabe77 Use fixed size types in AVIContainer structs 2018-02-22 17:11:25 +03:00
Alexander Alekhin
9819ebc095 videoio: add missing CAP_PROP_SAR_NUM/DEN propepties into .hpp file
reuse av_guess_sample_aspect_ratio() if available in ffmpeg
2018-02-21 19:14:04 +03:00
Alexander Alekhin
2aa15ab3ff ffmpeg: fix 'uchar' error
> cap_ffmpeg_impl.hpp:1710:11: error: 'uchar' does not name a type
2018-02-20 13:15:41 +03:00
Tomoaki Teshima
bcce25900b read in gray scale mode when writing a gray scale video 2018-02-19 18:33:05 +09:00
Alexander Nesterov
df8f61877e Added avi-container with tests 2018-02-15 17:34:49 +03:00
luz.paz
d05714995c Misc. modules/ cont. pt2
Found via `codespell`
2018-02-13 11:28:11 -05:00
Alexander Alekhin
4a297a2443 ts: refactor OpenCV tests
- removed tr1 usage (dropped in C++17)
- moved includes of vector/map/iostream/limits into ts.hpp
- require opencv_test + anonymous namespace (added compile check)
- fixed norm() usage (must be from cvtest::norm for checks) and other conflict functions
- added missing license headers
2018-02-03 19:39:47 +00:00
Alexander Alekhin
73316e10a0 java(test): fix test names 2018-01-12 19:14:00 +00:00