It never worked, it is just that it never worked.
This appears to get the total number of channels, not the number of active channels. However, I tried using get_busy(), but it still does not seem to work.
See the following modifications to my original code:
import pygame, time
for x in range(10):
print("Starting iteration " + str(x))
sound = pygame.mixer.Sound("foo.wav")
print("Finding free channel")
channel = pygame.mixer.find_channel()
print("Channel object: " + str(channel))
print("Sleeping until sound is finished playing...")
This displays the same behaviour.
In response to a previous comment about using channel.stop() before quitting the mixer: this does not work either, as can be seen by adding channel.stop() after the get_busy loop above.
Has anyone tried running this code themselves? I am wondering if I am experiencing some obscure bug, possibly platform specific. I am running on OS X, but don't have access to other systems for troubleshooting. If someone else has access to a Windows or Linux box, and is able to prove if this fails on those systems as well, that may be useful.
Ian Mallett wrote:
On 7/2/08, Wyatt Olson <wyatt.olson@xxxxxxxxx> wrote: