GML Audio System (Saudio)
A downloadable tool for Windows and macOS
Buy Now$5.00 USD or more
This audio framework provides you with a lot of simple solutions to many of the lackluster audio features Game Maker partially provides. The framework was created with ease of use and performance as the primary focuses.
- Easily create audio groups (not the built-in ones Game Maker provides) that can independently have their volume adjusted
- Play 3D sounds simply by defining an x, y, and z position
- Volume can be adjusted for specific sounds
- Crossfade between sounds
- Create looping tracks by defining a start and finish time
- Sounds can be paused and resumed
- Safety measures are provided to avoid looping tracks suddenly disappearing due to the game freezing
You can directly reach out if you need help via Discord! Just @me!
This was made for Game Maker Studio 2.3 or newer, however I've included a version for Game Maker Studio 2.2. Be sure to grab Saudio_2_2.yymp if you're using it for any versions of Game Maker older than 2.3.
Purchase
Buy Now$5.00 USD or more
In order to download this tool you must purchase it at or above the minimum price of $5 USD. You will get access to the following files:
Saudio_Example.yyz 3.9 MB
Saudio.yymps 3.9 MB
Saudio_2_2.yymp 14 kB
Download demo
Download
Saudio_Demo.zip 5.1 MB
Comments
Log in with itch.io to leave a comment.
Seabass !!! Been a while , hope you are doing well :)
The game your working on right now looking great
wish i knew about this audio system sooner !! didnt even know you had a itch shop xD your awesome as always . cheers
Hey Almog! :D I remember you! I hope the system helps. It's definitely been useful for me on my project.
Hi Seabass! Do i need to destroy obj_saudio (persistent) when game ends? Thank you!
If you are restarting the game yes. If you are actually closing the game then no.
I'm new to gamemaker, how does this differ from using the provided functions, like audio_play_sound_at?
It's quite different in that it provides groups. So you can write...
And when you play a sound...
The gain of the sound is relative to the gain of the group. This is super useful if you want to let the player adjust the volume of music for example. If you wanted to adjust the gain of a sound created with audio_play_sound_at() you wouldn't be able to at the same time lower the gain of that sound to match a players volume preference.
This framework also provides ease of use functions like crossfading and looping. It makes 3D sound especially easy as well since you don't have to mess around with listener orientation. You can just set the position to your desired x, y, z.
Thank you! That makes sense to me. : ) Is there a way to tweak the sound radius and fall off? Like "I want you to be able to hear this sound starting from here and it should peak loudness there"?
That's available natively in Game Maker. I hide that functionality away for the sake of simplicity but you can easily edit the functions to provide those arguments.
I wish I wasn't so far into development b/c I'd love to make the jump to 2.3 and use this. Maybe I'll use it for future projects :)
Do you think it'd be worth me porting this backwards for 2.2?
Too late, I've already ported it backwards, just for you. <3
whoa that was quick. Thank you!!!