Multiple "ghost channels" remain after moving playhead with setParameter (bug report)

Hi, Im developing a rhythm game on unity and we’re using Koreographer.

I have been in contact with Koreographer’s support and they’ve been helping me debugging my issue.

A little premise: we’re using a single fmod event to handle all the music in our game. Then we switch between referenced tracks inside the event using a string parameter.

The problem shows up when we switch music through that parameter: koreographer starts keeping active multiple instances of channel visors, which makes koreographer react to all of them simultaneously.

This is what Eric from Koreographer found out:

You’re tapping into the internal Channel layers where audio is actually playing (while using Koreographer) and you’re seeing is that after you set a parameter to adjust the playhead, a Channel with the expected sound starts up but the old one never stops and continues to process, including loop.

Some followup details:

  1. A “Visor” in Koreographer parlance is a system that is designed to “watch” the progress of an audio source. In this case, the “Channel Visor” is a system that tracks the position of audio playback for an FMOD Channel that has been found to be playing a sound that the user cares about.
  2. Debug logging indicates that when @Boscayolo triggers a music change within his Event via a setParameter call, in addition to a new Channel starting up which properly tracks the desired playback, the previously playing Channel does not stop: it seems to continue “playing” as the position continues to change. It is inaudible, however.
    • Hoping to get information on the audibility of these channels and whether or not they’ve been virtualized.
    • This is additive: the more the setParameter call is triggered on the Event, the more “silent” Channels end up spinning.