Here is an example where I do it with three images of a closed, slightly open and more open mouth and two different thresholds, don't know if this is what you are looking for:
I take a Value node and give it a keyframe so that I can bake a sound to the curve in the Graph Editor (under Channel > Bake Sound to F-Curves).
Then I have the three Image Texture nodes and two Color Mix nodes. First I'm mixing the closed and slightly open mouth. The mix factor is a threshold I've set with a Math node set to Greater Than and some value which I want to be the one where the mouth switches from closed to open.
In the next Color Mix node I plug the result of the first, and the other input is the fully open mouth. The mix factor is another threshold that's higher than the first.
These mouth images do not move realistically to look like they were actually saying the words since they do not adjust the shape to vowels etc., but for a simply two-image version just mouth close/open this should work fine. Only the threshold value is something you might find out with try and error when it looks best or at least good enough.
Since we can only upload GIFs here and they have no sound, below the mute animation there is a link to a video with sound. This is far from perfect, just a quick test.
Video: mouth with sound