I am evaluating the use of FMOD in our project and am trying to figure out the SoundGroup API. There is not much information other then the API reference about what is purpose is and how it differs from what can be done with ChannelGroups. Could someone shed some light on what they might use a SoundGroup for? Thanks
- jtracy asked 10 years ago
It is true that a sound in a soundgroup can be playing a 100 channels, and it is still counted as one audible sound?
If you want to control the max audibility over sounds this would mean that a sounds should never be playing more than one channel at a time.
This seems awkward. I would expect a setMaxAudibleChannels for a soundgroup.
Or is it setMaxAudible working on channel level as well?
- Anonymous answered 9 years ago
[quote:1d6tq6sr]It is true that a sound in a soundgroup can be playing a 100 channels, and it is still counted as one audible sound? [/quote:1d6tq6sr]
Yes and no, it depends on your definition of ‘channel’
A playing instance of a FMOD::Sound is called a FMOD::Channel. Even if that sound is [i:1d6tq6sr]multi-channel[/i:1d6tq6sr] (e.g. stereo) it is still one FMOD::Channel.
[quote:1d6tq6sr]If you want to control the max audibility over sounds this would mean that a sounds should never be playing more than one channel at a time.[/quote:1d6tq6sr]
That is the expected behaviour when MaxAudible = 1. When it is two it would mean that the Sound would never be playing on more than two channels at a time.
Hope this helps,
- Guest answered 9 years ago
As channelgroups control a group of channels, a soundgroup controls a group of sounds.
Its main feature is that you can use setMaxAudible. This allows you to limit a sound or a group of sounds to be only audible a certain number of times.
Say if you had 100 monsters right next to you screaming it would sound better if you limited that scream acount to 10 or so, to cut down on the cacophony and let other sounds get in. The screams might be make up of lots of different wavs for different monsters and their variations.
There are plans to expand this class though, there will soon be a System::playSoundGroup function, which lets you play a soundgroup in a manner of different ways.
1. play all sounds in group at once
2. plays a single sound from the group, and each time you play the group it could play the next sound in the group, or a random sound, and lets you and set the random playback behaviour (ie no repeat, shuffle, etc).
3. plays sounds as a gapless sentence, this would be another playback behaviour. Sequential sentenced, random sentenced.
There are other things this class could do but limiting is its main purpose right now.
3. play all sounds in a group
Please login first to submit.