|
@@ -57,6 +57,8 @@ OTHER DEALINGS IN THE SOFTWARE.
|
|
|
#include "ResourcePackage.h"
|
|
#include "ResourcePackage.h"
|
|
|
#include "EventBuffer.h"
|
|
#include "EventBuffer.h"
|
|
|
#include "SoundRenderer.h"
|
|
#include "SoundRenderer.h"
|
|
|
|
|
+#include "OggDecoder.h"
|
|
|
|
|
+#include "SoundResource.h"
|
|
|
|
|
|
|
|
#if defined(LINUX) || defined(WINDOWS)
|
|
#if defined(LINUX) || defined(WINDOWS)
|
|
|
#include "BundleCompiler.h"
|
|
#include "BundleCompiler.h"
|
|
@@ -214,9 +216,47 @@ void Device::init()
|
|
|
m_lua_environment->init();
|
|
m_lua_environment->init();
|
|
|
Log::d("Lua environment created.");
|
|
Log::d("Lua environment created.");
|
|
|
|
|
|
|
|
|
|
+ // FIXME: replace default_allocator with linear m_allocator
|
|
|
m_sound_renderer = CE_NEW(default_allocator(), SoundRenderer)(m_allocator);
|
|
m_sound_renderer = CE_NEW(default_allocator(), SoundRenderer)(m_allocator);
|
|
|
m_sound_renderer->init();
|
|
m_sound_renderer->init();
|
|
|
- Log::d("Sound renderer created.");
|
|
|
|
|
|
|
+ Log::d("SoundRenderer created.");
|
|
|
|
|
+
|
|
|
|
|
+ // ResourceId rid = m_resource_manager->load("sound", "sounds/untrue");
|
|
|
|
|
+ // m_resource_manager->flush();
|
|
|
|
|
+
|
|
|
|
|
+ // SoundResource* stream = (SoundResource*)m_resource_manager->data(rid);
|
|
|
|
|
+
|
|
|
|
|
+ // OggDecoder decoder((char*)stream->data(), stream->size());
|
|
|
|
|
+
|
|
|
|
|
+ // SoundSourceId source = m_sound_renderer->create_source();
|
|
|
|
|
+
|
|
|
|
|
+ // decoder.stream();
|
|
|
|
|
+ // SoundBufferId buffer1 = m_sound_renderer->create_buffer(decoder.data(), decoder.size(), stream->sample_rate(), stream->channels(), stream->bits_per_sample());
|
|
|
|
|
+
|
|
|
|
|
+ // decoder.stream();
|
|
|
|
|
+ // SoundBufferId buffer2 = m_sound_renderer->create_buffer(decoder.data(), decoder.size(), stream->sample_rate(), stream->channels(), stream->bits_per_sample());
|
|
|
|
|
+
|
|
|
|
|
+ // SoundBufferId active = buffer1;
|
|
|
|
|
+
|
|
|
|
|
+ // m_sound_renderer->bind_buffer_to_source(buffer1, source);
|
|
|
|
|
+ // m_sound_renderer->bind_buffer_to_source(buffer2, source);
|
|
|
|
|
+
|
|
|
|
|
+ // m_sound_renderer->play_source(source, false);
|
|
|
|
|
+
|
|
|
|
|
+ // while(decoder.stream())
|
|
|
|
|
+ // {
|
|
|
|
|
+
|
|
|
|
|
+ // while(!m_sound_renderer->update_source(source, active, decoder.data(), decoder.size()));
|
|
|
|
|
+
|
|
|
|
|
+ // active = buffer2;
|
|
|
|
|
+ // buffer2 = buffer1;
|
|
|
|
|
+ // buffer1 = active;
|
|
|
|
|
+
|
|
|
|
|
+ // if (!m_sound_renderer->source_playing(source))
|
|
|
|
|
+ // {
|
|
|
|
|
+ // m_sound_renderer->play_source(source, false);
|
|
|
|
|
+ // }
|
|
|
|
|
+ // }
|
|
|
|
|
|
|
|
Log::i("Crown Engine initialized.");
|
|
Log::i("Crown Engine initialized.");
|
|
|
Log::i("Initializing Game...");
|
|
Log::i("Initializing Game...");
|
|
@@ -269,7 +309,8 @@ void Device::shutdown()
|
|
|
{
|
|
{
|
|
|
m_sound_renderer->shutdown();
|
|
m_sound_renderer->shutdown();
|
|
|
|
|
|
|
|
- CE_DELETE(m_allocator, m_sound_renderer);
|
|
|
|
|
|
|
+ // FIXME: replace default_allocator with linear m_allocator
|
|
|
|
|
+ CE_DELETE(default_allocator(), m_sound_renderer);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
Log::i("Releasing LuaEnvironment...");
|
|
Log::i("Releasing LuaEnvironment...");
|
|
@@ -705,5 +746,4 @@ Device* device()
|
|
|
return &g_device;
|
|
return &g_device;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-} // namespace crown
|
|
|
|
|
-
|
|
|
|
|
|
|
+} // namespace crown
|