summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerhard de Clercq <gerharddeclercq@outlook.com>2015-12-16 07:14:39 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2015-12-18 13:12:53 +0100
commit2aa63cc542656f3db138ca161e375c33afd275db (patch)
treedae2237fd4640814f12c09e7b1280add04abdc90
parenta610beeee7dd973e544dc67e3598977f5f050b76 (diff)
downloadmeta-qt5-upstream/fido-next.tar.gz
gstreamer1.0-patch: fixed breaking of 0.1 supportupstream/fido-nextfido-next
The old patch that added support for gstreamer 1.0 broke support for 0.1. This new patch tries to support both. Signed-off-by: Gerhard de Clercq <gerharddeclercq@outlook.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r--recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch107
1 files changed, 56 insertions, 51 deletions
diff --git a/recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch b/recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch
index e2a46df6..9ad6f4af 100644
--- a/recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch
+++ b/recipes-qt/qt5/qtmultimedia/0001-Initial-porting-effort-to-GStreamer-1.0.patch
@@ -1,4 +1,4 @@
1From 8b306a5a70d431b8e142b3a7efb32d897cb79ab5 Mon Sep 17 00:00:00 2001 1From d7e8fb5532d36fc31d1440e13237524e75ab77c0 Mon Sep 17 00:00:00 2001
2From: Yoann Lopes <yoann.lopes@digia.com> 2From: Yoann Lopes <yoann.lopes@digia.com>
3Date: Thu, 31 Oct 2013 15:06:30 +0100 3Date: Thu, 31 Oct 2013 15:06:30 +0100
4Subject: [PATCH] Initial porting effort to GStreamer 1.0. 4Subject: [PATCH] Initial porting effort to GStreamer 1.0.
@@ -31,12 +31,12 @@ Conflicts:
31 src/gsttools/gsttools.pro | 22 +-- 31 src/gsttools/gsttools.pro | 22 +--
32 src/gsttools/gstvideoconnector.c | 199 +++++++++++++++++++-- 32 src/gsttools/gstvideoconnector.c | 199 +++++++++++++++++++--
33 src/gsttools/qgstappsrc.cpp | 29 ++- 33 src/gsttools/qgstappsrc.cpp | 29 ++-
34 src/gsttools/qgstreameraudioprobecontrol.cpp | 19 +- 34 src/gsttools/qgstreameraudioprobecontrol.cpp | 18 ++
35 src/gsttools/qgstreamerbushelper.cpp | 8 + 35 src/gsttools/qgstreamerbushelper.cpp | 8 +
36 src/gsttools/qgstreamervideoprobecontrol.cpp | 9 + 36 src/gsttools/qgstreamervideoprobecontrol.cpp | 9 +
37 src/gsttools/qgstreamervideorenderer.cpp | 3 +- 37 src/gsttools/qgstreamervideorenderer.cpp | 3 +-
38 src/gsttools/qgstreamervideowidget.cpp | 29 ++- 38 src/gsttools/qgstreamervideowidget.cpp | 29 ++-
39 src/gsttools/qgstreamervideowindow.cpp | 79 +++++++- 39 src/gsttools/qgstreamervideowindow.cpp | 80 ++++++++-
40 src/gsttools/qgstutils.cpp | 27 ++- 40 src/gsttools/qgstutils.cpp | 27 ++-
41 src/gsttools/qgstvideobuffer.cpp | 18 +- 41 src/gsttools/qgstvideobuffer.cpp | 18 +-
42 src/gsttools/qvideosurfacegstsink.cpp | 136 +++++++++++++- 42 src/gsttools/qvideosurfacegstsink.cpp | 136 +++++++++++++-
@@ -47,7 +47,7 @@ Conflicts:
47 src/multimedia/gsttools_headers/qgstutils_p.h | 4 + 47 src/multimedia/gsttools_headers/qgstutils_p.h | 4 +
48 .../gsttools_headers/qgstvideobuffer_p.h | 3 + 48 .../gsttools_headers/qgstvideobuffer_p.h | 3 +
49 .../gsttools_headers/qvideosurfacegstsink_p.h | 6 +- 49 .../gsttools_headers/qvideosurfacegstsink_p.h | 6 +-
50 .../qgstreameraudiodecoderserviceplugin.cpp | 27 ++- 50 .../qgstreameraudiodecoderserviceplugin.cpp | 29 ++-
51 .../audiodecoder/qgstreameraudiodecodersession.cpp | 33 +++- 51 .../audiodecoder/qgstreameraudiodecodersession.cpp | 33 +++-
52 .../gstreamer/camerabin/camerabinsession.cpp | 25 +++ 52 .../gstreamer/camerabin/camerabinsession.cpp | 25 +++
53 src/plugins/gstreamer/common.pri | 21 ++- 53 src/plugins/gstreamer/common.pri | 21 ++-
@@ -56,10 +56,10 @@ Conflicts:
56 src/plugins/gstreamer/mediaplayer/mediaplayer.pro | 1 - 56 src/plugins/gstreamer/mediaplayer/mediaplayer.pro | 1 -
57 .../mediaplayer/qgstreamerplayercontrol.cpp | 2 + 57 .../mediaplayer/qgstreamerplayercontrol.cpp | 2 +
58 .../mediaplayer/qgstreamerplayerservice.cpp | 9 +- 58 .../mediaplayer/qgstreamerplayerservice.cpp | 9 +-
59 .../mediaplayer/qgstreamerplayerserviceplugin.cpp | 27 ++- 59 .../mediaplayer/qgstreamerplayerserviceplugin.cpp | 31 +++-
60 .../mediaplayer/qgstreamerplayersession.cpp | 154 ++++++++++++++-- 60 .../mediaplayer/qgstreamerplayersession.cpp | 152 ++++++++++++++--
61 .../mediaplayer/qgstreamerplayersession.h | 9 + 61 .../mediaplayer/qgstreamerplayersession.h | 9 +
62 36 files changed, 871 insertions(+), 129 deletions(-) 62 36 files changed, 879 insertions(+), 125 deletions(-)
63 63
64diff --git a/config.tests/gstreamer/gstreamer.pro b/config.tests/gstreamer/gstreamer.pro 64diff --git a/config.tests/gstreamer/gstreamer.pro b/config.tests/gstreamer/gstreamer.pro
65index 02a7e34..6b9843a 100644 65index 02a7e34..6b9843a 100644
@@ -245,7 +245,7 @@ index 7c809a7..6b9bf5d 100644
245 245
246 config_linux_v4l: DEFINES += USE_V4L 246 config_linux_v4l: DEFINES += USE_V4L
247diff --git a/src/gsttools/gstvideoconnector.c b/src/gsttools/gstvideoconnector.c 247diff --git a/src/gsttools/gstvideoconnector.c b/src/gsttools/gstvideoconnector.c
248index 3ed539e..ed0ed3c 100644 248index 3ed539e..f14e68d 100644
249--- a/src/gsttools/gstvideoconnector.c 249--- a/src/gsttools/gstvideoconnector.c
250+++ b/src/gsttools/gstvideoconnector.c 250+++ b/src/gsttools/gstvideoconnector.c
251@@ -59,26 +59,93 @@ GST_STATIC_PAD_TEMPLATE ("src", 251@@ -59,26 +59,93 @@ GST_STATIC_PAD_TEMPLATE ("src",
@@ -486,12 +486,15 @@ index 3ed539e..ed0ed3c 100644
486 486
487 GstVideoConnector *element = GST_VIDEO_CONNECTOR (object); 487 GstVideoConnector *element = GST_VIDEO_CONNECTOR (object);
488 488
489@@ -327,16 +456,23 @@ static gboolean gst_video_connector_new_buffer_probe(GstObject *pad, GstBuffer * 489@@ -327,16 +456,27 @@ static gboolean gst_video_connector_new_buffer_probe(GstObject *pad, GstBuffer *
490 if (element->relinked) 490 if (element->relinked)
491 GST_LOG_OBJECT(element, "rejected buffer because of new segment request"); 491 GST_LOG_OBJECT(element, "rejected buffer because of new segment request");
492 492
493- return !element->relinked; 493+#if GST_CHECK_VERSION(1,0,0)
494+ return element->relinked ? GST_PAD_PROBE_DROP : GST_PAD_PROBE_OK; 494+ return element->relinked ? GST_PAD_PROBE_DROP : GST_PAD_PROBE_OK;
495+#else
496 return !element->relinked;
497+#endif
495 } 498 }
496 499
497- 500-
@@ -512,7 +515,7 @@ index 3ed539e..ed0ed3c 100644
512 element = GST_VIDEO_CONNECTOR (gst_pad_get_parent (pad)); 515 element = GST_VIDEO_CONNECTOR (gst_pad_get_parent (pad));
513 516
514 do { 517 do {
515@@ -348,20 +484,29 @@ gst_video_connector_chain (GstPad * pad, GstBuffer * buf) 518@@ -348,20 +488,29 @@ gst_video_connector_chain (GstPad * pad, GstBuffer * buf)
516 */ 519 */
517 while (element->relinked) { 520 while (element->relinked) {
518 element->relinked = FALSE; 521 element->relinked = FALSE;
@@ -544,7 +547,7 @@ index 3ed539e..ed0ed3c 100644
544 547
545 GST_DEBUG_OBJECT (element, "Pushing new segment event"); 548 GST_DEBUG_OBJECT (element, "Pushing new segment event");
546 if (!gst_pad_push_event (element->srcpad, ev)) { 549 if (!gst_pad_push_event (element->srcpad, ev)) {
547@@ -424,8 +569,11 @@ gst_video_connector_change_state (GstElement * element, 550@@ -424,8 +573,11 @@ gst_video_connector_change_state (GstElement * element,
548 GstStateChangeReturn result; 551 GstStateChangeReturn result;
549 552
550 connector = GST_VIDEO_CONNECTOR(element); 553 connector = GST_VIDEO_CONNECTOR(element);
@@ -557,7 +560,7 @@ index 3ed539e..ed0ed3c 100644
557 switch (transition) { 560 switch (transition) {
558 case GST_STATE_CHANGE_PAUSED_TO_READY: 561 case GST_STATE_CHANGE_PAUSED_TO_READY:
559 gst_video_connector_reset (connector); 562 gst_video_connector_reset (connector);
560@@ -440,9 +588,32 @@ gst_video_connector_change_state (GstElement * element, 563@@ -440,8 +592,29 @@ gst_video_connector_change_state (GstElement * element,
561 return result; 564 return result;
562 } 565 }
563 566
@@ -587,12 +590,9 @@ index 3ed539e..ed0ed3c 100644
587+static gboolean gst_video_connector_handle_sink_event (GstPad * pad, 590+static gboolean gst_video_connector_handle_sink_event (GstPad * pad,
588+ GstEvent * event) 591+ GstEvent * event)
589 { 592 {
590+ (void)parent;
591+
592 if (GST_EVENT_TYPE (event) == GST_EVENT_NEWSEGMENT) { 593 if (GST_EVENT_TYPE (event) == GST_EVENT_NEWSEGMENT) {
593 GstVideoConnector *element = GST_VIDEO_CONNECTOR (gst_pad_get_parent (pad)); 594 GstVideoConnector *element = GST_VIDEO_CONNECTOR (gst_pad_get_parent (pad));
594 595@@ -453,7 +626,6 @@ gst_video_connector_handle_sink_event (GstPad * pad, GstEvent * event)
595@@ -453,7 +624,6 @@ gst_video_connector_handle_sink_event (GstPad * pad, GstEvent * event)
596 596
597 gst_event_parse_new_segment_full (event, &update, &rate, &arate, &format, 597 gst_event_parse_new_segment_full (event, &update, &rate, &arate, &format,
598 &start, &stop, &time); 598 &start, &stop, &time);
@@ -600,7 +600,7 @@ index 3ed539e..ed0ed3c 100644
600 GST_LOG_OBJECT (element, 600 GST_LOG_OBJECT (element,
601 "NEWSEGMENT update %d, rate %lf, applied rate %lf, " 601 "NEWSEGMENT update %d, rate %lf, applied rate %lf, "
602 "format %d, " "%" G_GINT64_FORMAT " -- %" G_GINT64_FORMAT ", time %" 602 "format %d, " "%" G_GINT64_FORMAT " -- %" G_GINT64_FORMAT ", time %"
603@@ -461,9 +631,10 @@ gst_video_connector_handle_sink_event (GstPad * pad, GstEvent * event) 603@@ -461,9 +633,10 @@ gst_video_connector_handle_sink_event (GstPad * pad, GstEvent * event)
604 604
605 gst_segment_set_newsegment_full (&element->segment, update, 605 gst_segment_set_newsegment_full (&element->segment, update,
606 rate, arate, format, start, stop, time); 606 rate, arate, format, start, stop, time);
@@ -666,10 +666,10 @@ index 561a96f..d5e106f 100644
666 } else { 666 } else {
667 sendEOS(); 667 sendEOS();
668diff --git a/src/gsttools/qgstreameraudioprobecontrol.cpp b/src/gsttools/qgstreameraudioprobecontrol.cpp 668diff --git a/src/gsttools/qgstreameraudioprobecontrol.cpp b/src/gsttools/qgstreameraudioprobecontrol.cpp
669index 3baca53..be3de3f 100644 669index 3baca53..497fafe 100644
670--- a/src/gsttools/qgstreameraudioprobecontrol.cpp 670--- a/src/gsttools/qgstreameraudioprobecontrol.cpp
671+++ b/src/gsttools/qgstreameraudioprobecontrol.cpp 671+++ b/src/gsttools/qgstreameraudioprobecontrol.cpp
672@@ -45,9 +45,14 @@ QGstreamerAudioProbeControl::~QGstreamerAudioProbeControl() 672@@ -45,9 +45,15 @@ QGstreamerAudioProbeControl::~QGstreamerAudioProbeControl()
673 673
674 } 674 }
675 675
@@ -679,13 +679,13 @@ index 3baca53..be3de3f 100644
679+#else 679+#else
680 void QGstreamerAudioProbeControl::bufferProbed(GstBuffer* buffer) 680 void QGstreamerAudioProbeControl::bufferProbed(GstBuffer* buffer)
681 { 681 {
682- GstCaps* caps = gst_buffer_get_caps(buffer);
683+ gst_buffer_get_caps(buffer); 682+ gst_buffer_get_caps(buffer);
683 GstCaps* caps = gst_buffer_get_caps(buffer);
684+#endif 684+#endif
685 if (!caps) 685 if (!caps)
686 return; 686 return;
687 687
688@@ -56,8 +61,20 @@ void QGstreamerAudioProbeControl::bufferProbed(GstBuffer* buffer) 688@@ -56,8 +62,20 @@ void QGstreamerAudioProbeControl::bufferProbed(GstBuffer* buffer)
689 if (!format.isValid()) 689 if (!format.isValid())
690 return; 690 return;
691 691
@@ -851,23 +851,24 @@ index b26369a..23674bb 100644
851 851
852 QWidget *QGstreamerVideoWidgetControl::videoWidget() 852 QWidget *QGstreamerVideoWidgetControl::videoWidget()
853diff --git a/src/gsttools/qgstreamervideowindow.cpp b/src/gsttools/qgstreamervideowindow.cpp 853diff --git a/src/gsttools/qgstreamervideowindow.cpp b/src/gsttools/qgstreamervideowindow.cpp
854index a373dcc..587b010 100644 854index a373dcc..4b08332 100644
855--- a/src/gsttools/qgstreamervideowindow.cpp 855--- a/src/gsttools/qgstreamervideowindow.cpp
856+++ b/src/gsttools/qgstreamervideowindow.cpp 856+++ b/src/gsttools/qgstreamervideowindow.cpp
857@@ -37,8 +37,12 @@ 857@@ -37,8 +37,13 @@
858 #include <QtCore/qdebug.h> 858 #include <QtCore/qdebug.h>
859 859
860 #include <gst/gst.h> 860 #include <gst/gst.h>
861+#include <gst/video/videooverlay.h>
862+ 861+
863+#if !GST_CHECK_VERSION(1,0,0) 862+#if !GST_CHECK_VERSION(1,0,0)
864 #include <gst/interfaces/xoverlay.h> 863 #include <gst/interfaces/xoverlay.h>
865 #include <gst/interfaces/propertyprobe.h> 864 #include <gst/interfaces/propertyprobe.h>
865+#else
866+#include <gst/video/videooverlay.h>
866+#endif 867+#endif
867 868
868 869
869 QGstreamerVideoWindow::QGstreamerVideoWindow(QObject *parent, const char *elementName) 870 QGstreamerVideoWindow::QGstreamerVideoWindow(QObject *parent, const char *elementName)
870@@ -49,18 +53,25 @@ QGstreamerVideoWindow::QGstreamerVideoWindow(QObject *parent, const char *elemen 871@@ -49,18 +54,25 @@ QGstreamerVideoWindow::QGstreamerVideoWindow(QObject *parent, const char *elemen
871 , m_fullScreen(false) 872 , m_fullScreen(false)
872 , m_colorKey(QColor::Invalid) 873 , m_colorKey(QColor::Invalid)
873 { 874 {
@@ -895,7 +896,7 @@ index a373dcc..587b010 100644
895 } 896 }
896 897
897 QGstreamerVideoWindow::~QGstreamerVideoWindow() 898 QGstreamerVideoWindow::~QGstreamerVideoWindow()
898@@ -82,11 +93,15 @@ void QGstreamerVideoWindow::setWinId(WId id) 899@@ -82,11 +94,15 @@ void QGstreamerVideoWindow::setWinId(WId id)
899 WId oldId = m_windowId; 900 WId oldId = m_windowId;
900 901
901 m_windowId = id; 902 m_windowId = id;
@@ -913,7 +914,7 @@ index a373dcc..587b010 100644
913 if (!oldId) 914 if (!oldId)
914 emit readyChanged(true); 915 emit readyChanged(true);
915 916
916@@ -97,7 +112,20 @@ void QGstreamerVideoWindow::setWinId(WId id) 917@@ -97,7 +113,20 @@ void QGstreamerVideoWindow::setWinId(WId id)
917 bool QGstreamerVideoWindow::processSyncMessage(const QGstreamerMessage &message) 918 bool QGstreamerVideoWindow::processSyncMessage(const QGstreamerMessage &message)
918 { 919 {
919 GstMessage* gm = message.rawMessage(); 920 GstMessage* gm = message.rawMessage();
@@ -934,7 +935,7 @@ index a373dcc..587b010 100644
934 if ((GST_MESSAGE_TYPE(gm) == GST_MESSAGE_ELEMENT) && 935 if ((GST_MESSAGE_TYPE(gm) == GST_MESSAGE_ELEMENT) &&
935 gst_structure_has_name(gm->structure, "prepare-xwindow-id") && 936 gst_structure_has_name(gm->structure, "prepare-xwindow-id") &&
936 m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) { 937 m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) {
937@@ -110,7 +138,7 @@ bool QGstreamerVideoWindow::processSyncMessage(const QGstreamerMessage &message) 938@@ -110,7 +139,7 @@ bool QGstreamerVideoWindow::processSyncMessage(const QGstreamerMessage &message)
938 939
939 return true; 940 return true;
940 } 941 }
@@ -943,7 +944,7 @@ index a373dcc..587b010 100644
943 return false; 944 return false;
944 } 945 }
945 946
946@@ -122,7 +150,19 @@ QRect QGstreamerVideoWindow::displayRect() const 947@@ -122,7 +151,19 @@ QRect QGstreamerVideoWindow::displayRect() const
947 void QGstreamerVideoWindow::setDisplayRect(const QRect &rect) 948 void QGstreamerVideoWindow::setDisplayRect(const QRect &rect)
948 { 949 {
949 m_displayRect = rect; 950 m_displayRect = rect;
@@ -964,7 +965,7 @@ index a373dcc..587b010 100644
964 if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) { 965 if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) {
965 #if GST_VERSION_MICRO >= 29 966 #if GST_VERSION_MICRO >= 29
966 if (m_displayRect.isEmpty()) 967 if (m_displayRect.isEmpty())
967@@ -136,6 +176,7 @@ void QGstreamerVideoWindow::setDisplayRect(const QRect &rect) 968@@ -136,6 +177,7 @@ void QGstreamerVideoWindow::setDisplayRect(const QRect &rect)
968 repaint(); 969 repaint();
969 #endif 970 #endif
970 } 971 }
@@ -972,7 +973,7 @@ index a373dcc..587b010 100644
972 } 973 }
973 974
974 Qt::AspectRatioMode QGstreamerVideoWindow::aspectRatioMode() const 975 Qt::AspectRatioMode QGstreamerVideoWindow::aspectRatioMode() const
975@@ -157,6 +198,16 @@ void QGstreamerVideoWindow::setAspectRatioMode(Qt::AspectRatioMode mode) 976@@ -157,6 +199,16 @@ void QGstreamerVideoWindow::setAspectRatioMode(Qt::AspectRatioMode mode)
976 977
977 void QGstreamerVideoWindow::repaint() 978 void QGstreamerVideoWindow::repaint()
978 { 979 {
@@ -989,7 +990,7 @@ index a373dcc..587b010 100644
989 if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) { 990 if (m_videoSink && GST_IS_X_OVERLAY(m_videoSink)) {
990 //don't call gst_x_overlay_expose if the sink is in null state 991 //don't call gst_x_overlay_expose if the sink is in null state
991 GstState state = GST_STATE_NULL; 992 GstState state = GST_STATE_NULL;
992@@ -165,6 +216,7 @@ void QGstreamerVideoWindow::repaint() 993@@ -165,6 +217,7 @@ void QGstreamerVideoWindow::repaint()
993 gst_x_overlay_expose(GST_X_OVERLAY(m_videoSink)); 994 gst_x_overlay_expose(GST_X_OVERLAY(m_videoSink));
994 } 995 }
995 } 996 }
@@ -997,7 +998,7 @@ index a373dcc..587b010 100644
997 } 998 }
998 999
999 QColor QGstreamerVideoWindow::colorKey() const 1000 QColor QGstreamerVideoWindow::colorKey() const
1000@@ -296,11 +348,22 @@ QSize QGstreamerVideoWindow::nativeSize() const 1001@@ -296,11 +349,22 @@ QSize QGstreamerVideoWindow::nativeSize() const
1001 return m_nativeSize; 1002 return m_nativeSize;
1002 } 1003 }
1003 1004
@@ -1020,7 +1021,7 @@ index a373dcc..587b010 100644
1020 } 1021 }
1021 1022
1022 void QGstreamerVideoWindow::updateNativeVideoSize() 1023 void QGstreamerVideoWindow::updateNativeVideoSize()
1023@@ -311,7 +374,11 @@ void QGstreamerVideoWindow::updateNativeVideoSize() 1024@@ -311,7 +375,11 @@ void QGstreamerVideoWindow::updateNativeVideoSize()
1024 if (m_videoSink) { 1025 if (m_videoSink) {
1025 //find video native size to update video widget size hint 1026 //find video native size to update video widget size hint
1026 GstPad *pad = gst_element_get_static_pad(m_videoSink,"sink"); 1027 GstPad *pad = gst_element_get_static_pad(m_videoSink,"sink");
@@ -1561,10 +1562,10 @@ index 11b305d..01935f7 100644
1561 1562
1562 static GstFlowReturn buffer_alloc( 1563 static GstFlowReturn buffer_alloc(
1563diff --git a/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp b/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp 1564diff --git a/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp b/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp
1564index 3098aab..9c54663 100644 1565index 3098aab..6aa8c89 100644
1565--- a/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp 1566--- a/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp
1566+++ b/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp 1567+++ b/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecoderserviceplugin.cpp
1567@@ -74,29 +74,42 @@ void QGstreamerAudioDecoderServicePlugin::updateSupportedMimeTypes() const 1568@@ -74,29 +74,46 @@ void QGstreamerAudioDecoderServicePlugin::updateSupportedMimeTypes() const
1568 gst_init(NULL, NULL); 1569 gst_init(NULL, NULL);
1569 1570
1570 GList *plugins, *orig_plugins; 1571 GList *plugins, *orig_plugins;
@@ -1583,14 +1584,17 @@ index 3098aab..9c54663 100644
1583+#if GST_CHECK_VERSION(1,0,0) 1584+#if GST_CHECK_VERSION(1,0,0)
1584+ if (GST_OBJECT_FLAG_IS_SET(plugin, GST_PLUGIN_FLAG_BLACKLISTED)) 1585+ if (GST_OBJECT_FLAG_IS_SET(plugin, GST_PLUGIN_FLAG_BLACKLISTED))
1585+ continue; 1586+ continue;
1587+
1588+ GstRegistry *registry = gst_registry_get();
1586+#else 1589+#else
1587 if (plugin->flags & (1<<1)) //GST_PLUGIN_FLAG_BLACKLISTED 1590 if (plugin->flags & (1<<1)) //GST_PLUGIN_FLAG_BLACKLISTED
1588 continue; 1591 continue;
1589- 1592
1590- orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get_default (), 1593- orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get_default (),
1591- plugin->desc.name); 1594- plugin->desc.name);
1595+ GstRegistry *registry = gst_registry_get_default();
1592+#endif 1596+#endif
1593+ orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get (), 1597+ orig_features = features = gst_registry_get_feature_list_by_plugin(registry,
1594+ gst_plugin_get_name(plugin)); 1598+ gst_plugin_get_name(plugin));
1595 while (features) { 1599 while (features) {
1596 if (!G_UNLIKELY(features->data == NULL)) { 1600 if (!G_UNLIKELY(features->data == NULL)) {
@@ -1889,7 +1893,7 @@ index ddc828e..00bee36 100644
1889 m_videoRenderer = new QGstreamerVideoRenderer(this); 1893 m_videoRenderer = new QGstreamerVideoRenderer(this);
1890 #endif 1894 #endif
1891diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp 1895diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp
1892index 7d20b6d..bf2f9f8 100644 1896index 7d20b6d..ea804af 100644
1893--- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp 1897--- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp
1894+++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp 1898+++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayerserviceplugin.cpp
1895@@ -87,7 +87,11 @@ void QGstreamerPlayerServicePlugin::updateSupportedMimeTypes() const 1899@@ -87,7 +87,11 @@ void QGstreamerPlayerServicePlugin::updateSupportedMimeTypes() const
@@ -1904,21 +1908,25 @@ index 7d20b6d..bf2f9f8 100644
1904 1908
1905 while (plugins) { 1909 while (plugins) {
1906 GList *features, *orig_features; 1910 GList *features, *orig_features;
1907@@ -95,22 +99,33 @@ void QGstreamerPlayerServicePlugin::updateSupportedMimeTypes() const 1911@@ -95,22 +99,37 @@ void QGstreamerPlayerServicePlugin::updateSupportedMimeTypes() const
1908 GstPlugin *plugin = (GstPlugin *) (plugins->data); 1912 GstPlugin *plugin = (GstPlugin *) (plugins->data);
1909 plugins = g_list_next (plugins); 1913 plugins = g_list_next (plugins);
1910 1914
1911+#if GST_CHECK_VERSION(1,0,0) 1915+#if GST_CHECK_VERSION(1,0,0)
1912+ if (GST_OBJECT_FLAG_IS_SET(plugin, GST_PLUGIN_FLAG_BLACKLISTED)) 1916+ if (GST_OBJECT_FLAG_IS_SET(plugin, GST_PLUGIN_FLAG_BLACKLISTED))
1913+ continue; 1917+ continue;
1918+
1919+ GstRegistry *registry = gst_registry_get();
1914+#else 1920+#else
1915 if (plugin->flags & (1<<1)) //GST_PLUGIN_FLAG_BLACKLISTED 1921 if (plugin->flags & (1<<1)) //GST_PLUGIN_FLAG_BLACKLISTED
1916 continue; 1922 continue;
1917+#endif
1918 1923
1919- orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get_default (), 1924- orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get_default (),
1920- plugin->desc.name); 1925- plugin->desc.name);
1921+ orig_features = features = gst_registry_get_feature_list_by_plugin(gst_registry_get(), 1926+ GstRegistry *registry = gst_registry_get_default();
1927+#endif
1928+
1929+ orig_features = features = gst_registry_get_feature_list_by_plugin(registry,
1922+ gst_plugin_get_name(plugin)); 1930+ gst_plugin_get_name(plugin));
1923 while (features) { 1931 while (features) {
1924 if (!G_UNLIKELY(features->data == NULL)) { 1932 if (!G_UNLIKELY(features->data == NULL)) {
@@ -1945,7 +1953,7 @@ index 7d20b6d..bf2f9f8 100644
1945 GstStaticPadTemplate *padtemplate = (GstStaticPadTemplate*)(pads->data); 1953 GstStaticPadTemplate *padtemplate = (GstStaticPadTemplate*)(pads->data);
1946 pads = g_list_next (pads); 1954 pads = g_list_next (pads);
1947diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp 1955diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
1948index 15924a6..8013d0d 100644 1956index 15924a6..f77220a 100644
1949--- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp 1957--- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
1950+++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp 1958+++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
1951@@ -85,6 +85,16 @@ typedef enum { 1959@@ -85,6 +85,16 @@ typedef enum {
@@ -2204,11 +2212,10 @@ index 15924a6..8013d0d 100644
2204 } 2212 }
2205 2213
2206 //listen for queue2 element added to uridecodebin/decodebin2 as well. 2214 //listen for queue2 element added to uridecodebin/decodebin2 as well.
2207@@ -1727,7 +1798,27 @@ void QGstreamerPlayerSession::removeProbe(QGstreamerVideoProbeControl* probe) 2215@@ -1727,6 +1798,26 @@ void QGstreamerPlayerSession::removeProbe(QGstreamerVideoProbeControl* probe)
2208 // Assume user releases any outstanding references to video frames. 2216 // Assume user releases any outstanding references to video frames.
2209 } 2217 }
2210 2218
2211-gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data)
2212+#if GST_CHECK_VERSION(1,0,0) 2219+#if GST_CHECK_VERSION(1,0,0)
2213+GstPadProbeReturn QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstPadProbeInfo *info, gpointer user_data) 2220+GstPadProbeReturn QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstPadProbeInfo *info, gpointer user_data)
2214+{ 2221+{
@@ -2229,10 +2236,9 @@ index 15924a6..8013d0d 100644
2229+ 2236+
2230+#else 2237+#else
2231+ 2238+
2232+static gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data) 2239 gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *buffer, gpointer user_data)
2233 { 2240 {
2234 Q_UNUSED(pad); 2241 Q_UNUSED(pad);
2235
2236@@ -1742,6 +1833,7 @@ gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *bu 2242@@ -1742,6 +1833,7 @@ gboolean QGstreamerPlayerSession::padVideoBufferProbe(GstPad *pad, GstBuffer *bu
2237 2243
2238 return TRUE; 2244 return TRUE;
@@ -2365,5 +2371,4 @@ index f2e760a..50bda3d 100644
2365 2371
2366 QT_END_NAMESPACE 2372 QT_END_NAMESPACE
2367-- 2373--
23682.3.5 23742.6.2
2369