linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] configure.ac: add qt5 detection support
@ 2014-12-04 23:27 Peter Seiderer
  2014-12-04 23:27 ` [PATCH 2/3] qv4l2: fix qt5 compile Peter Seiderer
  2014-12-04 23:27 ` [PATCH 3/3] qv4l2: update qmake project file Peter Seiderer
  0 siblings, 2 replies; 3+ messages in thread
From: Peter Seiderer @ 2014-12-04 23:27 UTC (permalink / raw)
  To: linux-media

Disable QTGL for qt5 because of qv4l2 crash on startup.

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
 configure.ac | 41 +++++++++++++++++++++++++++--------------
 1 file changed, 27 insertions(+), 14 deletions(-)

diff --git a/configure.ac b/configure.ac
index 7bf9bf6..245a409 100644
--- a/configure.ac
+++ b/configure.ac
@@ -131,29 +131,42 @@ AS_IF([test "x$with_jpeg" != xno],
 
 AM_CONDITIONAL([HAVE_JPEG], [$have_jpeg])
 
-PKG_CHECK_MODULES(QT, [QtCore >= 4.4 QtGui >= 4.4], [qt_pkgconfig=true], [qt_pkgconfig=false])
+PKG_CHECK_MODULES(QT, [Qt5Core >= 5.0 Qt5Gui >= 5.0 Qt5Widgets >= 5.0], [qt_pkgconfig=true], [qt_pkgconfig=false])
 if test "x$qt_pkgconfig" = "xtrue"; then
+   QT_CFLAGS="$QT_CFLAGS -fPIC"
    AC_SUBST(QT_CFLAGS)
    AC_SUBST(QT_LIBS)
-   MOC=`$PKG_CONFIG --variable=moc_location QtCore`
-   UIC=`$PKG_CONFIG --variable=uic_location QtCore`
-   RCC=`$PKG_CONFIG --variable=rcc_location QtCore`
-   if test -z "$RCC"; then
-      RCC="rcc"
-   fi
+   AC_CHECK_PROGS(MOC, [moc-qt5 moc])
+   AC_CHECK_PROGS(UIC, [uic-qt5 uic])
+   AC_CHECK_PROGS(RCC, [rcc-qt5 rcc])
    AC_SUBST(MOC)
    AC_SUBST(UIC)
    AC_SUBST(RCC)
+# disable QTGL for qt5 because qv4l2 crash
+   qt_pkgconfig_gl=false
 else
-   AC_MSG_WARN(Qt4 or higher is not available)
+   PKG_CHECK_MODULES(QT, [QtCore >= 4.0 QtGui >= 4.0], [qt_pkgconfig=true], [qt_pkgconfig=false])
+   if test "x$qt_pkgconfig" = "xtrue"; then
+      MOC=`$PKG_CONFIG --variable=moc_location Qt5Core`
+      UIC=`$PKG_CONFIG --variable=uic_location Qt5Core`
+      RCC=`$PKG_CONFIG --variable=rcc_location Qt5Core`
+      if test -z "$RCC"; then
+         RCC="rcc"
+      fi
+      AC_SUBST(MOC)
+      AC_SUBST(UIC)
+      AC_SUBST(RCC)
+      PKG_CHECK_MODULES(QTGL, [QtOpenGL >= 4.8 gl], [qt_pkgconfig_gl=true], [qt_pkgconfig_gl=false])
+      if test "x$qt_pkgconfig_gl" = "xtrue"; then
+         AC_DEFINE([HAVE_QTGL], [1], [qt has opengl support])
+      else
+         AC_MSG_WARN(Qt4 OpenGL is not available)
+      fi
+   else
+      AC_MSG_WARN(Qt4 or higher is not available)
+   fi
 fi
 
-PKG_CHECK_MODULES(QTGL, [QtOpenGL >= 4.8 gl], [qt_pkgconfig_gl=true], [qt_pkgconfig_gl=false])
-if test "x$qt_pkgconfig_gl" = "xtrue"; then
-   AC_DEFINE([HAVE_QTGL], [1], [qt has opengl support])
-else
-   AC_MSG_WARN(Qt4 OpenGL or higher is not available)
-fi
 
 PKG_CHECK_MODULES(ALSA, [alsa], [alsa_pkgconfig=true], [alsa_pkgconfig=false])
 if test "x$alsa_pkgconfig" = "xtrue"; then
-- 
2.1.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/3] qv4l2: fix qt5 compile
  2014-12-04 23:27 [PATCH 1/3] configure.ac: add qt5 detection support Peter Seiderer
@ 2014-12-04 23:27 ` Peter Seiderer
  2014-12-04 23:27 ` [PATCH 3/3] qv4l2: update qmake project file Peter Seiderer
  1 sibling, 0 replies; 3+ messages in thread
From: Peter Seiderer @ 2014-12-04 23:27 UTC (permalink / raw)
  To: linux-media

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
 utils/qv4l2/capture-win-qt.cpp |  4 ++++
 utils/qv4l2/qv4l2.cpp          | 21 +++++++++++++++++++++
 2 files changed, 25 insertions(+)

diff --git a/utils/qv4l2/capture-win-qt.cpp b/utils/qv4l2/capture-win-qt.cpp
index db85cd2..9c849a0 100644
--- a/utils/qv4l2/capture-win-qt.cpp
+++ b/utils/qv4l2/capture-win-qt.cpp
@@ -117,7 +117,11 @@ void CaptureWinQt::paintFrame()
 void CaptureWinQt::stop()
 {
 	if (m_data != NULL)
+#if QT_VERSION >= 0x050000
+		memcpy(m_image->bits(), m_data, m_image->byteCount());
+#else
 		memcpy(m_image->bits(), m_data, m_image->numBytes());
+#endif
 	m_data = NULL;
 }
 
diff --git a/utils/qv4l2/qv4l2.cpp b/utils/qv4l2/qv4l2.cpp
index 0784a15..8329cbd 100644
--- a/utils/qv4l2/qv4l2.cpp
+++ b/utils/qv4l2/qv4l2.cpp
@@ -1084,8 +1084,13 @@ void ApplicationWindow::startAudio()
 	QString audOut = m_genTab->getAudioOutDevice();
 
 	if (audIn != NULL && audOut != NULL && audIn.compare("None") && audIn.compare(audOut) != 0) {
+#if QT_VERSION >= 0x050000
+		alsa_thread_startup(audOut.toLatin1().data(), audIn.toLatin1().data(),
+				    m_genTab->getAudioDeviceBufferSize(), NULL, 0);
+#else
 		alsa_thread_startup(audOut.toAscii().data(), audIn.toAscii().data(),
 				    m_genTab->getAudioDeviceBufferSize(), NULL, 0);
+#endif
 
 		if (m_genTab->isRadio())
 			statusBar()->showMessage("Capturing audio");
@@ -1582,7 +1587,11 @@ void ApplicationWindow::error(const QString &error)
 {
 	statusBar()->showMessage(error, 20000);
 	if (!error.isEmpty())
+#if QT_VERSION >= 0x050000
+		fprintf(stderr, "%s\n", error.toLatin1().data());
+#else
 		fprintf(stderr, "%s\n", error.toAscii().data());
+#endif
 }
 
 void ApplicationWindow::error(int err)
@@ -1657,7 +1666,11 @@ static bool processShortOption(const QStringList &args, int &i, QString &dev)
 		return false;
 	if (args[i].length() == 2) {
 		if (i + 1 >= args.size()) {
+#if QT_VERSION >= 0x050000
+			usageError(args[i].toLatin1());
+#else
 			usageError(args[i].toAscii());
+#endif
 			return false;
 		}
 		dev = args[++i];
@@ -1680,7 +1693,11 @@ static bool processLongOption(const QStringList &args, int &i, QString &dev)
 		return true;
 	}
 	if (i + 1 >= args.size()) {
+#if QT_VERSION >= 0x050000
+		usageError(args[i].toLatin1());
+#else
 		usageError(args[i].toAscii());
+#endif
 		return false;
 	}
 	dev = args[++i];
@@ -1734,7 +1751,11 @@ int main(int argc, char **argv)
 		} else if (args[i] == "-R" || args[i] == "--raw") {
 			raw = true;
 		} else {
+#if QT_VERSION >= 0x050000
+			printf("Invalid argument %s\n", args[i].toLatin1().data());
+#else
 			printf("Invalid argument %s\n", args[i].toAscii().data());
+#endif
 			return 0;
 		}
 	}
-- 
2.1.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 3/3] qv4l2: update qmake project file
  2014-12-04 23:27 [PATCH 1/3] configure.ac: add qt5 detection support Peter Seiderer
  2014-12-04 23:27 ` [PATCH 2/3] qv4l2: fix qt5 compile Peter Seiderer
@ 2014-12-04 23:27 ` Peter Seiderer
  1 sibling, 0 replies; 3+ messages in thread
From: Peter Seiderer @ 2014-12-04 23:27 UTC (permalink / raw)
  To: linux-media

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
 utils/qv4l2/qv4l2.pro | 32 ++++++++++++++++++++++++++++++--
 1 file changed, 30 insertions(+), 2 deletions(-)

diff --git a/utils/qv4l2/qv4l2.pro b/utils/qv4l2/qv4l2.pro
index 7ab39cc..2c6c9c8 100644
--- a/utils/qv4l2/qv4l2.pro
+++ b/utils/qv4l2/qv4l2.pro
@@ -6,9 +6,37 @@ TEMPLATE = app
 INCLUDEPATH += . ../libv4l2util ../../lib/include ../../include
 CONFIG += debug
 
+greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
+greaterThan(QT_MAJOR_VERSION, 4): QT += opengl
+
+INCLUDEPATH += /home/seiderer/Work/v4l_utils/v4l-utils
+INCLUDEPATH += /home/seiderer/Work/v4l_utils/v4l-utils/utils/v4l2-ctl/
+INCLUDEPATH += /home/seiderer/Work/v4l_utils/v4l-utils/utils/v4l2-compliance
+
 # Input
-HEADERS += qv4l2.h general-tab.h capture-win.h
-SOURCES += qv4l2.cpp general-tab.cpp ctrl-tab.cpp capture-win.cpp
+HEADERS += alsa_stream.h
+HEADERS += capture-win-gl.h
+HEADERS += capture-win.h
+HEADERS += capture-win-qt.h
+HEADERS += general-tab.h
+HEADERS += qv4l2.h
+HEADERS += raw2sliced.h
+HEADERS += vbi-tab.h
+HEADERS += ../v4l2-ctl/vivid-tpg.h
+HEADERS += ../v4l2-ctl/vivid-tpg-colors.h
+
+SOURCES += capture-win.cpp
+SOURCES += capture-win-gl.cpp
+SOURCES += capture-win-qt.cpp
+SOURCES += ctrl-tab.cpp
+SOURCES += general-tab.cpp
+SOURCES += qv4l2.cpp
+SOURCES += raw2sliced.cpp
+SOURCES += tpg-tab.cpp
+SOURCES += vbi-tab.cpp
+SOURCES += ../v4l2-ctl/vivid-tpg.c
+SOURCES += ../v4l2-ctl/vivid-tpg-colors.c
+
 LIBS += -L../../lib/libv4l2 -lv4l2 -L../../lib/libv4lconvert -lv4lconvert -lrt -L../libv4l2util -lv4l2util -ldl -ljpeg
 
 RESOURCES += qv4l2.qrc
-- 
2.1.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-12-04 23:27 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-04 23:27 [PATCH 1/3] configure.ac: add qt5 detection support Peter Seiderer
2014-12-04 23:27 ` [PATCH 2/3] qv4l2: fix qt5 compile Peter Seiderer
2014-12-04 23:27 ` [PATCH 3/3] qv4l2: update qmake project file Peter Seiderer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).