aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorraysan5 <raysan5@gmail.com>2016-07-16 19:24:08 +0200
committerraysan5 <raysan5@gmail.com>2016-07-16 19:24:08 +0200
commita05150392a14ded407ffbf8c735dd4f92354fcb8 (patch)
tree22a4d68be29ac9c2dcb8cd243524e23c41962d15 /examples
parent0fbd48a8890d5f3e2158dbec12a6e452b6fb81b0 (diff)
downloadraylib-a05150392a14ded407ffbf8c735dd4f92354fcb8.tar.gz
raylib-a05150392a14ded407ffbf8c735dd4f92354fcb8.zip
Added audio standalone sample
Diffstat (limited to 'examples')
-rw-r--r--examples/audio_standalone.c74
1 files changed, 74 insertions, 0 deletions
diff --git a/examples/audio_standalone.c b/examples/audio_standalone.c
new file mode 100644
index 00000000..1ae6324a
--- /dev/null
+++ b/examples/audio_standalone.c
@@ -0,0 +1,74 @@
+/*******************************************************************************************
+*
+* raylib [audio] example - Using audio module as standalone module
+*
+* NOTE: This example does not require any graphic device, it can run directly on console.
+*
+* [audio] module requires some external libs:
+* OpenAL Soft - Audio device management lib (http://kcat.strangesoft.net/openal.html)
+* stb_vorbis - Ogg audio files loading (http://www.nothings.org/stb_vorbis/)
+* jar_xm - XM module file loading
+* jar_mod - MOD audio file loading
+*
+* Compile audio module using:
+* gcc -c audio.c stb_vorbis.c -DAUDIO_STANDALONE
+*
+* Compile example using:
+* gcc -o $(NAME_PART).exe $(FILE_NAME) audio.o stb_vorbis.o -lopenal32 -std=c99
+*
+* This example has been created using raylib 1.5 (www.raylib.com)
+* raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details)
+*
+* Copyright (c) 2015 Ramon Santamaria (@raysan5)
+*
+********************************************************************************************/
+
+#include <stdio.h>
+#include <conio.h> // Windows only, no stardard library
+
+#include "audio.h"
+
+#define KEY_ESCAPE 27
+
+int main()
+{
+ unsigned char key;
+
+ InitAudioDevice();
+
+ Sound fxWav = LoadSound("resources/audio/weird.wav"); // Load WAV audio file
+ Sound fxOgg = LoadSound("resources/audio/tanatana.ogg"); // Load OGG audio file
+
+ PlayMusicStream(0, "resources/audio/guitar_noodling.ogg");
+
+ printf("\nPress s or d to play sounds...\n");
+
+ while (key != KEY_ESCAPE)
+ {
+ if (kbhit()) key = getch();
+
+ if (key == 's')
+ {
+ PlaySound(fxWav);
+ key = 0;
+ }
+
+ if (key == 'd')
+ {
+ PlaySound(fxOgg);
+ key = 0;
+ }
+
+ UpdateMusicStream(0);
+ }
+
+ UnloadSound(fxWav); // Unload sound data
+ UnloadSound(fxOgg); // Unload sound data
+
+ CloseAudioDevice();
+
+ printf("\n\nPress ENTER to close...");
+ getchar();
+
+ return 0;
+} \ No newline at end of file