mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-10 11:59:58 -05:00
Initial community commit
This commit is contained in:
65
Src/vlb/obj_vlbDecoder.h
Normal file
65
Src/vlb/obj_vlbDecoder.h
Normal file
@@ -0,0 +1,65 @@
|
||||
#ifndef NULLSOFT_VLB_OBJ_VLBDECODER_H
|
||||
#define NULLSOFT_VLB_OBJ_VLBDECODER_H
|
||||
#include "aacdecoderapi.h"
|
||||
#include <bfc/dispatch.h>
|
||||
|
||||
class obj_vlbDecoder : public Dispatchable
|
||||
{
|
||||
protected:
|
||||
obj_vlbDecoder() {}
|
||||
~obj_vlbDecoder() {}
|
||||
public:
|
||||
int Open(DataIOControl *paacInput);
|
||||
void Close();
|
||||
long Synchronize(AACStreamParameters *paacStreamParameters);
|
||||
long DecodeFrame(AACStreamParameters *paacStreamParameters);
|
||||
void Flush();
|
||||
size_t Read(void *buffer, size_t bufferlen);
|
||||
|
||||
enum
|
||||
{
|
||||
OBJ_VLBDECODER_OPEN = 0,
|
||||
OBJ_VLBDECODER_CLOSE = 1,
|
||||
OBJ_VLBDECODER_SYNCHRONIZE = 2,
|
||||
OBJ_VLBDECODER_DECODEFRAME = 3,
|
||||
OBJ_VLBDECODER_FLUSH = 4,
|
||||
OBJ_VLBDECODER_READ = 5,
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
inline int obj_vlbDecoder::Open(DataIOControl *paacInput)
|
||||
{
|
||||
return _call(OBJ_VLBDECODER_OPEN, (int)0, paacInput);
|
||||
}
|
||||
|
||||
inline void obj_vlbDecoder::Close()
|
||||
{
|
||||
_voidcall(OBJ_VLBDECODER_CLOSE);
|
||||
}
|
||||
|
||||
inline long obj_vlbDecoder::Synchronize(AACStreamParameters *paacStreamParameters)
|
||||
{
|
||||
return _call(OBJ_VLBDECODER_SYNCHRONIZE, (long)ERR_SYNC_ERROR, paacStreamParameters);
|
||||
}
|
||||
|
||||
inline long obj_vlbDecoder::DecodeFrame(AACStreamParameters *paacStreamParameters)
|
||||
{
|
||||
return _call(OBJ_VLBDECODER_DECODEFRAME, (long)ERR_INVALID_BITSTREAM, paacStreamParameters);
|
||||
}
|
||||
|
||||
inline void obj_vlbDecoder::Flush()
|
||||
{
|
||||
_voidcall(OBJ_VLBDECODER_FLUSH);
|
||||
}
|
||||
|
||||
inline size_t obj_vlbDecoder::Read(void *buffer, size_t bufferlen)
|
||||
{
|
||||
return _call(OBJ_VLBDECODER_READ, (size_t)0, buffer, bufferlen);
|
||||
}
|
||||
|
||||
// {A9F0E37C-69BA-48d7-BFEB-1C85A9F5A2FA}
|
||||
static const GUID obj_vlbDecoderGUID =
|
||||
{ 0xa9f0e37c, 0x69ba, 0x48d7, { 0xbf, 0xeb, 0x1c, 0x85, 0xa9, 0xf5, 0xa2, 0xfa } };
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user