rpcsx/rpcs3/Emu/Audio/AudioManager.h
2015-01-18 02:01:08 +03:00

46 lines
782 B
C++

#pragma once
#include "sysutil_audio.h"
#include "AudioThread.h"
struct AudioInfo
{
struct
{
u8 type;
u8 channel;
u8 encoder;
u8 fs;
u32 layout;
u32 downMixer;
} mode;
AudioInfo()
{
}
void Init()
{
mode.type = CELL_AUDIO_OUT_CODING_TYPE_LPCM;
mode.channel = CELL_AUDIO_OUT_CHNUM_8;
mode.fs = CELL_AUDIO_OUT_FS_48KHZ;
mode.layout = CELL_AUDIO_OUT_SPEAKER_LAYOUT_8CH_LREClrxy;
mode.encoder = CELL_AUDIO_OUT_CODING_TYPE_LPCM;
mode.downMixer = CELL_AUDIO_OUT_DOWNMIXER_NONE;
}
};
class AudioManager
{
AudioInfo m_audio_info;
AudioThread* m_audio_out;
public:
AudioManager();
void Init();
void Close();
AudioThread& GetAudioOut() { assert(m_audio_out); return *m_audio_out; }
AudioInfo& GetInfo() { return m_audio_info; }
u8 GetState();
};