Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.6.0 RC
-
Windows/DirectShow
Description
When starting a QCamera instance, which is attached to a physical camera that is already in use, the error() signal is not emitted, the state stays correctly in QCamera::UnloadedState, but the status claims QCamera::LoadedStatus. Also a vague "failed to start" output is printed into debug log (it comes from DSCameraSession::startPreview(), line 542). When QCamera::start() fails we expect to see the error() signal and correct camera status (QCamera::UnavailableStatus maybe).
Tested only on Windows with DirectShow multimedia backend.
The attached simple example reproduces the problem. The state, status and error are printed to debug output.
Attachments
For Gerrit Dashboard: QTBUG-51825 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
211359,5 | DirectShow: Emit an error if QCamera::start() fails | 5.11 | qt/qtmultimedia | Status: MERGED | +2 | 0 |
211446,6 | Add test for checking error handling on start | 5.11 | qt/qtmultimedia | Status: MERGED | +2 | 0 |
211447,5 | Gstreamer: Emit an error if QCamera::start() fails | 5.11 | qt/qtmultimedia | Status: MERGED | +2 | 0 |