[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [phonon-gstreamer/qml-i2] gstreamer: Merge branch 'master' into qml-i2
From: Trever Fischer <tdfischer () fedoraproject ! org>
Date: 2012-09-23 16:26:57
Message-ID: 20120923162657.E51A7A60A6 () git ! kde ! org
[Download RAW message or body]
Git commit cbaddb6871edd61d6e6db7c1b68c3a5f964d15bd by Trever Fischer.
Committed on 23/09/2012 at 18:23.
Pushed by tdfischer into branch 'qml-i2'.
Merge branch 'master' into qml-i2
Conflicts:
gstreamer/CMakeLists.txt
gstreamer/backend.cpp
M +8 -7 gstreamer/CMakeLists.txt
M +56 -108 gstreamer/backend.cpp
A +1 -1 gstreamer/videographicsobject.h [License: LGPL]
http://commits.kde.org/phonon-gstreamer/cbaddb6871edd61d6e6db7c1b68c3a5f964d15bd
diff --cc gstreamer/backend.cpp
index a9c68c5,bc267e6..121f304
--- a/gstreamer/backend.cpp
+++ b/gstreamer/backend.cpp
@@@ -18,10 -18,12 +18,13 @@@
#include "backend.h"
#include "audiooutput.h"
#include "audiodataoutput.h"
+ #ifdef PHONON_EXPERIMENTAL
#include "videodataoutput.h"
+ #endif
#include "audioeffect.h"
+ #include "debug.h"
#include "mediaobject.h"
+#include "videographicsobject.h"
#include "videowidget.h"
#include "devicemanager.h"
#include "effectmanager.h"
diff --cc gstreamer/videographicsobject.h
index 64f224f,0000000..36722e4
mode 100644,000000..100644
--- a/gstreamer/videographicsobject.h
+++ b/gstreamer/videographicsobject.h
@@@ -1,84 -1,0 +1,84 @@@
+/*
+ Copyright (C) 2011 Harald Sitter <sitter@kde.org>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) version 3, or any
+ later version accepted by the membership of KDE e.V. (or its
+ successor approved by the membership of KDE e.V.), Nokia Corporation
+ (or its successors, if any) and the KDE Free Qt Foundation, which shall
+ act as a proxy defined in Section 6 of version 3 of the license.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef PHONON_GSTREAMER_VIDEOGRAPHICSOBJECT_H
+#define PHONON_GSTREAMER_VIDEOGRAPHICSOBJECT_H
+
+#include <QtCore/QObject>
+#include <QtCore/QMutex>
+
+#include <phonon/videographicsobjectinterface.h>
+
+#include "medianode.h"
+#include "videosink.h"
+#include "debug.h"
+
+namespace Phonon {
+namespace Gstreamer {
+
+class VideoGraphicsObject : public QObject,
+ public VideoGraphicsObjectInterface,
+ public MediaNode
+{
+ Q_OBJECT
+ Q_INTERFACES(Phonon::VideoGraphicsObjectInterface Phonon::Gstreamer::MediaNode)
+public:
+ explicit VideoGraphicsObject(Backend *backend, QObject *parent = 0);
+ ~VideoGraphicsObject();
- QList<VideoFrame::Format> offering(QList<VideoFrame::Format> offers);
++ Q_INVOKABLE QList<VideoFrame::Format> offering(QList<VideoFrame::Format> offers);
+ void choose(VideoFrame::Format format);
+
+ static void renderCallback(GstBuffer *buffer, void *userData);
+
+ void lock();
+ bool tryLock();
+ void unlock();
+
+ const VideoFrame *frame() const;
+
+ GstElement *videoElement()
+ {
+ debug() << "fishy";
+ return m_bin;
+ }
+
+signals:
+ void frameReady();
+ void reset();
+ void needFormat();
+
+private:
+ Phonon::VideoFrame m_frame;
+
+ PGstVideoSink *m_sink;
+
+ QMutex m_mutex;
+
+ GstElement *m_bin;
+ GstBuffer *m_buffer;
+
+ VideoFrame::Format m_format;
+};
+
+} // namespace Gstreamer
+} // namespace Phonon
+
+#endif // PHONON_GSTREAMER_VIDEOGRAPHICSOBJECT_H
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic