summaryrefslogtreecommitdiffstats
path: root/src/plugins/gstreamer/camerabin/camerabinserviceplugin.cpp
diff options
context:
space:
mode:
authorYoann Lopes <yoann.lopes@qt.io>2016-09-23 08:44:50 +0300
committerYoann Lopes <yoann.lopes@qt.io>2016-09-23 08:47:15 +0300
commit0d3434fd0491d8d37dc0286b9d8ec8a454ba726b (patch)
tree329557ed14a161827817765b0ccc6298fcf146b4 /src/plugins/gstreamer/camerabin/camerabinserviceplugin.cpp
parent01c9322bfe918b886468eb520d77b21b6d8c0c11 (diff)
parent62eeaba645d0f7c42246a0b026c532919a5b0454 (diff)
Merge remote-tracking branch 'origin/5.7' into 5.8
Diffstat (limited to 'src/plugins/gstreamer/camerabin/camerabinserviceplugin.cpp')
-rw-r--r--src/plugins/gstreamer/camerabin/camerabinserviceplugin.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/plugins/gstreamer/camerabin/camerabinserviceplugin.cpp b/src/plugins/gstreamer/camerabin/camerabinserviceplugin.cpp
index b810e2b02..2d3c7c2ea 100644
--- a/src/plugins/gstreamer/camerabin/camerabinserviceplugin.cpp
+++ b/src/plugins/gstreamer/camerabin/camerabinserviceplugin.cpp
@@ -66,8 +66,19 @@ QMediaService* CameraBinServicePlugin::create(const QString &key)
{
QGstUtils::initializeGst();
- if (key == QLatin1String(Q_MEDIASERVICE_CAMERA))
+ if (key == QLatin1String(Q_MEDIASERVICE_CAMERA)) {
+ if (!CameraBinService::isCameraBinAvailable()) {
+ guint major, minor, micro, nano;
+ gst_version(&major, &minor, &micro, &nano);
+ qWarning("Error: cannot create camera service, the 'camerabin' plugin is missing for "
+ "GStreamer %u.%u."
+ "\nPlease install the 'bad' GStreamer plugin package.",
+ major, minor);
+ return Q_NULLPTR;
+ }
+
return new CameraBinService(sourceFactory());
+ }
qWarning() << "Gstreamer camerabin service plugin: unsupported key:" << key;
return 0;