Pan in SDL_Perl, Alt. Audio Engines (Win32)

  • Thread starter Veli-Pekka Tätilä
  • Start date
V

Veli-Pekka Tätilä

Hi,
What options do I have in Win32 if I'd like to use an audio engine that
can play multiple audio channels with volume and pan for each one? It
should also have the ability to separately load and play files and would
be cool if it could stream compressed music (ogg/mp3) from disk, too.
Pitch shifting and basic delay and filter based audio effects would be
nice extras.

SDL looks Ok to me, however, there's no pan parameter in the PPM release
() obtained via ActiveState (SDL-Perl 2.13). I read on the Web someone
faced the very same problem under Unix and patched the pan support
himself. Has that support migrated to any PPM binaries in Windows?
Here's the thread I found about it:

http://www.perlmonks.org/?node_id=598630

The lack of per channel pan seems to be a common problem in SDL, in that
the authors of the game GlTron have had to patch it in themselves, too:

http://listas.apesol.org/pipermail/sdl-libsdl.org/2001-March/015788.html

I'm also willing to try libs other than SDL and a bit of Googling
brought up Allegro and Fmod 3, URLs:

http://www.talula.demon.co.uk/allegro/

http://www.fmod.org/

It seems to me neither has XS or pure Perl bindings, based on searching
CPAN and the ActiveState reps with Perl 5.8.8. I've taken a cursory look
at the docs and it looks to me like one could write a Perl wrapper for
the audio functions in the DLLs using Win32::API. This would then be
Windows specific, though, and I'd need keyboard input, too. I reckon
mixing SDL for input and some other engine for audio is looking for
trouble in terms of timing and performance. My experience so far is that
many of the Win32::* modules don't like threading, anything using
Win32::OLE being one good example.

Umm, this is the least liked option personally but howabout native APIs
such as DirectSound? I couldn't find any Perl wrappers so far. From what
I've understood, any OLE client can basically use DirectX. In stead I
accidentally ran into a DirectSound library for the other P language
implemented via COM, however I'd like to use Perl.

If you're wondering why I'm not asking about graphics, that's because I
don't need any. I'm toying around with a prototype idea for a freebie
pure audio game for blind folks. Most devs doing these games use VB
wrappers for DirectX or C++ but as I like Perl, I'm going to try that
first. I could ask in the blind programming mailing list, but I'm one of
two Perl users out there, and the other one is doing mainly Web apps. I
asked about audio engines there before, and people recommended Fmod back
then.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,968
Messages
2,570,153
Members
46,701
Latest member
XavierQ83

Latest Threads

Top