Audiokinetic's Community Q&A is the forum where users can ask and answer questions within the Wwise and Strata communities. If you would like to get an answer from Audiokinetic's Technical support team, make sure you use the Support Tickets page.

How do I detect the end of a stinger started by a stinger?

0 votes
I was wondering what the "correct" way is (if it's even possible) to detect the end of a stinger played (in the "Interactive Music Hierarchy") that was started by a trigger, e.g. receive and handle the stinger's exit cue?

I'm integrating this with Godot currently (though may try other engines), using the Wwise API to first start a playlist container, then fire a trigger which then starts a stinger. That part works very well; however, I was wondering what the best way to detect is when the stinger itself finishes playing.

Currently with the Godot integration (again, this might be more possible with a more mature integration for an engine like Unity), I know I can get an event callback, but if the event is firing a trigger, the trigger itself, of course, finishes/returns immediately.

Thanks in advance!
asked Sep 26, 2021 in General Discussion by Duncan B. (190 points)

2 Answers

+1 vote
Hey Duncan!

AFAIK and have tested, stingers are fire and forget.

A workaround I have used in the past is to create an Event that sets a state on a StateGroup (e.g. StingerStatus set to 'Finished'). Then I drag that event onto the stinger segment at the exit cue position as a Music Event Cue. Then I'm able to use that logic in a Music Switch Container's Transitions Matrix to check if the Stinger Segment has reached the exit cue or not. Kind of hacky, but I've used it a bunch.
answered Sep 30, 2021 by Cameron Konner (200 points)
Thanks for your answer. I was able to accomplish what I wanted using the method I described in my self-answer. Appreciate your reply, though!
+1 vote
 
Best answer
It looks like this can't be done, but someone had suggested that inserting a WAV marker into the stinger and registering an event callback for markers might work. I was able to accomplish this by doing the following:

- Inserting a marker at the end of the stinger, using Reaper and rendering with the BWF format. I used Reaper. (Pro tip: Audacity doesn't allow you to do this, and while Wavosaur does, it doesn't allow you to set the marker names. I'm sure this isn't an issue with proper commercial tools similar to Reaper.)

- (Re-)importing the WAV into Wwise and verifying the marker's inclusion/existence via the Wwise Wave Viewer.

- Firing the event as described before from Godot, and registering a callback w/ the event for markers.

- Firing the trigger via Godot.

- The marker I set came through in the callback.

Hopefully this helps someone else in the future.
answered Sep 30, 2021 by Duncan B. (190 points)
selected Oct 1, 2021 by Duncan B.
...