Some of my sound effects aren't playing.

Hello, I’m making an RPG with C++ and SDL. I have some global constants that define information about sound effects to play with SDL_Mixer.

const Sound RAIN_SFX{“Sound/rain.wav”, true, 0};
const Sound DOOR_BREAK_SFX{“Sound/door_break.wav”, false, 1};
const Sound BELL_SFX{“Sound/bell.wav”, true, 2};
const Sound WAGON_SFX{“Sound/wagon.wav”, true, 3};
const Sound WIND_SFX{“Sound/wind.wav”, true, 4};
const Sound CRUMBLE_SFX{“Sound/crumble.wav”, false, 5};
const Sound SKELETON_DESTROY_SFX{“Sound/skeleton_destroy.wav”, false, 6};
const Sound KEY_ITEM_SFX{“Sound/key_item.wav”, false, 7};
const Sound GRATE_SFX{“Sound/grate.wav”, false, 8};
const Sound REVEAL_SFX{“Sound/reveal.wav”, false, 9};

I have a struct called Sound that acts as a wrapper for sound effects. The first argument is the path to the sound file, the second argument is whether or not the sound effect loops, and the third argument is the channel.

But, for some reason, GRATE_SFX and REVEAL_SFX will not play at all while the others do play. I double checked to see if the files exist. They do. I tried putting

if(m_chunk_list[i] == nullptr)
printf(“Failed to load a sound effect! SDL_mixer Error: %s\n”, Mix_GetError());

to see if the sounds are getting loaded properly. No errors are getting reported, so what gives? Why are these 2 sound effects not playing?

Maybe there’s something wrong with the .wav file? I’d try downloading Audacity, open those wav files in it, and then re-exporting them as wav files again, just to make sure any oddness about the file is sorted out. Maybe set the sample rate as something more standard if it isn’t at the moment.