28 struct SoundSystemParam
34 soundThreadPriority (DEFAULT_SOUND_THREAD_PRIORITY),
35 soundThreadStackSize (DEFAULT_SOUND_THREAD_STACK_SIZE),
36 dvdThreadPriority (DEFAULT_DVD_THREAD_PRIORITY),
37 dvdThreadStackSize (DEFAULT_DVD_THREAD_STACK_SIZE)
43 s32 soundThreadPriority;
44 ulong soundThreadStackSize;
45 s32 dvdThreadPriority;
46 ulong dvdThreadStackSize;
51 static int const DEFAULT_DVD_THREAD_STACK_SIZE = 0x4000;
52 static int const DEFAULT_SOUND_THREAD_STACK_SIZE = 0x4000;
53 static int const DEFAULT_DVD_THREAD_PRIORITY = 3;
54 static int const DEFAULT_SOUND_THREAD_PRIORITY = 4;
56 static int sMaxVoices;
61 static void InitSoundSystem(s32 sndThreadPriority, s32 dvdThreadPriority);
63 void *workMem, ulong workMemSize);
64 static void ShutdownSoundSystem();
65 static void WaitForResetReady();
67 static bool IsInitializedSoundSystem();
71 static void PrepareReset() {
72 detail::AxManager::GetInstance().PrepareReset();
76 static void SetOutputMode(OutputMode mode) {
77 detail::AxManager::GetInstance().SetOutputMode(mode);
81 static f32 GetMasterVolume() {
82 return detail::AxManager::GetInstance().GetMasterVolume();
84 static void SetMasterVolume(f32 volume,
int frame) {
85 detail::AxManager::GetInstance().SetMasterVolume(volume, frame);
89 static RemoteSpeaker &GetRemoteSpeaker(
int i) {
90 return detail::RemoteSpeakerManager::GetInstance().GetRemoteSpeaker(i);
94 static void AppendEffect(AuxBus bus, FxBase *pFx) {
95 detail::AxManager::GetInstance().AppendEffect(bus, pFx);
97 static void ClearEffect(AuxBus bus,
int frame) {
98 detail::AxManager::GetInstance().ClearEffect(bus, frame);