The reason why it only does ogg is because that selfishly was all I needed :)
We certainly can attach a mime type to the `rwops` when it is created in `SDL_RWFromFile` and use that in this context.

It would probably be a good idea to transplant the error handling from the preloading to this section.

With this change we wouldn't require the preloading of audios but we'd still require the source material to be in the file-system. We could still implement `freePreloadedMediaOnUse` by having the file-system unload the source material when we make an audio out of it.

I guess it's up to the developer. If they want to wait at the beginning and do all that work up front for a speedier game later, or if they want to do the loading in-game.

From my perspective, the game I'm working on does all the loading in-game with a progress bar tied into the visual look of the game so it doesn't need preloading. I think for that reason I've always been a little confused (until now) why I had to preload the audios when they were there in the filesystem anyway and the game was just going to load them again.