diff options
author | Loek Le Blansch <loek@pipeframe.xyz> | 2024-10-31 18:59:36 +0100 |
---|---|---|
committer | Loek Le Blansch <loek@pipeframe.xyz> | 2024-10-31 18:59:36 +0100 |
commit | 33db98002292299b127d4428dc38091628c68854 (patch) | |
tree | 3456e13e0aa621677a43294fc73ea7c735b032a3 | |
parent | 3e0622097a31a4553a86b047baffb8c5f277b3cc (diff) |
update audio POC
-rw-r--r-- | src/example/audio_internal.cpp | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/src/example/audio_internal.cpp b/src/example/audio_internal.cpp index 1199e2d..f35ad9d 100644 --- a/src/example/audio_internal.cpp +++ b/src/example/audio_internal.cpp @@ -5,26 +5,40 @@ #include <crepe/Sound.h> #include <crepe/util/log.h> +#include <crepe/api/Config.h> -#include <chrono> #include <thread> using namespace crepe; +using namespace crepe::api; using namespace std; using namespace std::chrono_literals; using std::make_unique; -int main() { - dbg_trace(); +// Unrelated stuff that is not part of this POC +int _ = [] () { + // Show dbg_trace() output + auto & cfg = api::Config::get_instance(); + cfg.log.level = util::LogLevel::TRACE; + + return 0; // satisfy compiler +}(); + + +int main() { + // Load a background track (Ogg Vorbis) auto bgm = Sound("../mwe/audio/bgm.ogg"); + // Load three short samples (WAV) auto sfx1 = Sound("../mwe/audio/sfx1.wav"); auto sfx2 = Sound("../mwe/audio/sfx2.wav"); auto sfx3 = Sound("../mwe/audio/sfx3.wav"); + // Start the background track bgm.play(); - // play each sample sequentially + // Play each sample sequentially while pausing and resuming the background + // track this_thread::sleep_for(500ms); sfx1.play(); this_thread::sleep_for(500ms); @@ -35,11 +49,12 @@ int main() { bgm.play(); this_thread::sleep_for(500ms); - // play all samples simultaniously + // Play all samples simultaniously sfx1.play(); sfx2.play(); sfx3.play(); this_thread::sleep_for(1000ms); - return 0; + // Stop all audio and exit + return EXIT_SUCCESS; } |