Jump to content

Fix Lip Sync (by meh321)


Recommended Posts

Fix Lip Sync

Author: meh321


From the same author as Better Stealing, Crash Fixes, etc comes the fix we've all been waiting for. Lets test it! :)


Expanation of what caused the lip sync issue in the first place (lifted from comment section):



That isn't actually the cause, as far as Meh and I were able to gather.

The lip sync bug is due to a faulty Patch 1.9 optimisation that caused an (intentional) audio/lip sync playback delay feature that had been in the game since launch to malfunction. Some lines of dialogue have always been subject to an audio and lip sync playback delay designed to ensure that the FaceFX (lip sync middleware) integration has time to properly morph the face so it can keep up with the start of the audio file. Pre-Patch 1.9 this worked fine, and the delay on the lip sync was the same as the delay on the audio. Post-Patch 1.9, the lip sync delay became around 2x the length of the audio delay, causing the infamous desync.

While I'm not entirely sure of the specifics of how Meh's code changes actually work, they basically prevent the delay from being multiplied 2x, thus ensuring that lip sync delay remains proportional to the audio delay and preventing the desync. It basically restores the behaviour to how it was before the 1.9 Patch that introduced the bug.

The bug was never due to issues with resource load, as evidenced by the fact that the same lines (those that trigger the FaceFX delay feature) displayed the bug consistently. It wasn't random or situational, the bug was 100% reproducible on each line, each time, to the same degree.

In case you're curious, the reason why some lines displayed the bug moreso than others is due to the fact that the issue was essentially caused by the aforementioned 2x multiplication of the delay. Those lines which only had a short delay instituted by the FaceFX delay feature obviously don't display as much desync when multiplied by 2 as those that have a longer, more drastic FaceFX delay.

And the reason why some lines never displayed the bug? Those lines weren't targeted by the FaceFX negative keyframe delay feature since the engine didn't need to delay their playback in order to have time to properly morph the face.
Link to comment
Share on other sites

Apparently sheson also now accepts pie, so we're onto deserts to hide all of them as well now


On topic, yes this works as a reliable fix for me, haven't see any sync issues on the usual lines since I installed it.

Link to comment
Share on other sites

  • 4 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...

Important Information

By using this site, you agree to our Guidelines, Privacy Policy, and Terms of Use.