Add another missing part of gstreamer patch
This commit is contained in:
parent
26040f2507
commit
0d7b6d3d66
@ -1404,10 +1404,28 @@ index a373dcc..8011349 100644
|
||||
|
||||
GstElement *QGstreamerVideoWindow::videoSink()
|
||||
diff --git a/src/gsttools/qgstutils.cpp b/src/gsttools/qgstutils.cpp
|
||||
index 465f439..b1161f7 100644
|
||||
index 465f439..3b1de44 100644
|
||||
--- a/src/gsttools/qgstutils.cpp
|
||||
+++ b/src/gsttools/qgstutils.cpp
|
||||
@@ -83,15 +83,24 @@ static void addTagToMap(const GstTagList *list,
|
||||
@@ -40,9 +40,17 @@
|
||||
#include <QtCore/qsize.h>
|
||||
#include <QtCore/qset.h>
|
||||
#include <QtCore/qstringlist.h>
|
||||
+#include <QtGui/qimage.h>
|
||||
#include <qaudioformat.h>
|
||||
#include <QtCore/qelapsedtimer.h>
|
||||
|
||||
+#include <QtMultimedia/qvideosurfaceformat.h>
|
||||
+
|
||||
+#include <gst/audio/audio.h>
|
||||
+#include <gst/video/video.h>
|
||||
+
|
||||
+template<typename T, int N> static int lengthOf(const T (&)[N]) { return N; }
|
||||
+
|
||||
#ifdef USE_V4L
|
||||
# include <private/qcore_unix_p.h>
|
||||
# include <linux/videodev2.h>
|
||||
@@ -83,15 +91,24 @@ static void addTagToMap(const GstTagList *list,
|
||||
map->insert(QByteArray(tag), g_value_get_boolean(&val));
|
||||
break;
|
||||
case G_TYPE_CHAR:
|
||||
@ -1432,7 +1450,7 @@ index 465f439..b1161f7 100644
|
||||
if (g_date_valid(date)) {
|
||||
int year = g_date_get_year(date);
|
||||
int month = g_date_get_month(date);
|
||||
@@ -170,6 +179,42 @@ QSize QGstUtils::capsCorrectedResolution(const GstCaps *caps)
|
||||
@@ -170,6 +187,42 @@ QSize QGstUtils::capsCorrectedResolution(const GstCaps *caps)
|
||||
return size;
|
||||
}
|
||||
|
||||
@ -1475,7 +1493,7 @@ index 465f439..b1161f7 100644
|
||||
/*!
|
||||
Returns audio format for caps.
|
||||
If caps doesn't have a valid audio format, an empty QAudioFormat is returned.
|
||||
@@ -177,9 +222,26 @@ QSize QGstUtils::capsCorrectedResolution(const GstCaps *caps)
|
||||
@@ -177,9 +230,26 @@ QSize QGstUtils::capsCorrectedResolution(const GstCaps *caps)
|
||||
|
||||
QAudioFormat QGstUtils::audioFormatForCaps(const GstCaps *caps)
|
||||
{
|
||||
@ -1504,7 +1522,7 @@ index 465f439..b1161f7 100644
|
||||
|
||||
if (qstrcmp(gst_structure_get_name(structure), "audio/x-raw-int") == 0) {
|
||||
|
||||
@@ -250,16 +312,28 @@ QAudioFormat QGstUtils::audioFormatForCaps(const GstCaps *caps)
|
||||
@@ -250,16 +320,28 @@ QAudioFormat QGstUtils::audioFormatForCaps(const GstCaps *caps)
|
||||
} else {
|
||||
return QAudioFormat();
|
||||
}
|
||||
@ -1535,7 +1553,7 @@ index 465f439..b1161f7 100644
|
||||
QAudioFormat QGstUtils::audioFormatForBuffer(GstBuffer *buffer)
|
||||
{
|
||||
GstCaps* caps = gst_buffer_get_caps(buffer);
|
||||
@@ -270,7 +344,7 @@ QAudioFormat QGstUtils::audioFormatForBuffer(GstBuffer *buffer)
|
||||
@@ -270,7 +352,7 @@ QAudioFormat QGstUtils::audioFormatForBuffer(GstBuffer *buffer)
|
||||
gst_caps_unref(caps);
|
||||
return format;
|
||||
}
|
||||
@ -1544,7 +1562,7 @@ index 465f439..b1161f7 100644
|
||||
|
||||
/*!
|
||||
Builds GstCaps for an audio format.
|
||||
@@ -278,8 +352,32 @@ QAudioFormat QGstUtils::audioFormatForBuffer(GstBuffer *buffer)
|
||||
@@ -278,8 +360,32 @@ QAudioFormat QGstUtils::audioFormatForBuffer(GstBuffer *buffer)
|
||||
Caller must unref GstCaps.
|
||||
*/
|
||||
|
||||
@ -1578,7 +1596,7 @@ index 465f439..b1161f7 100644
|
||||
GstStructure *structure = 0;
|
||||
|
||||
if (format.isValid()) {
|
||||
@@ -314,6 +412,7 @@ GstCaps *QGstUtils::capsForAudioFormat(QAudioFormat format)
|
||||
@@ -314,6 +420,7 @@ GstCaps *QGstUtils::capsForAudioFormat(QAudioFormat format)
|
||||
}
|
||||
|
||||
return caps;
|
||||
@ -1586,7 +1604,7 @@ index 465f439..b1161f7 100644
|
||||
}
|
||||
|
||||
void QGstUtils::initializeGst()
|
||||
@@ -585,10 +684,629 @@ QByteArray QGstUtils::cameraDriver(const QString &device, GstElementFactory *fac
|
||||
@@ -585,10 +692,629 @@ QByteArray QGstUtils::cameraDriver(const QString &device, GstElementFactory *fac
|
||||
return QByteArray();
|
||||
}
|
||||
|
||||
@ -2217,7 +2235,7 @@ index 465f439..b1161f7 100644
|
||||
gst_object_ref_sink(object);
|
||||
#else
|
||||
g_return_if_fail (GST_IS_OBJECT(object));
|
||||
@@ -604,4 +1322,50 @@ void qt_gst_object_ref_sink(gpointer object)
|
||||
@@ -604,4 +1330,50 @@ void qt_gst_object_ref_sink(gpointer object)
|
||||
#endif
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user