#Apply audio effect to a group of sounds?

25 messages · Page 1 of 1 (latest)

winged smelt
#

hi
I'm using 2d audio and trying to apply an audio effect to a group of sounds, and not all of them.
So I have a second audio bus, and you can't use audio_sound_play_at with effects, since it needs an emitter.
So I made a single emitter for ALL sound effects that don't have one, but the problem is this emitter can only be in one position at a time.
Do I have to create a new emitter every time I play a sound then??
a bit weird that you can't set an audio effect for an audiogroup
does this sound like a feature request? or intended

covert haven
#

Yeah, basically

#

Something that I've done for Sonus (my audio library) was actually create a bunch of structs (up to the default 128 channels) and assigned an emitter to each, then stored them in an unused list

#

When it's time to play a sound, I would pull from that unused list and depending on its behaviour, either treat it as just audio playing or at a spot or tied to an emitter class

winged smelt
#

hmm

covert haven
#

It's a lot cheaper to reuse than to spam create/destroy (imo anyway)

winged smelt
#

oh since 128 sounds at a time?

covert haven
#

128 is the max amount of sounds you can have playing yeah

#

Can be changed though

winged smelt
#

this feels like something i shouldn't have to work around

#

how does sonus compare to vinyl and the other audio libraries lol

covert haven
#

I haven't actually compared it so much against Vinyl.
It has:

  • Groups
  • Group parenting w/ properties (groups can apply properties from their parents on top of the properties of an audio instance when played, such as pitch and gain)
  • Also group audio bus chaining (you can assign an audio effect to more than one group, and if the parent group and child group has any audio effect, it will create a separate audio bus for the sound being played that incorporates both, parent before child)
  • A way of fetching a random index from a group that's been assigned (either via asset tags or externally)
  • Supports external wav/ogg out of the box (for mod support)
  • A universal container that connects everything together. (Everything gets interfanced via Sonus.XYZ as methods)
#

Beyond that, it's about the same as GM's audio system but slightly more extended

winged smelt
#

I think you've sold me on using a library markovermars since that sounds easier than working around this myself

covert haven
#

Only catch with Sonus is that I'm not strictly complete with it as of yet... But happy to whack anything out as time goes on

#

I've got plans to include a group called Master by default (aka for the listener and everything else to tie towards)... Want that to be configurable but might be some unwanted growing pains for me

winged smelt
#

hm ok

covert haven
#

(Trying to avoid not including a macro-based config 😆)

#

Sonus has a config system, but I'm trying it to be non-macro for them.
So the config itself can be updated elsewhere and doesn't need to backed up/restored between updates

#

Meaning you just need to do Sonus.Config.maxChannelAudioInsts = 64; to change one of the properties

#

Oh yeah, I also added in an automatic limiter for certain sounds (of your choice)

winged smelt
#

know what
why not just like create an emitter every time I play a sound and then delete it afterwards

#

if that isn't an awful thing to do then it would be the easiest

#

@covert haven what do you think overmarsice

covert haven
#

Could give it a shot shrug