Support for dynamically scaling level sequences to account for character differences

This question was created in reference to: [Sequencer does not take into account localized audio [Content removed]

Hello!

I am having a similar conundrum to the referenced question above, which was asked about 8 years ago, though my situation might be more complex. The answer back then was that localized content was not supported in the sequencer and there were no immediate plans for improvements. Since it has been a long time since the question was asked, I was wondering if any such support has since materialized or if this still a “roll your own solution” type of problem.

To give more context to the problem I am trying to solve, please consider the following use case:

Let’s say that I have created a level sequence for a cinematic that dynamically possesses the current player character where there are a variety of player characters that could possibly be possessed depending on the player’s preference at the moment the level sequence is triggered. The cinematic itself could consist of simply a shot with an NPC saying a line while playing a talking animation and then a shot with the current player character responding with their own line and animation per character.

Since the voice line for each different character can vary in length and similarly each localized line for the same character can vary in length, I would like to be able to “scale” the level sequence to take the length of the voice clip into account. I presume when building the cinematic in the first place, a base can be established using a single character and/or language. Then I would expect that there would be some way to scale tracks based on that length. So if the target voice clip is longer than the base, certain tracks would be extended dynamically at runtime so that the voice clip doesn’t get cut off. Alternatively, if the target voice clip is shorter than the base, then certain tracks would be shortened so that the level sequence does not lull on silence or loop inappropriately.

Is there now any official support to accomplish this type of dynamic sequencer behavior? If not, is the best approach still some combination of sequencer events, blueprint events, and pausing/dilating the playback rate in order to sync the progress of the level sequence with the dynamically selected voice lines and animations?

Hey there,

Yes! In 5.6 we added support for relative time scaling for localization for this exact scenario. Note it is experimental.

https://portal.productboard.com/epicgames/1-unreal-engine-public-roadmap/c/1952-relative-time-scaling-for-sequencer-experimental-

https://dev.epicgames.com/documentation/en-us/unreal-engine/unreal-engine-5-6-release-notes#relativetimescalingforsequencer(experimental)

You need to set up a localized audio asset in the localization dashboard, then use it in your audio track.

Dustin

Thanks for the reply! That feature looks great, though a shame that it’s experimental. At the very least, it gives me something to play around with. Hopefully this feature will become standard in the future!