Hey guys. I am somewhat new to FMOD, but I feel I have a pretty decent grasp of it (and loving it!). There is something I can’t seem to figure out though. (Ok, how to word this…)
I am using several fully-orchestrated music files and, in short, FMOD is playing these music “chunks” in different orders. Each of these music chunks (trigger regions) have reverb release trails that I would like to play out even after that chunk has moved to a different piece of music. This way when moving from one chunk to another it doesn’t sound unnatural (ex. the reverb trail and/or release trail of a cymbal crash gets unexpectedly cut off at the end)
So is there a way to have a release trail keep playing after FMOD has moved to a different trigger region/music chunk? I cannot seem to figure this out out!
Wow, yup. That fixed it right there, man (I’m not sure how I overlooked that!). Messing with multi-sound modules it works like a charm. Also, adjusting AHDSR on the event was part of the fix because it seems it doesn’t even work for single-sound modules (I just saw that is a bug, correct?). Thanks a lot for your time and patience, Joseph!
I’m glad to hear you were able to get your project working the way you wanted.
Incidentally, AHDSR modulation does work for single-sound modules; It’s just that single sound modules do not produce any output for the modulator to attenuate during the release period.
In the early stages of Studio’s design, we decided to establish a series of inviolable axioms that users can rely on. One of these is “the audio output of a timelocked sound module always corresponds to the part of the waveform the timeline cursor is on.” When the cursor leaves a timelocked sound module’s trigger region, it is over no part of the waveform, and therefore no audio signal is produced; Thus, there is no audio during the release period. (Without this axiom, it would be ambiguous which part of the waveform should play when the cursor leaves the trigger region via a transition, and ambiguity is something we avoid.)
It is possible to create a release period for a timelocked sound module by extending its trigger region and automating its volume; Unfortunately, as we have not yet implemented the ability to extend trigger regions through transition timelines, it is not yet possible to use this method with timelocked sound modules that end in transitions. Fortunately, it is rarely necessary to use timelocked sound modules, so workarounds like the one you used can fill the gap until we get that feature done.
If I’m right in understanding that the release tails are baked-in to your source audio files, one possible solution is to use non-timelocked sound modules with the play-to-end behaviour, which is to say, multisound modules that don’t have loop mode enabled. These modules will continue to play out even after the cursor leaves their trigger regions.
Of course, that method will only work flawlessly if transitions come at predictable times, and using non-timelocked modules means that you won’t be able to seek within a module, so if you need to do one of those, then a different solution may be necessary. What exactly do you have in mind?
Yes, release tails are baked in to each tigger region (containing fully orchestrated music files), but they don’t have to be baked in if there is a better way (separate audio files containing only the release tail?).
I tried the non-timelocked sound modules idea, but transitions are not predictable and it didn’t seem to solve my problem (even though I have easily missed something). I’m jumping all over the place to/from different trigger regions based on “unpredictable” events in the game.
I haven’t messed with it yet, but would volume envelope (AHDSR) adjustment be the answer?
AHDSR modulation would allow you to fade modules in and out as they’re triggered and untriggered. This might work if the release tails of your sounds aren’t incompatible with being faded out early; It depends on the needs of your project.
Honestly, I don’t yet have a clear picture of what you’re trying to achieve, and what the constraints of your project are; What is currently going wrong when you transition from one trigger region to another?
Sorry for being unclear. So basically, I am working on a project that requires 3 minutes of main music. This will be the main looping music that will play, but there are several music events that will unexpectedly interrupt it based on player actions.
So, we need that 3-minute main music to be split up into three 1-minute sections: call them A, B, and C. If no events happen, A will play seamlessly into B and B into C. THen C will loop back to A. IF an event occurs in the middle of A, for example, then the event music (ex. defeat music or level up music) will play then go to the next section – B. I know that’s a bit confusing.
A,B, and C of the main music are three separate, fully orchestrated, music files. So here’s my obstacle – when I want music A to go right into music B, the end of A doesn’t have a release tail. It sounds weird when going into B (for example).
For instance (and I’m not this this silly to make this mistake), if I had a big cymbal crash right at the end of A, the release of that crash cymbal would be awkwardly cut off once B started. In my case, it is just the reverb of the instruments that gets cut off and sounds weird. I guess I could compose it in a way that alleviates this issue, but that would be counterproductive to what ideas I am trying to make happen.
So is there a workaround so that the release tail of A plays for a bit while B has already started? I hope that explains things a little better (although, it probably confused you more!). Right now I am thinking the AHDSR thing will work, but I haven’t been able to try it yet. Thank you so much for your help and patience with me!
Hmm, it sounds like you’re currently using timelocked single sound modules with transition markers at specific points. When transitioning to event music from A, do you want A to immediately fall silent, or do you want to play A’s release tail while starting the event music as you would when transitioning from A to B? If the latter, you should be able to achieve the effect you want by using multi sound modules instead of single sound modules (unless set to loop, these play out the full length of their contained sounds when untriggered); You’ll have to position the transition markers ‘by ear’ instead of using the waveform display, but you should be able to get the effect you want.
Does that fulfil your requirements? I’ve made some not-necessarily-true assumptions about your transition requirements.