Playing Wav file in Ruby

Greetings,
I’m interesting in writing a small ruby script that will play a wav
file. I’m using
ruby 1.8.2 (2004-12-25) [powerpc-darwin8.0]

I haven’t found anything other than what seems to be a windows only
solution:

I’ve tried invoking applications that would play a sound through the
system command, but none of them have worked very well.

Here’s my code thus far:

Dir.glob(“*.{WAV,wav}”) do |sound|
puts “Playing #{sound}, (n)ext or return to replay”
case readline.strip
when ‘’:
system("playsound " + sound)
redo
when ‘n’
next
when ‘q’
exit
else
redo
end
end

Thank you very much for your time,
Andy

On Sep 22, 4:18 am, Andy K. [email protected] wrote:

I’ve tried invoking applications that would play a sound through the
system command, but none of them have worked very well.

You do get it to play that way, right? I ran into the same situation a
few weeks ago, ending up doing the very same thing u did, calling an
external app. Simply using playsound #{file} will do. But if there
is any libraries making it possible to do it natively from Ruby
(without having to start writing one ourselves), I would love to hear
about it.

Tommy

Quoth [email protected]:

Tommy

Any of the game libraries / SDL bindings ought to do the trick (that’s
as
close to native as you’ll find). `playsound’ isn’t a program on my
system,
so it wouldn’t work for me. Find a command on your system (sorry I don’t
know MacOSX at all) to play it, and that’ll be fine for small scripts.

HTH,

[email protected] wrote:

On Sep 22, 4:18 am, Andy K. [email protected] wrote:

I’ve tried invoking applications that would play a sound through the
system command, but none of them have worked very well.

You do get it to play that way, right? I ran into the same situation a
few weeks ago, ending up doing the very same thing u did, calling an
external app. Simply using playsound #{file} will do. But if there
is any libraries making it possible to do it natively from Ruby
(without having to start writing one ourselves), I would love to hear
about it.

Tommy

Ah yes, sorry for lack of clarification. Playsound is part of SDL, but
it opens an application, puts it in the dock, plays the sound and exits.
It’s very awkward for running inside a script. I suspect I will have to
look into SDL bindings… very overkill perhaps.

Thanks Konrad and Tommy for the quick replies.

-Andy

On Sep 22, 8:38 am, Andy K. [email protected] wrote:

about it.
-Andy

Posted viahttp://www.ruby-forum.com/.

I got a plain commandline version of playsound running on my Mac, that
won’t open up any apps in the dock… Have a look here:
old (think this is it). And Konrad,
sorry for being fuzzy.

T

[email protected] wrote:

I got a plain commandline version of playsound running on my Mac, that
won’t open up any apps in the dock…

T

Well, that’s pretty much perfect! Thanks. It’s a completely different
program with the same name. It responds much faster than the SDL
playsound command.

Thanks a lot!

-Andy