- 250
- Posts
- 7
- Years
- Seen Apr 23, 2025
This is a little embarrassing, seeing that I wrote a tutorial on stuff like this, but I'm running into trouble with some of my voices not making sound in a song that I'm working on. I'm working on this song in a new, up-to-date repo, and I've added in ipatix's sound mixer, following all of the steps of the tutorial, while not doing the optional stuff, like making more room for ram or changing the pcm buffer size. I went into
Despite all of that, I'm having notes (mainly percussion instruments) not come through correctly. When I mute every track other than the percussion track, everything sounds fine. As I start to incorporate the other tracks, certain percussion instruments start to not sustain for as long as they should, and eventually they start making no sound at all. This seems to be a Directsound voice limit issue to me, but I don't think I did anything wrong in increasing that limit to 15, and I know for a fact that less than 15 Directsound notes are being played at these points. I never had this issue with my previous repo, so I'm rather confused as to why this issue is showing up.
If anyone has an idea as to why this is happening, and/or potential solutions to the problem, please let me know. If more information is needed, I'm more than happy to provide it. The only thing I haven't done is changed this line in
to this:
I haven't done this, because I seem to recall that doing this cuts into IWRAM unnecessarily. Am I misremembering that?
src/m4a_1.s
and changed VAR_PCM_BUFFER
to 0x410, which I believe is what it needs to be set at to allow for 15 Directsound voices to sound at the same time. I also set both instances of MAX_DIRECTSOUND_CHANNELS
to 15.Despite all of that, I'm having notes (mainly percussion instruments) not come through correctly. When I mute every track other than the percussion track, everything sounds fine. As I start to incorporate the other tracks, certain percussion instruments start to not sustain for as long as they should, and eventually they start making no sound at all. This seems to be a Directsound voice limit issue to me, but I don't think I did anything wrong in increasing that limit to 15, and I know for a fact that less than 15 Directsound notes are being played at these points. I never had this issue with my previous repo, so I'm rather confused as to why this issue is showing up.
If anyone has an idea as to why this is happening, and/or potential solutions to the problem, please let me know. If more information is needed, I'm more than happy to provide it. The only thing I haven't done is changed this line in
src/m4a.c
from this:
Code:
| (5 << SOUND_MODE_MAXCHN_SHIFT));
Code:
| (15 << SOUND_MODE_MAXCHN_SHIFT));