aboutsummaryrefslogtreecommitdiff
path: root/src/library_sdl.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-03-27 11:59:12 -0700
committerAlon Zakai <alonzakai@gmail.com>2012-03-27 11:59:12 -0700
commitb4dcd8daa2d0ac559222139f2d797b3bfd0cb148 (patch)
tree75cdcbf19d4ffe3ef3b4be73f0994c84fbd77bc6 /src/library_sdl.js
parent84d65c025b4581202f0972be8f479978903d80e7 (diff)
support for playing audio chunks through SDL mix
Diffstat (limited to 'src/library_sdl.js')
-rw-r--r--src/library_sdl.js20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js
index 9d947cd4..db3771e9 100644
--- a/src/library_sdl.js
+++ b/src/library_sdl.js
@@ -717,12 +717,11 @@ mergeInto(LibraryManager.library, {
SDL_CondWait: function() {},
SDL_DestroyCond: function() {},
-//SDL_CreateYUVOverlay
-//SDL_CreateThread, SDL_WaitThread etc
-
// SDL Mixer
- Mix_OpenAudio: function() { return 0 },
+ Mix_OpenAudio: function(frequency, format, channels, chunksize) {
+ return 0;
+ },
Mix_HookMusicFinished: function(func) {
SDL.hookMusicFinished = func; // TODO: use this
@@ -734,22 +733,23 @@ mergeInto(LibraryManager.library, {
Mix_LoadWAV_RW: function(filename, freesrc) {
filename = FS.standardizePath(Pointer_stringify(filename));
+ var raw = preloadedAudios[filename];
+ assert(raw, 'Cannot find preloaded audio ' + filename);
var id = SDL.audios.length;
SDL.audios.push({
- audio: new Audio(filename)
+ audio: raw
});
return id;
},
Mix_FreeChunk: function(id) {
- //SDL.audios[id].audio.pause();
- //SDL.audios[id] = null;
- return 0;
+ SDL.audios[id].audio.pause();
+ SDL.audios[id] = null;
},
Mix_PlayChannel: function(channel, id, loops) {
- //var audio = SDL.audios[id].audio;
- //audio.play();
+ var audio = SDL.audios[id].audio;
+ audio.play();
return 0; // XXX should return channel
},
Mix_PlayChannelTimed: 'Mix_PlayChannel', // XXX ignore Timing