Ah ha! I had exactly the same error on my Linux box, whenever I pressed my arrow keys quickly.
Actually we don’t need to press the arrow keys so frequently, since the player in this game has a auto-moving feature, it will move forward automatically and stop at the first intersection.
It is due to my clumsy code that every time the player presses the arrow key, a new SDL2_Mixer channel will be needed, so if one presses quickly enough, it will run out of channels, but if one presses slowly or not so frequently, the SDL2_Mixer channel will be automatically released in time.
Thank you for pasting the error, good catch!
I was thinking that I could get away with this without being caught, shame to me.
;-P