[pypy-svn] r62696 - in pypy/trunk/pypy/rlib/rsdl: . test
santagada at codespeak.net
santagada at codespeak.net
Sat Mar 7 13:34:08 CET 2009
Author: santagada
Date: Sat Mar 7 13:34:08 2009
New Revision: 62696
Added:
pypy/trunk/pypy/rlib/rsdl/test/applause.wav (contents, props changed)
Modified:
pypy/trunk/pypy/rlib/rsdl/RMix.py
pypy/trunk/pypy/rlib/rsdl/test/test_sdl_mixer.py
Log:
exposing 3 more functions of sdl_mixer, and a new test (is it okay to time.sleep during a test?)
Modified: pypy/trunk/pypy/rlib/rsdl/RMix.py
==============================================================================
--- pypy/trunk/pypy/rlib/rsdl/RMix.py (original)
+++ pypy/trunk/pypy/rlib/rsdl/RMix.py Sat Mar 7 13:34:08 2009
@@ -8,7 +8,7 @@
eci = ExternalCompilationInfo(
includes = ['SDL_mixer.h'],
frameworks = ['SDL_mixer'],
- include_dirs = ['/Library/Frameworks/SDL_Mixer.framework/Versions/A/Headers']
+ include_dirs = ['/Library/Frameworks/SDL_Mixer.framework/Headers']
)
else:
eci = ExternalCompilationInfo(
@@ -38,11 +38,16 @@
CloseAudio = external('Mix_CloseAudio', [], lltype.Void)
-_LoadWAV = external('Mix_LoadWAV_RW',
+LoadWAV_RW = external('Mix_LoadWAV_RW',
[RSDL.RWopsPtr, rffi.INT],
ChunkPtr)
def LoadWAV(filename_ccharp):
- _LoadWAV(RSDL.RWFromFile(filename_ccharp, rffi.str2charp('rb')), 1)
+ return LoadWAV_RW(RSDL.RWFromFile(filename_ccharp, rffi.str2charp('rb')), 1)
+PlayChannelTimed = external('Mix_PlayChannelTimed',
+ [rffi.INT, ChunkPtr, rffi.INT, rffi.INT],
+ rffi.INT)
+def PlayChannel(channel,chunk,loops):
+ return PlayChannelTimed(channel, chunk, loops, -1)
Added: pypy/trunk/pypy/rlib/rsdl/test/applause.wav
==============================================================================
Binary file. No diff available.
Modified: pypy/trunk/pypy/rlib/rsdl/test/test_sdl_mixer.py
==============================================================================
--- pypy/trunk/pypy/rlib/rsdl/test/test_sdl_mixer.py (original)
+++ pypy/trunk/pypy/rlib/rsdl/test/test_sdl_mixer.py Sat Mar 7 13:34:08 2009
@@ -1,4 +1,6 @@
-import py, os
+import py
+import os
+import time
import autopath
from pypy.rlib.rsdl import RSDL, RMix, RSDL_helper
from pypy.rpython.lltypesystem import lltype, rffi
@@ -13,7 +15,19 @@
if RMix.OpenAudio(22050, RSDL.AUDIO_S16LSB, 2, 1024) != 0:
error = rffi.charp2str(RSDL.GetError())
raise Exception(error)
- filename = rffi.str2charp('test.wav')
+ filename = rffi.str2charp('applause.wav')
RMix.LoadWAV(filename)
rffi.free_charp(filename)
RMix.CloseAudio()
+
+def test_play_wav():
+ if RMix.OpenAudio(22050, RSDL.AUDIO_S16LSB, 2, 1024) != 0:
+ error = rffi.charp2str(RSDL.GetError())
+ raise Exception(error)
+ filename = rffi.str2charp('applause.wav')
+ applause = RMix.LoadWAV(filename)
+ rffi.free_charp(filename)
+ RMix.PlayChannel(-1, applause, -1)
+ time.sleep(1)
+ RMix.CloseAudio()
+
More information about the Pypy-commit
mailing list