summaryrefslogtreecommitdiffstats
path: root/tests/manual/qml-gstreamer-rtp/qml-gstreamer-rtp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/manual/qml-gstreamer-rtp/qml-gstreamer-rtp.cpp')
-rw-r--r--tests/manual/qml-gstreamer-rtp/qml-gstreamer-rtp.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/manual/qml-gstreamer-rtp/qml-gstreamer-rtp.cpp b/tests/manual/qml-gstreamer-rtp/qml-gstreamer-rtp.cpp
new file mode 100644
index 000000000..44e8f1659
--- /dev/null
+++ b/tests/manual/qml-gstreamer-rtp/qml-gstreamer-rtp.cpp
@@ -0,0 +1,32 @@
+// Copyright (C) 2024 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QGuiApplication>
+#include <QProcess>
+#include <QQmlApplicationEngine>
+#include <QtEnvironmentVariables>
+
+int main(int argc, char *argv[])
+{
+ qputenv("QT_MEDIA_BACKEND", "gstreamer");
+
+ QProcess process;
+ process.startCommand(
+ "gst-launch-1.0 videotestsrc ! x264enc ! udpsink host=127.0.0.1 port=50004");
+
+ auto scopeGuard = qScopeGuard([&] {
+ process.terminate();
+ process.waitForFinished();
+ });
+
+ QGuiApplication app(argc, argv);
+ QQmlApplicationEngine engine;
+
+ process.waitForStarted();
+
+ engine.load(QUrl("qrc:/qml-gstreamer-rtp.qml"));
+ if (engine.rootObjects().isEmpty())
+ return -1;
+
+ return app.exec();
+}