aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/dcc/codec.h
diff options
context:
space:
mode:
authorGravatar Fabio Bas2009-11-30 17:30:08 +0000
committerGravatar Fabio Bas2009-11-30 17:30:08 +0000
commit5e3ada86ffaee845bd6e7ec0a0ee5797ea1f1fe3 (patch)
tree9dd8b10377b2ee88059ae07526e465aa7aa7c66e /src/modules/dcc/codec.h
parentfix for #624 (diff)
downloadKVIrc-5e3ada86ffaee845bd6e7ec0a0ee5797ea1f1fe3.tar.gz
KVIrc-5e3ada86ffaee845bd6e7ec0a0ee5797ea1f1fe3.tar.bz2
KVIrc-5e3ada86ffaee845bd6e7ec0a0ee5797ea1f1fe3.zip
dcc video: added experimental ogg/theora support. Open Problems:
- audio sync still missing - Slow as hell, since yuv<->rgb conversion is done in software git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@3641 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/dcc/codec.h')
-rw-r--r--src/modules/dcc/codec.h17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/modules/dcc/codec.h b/src/modules/dcc/codec.h
index 68da97c8d..cff70073d 100644
--- a/src/modules/dcc/codec.h
+++ b/src/modules/dcc/codec.h
@@ -25,6 +25,7 @@
//=============================================================================
#include "kvi_string.h"
+#include "kvi_oggtheora.h"
#include "kvi_databuffer.h"
class KviDccVoiceCodec
@@ -63,21 +64,27 @@ protected:
KviStr m_szName;
public:
const char * name();
- virtual void encode(KviDataBuffer * signal,KviDataBuffer * stream);
+ virtual void encodeVideo(KviDataBuffer * videoSignal, KviDataBuffer * stream);
+ virtual void encodeAudio(KviDataBuffer * audioSignal, KviDataBuffer * stream);
virtual void decode(KviDataBuffer * stream,KviDataBuffer * signal);
virtual int encodedFrameSize();
virtual int decodedFrameSize();
};
-class KviDccVideoJpegCodec : public KviDccVideoCodec
+class KviDccVideoTheoraCodec : public KviDccVideoCodec
{
public:
- KviDccVideoJpegCodec();
- virtual ~KviDccVideoJpegCodec();
+ KviDccVideoTheoraCodec();
+ virtual ~KviDccVideoTheoraCodec();
public:
- virtual void encode(KviDataBuffer * signal,KviDataBuffer * stream);
+ virtual void encodeVideo(KviDataBuffer * videoSignal, KviDataBuffer * stream);
+ virtual void encodeAudio(KviDataBuffer * audioSignal, KviDataBuffer * stream);
virtual void decode(KviDataBuffer * stream,KviDataBuffer * signal);
virtual int encodedFrameSize();
virtual int decodedFrameSize();
+private:
+ KviTheoraEncoder *m_pEncoder;
+ KviTheoraDecoder *m_pDecoder;
};
+
#endif //_CODEC_H_