LUAInterface should have all its functionality now (excluding input/controller management). Now we need a GUI to see how it works. Added new DSP function: ClearAudioBuffer, which clears the audio buffer for pausing. Currently it doesn't work with DSound.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4507 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
XTra.KrazzY
2009-11-07 20:01:39 +00:00
parent ebaad032eb
commit a0129e51a3
18 changed files with 255 additions and 185 deletions

View File

@ -81,7 +81,14 @@ void AOSound::Update()
{
soundSyncEvent.Set();
}
void AOSound::Clear()
{
memset(realtimeBuffer, 0, sizeof(realtimeBuffer));
Update();
}
void AOSound::Stop()
{
soundCriticalSection.Enter();

View File

@ -51,6 +51,8 @@ public:
virtual void SoundLoop();
virtual void Stop();
virtual void Clear();
static bool isValid() {
return true;

View File

@ -170,6 +170,13 @@ void DSound::Update()
soundSyncEvent.Set();
}
void DSound::Clear()
{
memset(realtimeBuffer, 0, sizeof(realtimeBuffer));
Update();
}
void DSound::Stop()
{
soundCriticalSection.Enter();

View File

@ -78,6 +78,7 @@ public:
virtual void SoundLoop();
virtual void SetVolume(int volume);
virtual void Stop();
virtual void Clear();
static bool isValid() { return true; }
virtual bool usesMixer() const { return true; }
virtual void Update();

View File

@ -92,6 +92,13 @@ void OpenALStream::Update()
}
}
void OpenALStream::Clear()
{
memset(realtimeBuffer, 0, sizeof(realtimeBuffer));
Update();
}
THREAD_RETURN OpenALStream::ThreadFunc(void* args)
{
(reinterpret_cast<OpenALStream *>(args))->SoundLoop();

View File

@ -50,6 +50,7 @@ public:
virtual bool Start();
virtual void SoundLoop();
virtual void Stop();
virtual void Clear();
static bool isValid() { return true; }
virtual bool usesMixer() const { return true; }
virtual void Update();

View File

@ -44,6 +44,7 @@ public:
virtual void SoundLoop() {}
virtual void Stop() {}
virtual void Update() {}
virtual void Clear() {}
virtual void StartLogAudio(const char *filename) {
if (! m_logAudio) {
m_logAudio = true;