diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | e2de64d6f1beb9e492daf5b886e19933c1fa41dd (patch) | |
tree | 9047cf9e6b5c43878d5bf82660adae77ceee097a /mpeglib/lib/decoder/splayPlugin.h | |
download | tdemultimedia-e2de64d6f1beb9e492daf5b886e19933c1fa41dd.tar.gz tdemultimedia-e2de64d6f1beb9e492daf5b886e19933c1fa41dd.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdemultimedia@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'mpeglib/lib/decoder/splayPlugin.h')
-rw-r--r-- | mpeglib/lib/decoder/splayPlugin.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/mpeglib/lib/decoder/splayPlugin.h b/mpeglib/lib/decoder/splayPlugin.h new file mode 100644 index 00000000..34a9751b --- /dev/null +++ b/mpeglib/lib/decoder/splayPlugin.h @@ -0,0 +1,67 @@ +/* + splay player plugin + Copyright (C) 1999 Martin Vogt + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU Library General Public License as published by + the Free Software Foundation. + + For more information look at the file COPYRIGHT in this package + + */ + + +#ifndef __SPLAYPLUGIN_H +#define __SPLAYPLUGIN_H + +#include "../decoder/decoderPlugin.h" +#include <kdemacros.h> + +class SplayDecoder; +class MpegAudioFrame; +class AudioFrame; +class FloatFrame; +class PCMFrame; +class FileAccessWrapper; +class MpegAudioInfo; + +class KDE_EXPORT SplayPlugin : public DecoderPlugin { + + int lnoLength; + int lfirst; + int lOutput; + /* + * directly writes decoded data as float, instead of converting it to + * short int samples first. float->int conversions are _very_ + * time intensiv! + */ + bool doFloat; + + SplayDecoder* splay; + MpegAudioFrame* framer; + FloatFrame* floatFrame; + PCMFrame* pcmFrame; + unsigned char* inputbuffer; + int lenghtInSec; + MpegAudioInfo* info; + FileAccessWrapper* fileAccess; + int resyncCounter; + AudioFrame* audioFrame; + + + public: + SplayPlugin(); + ~SplayPlugin(); + + void decoder_loop(); + int seek_impl(int second); + void config(const char* key,const char* value,void* user_data); + + protected: + int getTotalLength(); + void processStreamState(TimeStamp* stamp,AudioFrame* audioFrame); + void audioSetup(AudioFrame* setupFrame); + int doFrameFind(); + +}; +#endif |