10
votes

I'm looking for an elegant way, without a ton of dependencies as in some of the solutions I googled up.

Thanks for any ideas.

3

3 Answers

4
votes

As far as I know PyGame is the most portable way to play music: http://www.pygame.org/docs/ref/music.html

You can find its package here: http://www.pygame.org/download.shtml

40
votes

If you want to do away with external dependencies entirely, and are running OS X 10.5+, you can use the included command-line audio player, afplay, along with the subprocess module.

I haven't tested it, but this should work:

import subprocess
audio_file = "/full/path/to/audio.wav"

return_code = subprocess.call(["afplay", audio_file])
1
votes

The leanest most portable way I've found to play .mp3 and .wav files is playsound.

import playsound

# wait for the sound to finish playing?
blocking = True

playsound.playsound("yourfile.mp3", block=blocking)