diff options
author | Alon Zakai <alonzakai@gmail.com> | 2013-03-05 14:25:18 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-03-05 14:25:18 -0800 |
commit | daed1bdade84f5aa3c18d87dbad1858998e5d7c1 (patch) | |
tree | 9b7d4f8321d44e79ed8b7f88d2dc0e492105a82d /src/library_sdl.js | |
parent | df26b7eebaa8d5745bbbc64bf09024099099a82c (diff) | |
parent | 2e9cb244f45c8dfe6bbd4b1f779c15b0d73a0f74 (diff) |
Merge branch 'sd-audio' of github.com:michaeljbishop/emscripten into michaeljbishop-sd-audio
Diffstat (limited to 'src/library_sdl.js')
-rw-r--r-- | src/library_sdl.js | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js index 96ae6fa2..30735a0b 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -1463,10 +1463,66 @@ var LibrarySDL = { return (SDL.music.audio && !SDL.music.audio.paused) ? 1 : 0; }, + // http://www.libsdl.org/projects/SDL_mixer/docs/SDL_mixer_38.html#SEC38 + // "Note: Does not check if the channel has been paused." + Mix_Playing: function(id) { + if (id === -1) { + var count = 0; + for (var i = 0; i < SDL.audios.length; i++) + count += SDL.Mix_Playing(i); + return count; + } + var info = SDL.audios[id]; + if (info && info.audio && !info.audio.paused) + return 1; + return 0; + }, + + Mix_Pause: function(id) { + if (id === -1) { + for (var i = 0; i<SDL.audios.length;i++) + SDL.Mix_Pause(i); + return; + } + var info = SDL.audios[id]; + if (info && info.audio) + info.audio.pause(); + }, + + // http://www.libsdl.org/projects/SDL_mixer/docs/SDL_mixer_39.html#SEC39 + Mix_Paused: function(id) { + if (id === -1) { + var pausedCount = 0; + for (var i = 0; i<SDL.audios.length;i++) + pausedCount += SDL.Mix_Paused(i); + return pausedCount; + } + var info = SDL.audios[id]; + if (info && info.audio && info.audio.paused) { + return 1; + } + return 0; + }, + Mix_PausedMusic: function() { return (SDL.music.audio && SDL.music.audio.paused) ? 1 : 0; }, + // http://www.libsdl.org/projects/SDL_mixer/docs/SDL_mixer_33.html#SEC33 + Mix_Resume: function(id) { + if (id === -1) + { + for (var i = 0; i<SDL.audios.length;i++) + SDL.Mix_Resume(i); + return; + } + var info = SDL.audios[id]; + if (info && info.audio) + { + info.audio.play(); + } + }, + // SDL TTF TTF_Init: function() { return 0 }, |