This is not the elegant answer offered by @aliasguru, rather a straightforward approach, posted for those not overly familiar with Blender and wanting to get a face 'talking' using 2D photographed or sketched lips.
The cube shaped head was used purely out of convenience and for speed. Planes can be easily wrapped around cylindrical surfaces such as Leggo heads.
Two planes were used here, one textured with a filled in oval shaped pic for the lips and mouth, another, not textured but subdivided to form teeth, gaps, and mouth cavity, each filled with their respective solid colour.
Pic 1 shows the 3D arrangement of these during construction and the bones used to deform their shape.
The bone structure has four bones on each side, their chain settings in the 'Inverse Kinematic' constraint set to 1-4 respectively and outwards from the center. The vertical or main armature is left at zero.
Both planes are parented to the main armature (vertical one)and set to "Automatic Weight". The planes can also be scaled & transformed (moved about) independently of the armatures in order to enhance their ability to express emotion.
Once completed the planes are moved quite close together (the teeth in front) then the armature structure is moved inside the head so the planes will end up against the face. The bones are parented to the head so the mouth is in effect, 'attached' to the head.
Teeth can be made to disappear alltogther by keyframing either an instant transform behind the lips, or adjusting their transparency.
The mouth gap faces in the Teeth assembly plus the lips plane can be distorted independently in the z axis to "open and shut" to emulate speech.
I see no reason why this arrangement couldn't be synchronized with a sound file although I have yet to explore this Blender feature and subsequently not carried out sound tests.