diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2011-07-26 08:52:00 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2011-07-26 08:52:00 +0000 |
| commit | 3865d6087639e60a8bef07bf7dd88971744bacc8 (patch) | |
| tree | c3b27bb9996e75106eb85c5a4405ad18e3056080 /src/QXmppCodec.h | |
| parent | 413651e1a8f7886a2c053141be33fe9c1361ede9 (diff) | |
| download | qxmpp-3865d6087639e60a8bef07bf7dd88971744bacc8.tar.gz | |
add support for vp8 video codec
Diffstat (limited to 'src/QXmppCodec.h')
| -rw-r--r-- | src/QXmppCodec.h | 38 |
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> ¶meters) = 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> ¶meters); 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> ¶meters); + +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 |
