aboutsummaryrefslogtreecommitdiff
path: root/src/QXmppCodec.h
diff options
context:
space:
mode:
authorJeremy Lainé <jeremy.laine@m4x.org>2011-07-26 08:52:00 +0000
committerJeremy Lainé <jeremy.laine@m4x.org>2011-07-26 08:52:00 +0000
commit3865d6087639e60a8bef07bf7dd88971744bacc8 (patch)
treec3b27bb9996e75106eb85c5a4405ad18e3056080 /src/QXmppCodec.h
parent413651e1a8f7886a2c053141be33fe9c1361ede9 (diff)
downloadqxmpp-3865d6087639e60a8bef07bf7dd88971744bacc8.tar.gz
add support for vp8 video codec
Diffstat (limited to 'src/QXmppCodec.h')
-rw-r--r--src/QXmppCodec.h38
1 files changed, 36 insertions, 2 deletions
diff --git a/src/QXmppCodec.h b/src/QXmppCodec.h
index 1d52cdbd..61dd45a2 100644
--- a/src/QXmppCodec.h
+++ b/src/QXmppCodec.h
@@ -26,6 +26,7 @@
#include <QtGlobal>
+class QXmppRtpPacket;
class QXmppVideoFormat;
class QXmppVideoFrame;
@@ -110,7 +111,7 @@ class QXmppVideoDecoder
{
public:
virtual QXmppVideoFormat format() const = 0;
- virtual QList<QXmppVideoFrame> handlePacket(const QByteArray &ba) = 0;
+ virtual QList<QXmppVideoFrame> handlePacket(const QXmppRtpPacket &packet) = 0;
virtual bool setParameters(const QMap<QString, QString> &parameters) = 0;
};
@@ -133,7 +134,7 @@ public:
~QXmppTheoraDecoder();
QXmppVideoFormat format() const;
- QList<QXmppVideoFrame> handlePacket(const QByteArray &ba);
+ QList<QXmppVideoFrame> handlePacket(const QXmppRtpPacket &packet);
bool setParameters(const QMap<QString, QString> &parameters);
private:
@@ -155,4 +156,37 @@ private:
};
#endif
+#ifdef QXMPP_USE_VPX
+class QXmppVpxDecoderPrivate;
+class QXmppVpxEncoderPrivate;
+
+class QXmppVpxDecoder : public QXmppVideoDecoder
+{
+public:
+ QXmppVpxDecoder();
+ ~QXmppVpxDecoder();
+
+ QXmppVideoFormat format() const;
+ QList<QXmppVideoFrame> handlePacket(const QXmppRtpPacket &packet);
+ bool setParameters(const QMap<QString, QString> &parameters);
+
+private:
+ QXmppVpxDecoderPrivate *d;
+};
+
+class QXmppVpxEncoder : public QXmppVideoEncoder
+{
+public:
+ QXmppVpxEncoder();
+ ~QXmppVpxEncoder();
+
+ bool setFormat(const QXmppVideoFormat &format);
+ QList<QByteArray> handleFrame(const QXmppVideoFrame &frame);
+ QMap<QString, QString> parameters() const;
+
+private:
+ QXmppVpxEncoderPrivate *d;
+};
+#endif
+
#endif