Cheshire Lip Sync Index out of range error
I am using Cheshire lip sync tool to generate my animations. I have my shape keys on my character (from blender) but I get an error while trying to generate the animations.

After I click "Create Animation" it returns the following error at me:
IndexOutOfRangeException: Array index is out of range.
I have some negative values in my shape keys could that be an issue? Example in blender for my shape key I set the min to -1 and the max to 0 to get the right look. Is there anything else I should be aware of?
you should ask the developers, because this knowledge sounds pretty specific to me.
Hey thanks for this. So I actually tried to do what you suggested to but the developer doesn't seem to provide good contact info. So I ended up tracking him down on a forum which actually chained to a few different answers I needed, so thanks for the suggestion!
Answer by wesleywh · Feb 18, 2017 at 06:01 PM
So I did a LOT of digging. There were a series of issues here.
To resolve the
Index out of range error
problem you need to add the a single line of code to his "CheshireCreate.cs" code. It's around line 112 (i tried to add some surrounding code to make this easier to find):
.....
if(freshSymbols[i] == "rest") {
continue;
}
else {
if(_targetCat.GetAdjustedBlend(freshSymbols[i])<0) { //insert this check to fix indexoutofbounds error
continue;
}
if(freshTimings[i] == 0.0f) {
Keyframe freshFrame = new Keyframe(0.0f, modelAnimStrength, 0.0f, 0.0f);
freshFrame.tangentMode = 0;
processCurves[_targetCat.GetAdjustedBlend(freshSymbols[i])].AddKey(freshFrame);
//processCurves[_targetCat.GetAdjustedBlend(freshSymbols[i])].AddKey(
}
if(freshTimings[i] - leadTime <= 0.0f) {
Keyframe freshFrame = new Keyframe(0.0f, modelAnimStrength, 0.0f, 0.0f);
freshFrame.tangentMode = 0;
processCurves[_targetCat.GetAdjustedBlend(freshSymbols[i])].AddKey(freshFrame);
}
....
Then the other issue was aparently the default encoding done on the wav files exported from audacity is not one that is recognized by Cheshire.exe. I had to get an example .wav file and test it out to find this one... (16bit wav will work but the 32bit wav will not)
To make this compatable with Unity 5 follow the instructions found in the comment about it on the asset store page: https://www.assetstore.unity3d.com/en/#!/content/18746
Also to use blender to make compatable blend shapes follow my other found results here: http://answers.unity3d.com/questions/1309340/makehuman-blender-visemes-to-unity-for-lip-sync.html#answer-1313968
Finally since the developers website is down and that was the only place to get the windows application to make the lip sync timings you can download it from here. Look in the youtube description for the download link to a .rar file: https://www.youtube.com/watch?v=UZ7buppKOvM
Your answer