From: Sujith H <[email protected]> This patch fixes the qtmultimedia built against gstreamer version 0.10, its been taken from: https://qt.gitorious.org/qt/qtmultimedia/commit/4a6a71e5218446caf1084bc1d76ba8fc5ff38a88.patch
Signed-off-by: Sujith H <[email protected]> Signed-off-by: Sujith H <[email protected]> --- recipes-qt/qt5/qtmultimedia.inc | 1 + ...ation_when_building_against_Gstreamer_010.patch | 140 +++++++++++++++++++++ 2 files changed, 141 insertions(+) create mode 100644 recipes-qt/qt5/qtmultimedia/Fix_compilation_when_building_against_Gstreamer_010.patch diff --git a/recipes-qt/qt5/qtmultimedia.inc b/recipes-qt/qt5/qtmultimedia.inc index 5c075fa..216c711 100644 --- a/recipes-qt/qt5/qtmultimedia.inc +++ b/recipes-qt/qt5/qtmultimedia.inc @@ -12,6 +12,7 @@ EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'gstreamer010', 'CONFI SRC_URI += "\ file://0001-Initial-porting-effort-to-GStreamer-1.0.patch \ file://0002-qtmultimedia.pro-Respect-OE_GSTREAMER_ENABLED-OE_GST.patch \ + file:////Fix_compilation_when_building_against_Gstreamer_010.patch \ " # older copyright year than what e.g. qtbase is using now diff --git a/recipes-qt/qt5/qtmultimedia/Fix_compilation_when_building_against_Gstreamer_010.patch b/recipes-qt/qt5/qtmultimedia/Fix_compilation_when_building_against_Gstreamer_010.patch new file mode 100644 index 0000000..2bdfd1c --- /dev/null +++ b/recipes-qt/qt5/qtmultimedia/Fix_compilation_when_building_against_Gstreamer_010.patch @@ -0,0 +1,140 @@ +Index: qtmultimedia-opensource-src-5.3.1/src/gsttools/gstvideoconnector.c +=================================================================== +--- qtmultimedia-opensource-src-5.3.1.orig/src/gsttools/gstvideoconnector.c 2014-08-26 15:33:22.779851730 +0530 ++++ qtmultimedia-opensource-src-5.3.1/src/gsttools/gstvideoconnector.c 2014-08-26 15:35:23.462334601 +0530 +@@ -464,7 +464,11 @@ + if (element->relinked) + GST_LOG_OBJECT(element, "rejected buffer because of new segment request"); + ++#if GST_CHECK_VERSION(1,0,0) + return element->relinked ? GST_PAD_PROBE_DROP : GST_PAD_PROBE_OK; ++#else ++ return !element->relinked; ++#endif + } + + static GstFlowReturn +@@ -620,8 +624,6 @@ + static gboolean gst_video_connector_handle_sink_event (GstPad * pad, + GstEvent * event) + { +- (void)parent; +- + if (GST_EVENT_TYPE (event) == GST_EVENT_NEWSEGMENT) { + GstVideoConnector *element = GST_VIDEO_CONNECTOR (gst_pad_get_parent (pad)); + +Index: qtmultimedia-opensource-src-5.3.1/src/gsttools/qgstreameraudioprobecontrol.cpp +=================================================================== +--- qtmultimedia-opensource-src-5.3.1.orig/src/gsttools/qgstreameraudioprobecontrol.cpp 2014-08-26 15:33:22.779851730 +0530 ++++ qtmultimedia-opensource-src-5.3.1/src/gsttools/qgstreameraudioprobecontrol.cpp 2014-08-26 15:36:24.721556554 +0530 +@@ -59,7 +59,7 @@ + #else + void QGstreamerAudioProbeControl::bufferProbed(GstBuffer* buffer) + { +- gst_buffer_get_caps(buffer); ++ GstCaps* caps = gst_buffer_get_caps(buffer); + #endif + if (!caps) + return; +Index: qtmultimedia-opensource-src-5.3.1/src/gsttools/qgstreamervideowindow.cpp +=================================================================== +--- qtmultimedia-opensource-src-5.3.1.orig/src/gsttools/qgstreamervideowindow.cpp 2014-08-26 15:33:22.779851730 +0530 ++++ qtmultimedia-opensource-src-5.3.1/src/gsttools/qgstreamervideowindow.cpp 2014-08-26 15:37:20.040866691 +0530 +@@ -45,11 +45,12 @@ + #include <QtCore/qdebug.h> + + #include <gst/gst.h> +-#include <gst/video/videooverlay.h> + + #if !GST_CHECK_VERSION(1,0,0) + #include <gst/interfaces/xoverlay.h> + #include <gst/interfaces/propertyprobe.h> ++#else ++#include <gst/video/videooverlay.h> + #endif + + +Index: qtmultimedia-opensource-src-5.3.1/src/gsttools/qgstutils.cpp +=================================================================== +--- qtmultimedia-opensource-src-5.3.1.orig/src/gsttools/qgstutils.cpp 2014-08-26 15:33:22.779851730 +0530 ++++ qtmultimedia-opensource-src-5.3.1/src/gsttools/qgstutils.cpp 2014-08-26 16:20:52.678555714 +0530 +@@ -426,7 +426,7 @@ + + void qt_gst_object_ref_sink(gpointer object) + { +-#if (GST_VERSION_MAJOR >= 0) && (GST_VERSION_MINOR >= 10) && (GST_VERSION_MICRO >= 24) || GST_CHECK_VERSION(1,0,0) ++#if GST_CHECK_VERSION(0,10,24) + gst_object_ref_sink(object); + #else + g_return_if_fail (GST_IS_OBJECT(object)); +Index: qtmultimedia-opensource-src-5.3.1/src/gsttools/qvideosurfacegstsink.cpp +=================================================================== +--- qtmultimedia-opensource-src-5.3.1.orig/src/gsttools/qvideosurfacegstsink.cpp 2014-08-26 15:33:22.779851730 +0530 ++++ qtmultimedia-opensource-src-5.3.1/src/gsttools/qvideosurfacegstsink.cpp 2014-08-26 16:21:55.513763878 +0530 +@@ -988,6 +988,8 @@ + } + #if GST_CHECK_VERSION(1, 0, 0) + return GST_BASE_SINK_CLASS (sink_parent_class)->event (base, event); ++#else ++ return TRUE; + #endif + } + +Index: qtmultimedia-opensource-src-5.3.1/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp +=================================================================== +--- qtmultimedia-opensource-src-5.3.1.orig/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp 2014-08-26 15:33:22.795851528 +0530 ++++ qtmultimedia-opensource-src-5.3.1/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp 2014-08-26 16:24:12.972034154 +0530 +@@ -96,12 +96,16 @@ + #if GST_CHECK_VERSION(1,0,0) + if (GST_OBJECT_FLAG_IS_SET(plugin, GST_PLUGIN_FLAG_BLACKLISTED)) + continue; ++ ++ GstRegistry *registry = gst_registry_get(); + #else + if (plugin->flags & (1<<1)) //GST_PLUGIN_FLAG_BLACKLISTED + continue; ++ ++ GstRegistry *registry = gst_registry_get_default(); + #endif +- orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get (), +- gst_plugin_get_name(plugin)); ++ orig_features = features = gst_registry_get_feature_list_by_plugin(registry, ++ gst_plugin_get_name(plugin)); + while (features) { + if (!G_UNLIKELY(features->data == NULL)) { + GstPluginFeature *feature = GST_PLUGIN_FEATURE(features->data); +Index: qtmultimedia-opensource-src-5.3.1/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp +=================================================================== +--- qtmultimedia-opensource-src-5.3.1.orig/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp 2014-08-26 15:33:22.795851528 +0530 ++++ qtmultimedia-opensource-src-5.3.1/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp 2014-08-26 16:25:57.016761779 +0530 +@@ -110,12 +110,16 @@ + #if GST_CHECK_VERSION(1,0,0) + if (GST_OBJECT_FLAG_IS_SET(plugin, GST_PLUGIN_FLAG_BLACKLISTED)) + continue; ++ ++ GstRegistry *registry = gst_registry_get(); + #else + if (plugin->flags & (1<<1)) //GST_PLUGIN_FLAG_BLACKLISTED + continue; ++ ++ GstRegistry *registry = gst_registry_get_default(); + #endif + +- orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get(), ++ orig_features = features = gst_registry_get_feature_list_by_plugin(registry, + gst_plugin_get_name(plugin)); + while (features) { + if (!G_UNLIKELY(features->data == NULL)) { +Index: qtmultimedia-opensource-src-5.3.1/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp +=================================================================== +--- qtmultimedia-opensource-src-5.3.1.orig/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp 2014-08-26 15:33:22.795851528 +0530 ++++ qtmultimedia-opensource-src-5.3.1/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp 2014-08-26 16:26:42.122736934 +0530 +@@ -1825,7 +1825,7 @@ + + #else + +-static gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data) ++gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data) + { + Q_UNUSED(pad); + -- 1.8.4 -- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-devel
