Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
6.3.0
-
None
-
-
4b73ae6531 (qt/qtmultimedia/dev) 4b73ae6531 (qt/tqtc-qtmultimedia/dev) d9f17add9e (qt/qtmultimedia/6.3) d9f17add9e (qt/tqtc-qtmultimedia/6.3) d9f17add9e (qt/tqtc-qtmultimedia/6.3.1) 77bd332b9c (qt/tqtc-qtmultimedia/6.2) 4b73ae6531 (qt/qtmultimedia/6.4)
Description
I'm trying to write a GUI-less application that can capture video from webcam.
With `QCoreApplication` and not `QApplication`,
`QMediaCaptureSession::setCamera` crashes with
`qt.core.qobject.connect: QObject::connect: Cannot connect (nullptr)::orientationChanged(Qt::ScreenOrientation) to QVideoOutputOrientationHandler::screenOrientationChanged(Qt::ScreenOrientation)`
Reproduce:
```
#include <QtWidgets>
#include <QMediaCaptureSession>
#include <QCamera>
#include <QVideoSink>
#include <QObject>
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
// QApplication app(argc, argv);
QCamera camera;
QMediaCaptureSession session;
session.setCamera(&camera);
QVideoSink videoSink;
session.setVideoSink(&videoSink);
QObject::connect(&videoSink, &QVideoSink::videoFrameChanged, []()
{ qDebug() << "frame received"; });
camera.start();
returnapp.exec();
};
```
Attachments
For Gerrit Dashboard: QTBUG-103394 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
411334,3 | Fix null pointer dereference in GUI-less applications | dev | qt/qtmultimedia | Status: MERGED | +2 | 0 |
411434,2 | Fix null pointer dereference in GUI-less applications | 6.3 | qt/qtmultimedia | Status: MERGED | +2 | 0 |
411435,2 | Fix null pointer dereference in GUI-less applications | tqtc/lts-6.2 | qt/tqtc-qtmultimedia | Status: MERGED | +2 | 0 |