Dan, your fix solves the crash issue for me. I am seeing some other slightly strange behavior still, which might just be my specific machine. If you try out examples/synthesizer.py, the audio sounds a little corrupted if you play a few notes at once (just mash on the keyboard :) ). OpenAL does not have this issue.
In addition, this only occurs with the fire-and-forget player. As a test, I made a deque of Players, and just queued on the next one each time. This allows multiple channels to play at once, without corruption. I can share some example code if you need, but basically I made a deque of players like this: self.players = deque([pyglet.media.Player() for _ in range(5)]) Then, instead of doing "note_wave.play()", I did something like this: self.players[0].queue(note_wave) self.players[0].play() self.players.rotate() Strangely, this works fine. It doesn't seem like the fire and forget players are getting collected to early, but maybe it's related. Things are a lot better than they were before, though, so we're definitely going in the right direction! On Sunday, December 3, 2017 at 12:21:24 AM UTC+9, Daniel Gillet wrote: > > Benjamin, the bug was confirmed. > > I've corrected it (I hope) and it was not what I initially thought. The > details are not super important and they can be found in my commit. > I've created a new pull request for you to review. Let me know if it > solves the problem. > > I don't forget the playlist feature. But I don't have the time right now. > It will take a bit more time because I need to create some test cases for > this new functionality. This means I need to first understand all the > different test cases that exist for the media Player. > > I'll let you know once I make some progresses. :) > > Dan > -- You received this message because you are subscribed to the Google Groups "pyglet-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/pyglet-users. For more options, visit https://groups.google.com/d/optout.
