Audio => AudioEngine
This commit is contained in:
parent
a5b8fe523d
commit
da220f961a
|
|
@ -3,14 +3,14 @@
|
|||
<ItemGroup>
|
||||
<ClInclude Include="..\..\src\kiwano-audio\kiwano-audio.h" />
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\audio-modules.h" />
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\audio.h" />
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\AudioEngine.h" />
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\SoundPlayer.h" />
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\Sound.h" />
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\Transcoder.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\audio-modules.cpp" />
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\audio.cpp" />
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\AudioEngine.cpp" />
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\SoundPlayer.cpp" />
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\Sound.cpp" />
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\Transcoder.cpp" />
|
||||
|
|
|
|||
|
|
@ -2,9 +2,6 @@
|
|||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\src\kiwano-audio\kiwano-audio.h" />
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\audio.h">
|
||||
<Filter>src</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\audio-modules.h">
|
||||
<Filter>src</Filter>
|
||||
</ClInclude>
|
||||
|
|
@ -17,11 +14,11 @@
|
|||
<ClInclude Include="..\..\src\kiwano-audio\src\SoundPlayer.h">
|
||||
<Filter>src</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\kiwano-audio\src\AudioEngine.h">
|
||||
<Filter>src</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\audio.cpp">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\audio-modules.cpp">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -34,6 +31,9 @@
|
|||
<ClCompile Include="..\..\src\kiwano-audio\src\SoundPlayer.cpp">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\kiwano-audio\src\AudioEngine.cpp">
|
||||
<Filter>src</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Filter Include="src">
|
||||
|
|
|
|||
|
|
@ -20,6 +20,6 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "src/audio.h"
|
||||
#include "src/AudioEngine.h"
|
||||
#include "src/Sound.h"
|
||||
#include "src/SoundPlayer.h"
|
||||
|
|
|
|||
|
|
@ -20,25 +20,25 @@
|
|||
|
||||
#include <kiwano/base/win32/helper.h>
|
||||
#include "audio-modules.h"
|
||||
#include "audio.h"
|
||||
#include "AudioEngine.h"
|
||||
|
||||
namespace kiwano
|
||||
{
|
||||
namespace audio
|
||||
{
|
||||
Audio::Audio()
|
||||
AudioEngine::AudioEngine()
|
||||
: x_audio2_(nullptr)
|
||||
, mastering_voice_(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
Audio::~Audio()
|
||||
AudioEngine::~AudioEngine()
|
||||
{
|
||||
}
|
||||
|
||||
void Audio::SetupComponent()
|
||||
void AudioEngine::SetupComponent()
|
||||
{
|
||||
KGE_LOG(L"Creating audio resources");
|
||||
// KGE_LOG(L"Creating audio resources");
|
||||
|
||||
HRESULT hr = modules::MediaFoundation::Get().MFStartup(MF_VERSION, MFSTARTUP_FULL);
|
||||
|
||||
|
|
@ -55,9 +55,9 @@ namespace kiwano
|
|||
ThrowIfFailed(hr);
|
||||
}
|
||||
|
||||
void Audio::DestroyComponent()
|
||||
void AudioEngine::DestroyComponent()
|
||||
{
|
||||
KGE_LOG(L"Destroying audio resources");
|
||||
// KGE_LOG(L"Destroying audio resources");
|
||||
|
||||
if (mastering_voice_)
|
||||
{
|
||||
|
|
@ -74,9 +74,9 @@ namespace kiwano
|
|||
modules::MediaFoundation::Get().MFShutdown();
|
||||
}
|
||||
|
||||
HRESULT Audio::CreateVoice(IXAudio2SourceVoice** voice, const Transcoder::Buffer& buffer)
|
||||
HRESULT AudioEngine::CreateVoice(IXAudio2SourceVoice** voice, const Transcoder::Buffer& buffer)
|
||||
{
|
||||
KGE_ASSERT(x_audio2_ && "Audio engine hasn't been initialized!");
|
||||
KGE_ASSERT(x_audio2_ && "AudioEngine hasn't been initialized!");
|
||||
|
||||
if (voice == nullptr)
|
||||
{
|
||||
|
|
@ -92,16 +92,16 @@ namespace kiwano
|
|||
return x_audio2_->CreateSourceVoice(voice, buffer.format, 0, XAUDIO2_DEFAULT_FREQ_RATIO);
|
||||
}
|
||||
|
||||
void Audio::Open()
|
||||
void AudioEngine::Open()
|
||||
{
|
||||
KGE_ASSERT(x_audio2_ && "Audio engine hasn't been initialized!");
|
||||
KGE_ASSERT(x_audio2_ && "AudioEngine hasn't been initialized!");
|
||||
|
||||
x_audio2_->StartEngine();
|
||||
}
|
||||
|
||||
void Audio::Close()
|
||||
void AudioEngine::Close()
|
||||
{
|
||||
KGE_ASSERT(x_audio2_ && "Audio engine hasn't been initialized!");
|
||||
KGE_ASSERT(x_audio2_ && "AudioEngine hasn't been initialized!");
|
||||
|
||||
x_audio2_->StopEngine();
|
||||
}
|
||||
|
|
@ -28,11 +28,11 @@ namespace kiwano
|
|||
{
|
||||
namespace audio
|
||||
{
|
||||
class KGE_API Audio
|
||||
: public Singleton<Audio>
|
||||
class KGE_API AudioEngine
|
||||
: public Singleton<AudioEngine>
|
||||
, public ComponentBase
|
||||
{
|
||||
KGE_DECLARE_SINGLETON(Audio);
|
||||
KGE_DECLARE_SINGLETON(AudioEngine);
|
||||
|
||||
public:
|
||||
// 开启设备
|
||||
|
|
@ -52,9 +52,9 @@ namespace kiwano
|
|||
void DestroyComponent() override;
|
||||
|
||||
protected:
|
||||
Audio();
|
||||
AudioEngine();
|
||||
|
||||
~Audio();
|
||||
~AudioEngine();
|
||||
|
||||
protected:
|
||||
IXAudio2* x_audio2_;
|
||||
|
|
@ -73,7 +73,7 @@ namespace kiwano
|
|||
return false;
|
||||
}
|
||||
|
||||
hr = Audio::GetInstance()->CreateVoice(&voice_, transcoder_.GetBuffer());
|
||||
hr = AudioEngine::GetInstance()->CreateVoice(&voice_, transcoder_.GetBuffer());
|
||||
if (FAILED(hr))
|
||||
{
|
||||
Close();
|
||||
|
|
@ -101,7 +101,7 @@ namespace kiwano
|
|||
return false;
|
||||
}
|
||||
|
||||
hr = Audio::GetInstance()->CreateVoice(&voice_, transcoder_.GetBuffer());
|
||||
hr = AudioEngine::GetInstance()->CreateVoice(&voice_, transcoder_.GetBuffer());
|
||||
if (FAILED(hr))
|
||||
{
|
||||
Close();
|
||||
|
|
|
|||
Loading…
Reference in New Issue