I’m trying to get the current playtime of a wav in MetaSound and to do this I’ve created an Output float named CurrentTime. I tried to access this from Blueprint but only see methods to set the value of Inputs but not read the values of Outputs. Can anyone help? How do I access the Output values of MetaSounds in blueprints?
Unreal 5.1 is out and it doesn’t look like an official method to handle this exists yet. In a YouTube video from July 2021, @Minus_Kelvin suggested that this should be feasible at some point (citing “Audio Parameter Modulation” and “parameter buses” as examples of how it might be eventually be implemented). While that video covered the Early Access release of 5.0, it doesn’t seem that anything has changed. I’ve perused the MetaSound source code and I didn’t see anything about reading information back from MetaSound into the game thread (e.g. Blueprints).
This feature appears to be [experimentally] coming in Unreal 5.3! The feature is currently referred to as MetaSound Output Watching.
I’ve verified that it works by playing around with the feature in the ue5-main branch of the source code: you can setup Blueprint events in Unreal and receive change notifications through them.
Important Note: This feature is not yet officially released so there is still a chance that it could change or get bumped to a future release (read: not 5.3). My fingers are crossed, either way.