aboutsummaryrefslogtreecommitdiff
path: root/test/02Audio/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/02Audio/main.cpp')
-rw-r--r--test/02Audio/main.cpp70
1 files changed, 70 insertions, 0 deletions
diff --git a/test/02Audio/main.cpp b/test/02Audio/main.cpp
new file mode 100644
index 0000000..4576cfa
--- /dev/null
+++ b/test/02Audio/main.cpp
@@ -0,0 +1,70 @@
+#include <iostream>
+#include "jin.h"
+
+using namespace jin::core;
+using namespace jin::graphics;
+using namespace jin::input;
+using namespace jin::audio;
+
+void onEvent(jin::input::Event* e)
+{
+ static Game* game = Game::get();
+ if (e->type == EventType::QUIT)
+ game->stop();
+}
+
+void onUpdate(int ms)
+{
+
+}
+
+void onDraw()
+{
+
+}
+
+int main(int argc, char* argv[])
+{
+ Game* game = Game::get();
+ Game::Setting setting;
+ setting.eventHandler = onEvent;
+ setting.updater = onUpdate;
+ setting.drawer = onDraw;
+ setting.loader = nullptr;
+ game->init(&setting);
+
+ Window* wnd = Window::get();
+ Window::Setting wndSetting;
+ wndSetting.width = 600;
+ wndSetting.height = 512;
+ wndSetting.title = "test";
+ wndSetting.fps = 60;
+ wndSetting.vsync = false;
+ wndSetting.fullscreen = false;
+ wndSetting.resizable = false;
+ wnd->init(&wndSetting);
+
+ SDLAudio* audio = SDLAudio::get();
+ SDLAudio::Setting audioSetting;
+ audioSetting.samplerate = 44100;
+ audioSetting.samples = 44100;
+ audio->init(&audioSetting);
+
+ SDLSource* src = SDLSource::createSource("a.ogg");
+ src->play();
+ src->setLoop(false);
+
+ SDLSource* src2 = SDLSource::createSource("a.wav");
+ src2->setLoop(true);
+ src2->play();
+
+ audio->setVolume(0.7);
+
+ game->run();
+
+ game->quit();
+ audio->quit();
+ wnd->quit();
+
+ return 0;
+} \ No newline at end of file