winamp/Src/Plugins/Input/in_vorbis/decoder.h
2024-09-24 14:54:57 +02:00

41 lines
No EOL
668 B
C++

class Shaper;
class Decoder
{
private:
void process_rg();
void setup_mc();
float* bptr;
float** pcmbuf;
Shaper * shaper;
UINT data,pos;
float scale;
int cur_link;
int cur_preamp;
int clipmin,clipmax;
public:
VorbisFile * file;
UINT nch,sr,kbps,bps,src_nch;
Decoder()
{
memset(this,0,sizeof(*this));
}
~Decoder();
int Seek(double p);
int Read(UINT bytes,void * buf);
void Flush();
void Init(VorbisFile * f, UINT _bits=0, UINT _nch=0, bool _useFloat=false, bool allowRG=true);
void wa2_setinfo(UINT cur_bitrate);
UINT DataAvailable();
int DoFrame();
bool need_reopen;
int play_init();
bool play_inited;
bool dither;
bool useFloat;
};