1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-09 12:42:11 +00:00
OpenMW/apps/openmw/mwsound/mpgsnd_decoder.hpp

40 lines
796 B
C++
Raw Normal View History

#ifndef GAME_SOUND_MPGSND_DECODER_H
#define GAME_SOUND_MPGSND_DECODER_H
#include <string>
#include "mpg123.h"
#include "sndfile.h"
#include "sound_decoder.hpp"
namespace MWSound
{
class MpgSnd_Decoder : public Sound_Decoder
{
2012-03-17 09:51:46 +00:00
SNDFILE *sndFile;
mpg123_handle *mpgFile;
ChannelConfig chanConfig;
int sampleRate;
virtual void Open(const std::string &fname);
virtual void Close();
2012-03-17 09:51:46 +00:00
virtual void GetInfo(int *samplerate, ChannelConfig *chans, SampleType *type);
virtual size_t Read(char *buffer, size_t bytes);
MpgSnd_Decoder();
public:
virtual ~MpgSnd_Decoder();
friend class SoundManager;
};
#ifndef DEFAULT_DECODER
#define DEFAULT_DECODER (::MWSound::MpgSnd_Decoder)
#endif
};
#endif