yeah, start OpenAL sound output
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2764 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
a5db816490
commit
13ddd0648b
|
@ -409,14 +409,9 @@
|
|||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<File
|
||||
RelativePath=".\Src\AudioCommon.cpp"
|
||||
<Filter
|
||||
Name="StreamOut"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\AudioCommon.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\AOSoundStream.cpp"
|
||||
>
|
||||
|
@ -425,7 +420,6 @@
|
|||
RelativePath=".\Src\AOSoundStream.h"
|
||||
>
|
||||
</File>
|
||||
|
||||
<File
|
||||
RelativePath=".\Src\DSoundStream.cpp"
|
||||
>
|
||||
|
@ -439,17 +433,34 @@
|
|||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\SoundStream.h"
|
||||
RelativePath=".\Src\OpenALStream.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\Mixer.h"
|
||||
RelativePath=".\Src\OpenALStream.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\SoundStream.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<File
|
||||
RelativePath=".\Src\AudioCommon.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\AudioCommon.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\Mixer.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\Mixer.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\WaveFile.cpp"
|
||||
>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
#include "AOSoundStream.h"
|
||||
#include "DSoundStream.h"
|
||||
#include "NullSoundStream.h"
|
||||
|
||||
#include "OpenALStream.h"
|
||||
|
||||
namespace AudioCommon {
|
||||
|
||||
|
@ -21,6 +21,10 @@ SoundStream *InitSoundStream(std::string backend, CMixer *mixer) {
|
|||
if (AOSound::isValid())
|
||||
soundStream = new AOSound(mixer);
|
||||
}
|
||||
else if (backend == "OpenAL") {
|
||||
if (OpenALStream::isValid())
|
||||
soundStream = new OpenALStream(mixer);
|
||||
}
|
||||
else if (backend == "NullSound") {
|
||||
soundStream = new NullSound(mixer);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,47 @@
|
|||
// Copyright (C) 2003-2009 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
|
||||
#include "OpenAlStream.h"
|
||||
|
||||
#define AUDIO_NUMBUFFERS (4)
|
||||
|
||||
|
||||
bool OpenALStream::Start()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
void OpenALStream::SoundLoop()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void OpenALStream::Stop()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void OpenALStream::Update()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void OpenALStream::SoundThread()
|
||||
{
|
||||
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
// Copyright (C) 2003-2009 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __OPENALSTREAM_H__
|
||||
#define __OPENALSTREAM_H__
|
||||
#include "SoundStream.h"
|
||||
#include "Thread.h"
|
||||
|
||||
//#include <list>
|
||||
//using namespace std;
|
||||
|
||||
#include "../../../../Externals/OpenAL/al/al.h"
|
||||
#include "../../../../Externals/OpenAL/al/alc.h"
|
||||
|
||||
// public use
|
||||
#define SFX_MAX_SOURCE 1
|
||||
|
||||
class OpenALStream: public SoundStream
|
||||
{
|
||||
public:
|
||||
OpenALStream(CMixer *mixer, void *hWnd = NULL): SoundStream(mixer) {};
|
||||
virtual ~OpenALStream() {};
|
||||
|
||||
virtual bool Start();
|
||||
virtual void SoundLoop();
|
||||
virtual void Stop();
|
||||
static bool isValid() { return true; }
|
||||
virtual bool usesMixer() const { return true; }
|
||||
virtual void Update();
|
||||
private:
|
||||
virtual void SoundThread();
|
||||
private:
|
||||
Common::Thread *thread;
|
||||
Common::CriticalSection soundCriticalSection;
|
||||
Common::Event soundSyncEvent;
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue