[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [phonon-gstreamer/1.0-porting-for-merge] gstreamer: Merge branch 'master' into 1.0-porting-for-merge
From: Dan_Vrátil <dvratil () redhat ! com>
Date: 2013-10-24 13:57:46
Message-ID: E1VZLQ2-0000CS-0q () scm ! kde ! org
[Download RAW message or body]
Git commit 86563930234bbca8066aa8f55f0df211d58fc8ff by Dan Vrátil.
Committed on 24/10/2013 at 13:56.
Pushed by dvratil into branch '1.0-porting-for-merge'.
Merge branch 'master' into 1.0-porting-for-merge
Conflicts:
gstreamer/medianode.cpp
M +16 -8 gstreamer/CMakeLists.txt
M +29 -0 gstreamer/audiooutput.cpp
M +12 -101 gstreamer/medianode.cpp
M +1 -4 gstreamer/mediaobject.cpp
M +1 -1 gstreamer/pipeline.cpp
M +1 -1 gstreamer/pipeline.h
M +1 -1 gstreamer/plugininstaller.cpp
M +1 -1 gstreamer/plugininstaller.h
M +1 -1 gstreamer/videodataoutput.cpp
http://commits.kde.org/phonon-gstreamer/86563930234bbca8066aa8f55f0df211d58fc8ff
diff --cc gstreamer/audiooutput.cpp
index 5403404,b73df4d..6d58153
--- a/gstreamer/audiooutput.cpp
+++ b/gstreamer/audiooutput.cpp
@@@ -22,8 -22,8 +22,9 @@@
#include "devicemanager.h"
#include "mediaobject.h"
#include "gsthelper.h"
+#include "phonon-config-gstreamer.h"
#include <phonon/audiooutput.h>
+ #include <phonon/pulsesupport.h>
#include <QtCore/QStringBuilder>
@@@ -215,6 -210,30 +216,34 @@@ bool AudioOutput::setOutputDevice(cons
}
#endif
+ #if (PHONON_VERSION >= PHONON_VERSION_CHECK(4, 6, 50))
+ void AudioOutput::setStreamUuid(QString uuid)
+ {
+ m_streamUuid = uuid;
+ #warning this really needs a check for pulsesink as well
+ if (g_object_class_find_property(G_OBJECT_GET_CLASS(m_audioSink), \
"stream-properties")) { + const QHash<QString, QString> streamProperties = \
PulseSupport::getInstance()->streamProperties(uuid); ++#if GST_VERSION < \
GST_VERSION_CHECK (1,0,0,0) + GstStructure *properties = \
gst_structure_empty_new("props"); ++#else
++ GstStructure *properties = gst_structure_new_empty("props");
++#endif
+
+ QHashIterator<QString, QString> it(streamProperties);
+ while (it.hasNext()) {
+ it.next();
+ gst_structure_set(properties,
+ it.key().toUtf8().constData(), G_TYPE_STRING, \
it.value().toUtf8().constData(), + NULL);
+ }
+
+ Q_ASSERT(properties);
+ g_object_set (m_audioSink, "stream-properties", properties, NULL);
+ gst_structure_free(properties);
+ }
+ }
+ #endif
+
}
} //namespace Phonon::Gstreamer
#include "moc_audiooutput.cpp"
diff --cc gstreamer/medianode.cpp
index a8b1e4e,fb633cb..b7f459a
--- a/gstreamer/medianode.cpp
+++ b/gstreamer/medianode.cpp
@@@ -47,42 -43,16 +45,24 @@@ MediaNode::MediaNode(Backend *backend,
if (description & AudioSource) {
m_audioTee = gst_element_factory_make("tee", NULL);
+ Q_ASSERT(m_audioTee); // Must not ever be null.
gst_object_ref (GST_OBJECT (m_audioTee));
+#if GST_VERSION < GST_VERSION_CHECK (1,0,0,0)
gst_object_sink (GST_OBJECT (m_audioTee));
+#else
+ gst_object_ref_sink (GST_OBJECT (m_audioTee));
+#endif
-
- // Fake audio sink to swallow unconnected audio pads
- m_fakeAudioSink = gst_element_factory_make("fakesink", NULL);
- g_object_set (G_OBJECT (m_fakeAudioSink), "sync", TRUE, NULL);
- gst_object_ref (GST_OBJECT (m_fakeAudioSink));
- #if GST_VERSION < GST_VERSION_CHECK (1,0,0,0)
- gst_object_sink (GST_OBJECT (m_fakeAudioSink));
- #else
- gst_object_ref_sink (GST_OBJECT (m_fakeAudioSink));
- #endif
}
if (description & VideoSource) {
m_videoTee = gst_element_factory_make("tee", NULL);
+ Q_ASSERT(m_videoTee); // Must not ever be null.
gst_object_ref (GST_OBJECT (m_videoTee));
+#if GST_VERSION < GST_VERSION_CHECK (1,0,0,0)
gst_object_sink (GST_OBJECT (m_videoTee));
+#else
+ gst_object_ref_sink (GST_OBJECT (m_videoTee));
+#endif
-
- // Fake video sink to swallow unconnected video pads
- m_fakeVideoSink = gst_element_factory_make("fakesink", NULL);
- g_object_set (G_OBJECT (m_fakeVideoSink), "sync", TRUE, NULL);
- gst_object_ref (GST_OBJECT (m_fakeVideoSink));
- #if GST_VERSION < GST_VERSION_CHECK (1,0,0,0)
- gst_object_sink (GST_OBJECT (m_fakeVideoSink));
- #else
- gst_object_ref_sink (GST_OBJECT (m_fakeVideoSink));
- #endif
}
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic