I’ve confirmed the issue occurs even if there is not duplicate Metasounds playing, so I tried looking at my other idea.
I added the following code to consume the event that fires when the Playstate changes:
AudioComponent->OnAudioPlayStateChanged.AddDynamic(this, &AAudioCuePlayer::OnPlayStateChange);
void AAudioCuePlayer::OnPlayStateChange(EAudioComponentPlayState PlayState)
{
switch (PlayState)
{
case EAudioComponentPlayState::Playing:
UE_LOG(LogTemp, Display, TEXT("Playing"))
AudioComponent->SetWaveParameter(SoundPlayerData.WaveAssetName, SoundPlayerData.WaveAsset);
default: return;
}
}
My theory was this would set the param when the sound should be definitely playing.
Unfortunately with this code, no sounds are playing. I’ve confirmed its hitting the Playing switch case, but it seems SetWaveParameter is either too late or not triggering… or something.
I dunno, I’ll have to come back to this and figure out what’s going on.