Commit Graph

959 Commits

Author SHA1 Message Date
Vasiliy Sorokin
b6a72826dd videio: Fix new frame size appling in v4l. 2018-12-20 14:59:39 +03:00
Alexander Alekhin
7fb70e1701 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-18 19:07:43 +00:00
Alexander Alekhin
eb1f3733ee videoio(dc1394): use lazy initialization on demand 2018-12-15 07:58:39 +00:00
Pavel Rojtberg
d7f60f69f1 videoio: fix CAP_IMAGES
broken in 11eafca3e2
2018-12-14 15:32:33 +01:00
Alexander Alekhin
0c16d8f6c3 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-13 15:12:26 +03:00
Alexander Alekhin
b7bb79c7c8 videoio(MSMF): backport WITH_MSMF_DXVA flag 2018-12-13 14:56:20 +03:00
Alexander Alekhin
cea3289bd4 Merge pull request #13420 from ThadHouse:Windows7shlwapi 2018-12-12 14:58:51 +00:00
Thad House
857fba0878 Remove MinCore_Downlevel, replace with Shlwapi
On windows 7, MinCore_Downlevel does not work correctly. However, the only API used was QISearch, which can be found in Shlwapi.

Closes #12010
2018-12-11 17:06:01 -08:00
Tsukasa Sugiura
09b3dcb6db Merge pull request #13341 from UnaNancyOwen:fix_librealsense
* videoio(librealsense): fix pipeline start with config

fix to apply pipeline settings by passing config to start.

* videoio(librealsense): add support get props

add support get some props.
2018-12-05 20:12:25 +03:00
Alexander Alekhin
2e0150e601 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-03 18:38:27 +03:00
Alexander Alekhin
26d2095dd6 videoio(v4l): initialize members in ctor 2018-12-03 15:22:20 +03:00
Alexander Alekhin
c0016d7fe9
Merge pull request #13253 from alalek:fix_13201
* cmake: install 'legacy/constants_c.h' files

* samples: add compatibility test code
2018-11-23 20:02:46 +03:00
Alexander Alekhin
a574788e89 move legacy C-API constants into separate files 2018-11-17 23:47:51 +00:00
Pavel Rojtberg
846a500fb4 videoio: drop VideoCaptureModes enum in favour of fourcc 2018-11-13 17:20:24 +01:00
Alexander Alekhin
65fb8ae33e
Merge pull request #13137 from alalek:videoio_v4l_disable_normalization 2018-11-12 22:15:00 +03:00
Alexander Alekhin
fc3fc6005e
Merge pull request #13126 from mshabunin:remove_libv4l 2018-11-12 22:10:49 +03:00
Alexander Alekhin
e0e828ef5c videoio: remove using of HAVE_CAMV4L 2018-11-12 18:53:19 +00:00
Maksim Shabunin
ab65b9745b Repair V4L backend 2018-11-12 20:04:33 +03:00
Alexander Alekhin
4e3ab026fe videoio(v4l): turn off normalization of V4L properties 2018-11-12 19:10:13 +03:00
Alexander Alekhin
f5b212a9d4 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-12 17:58:45 +03:00
Pavel Rojtberg
0d65397ae7 videoio: remove cap_libv4l in favour of cap_v4l
cap_libv4l depends on an external library (libv4l) yet is still larger
(1966 loc vs 1822 loc).
It was initially introduced copy pasting cap_v4l in order to offload
various color conversions to libv4l.
However nowadays we handle most of the needed color conversions inside
OpenCV. Our own implementation is better tested and (probably) also
better performing. (as it can optionally leverage IPP/ OpenCL)

Currently cap_v4l is better maintained and generally the code is in
better shape. There is however an API
difference in getting unconverted frames:
* on cap_libv4l one need to set `CV_CAP_MODE_GRAY=1` or
`CV_CAP_MODE_YUYV=1`
* on cap_v4l one needs to set `CV_CAP_PROP_CONVERT_RGB=0`

the latter is more flexible though as it also allows accessing undecoded
JPEG images.

fixes #4563
2018-11-12 13:38:59 +03:00
Alexander Alekhin
801c943009 fix coverity reports 2018-11-11 13:51:47 +00:00
Alexander Alekhin
1913482cf5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-10 20:50:26 +00:00
Alexander Alekhin
8675a8c743 Merge pull request #12878 from tompollok:3.4 2018-11-09 19:54:17 +00:00
Pavel Rojtberg
afa0f80c61 videoio: add manual white-balance and implement it for V4L2 2018-11-09 17:14:33 +01:00
Vadim Pisarevsky
11eafca3e2
removed C API in the following modules: photo, video, imgcodecs, videoio (#13060)
* removed C API in the following modules: photo, video, imgcodecs, videoio

* trying to fix various compile errors and warnings on Windows and Linux

* continue to fix compile errors and warnings

* continue to fix compile errors, warnings, as well as the test failures

* trying to resolve compile warnings on Android

* Update cap_dc1394_v2.cpp

fix warning from the new GCC
2018-11-09 00:52:09 +03:00
Alexey Nikolaev
8396ae6e4f Merge pull request #12893 from aleksey-nikolaev:cap-update
V4L (V4L2): Refactoring. Added missed camera properties. Fixed getting `INF` for some properties. Singlethread as always (#12893)

* cap_v4l:
1 Added cap_properties verbalization.
2 Set Get of properties elementary refactoring.
3 Removed converting parameters to/from [0,1] range.
4 Added all known conversion from V4L2_CID_* to CV_CAP_PROP_*

* cap_v4l:
1. Removed all query for parameters range.
2. Refactored capture initialization.
3. Added selecting input channel by CV_CAP_PROP_MODE. Default value -1 the channels not changed.

* cap_v4l:
1. Refactoring of Convert To RGB

* cap_v4l:
1. Fixed use of video buffer index.
2. Removed extra memcopy for grab image.
3. Removed device closing from autosetup_capture_mode_v4l2

* cap_v4l:
1. The `goto` was eliminated
2. Fixed use of temporary buffer index for V4L2_PIX_FMT_SN9C10X
3. Fixed use of the bufferIndex
4. Removed trailing spaces and unused variables.

* cap_v4l:
1. Alias for capture->buffers[capture->bufferIndex]
2. Reduced size of data for memcpy: bytesused instead of length
3. Refactoring. Code duplication. More info for debug

* cap_v4l:
1. Added the ability to grab and retrieveFrame independently several times

* cap_v4l:
1. Not need to close/open device for new capture parameters applying.
2. Removed using of device name as a flag that the capture is closed. Added sufficient function.
3. Refactoring. Added requestBuffers and createBuffers

* cap_v4l:
1. Added tryIoctl with `select` like was in mainloop_v4l2.
2. Fixed buffer request for device without closing the device.
3. Some static function moved to CvCaptureCAM_V4L
4. Removed unused defines

* cap_v4l:
1. Thread-safe now

* cap_v4l:
1. Fixed thread-safe destructor
2. Fixed FPS setting

* Missed brake

* Removed thread-safety

* cap_v4l:
1. Reverted conversion parameters to/from [0,1] by default for backward compatibility.
2. Added setting for turn off compatibility mode: set CV_CAP_PROP_MODE to 65536
3. Most static functions moved to CvCaptureCAM_V4L
4. Refactoring of icvRetrieveFrameCAM_V4L and using of frame_allocated flag

* cap_v4l:
1. Added conversion to RGB from NV12, NV21
2. Refactoring. Removed wrappers for known format conversions.

* Added `CAP_PROP_CHANNEL` to the enum VideoCaptureProperties.
CAP_V4L migrated to use VideoCaptureProperties.

* 1. Update comments.
2. Environment variable `OPENCV_VIDEOIO_V4L_RANGE_NORMALIZED` for setting default backward compatibility mode.
3. Revert getting of `CAP_PROP_MODE` as fourcc code in backward compatibility mode.

* videoio: update cap_v4l - compatibilityMode => normalizePropRange

* videoio(test): V4L2 MJPEG test

`v4l2-ctl --list-formats` should have 'MJPG' entry

* videoio: fix buffer initialization

to avoid "munmap: Invalid argument" messages
2018-11-08 21:27:45 +03:00
tompollok
2da56d5af6 refactoring catching all exceptions as const ref 2018-11-08 19:59:47 +03:00
unknown
13ede34516 Add support for changing fourcc and support mono formats (e.g. Y8, Y16) 2018-11-07 21:03:36 +00:00
Alexander Alekhin
c72b6b3be8 Merge pull request #13043 from alalek:compatibility_12623 2018-11-07 20:54:40 +00:00
Alexander Alekhin
5869415a57 videoio: drop obsolete backends
- VFW
- QuickTime/QtKit
- Unicap - GPL, no active support: https://github.com/unicap/unicap
- DC1394 (1st version) / CMU1394
2018-11-07 19:49:09 +03:00
Alexander Alekhin
2c6f1ab57d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-06 20:04:31 +00:00
Alexander Alekhin
4395c1b9f8 videoio: backport "VideoCapture(int index, int apiPreference)" interface 2018-11-04 17:27:47 +00:00
Alexander Alekhin
c6d2f0399a videoio: fix build of standalone ffmpeg plugin 2018-11-03 02:17:47 +00:00
Alexander Alekhin
687fa6a8ca Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-02 05:33:35 +00:00
Emanuele Ruffaldi
b4398d62b2 ffmpeg for lossy 2018-11-01 00:06:29 +00:00
Alexander Alekhin
50bec53afc Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-26 17:56:55 +03:00
wanghanmin
eb981cc7d7 Merge pull request #12138 from wanghanmin:wanghanmin-patch-videoio_crossbarsetting-1
* Update videoio.hpp

add VideoCapturePropertie for clossbar input pin setting

* Update cap_dshow.cpp

For some kind of capture card, such as "avermedia cv710 " , it use SerialDigital as input pin and so it can not work.
Here added new PhysicalConnectorType enumeration: PhysConn_Video_YRYBY and PhysConn_Video_SerialDigital to support it.
And also provide new property parameter CAP_CROSSBAR_INPIN_TYPE to set the crossbar input pin type which will be used in videoInput::start(int deviceID, videoDevice *VD):
" if(VD->useCrossbar)
    {
        DebugPrintOut("SETUP: Checking crossbar\n");
        routeCrossbar(&VD->pCaptureGraph, &VD->pVideoInputFilter, VD->connection, CAPTURE_MODE);

    }
"

And at last ,fixed one issue for function setSizeAndSubtype, added code 
pVih->rcSource.top = pVih->rcSource.left = pVih->rcTarget.top =pVih->rcTarget.left=0;
pVih->rcSource.right = pVih->rcTarget.right= attemptWidth;
pVih->rcSource.bottom = pVih->rcTarget.bottom = attemptHeight;

without these code , rcSource and rcTarget will keeping use default resolution and cause fail in hr = VD->streamConf->SetFormat(VD->pAmMediaType) and cannot find suitable MediaType.

Tested with python3 and mfc (Avermedia cv710)
Python3 code:
import cv2
print("test cv")
cap=cv2.VideoCapture(0)
cap.set(5,60)
cap.set(3,1920)
cap.set(4,1080)
cap.set(31,6)


ret,img=cap.read()
cv2.namedWindow("cap",cv2.WINDOW_NORMAL)
cv2.resizeWindow("cap",960,640);
while True:
    ret,img=cap.read()
    if ret==False:
        continue
    cv2.imshow("cap",img)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
cap.release()

cv2.destroyAllWindows()

MFC code:
void CcvtestDlg::OnBnClickedButton1()
{
VideoCapture cap(0);
cap.set(CAP_PROP_FRAME_WIDTH, 1920);
cap.set(CAP_PROP_FRAME_HEIGHT, 1080);

cap.set(CAP_CROSSBAR_INPIN_TYPE , 6);
Mat img;
namedWindow("test", WINDOW_NORMAL);
resizeWindow("test", 960, 640);
while (1)
{
if (cap.read(img))
{
imshow("test", img);
if ('q' ==waitKey(1))
break;
}
}
destroyAllWindows();
cap.release();
}

* Update cap_dshow.cpp

* Update videoio.hpp

move enum value of CAP_CROSSBAR_INPIN_TYPE to the end of list

* Update videoio.hpp

* Update cap_dshow.cpp

removed trailing whitespace

* Update test_camera.cpp

Add test for capture device using PhysConn_Video_SerialDigital as crossbar input pin

* Update test_camera.cpp

Correction of misunderstanding about how to add test case.
2018-10-25 19:41:37 +03:00
Alexander Alekhin
a1bd39441f videoio: fix typo 2018-10-24 19:12:35 +03:00
Alexander Alekhin
9c23f2f1a6 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-20 11:37:54 +00:00
Michał Janiszewski
5640b36f6d Remove unused empty block 2018-10-16 22:51:03 +02:00
Alexander Alekhin
edacd91a27 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-15 20:15:42 +00:00
Alexander Alekhin
b54a70a538 videoio: return -1 is incorrect for function with 'bool' result 2018-10-15 18:20:15 +00:00
Alexander Alekhin
f1fdfa1a51 Merge pull request #12623 from sturkmen72:videoio-4 2018-10-11 19:24:57 +00:00
Alexander Alekhin
35c53204cb Merge pull request #12781 from alalek:videoio_drop_rectification_dc1394 2018-10-10 20:01:06 +00:00
Suleyman TURKMEN
59bf2a34fa Update videoio 2018-10-10 21:58:04 +03:00
Alexander Alekhin
dada5a422d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-09 21:20:15 +00:00
Alexander Alekhin
8bb3d363a4 videoio: drop rectification code for VIDERE cameras 2018-10-09 14:06:15 +00:00
Alexander Alekhin
068ebe8b4d Merge pull request #12693 from peters:patch-1 2018-10-03 06:14:44 +00:00
Peter Rekdal Sunde
042c486b68 Obtain fourcc when AVStream is network stream
The `codec_tag` is only available when opening a file from disk. If `AVStream` is a network stream then `fourcc` must be obtained using `codec_id`. I have tested the following scenarios:
1) Open a `.mp4` file and verify that `codec_tag` is returned (old behavior)
2) Open a `rtsp` stream and verify that `codec_fourcc` is returned (Tested with a MJPEG, H264 and H265 stream)
2018-10-02 22:15:05 +02:00
Alexander Alekhin
690fb0544c Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-02 14:31:05 +03:00
Loic Petit
255b20f6de
Fix frame rate rounding in ffmpeg wrapper (#9023) 2018-09-30 22:24:02 +02:00
Alexander Alekhin
83efde6243 Merge pull request #12678 from cv3d:cleanup/python/enums 2018-09-28 16:07:21 +00:00
Alexander Alekhin
a8b0db4e5d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-28 14:14:47 +03:00
Hamdi Sahloul
e104fcc000 Generate enum bindings automatically 2018-09-28 15:39:51 +09:00
Maksim Shabunin
e0f524d3b7 Fixed several incorrect printf format specifiers 2018-09-24 11:31:40 +03:00
Pavel Rojtberg
d1c842cf29 core: fix printf warnings by using c++11 format 2018-09-24 11:31:40 +03:00
Alexander Alekhin
d3eed2cf23 videoio: CAP_PROP_BACKEND property interface 2018-09-18 16:25:01 +00:00
Alexander Alekhin
51f7eb3a3c videoio(test): add "camera" tests
- disabled due specific requirements (camera, OpenNI camera, etc)
- designed for manual validation
2018-09-18 16:19:19 +00:00
Alexander Alekhin
b35fbff675 videoio: added '.getBackendName()' method 2018-09-18 16:19:19 +00:00
Alexander Alekhin
53ad291ef1 Merge pull request #12572 from alalek:ffmpeg_update_master 2018-09-18 16:12:10 +00:00
Alexander Alekhin
e6171d17f8 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-18 12:49:52 +03:00
Alexander Alekhin
3cab9e7a9c 3.4: fixes 2018-09-18 08:31:11 +00:00
Alexander Alekhin
699565828d videoio(test): dump file size information 2018-09-18 08:04:51 +00:00
Alexander Alekhin
808ba552c5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-14 23:44:35 +00:00
Hamdi Sahloul
5d54def264 Add semicolons after CV_INSTRUMENT macros 2018-09-14 06:45:31 +09:00
Alexander Alekhin
b80c978f5d core: change cv::Ptr DefaultDeleter 2018-09-12 12:20:15 +00:00
Alexander Alekhin
dca657a2fd Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-10 00:10:21 +03:00
cyy
286c2c236b Merge pull request #12458 from DEEPIR:3.4
* may be an typo fix

* remove identical branch,may be paste error

* add parentheses around macro parameter

* simplify if condition

* check malloc fail

* change the condition of branch removed by commit 3041502861
2018-09-07 18:43:47 +03:00
Hamdi Sahloul
a39e0daacf Utilize CV_UNUSED macro 2018-09-07 20:33:52 +09:00
Alexander Alekhin
73bfe68821 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-07 12:40:27 +03:00
Alexander Alekhin
8a3c394d6a don't use constructors for C API structures 2018-09-06 14:34:16 +03:00
Alexander Alekhin
c441ad36c8 build: don't use nullptr without C++11 guard 2018-09-05 06:19:02 +00:00
Alexander Alekhin
d74b98c3d9 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-04 18:39:03 +00:00
Todor Tomov
9988e1b6ee cap_v4l: Fix private control enumeration end condition
Currently the private control enumeration will be stopped when QUERYCTRL
returns -EINVAL only. It is possible however that other errors occur.

One particular case is when the v4l2 device doesn't support any controls
and doesn't implement the QUERYCTRL ioctl. In that case the v4l2
framework returns -ENOTTY. In that case the current control enumeration
will go in an endless loop.

To fix this change the control enumeration stop condition. If any errors
occur, end the control enumeration.

Signed-off-by: Todor Tomov <todor.tomov@linaro.org>
2018-09-04 11:33:08 +03:00
Peter Jozsa
8b0e1c7fcb Fix https://github.com/opencv/opencv/issues/12301 2018-09-03 14:56:38 +02:00
Jakub Golinowski
9f1218b00b Merge pull request #11897 from Jakub-Golinowski:hpx_backend
* Add HPX backend for OpenCV implementation
Adds hpx backend for cv::parallel_for_() calls respecting the nstripes chunking parameter. C++ code for the backend is added to modules/core/parallel.cpp. Also, the necessary changes to cmake files are introduced.
Backend can operate in 2 versions (selectable by cmake build option WITH_HPX_STARTSTOP): hpx (runtime always on) and hpx_startstop (start and stop the backend for each cv::parallel_for_() call)

* WIP: Conditionally include hpx_main.hpp to tests in core module
Header hpx_main.hpp is included to both core/perf/perf_main.cpp and core/test/test_main.cpp.
The changes to cmake files for linking hpx library to above mentioned test executalbles are proposed but have issues.

* Add coditional iclusion of hpx_main.hpp to cpp cpu modules

* Remove start/stop version of hpx backend
2018-08-31 16:23:26 +03:00
Alexander Alekhin
c1db75e0c7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-29 16:24:56 +03:00
Maxim Smirnov
c94d75874b CV_Asserts changed
Some `CV_Assert`s changed to `CV_Assert_N`s according to https://github.com/opencv/opencv/issues/12304
2018-08-25 14:52:27 +03:00
Alexander Alekhin
6356403964 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-22 17:38:51 +03:00
Kaartic Sivaraam
a527e8cc73 cap-v4l: remove unwanted loop in V4L2 mainloop
The while loop would run only once making it useless and leading
to confusion.

So, remove the unwanted while loop and just keep an infinite for
loop.
2018-08-21 16:41:01 +05:30
Alexander Alekhin
7d4bb9428b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-20 19:30:18 +03:00
Alexander Alekhin
31fef14d76 Merge pull request #12136 from sturkmen72:update_documentation 2018-08-17 14:02:20 +00:00
Suleyman TURKMEN
c61bc3a0cb Update documentation and samples 2018-08-17 14:21:29 +03:00
Alexander Alekhin
4eb2966559 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-07 20:12:10 +03:00
Maksim Shabunin
39f5e57321 Merge pull request #12159 from zarelaky:master 2018-08-07 13:15:19 +00:00
zarelaky
715f23127c Update cap_gstreamer.cpp
fixed call open(int id) failed
2018-08-07 15:21:46 +03:00
Maksim Shabunin
731aa963bd Merge pull request #12166 from berak:fix_mjpeg_decoder 2018-08-07 12:09:13 +00:00
berak
7e353a1ec5 videoio: check iterator in mjpeg_encoder.cpp 2018-08-07 11:43:37 +02:00
Maksim Shabunin
a2daf0c83c videoio: added YUV420 format (UV order) support to v4l capture 2018-08-02 18:34:11 +03:00
Alexander Alekhin
82c477c9f7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-31 21:35:00 +03:00
Alexander Alekhin
61c870ae09 Merge pull request #12080 from mshabunin:fix-static-3 2018-07-31 14:53:28 +00:00
Alexander Alekhin
0bef42ba12 videoio: add note about image BGR format VideoWriter::write() 2018-07-28 09:08:09 +00:00
Maksim Shabunin
dd8e990451 Fixed several issues found by static analysis, GStreamer backend 2018-07-27 18:41:39 +03:00
Maksim Shabunin
e031bada7d Fixed several issues found by static analysis, Windows-specific 2018-07-27 18:25:55 +03:00
Alexander Alekhin
9787ab598b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-24 22:48:54 +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
Alexander Alekhin
4560909a5e Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-17 19:27:48 +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
2da96be217 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-09 19:44:51 +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
3165baa1f1 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-02 14:58:29 +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
Florian Echtler
17888ce0fd add support for 8-bit greyscale format 2018-06-27 15:31:53 +02: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
b39cd06249 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-06-25 22:03:17 +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
2195f0cc62 Merge pull request #11795 from paroj:realsensev2 2018-06-23 18:50:43 +00:00
Pavel Rojtberg
2047abd9c3 videoio: realsense - add cvtColor as the pixel-format is only a hint 2018-06-19 17:55:09 +02:00
Alexander Alekhin
64f2b1b250 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-06-17 16:26:48 +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
0d6518aaa0 Merge remote-tracking branch 'upstream/3.4' into merge-3.4
OpenCV FFmpeg wrapper download links are preserved from ffmpeg/master branch
2018-06-13 19:34:44 +03: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
Pavel Rojtberg
bfc227b8d4 videoio: update librealsense to API 2.0
this enables the usage of current sensors, while dropping support for
legacy devices, see:
https://github.com/IntelRealSense/librealsense#overview

Given limited resources, and that the legacy sensors where not that
great, I think we should focus on v2.
2018-06-08 18:23:00 +02: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
45dd575ed2 Merge remote-tracking branch 'upstream/3.4' into merge-3.4
Revert "documentation: avoid links to 'master' branch from 3.4 maintenance branch"
This reverts commit 9ba9358ecb.

Revert "documentation: avoid links to 'master' branch from 3.4 maintenance branch (2)"
This reverts commit f185802489.
2018-06-04 19:26:10 +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
0f298a4203 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-28 11:22:55 +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
ba1bd64bf9 Merge pull request #11532 from paroj:realsense 2018-05-21 15:59:46 +00:00
Alexander Alekhin
e21c01708a videoio: fix lifetime management of data of input frames 2018-05-21 12:29:24 +03:00
Pavel Rojtberg
936d2963a2 videoio: add rudimentary librealsense 1.x support
it is reusing CAP_INTELPERC* enums as Intel PerC is deprecated and
librealsense replaces it.
2018-05-17 11:56:52 +02: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
Stanislaw Halik
c8794c89c7 modules/videoio: fix PS3Eye camera property window
v2: fix stray trailing whitespace

v3: only allow for up to one property window at the time

Opening multiple windows in the same process will just confuse
the camera filter or outright crash.

Suggested-by: @alalek

Also return whether a dialog was opened at the time.
2018-01-11 16:37:02 +01:00
Maksim Shabunin
f0b606ff77 Changed VA device in MediaSDK session initialization 2017-12-28 14:10:36 +03:00
Tomoaki Teshima
fe7b3f1228 clean up the code
* disable the warning in CMake, not int the code using pragma
2017-12-22 08:42:21 +09:00
Maksim Shabunin
7349b8f5ce Build for embedded systems 2017-12-11 13:27:37 +03:00
Alexander Alekhin
66e09bc9a4 Merge pull request #10260 from native-api:ffmpeg_load_from_package 2017-12-08 20:58:17 +00:00
Ivan Pozdeev
4bee238cf8 GetModuleFileName() doesn't reset last error on success 2017-12-08 21:11:41 +03:00
Riyuzakii
8f1345091e Remove typo/repeated code block 2017-12-08 12:10:00 +05:30
Maksim Shabunin
800294ad4b Merge pull request #10060 from allnes:videoio_tests_backend 2017-12-01 09:38:19 +00:00
Maksim Shabunin
7eb1065944 Fixed/disabled warnings produced by GCC 7 2017-11-29 17:21:22 +03:00
Vadim Pisarevsky
bc547c4290 Merge pull request #10124 from zhongwuzw:master 2017-11-28 10:53:00 +00:00
Alexander Alekhin
559235ac74 videoio(ffmpeg): more workarounds for sws_scale() crash
Prevents access data after the end of input buffer near 4K page boundaries
2017-11-23 18:56:19 +03:00
Maksim Shabunin
6f48dc2482 Fixed GStreamer pipeline building on Ubuntu 17 2017-11-23 15:03:20 +03:00
Alexander Nesterov
8082011546 Update videoio tests 2017-11-23 14:57:38 +03:00
Maksim Shabunin
7628c143f4 videoio: fixed capture open order, added apiPrefernce to FFMPEG tests 2017-11-23 13:33:48 +03:00
zhongwuzw
01b581048d Fix customPreviewLayer layout issue when rotateVideo is NO in iOS 2017-11-21 12:56:23 +08:00
Jonathan Viney
b1d208891b Merge pull request #10011 from jviney:master
Fix build with FFmpeg master. Some deprecated APIs have been removed. (#10011)

* Fix build with FFmpeg master.

* ffmpeg: update AVFMT_RAWPICTURE support removal
2017-11-18 21:08:41 +03:00
Alexander Alekhin
981009ac1f Merge pull request #9999 from mshabunin:fix-gcc72-warnings 2017-11-07 13:37:25 +00:00
Alexander Alekhin
96aebbe7f9 Merge pull request #9970 from mshabunin:media-sdk-convert 2017-11-07 13:37:07 +00:00
Maksim Shabunin
184daa155f Fixed minor issues reported by GCC 7.2 2017-11-03 18:06:39 +03:00
Alexander Alekhin
b1b2528e50 videoio: improve condition for MJPEG gstreamer sink 2017-11-02 18:27:30 +03:00
Maksim Shabunin
0c79f4a00f MediaSDK: fixed Linux build, improved BGR<->NV12 conversions 2017-11-01 14:14:45 +03:00
Vitaly Tuzov
ad051cdd99 Fixed CAP_PROP_FORMAT evaluation in case CvCaptureCAM_V4L returns CV_16U image 2017-10-19 20:51:00 +03:00
Maksim Shabunin
83655ba9be MediaSDK video backend: Windows support 2017-10-11 16:33:37 +03:00
Maksim Shabunin
ef332dc550 Fixed and suppressed warnings produced by GCC 6.3.0 2017-10-09 13:52:07 +03:00
Vadim Pisarevsky
87595a6b3a Merge pull request #9779 from Lightricks:feature/assetslibrary-remove-link 2017-10-06 11:45:36 +00:00
Yaron Inger
0d979a741b videoio: remove AssetsLibrary dependency.
The entire AssetsLibrary framework is deprecated since iOS 8.0. The code
used in the camera example code can use UIKit to save videos to the
camera instead, which allows to avoid linking with PhotoKit instead to
prevent increasing the iOS deployment target.
2017-10-05 20:22:56 +03:00
Adam Rankin
fb8143d55d Using environment variable to store capture options (#9292)
* Using environment variable to store options parsed by av_dict_parse_string(ENV{OPENCV_FFMPEG_CAPTURE_OPTIONS}, ";", "|")

* Adding missing mandatory flags parameter

* Guarding against missing function via LIBAVUTIL version

* Code review fixes

Copy/paste error due to coder mistake reverted
Proper version checking for LIBAVUTIL_BUILD
2017-09-19 13:29:43 +03:00
Vladislav Sovrasov
32bf712102 cmake: disable implicit-fallthrough by default 2017-09-11 16:04:00 +03:00
Maksim Shabunin
235b00b6ee Fixed MediaSDK tests and build warnings 2017-08-31 16:50:42 +03:00
Alexander Alekhin
80519a0278 Merge pull request #9326 from sovrasov:video_cap_new_check 2017-08-30 14:29:48 +00:00
Vadim Pisarevsky
048feeb3f0 Merge pull request #9416 from eruffaldi:f_9411_mingw_videoio 2017-08-28 20:22:56 +00:00
Vadim Pisarevsky
d861c03366 Merge pull request #9479 from alalek:issue_9477 2017-08-28 20:10:32 +00:00
Alexander Alekhin
52a60526f1 Merge pull request #9492 from paroj:ximea_serial 2017-08-28 19:33:54 +00:00
Pavel Rojtberg
01acb08c7b videoio: ximea - allow opening capture by serial number 2017-08-28 16:58:22 +02:00
Alexander Alekhin
897b071b97 videoio(v4l): move MJPEG/JPEG to the end of probe list 2017-08-27 10:26:05 +03:00
Emanuele Ruffaldi
588ca5d126 videoio for mingw32: added STRSAFE_NO_DEPRECATE and realpath 2017-08-19 23:51:02 +02:00
Alexander Alekhin
b6949c5088 cmake: CMP0022 NEW 2017-08-19 15:15:05 +00:00
Vladislav Sovrasov
2b8f888ea4 videoio: remove throw lists since they are deprecated in cxx11 (and gcc7 produces a warning) 2017-08-18 12:07:24 +03:00
Vladislav Sovrasov
651a1d2869 videoio: don't pass zero fps to 3rd-party codecs 2017-08-08 15:17:42 +03:00
Alexander Alekhin
c95a97389d Merge pull request #9235 from sturkmen72:patch-3 2017-08-03 17:04:28 +00:00
Suleyman TURKMEN
89480801b8 some improvements on tutorials 2017-07-29 20:08:19 +03:00
Alexander Alekhin
402a77e7f7 Merge pull request #9237 from alalek:fix_winrt_build 2017-07-26 10:42:49 +00:00
Alexander Alekhin
602f047fe8 build: replace WIN32 => _WIN32 2017-07-25 13:30:48 +03:00
Alexander Alekhin
e45d5446f2 cleanup unused 3rdparty files 2017-07-21 15:20:13 +03:00
Alexander Alekhin
49e1f6b161 Merge pull request #9091 from alalek:update_ffmpeg 2017-07-14 17:25:35 +00:00
Alexander Alekhin
1a4c22fc46 Merge pull request #9095 from alalek:fix_gstreamer 2017-07-14 17:24:14 +00:00
Alexander Alekhin
d07eb9ad60 Merge pull request #9157 from zhmu:opencv-dshow-allow-enable-disable-of-debug-messages 2017-07-14 17:18:31 +00:00
Alexander Alekhin
5a54acef4e Merge pull request #9130 from alalek:android_define 2017-07-14 17:17:24 +00:00
Satoshi Tanaka
96a3c7954d Merge pull request #8914 from stnk20:gstreamer_yuv
Add gstreamer capture capability for some YUV formats (#8914)

* Add gstreamer capture capability for some YUV formats.(only for gstreamer-1.0)

* avoid cross initialization error

* add checking if pipeline is manualpipeline, for compatibility.
2017-07-14 17:11:30 +00:00
Rink Springer
df7fb00c21 dshow: Only show debugging messages if environment variable OPENCV_DSHOW_DEBUG is explicitly set to non-zero
Based on discussion at: https://github.com/opencv/opencv/pull/9051
2017-07-13 11:44:20 +02:00
Maksim Shabunin
02db592014 Fixed several issues found by static analysis (Windows specific) 2017-07-10 23:14:02 +03:00
Alexander Alekhin
a4a47b538c build: detect Android via '__ANDROID__' macro
https://sourceforge.net/p/predef/wiki/OperatingSystems
2017-07-10 12:43:59 +03:00
Alexander Alekhin
cc862e996e videoio: fixes for GStreamer support
- emulated frame counter (with autodetection of GStreamer broken behavior)
- skip 'seek' tests if seeking is not supported by backend
- update 'fps' and total frames checks (increase error tolerance)
- update synthetic image generation
2017-07-05 16:52:48 +03:00
Alexander Alekhin
6833b46a05 videoio(test): fix message 2017-07-05 13:45:34 +03:00
Maksim Shabunin
638a01a014 Merge pull request #9038 from mshabunin:fix-static-4 2017-06-30 10:39:36 +00:00
Maksim Shabunin
e0393f8557 Fixed some issues found by static analysis (4th round) 2017-06-30 12:26:53 +03:00
Neil Shipp
3f72ff215e Fix WinRT build breaks in highgui and videoio. 2017-06-29 17:56:09 -07:00
Maksim Shabunin
a769d69a9d Fixed several issues found by static analysis 2017-06-28 18:06:18 +03:00
Alexander Alekhin
82ec76c123 Merge pull request #8990 from mshabunin:fix-static-2 2017-06-27 14:53:26 +00:00
Alexander Alekhin
a87d6b098f videoio: synchronize ffmpeg open() call 2017-06-27 16:32:32 +03:00
Maksim Shabunin
32d4af36e2 Fixing some static analysis issues 2017-06-27 14:30:26 +03:00
Alexander Alekhin
006966e629 trace: initial support for code trace 2017-06-26 17:07:13 +03:00
Maksim Shabunin
8c27ceb9de Merge pull request #8981 from alalek:port_8979 2017-06-26 09:25:23 +00:00
Alexander Alekhin
d7597a8610 videoio: do not mix CV_CAP and CAP_ APIs enum values 2017-06-25 23:35:33 +03:00
Alexander Alekhin
460e9bf0af videoio: drop changes from legacy C-API header 2017-06-25 23:25:56 +03:00
Alexander Alekhin
23f4bff742 videoio: update VideoWriter apiPreference parameter position 2017-06-25 22:57:24 +03:00
Alexander Alekhin
35a2f2fef9 videoio(macosx): fix array access exception in AVFoundation 2017-06-24 11:07:57 +03:00
Maksim Shabunin
87b569d812 Rewritten some tests in videoio and imgcodecs modules
general:
- all iterative tests have been replaced with parameterized tests
- old-style try..catch tests have been modified to use EXPECT_/ASSERT_ gtest macros
- added temporary files cleanup
- modified MatComparator error message formatting

imgcodecs:
- test_grfmt.cpp split to test_jpg.cpp, test_png.cpp, test_tiff.cpp, etc.

videoio:
- added public HAVE_VIDEO_INPUT, HAVE_VIDEO_OUTPUT definitions to cvconfig.h
- built-in MotionJPEG codec could not be tested on some platforms (read_write test was disabled if ffmpeg is off, encoding/decoding was handled by ffmpeg otherwise).
- image-related tests moved to imgcodecs (Videoio_Image)
- several property get/set tests have been combined into one
- added MotionJPEG test video to opencv_extra
2017-06-20 18:20:41 +03:00
Maksim Shabunin
c06f3d63e8 Initial version of MediaSDK integration:
- cmake dependencies search (WITH_MFX option)
- raw H264, H265, MPEG2 encoding and decoding
- tests for supported formats
2017-06-20 12:15:10 +03:00
Maksim Shabunin
68d01972fe Merge pull request #8883 from abratchik:DNN.java.wrappers.fix 2017-06-20 09:05:53 +00:00
Vladislav Sovrasov
f1c16f42b4 video: add one more constructor for VideoWriter 2017-06-19 12:11:14 +03:00
abratchik
037d8fbdcd Refactor OpenCV Java Wrapping 2017-06-15 20:35:12 +04:00
Maksim Shabunin
7cefb52fda V4L: do not return frame if it can not be retrieved 2017-05-23 18:03:17 +03:00
Vadim Pisarevsky
2a791ea676 Merge pull request #8745 from Neio:aravis_bayer_gr_8 2017-05-23 10:40:33 +00:00
kvaghel1
6fd9edc50f Fix frame timestamp in VideoCapture::get 2017-05-22 21:22:35 -04:00
Neio Zhou
7faf8cd06e Aravis: support Bayer GR 8 raw format. 2017-05-17 08:31:24 -07:00
Vadim Pisarevsky
0d60c0e8c4 Merge pull request #8712 from grundman:patch-5 2017-05-17 15:02:45 +00:00
Arek
9edcd9b4ef Merge pull request #8711 from ArkadiuszRaj:aravis_autoexposure_correction
Aravis: Use of std::fabs, added support for 16-bit mono files and exposure compensation (#8711)

* Use of std::fabs, added support for 16-bit mono files

* Correction in priority2 stage &  adding exposure compensation
2017-05-12 23:46:46 +03:00
Matthias Grundmann
0e64e68d31 Update cap_mjpeg_encoder.cpp
Avoid shifting by 32bits; undefined behavior according to c - standard
2017-05-10 13:29:02 -07:00
Vadim Pisarevsky
05387b3921 Merge pull request #8271 from ziggy90127:avfoundation-bugfix1 2017-05-03 12:59:44 +00:00
brian-armstrong-discord
9e054d3880 Merge pull request #8492 from brian-armstrong-discord:exif_inmemory
autorotate in-memory jpegs (#8492)

* autorotate in-memory jpegs

* correct indentation (4 spaces)

* imgcodecs: don't apply EXIF rotation for unloaded images

* videoio: don't try to rotate MJPEG stream

* imgcodecs: ByteStreamBuffer::seekoff support all seek "dir"

* imgcodecs: fix condition: "off == egptr() - eback()" is valid offset
2017-04-14 23:12:07 +03:00
orisano
550ca10ec6 Remove stdout log when destructor called. 2017-04-12 17:12:25 +09:00
Pavel Rojtberg
d92d82d194 cap_v4l: SetProperty - do not return false while setting video size 2017-04-04 15:07:02 +02:00
Maksim Shabunin
e72d353b45 Download cache 2017-03-24 16:19:56 +03:00
Alexander Alekhin
3e2b05b096 Merge pull request #8274 from abratchik:mser.brisk.3.0.0-rc1 2017-03-06 10:22:29 +00:00
Vadim Pisarevsky
f46fa6e096 Merge pull request #8283 from ramele1907:master 2017-03-02 05:54:06 +00:00
abratchik
276e47afae fix #7833 2017-02-26 15:14:34 +04:00
ziggy90127
d69b3e385e Add AVMediaTypeMuxed capture devices to AVFoundation, just as QTKit does. 2017-02-26 01:36:26 -07:00
ziggy90127
0aadab0941 Add AVMediaTypeMuxed capture devices to AVFoundation, just as QTKit does. 2017-02-25 15:48:09 -07:00
Alexander Alekhin
0c00242f7a Merge pull request #8235 from berak:fix_dshow_leak 2017-02-24 11:11:20 +00:00
ionut
a41d877fe6 Change the value of bit/pixel from channels to 8*channels because videos encoded
by cap_mjpeg_encoder.cpp don't play on windows media player.
Issue number #8113
2017-02-21 19:15:40 +02:00
berak
d7240d1a28 fix leaking handle in cap_dshow.cpp 2017-02-21 14:27:12 +01:00
Alexander Alekhin
eaba0e6358 cmake: append '-framework UIKit' for videoio/imgcodecs module 2017-02-21 13:37:37 +03:00
Alexander Alekhin
8633ef451e cmake: cleanup unused defines 2017-02-10 15:18:29 +03:00
PkLab
ece3fac7ef Merge pull request #8112 from PkLab:Fix_7898
CoInitialize/CoUninitialize in VFW classes (#8112)
2017-02-01 14:37:24 +00:00
PkLab.net
eb768514c3 Fix misplaced description CAP_PROP_SETTINGS and others minor changes in videoio doc 2017-01-26 17:10:32 +01:00
Dal Rupnik
c10283b2b6 Replaced macro with built-in OpenCV export 2017-01-24 10:26:19 +01:00
Dal Rupnik
a50efda49d Added export functions for ObjC classes 2017-01-23 17:15:17 +01:00
Dal Rupnik
e71ff78f7f Merge pull request #8009 from Legoless:master
CMake: Building Dynamic Framework on iOS (#8009)

* Updated python script with dynamic parameter

Updated python script to build static library by default

Updated python script to include bitcode flag

Added bitcode flag to c flags

Fixed directories and targets with static

Bitcode parameter fixed

Fixed script for static library

Fixed parameters in build function

Updated cmake common toolchain

Added changes to OpenCV Utils

Updates to cmake

Added cache internal

Updates to common toolchain

Fixed path in framework destination and added UIKit dependency

Dynamic plist for framework

Lib version removed hardcoded value

Removed trailing whitespace in toolchain

* Removed trailing whitespace

* Fixed typo in comment

* Renamed bitcode variable to bitcodedisabled

* Fixed target device family
2017-01-20 19:16:01 +03:00
Alexander Alekhin
d0f883524e cmake(osx): fix CoreImage error (#7916) 2016-12-23 11:30:17 +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
Alexander Alekhin
3ae1990727 Merge pull request #7769 from alalek:cmake_ffmpeg_cleanup 2016-12-01 20:24:05 +00:00
Alexander Alekhin
39ff8a0d26 cmake: cleanup ffmpeg detection 2016-12-01 19:33:27 +03:00
Alexander Alekhin
5985d71657 Merge pull request #7757 from mshabunin:tbb-search 2016-12-01 15:42:53 +00:00
mshabunin
695c518384 Updated TBB search script and code checks 2016-12-01 16:58:38 +03:00
Alexander Alekhin
e547bbbc3f videoio: preserve conflict with common properties
Usage:
    writer.set(cv::CAP_PROP_IMAGES_BASE + cv::IMWRITE_JPEG_QUALITY, 80);
2016-12-01 15:37:12 +03:00
Alexander Alekhin
c560ff23ad videoio: images: fix buffer overflow problem 2016-12-01 15:24:36 +03:00
Tsukasa Sugiura
e4985f604a Add support image save parameters in VideoWriter
Add support image save parameters in cv::VideoWriter.
This change will become available setting same parameters as
cv::imwrite() to cv::VideoWriter::set( cv::IMWRITE_*, value ).
2016-12-01 00:55:00 +09:00
Simmo Saan
6c524e8444 Allow V4L, V4L2 to be used as preferred capture API 2016-11-29 21:31:34 +02:00
Vadim Pisarevsky
9638dfcd85 Merge pull request #7641 from alalek:warnings 2016-11-22 13:31:26 +00:00
Arek
866f8eb1e7 Merge pull request #7695 from ArkadiuszRaj:aravis-release-bug-fix
* Aravis: fixing releasing object when no communication with camera is possible

* Removing unnecessary include
2016-11-21 04:22:43 +03:00
Alexander Alekhin
40aa8aa862 ffmpeg: check return value 2016-11-18 13:26:19 +03:00
sourin
94b5a74067 Fixed with review comments. 2016-11-15 12:16:15 +05:30
panxiaochun
bec3479f9e fix the problem:repeatedly stop cause app crash 2016-10-28 15:50:37 +08:00
panxiaochun
f888f47102 remove self. in release method 2016-10-28 14:48:49 +08:00
panxiaochun
03a9fd46c7 fix the problem: leak memory when repeatedly start and stop 2016-10-28 11:18:33 +08:00
Arek
e77bc24b96 Merge pull request #7518 from ArkadiuszRaj:aravis-buffer-status
Aravis several updates

* Fix adressing camera with id=0

* Aravis buffer property control & status added

* Modify of autoexposure algorith, ream frame ID from aravis + new properites

* Change of macro name

* VideoCapture now returns no frame on camera disconnecion

* Allow aravis-0.4 usage, proper camera object release.
2016-10-22 19:07:55 +03:00
Sean McBride
943ac96526 Eliminated use of obsolete 'register' keyword
Fixes clang warnings about uses of this obsolete keyword.
2016-10-20 20:19:14 -04:00
Jake Kesinger
bd50553149 videoio: Fix for valgrind warning in icvGetPropertyCAM_V4L
https://github.com/opencv/opencv/issues/7380
2016-10-18 14:18:35 -04:00
Guillaume Jacob
df2b591896 videoio: fix segfault if CONVERT_RGB is false (issue #7465) 2016-10-17 23:01:30 +02:00
Arek
4ea27061ee Merge pull request #7472 from ArkadiuszRaj:aravis-autoexposure
Aravis SDK: Basic software based autoexposure control

* Basic software based autoexposure control

* Aravis autoexposure: skip frame taken while changing exposure setup
2016-10-16 19:14:58 +03:00
ArkadiuszRaj
19bc3f4d17 Chenge arv_camera_abort_acquisition to arv_camera_stop_acquisition 2016-10-09 20:40:00 +02:00
ArkadiuszRaj
8bd595acfe fourcc support, improved buffer handling, check if exposure, gain & fps properties are available 2016-10-09 16:58:30 +02:00
ArkadiuszRaj
48ae99ecef Support for MONO8 & MONO12 pixel formats 2016-10-08 13:01:01 +02:00
ArkadiuszRaj
d80fd0c85c Missing declaration 2016-10-07 22:22:46 +02:00
ArkadiuszRaj
70c12e5407 Basic support for GigE cameras via Aravis SDK 2016-10-07 21:55:49 +02:00
Vadim Pisarevsky
83f2eb79f1 make sure that the empty mat is copied to UMat properly - i.e. UMat becomes empty. Before the patch such copy operation crashed 2016-10-05 14:07:50 +03:00
Alexander Alekhin
1c18b1d245 Merge pull request #7370 from souch55:Fixxn 2016-10-01 10:44:56 +00:00
sourin
a34fbf7bb1 Fixed identifiers warns 2016-09-30 15:16:29 +05:30
Vadim Pisarevsky
dc3d0cbc22 Merge pull request #7266 from alalek:pr7159 2016-09-16 21:18:26 +00:00
Alexander Alekhin
a35bec1e0a Merge pull request #7293 from Algomorph:master 2016-09-16 09:57:34 +00:00
Gregory Kramida
0d626c8fef v4l2 backend: Y16 default behavior fixed & FOURCC setting added
1) Cameras started with Y16 (V4L2_PIX_FMT_Y16) format via v4l2 backend will now exhibit default camera behavior, i.e. convert the 16-bit image to BGR as with all other formats. 16-bit 1-channel output will now only be produced for Y16 if CV_CAP_PROP_CONVERT_RGB is set to "false" using VideoCap::set method.
2) v4l2 videoio backend now supports setting CV_CAP_PROP_FOURCC explicitly (icvSetPropertyCAM_V4L function in cap_v4l.cpp), allowing users to manually set the codec on cameras that support multiple codecs.
2016-09-15 21:02:24 -04:00
Luis Roberto Morales Iglesias
60b33046a7
[Issue #7290] Fixes OpenNI and OpenNI2 linking conflict 2016-09-15 17:13:04 +02:00
stbnps
a4a6ee34bf Added support for V4L2_PIX_FMT_Y16 2016-09-15 11:06:15 -04:00
Alexander Alekhin
32df09c275 Merge pull request #7287 from seanm:master 2016-09-15 10:39:49 +00:00
Sean McBride
5357e28a2f Removed some extra semi-colons
Fixes clang -Wextra-semi warnings.
2016-09-14 16:22:35 -04:00
Alexander Alekhin
05b15943d6 Merge pull request #7188 from valeriyvan:andfutheriosfixes 2016-09-14 17:05:34 +00:00
Alexander Alekhin
d1492eefca Merge pull request #7181 from valeriyvan:ioscleanup 2016-09-14 17:04:59 +00:00
Valeriy Van
f1dcf71dd7 Merge pull request #7178 from valeriyvan:iosfixes
* Changes delegate property from assign to weak

In modern Objective-C delegate should be weak. In very rare conditions you might want delegate be strong.
Assign for delegate is sign of legacy code.
This change prevents crash when you forget nil delegate in dealloc and makes rush with nilling delegate unnecessary.
This change shouldn't break any existing code.

* Adds implementation for setters and getters for weak delegate properties for non ARC Obj-C files

For whatever reason compiler can't synthesize these.
And yes, it's time to convert all Objective-C stuff to ARC.
2016-09-14 14:48:41 +03:00
Maksim Shabunin
4e918fb987 Merge pull request #7165 from PkLab:doc_videoio 2016-09-09 18:01:41 +00:00
PkLab.net
be65701908 Large update of videoio doc and samples following mshabunin comments 2016-09-09 18:46:11 +02:00