[Addon] Quick Talk, lip synching tool - UPDATED 22 Oct 2015

Hi, I’ve got this working in 2.77. It works pretty well. I am trying to add a shape for H. It doesn’t autogenerate the bone for H it seems. I tried adding to the specific bones like so. This doesn’t seem to work either. Plus the change to the dictionary.

I made the change to the file in the roaming data folders rather than anywhere else. Have I gone wrong somewhere?

   #Add bone for every shape-key, except those starting with !
    shapeKeys = shapeObj.data.shape_keys.key_blocks
    num = 0;
    for key in shapeKeys:
        if((key.name[0:3]=="qt_") or (key.name in ["AI","O","E","U","ETC","L","WQ","MBP","M","FV","TH","H"])):
          self.addPanelBone(arm,panelroot,key.name,num)
          num=num+1
    #Select pose mode to edit the rig to set limits
    bpy.ops.object.mode_set(mode='POSE') 
    pose = armObj.pose
    for key in shapeKeys:
        if((key.name[0:3]=="qt_") or (key.name in ["AI","O","E","U","ETC","L","WQ","MBP","M","FV","TH","H"])):
          self.setBoneLimits(pose.bones[key.name])
    #Add drivers to the all the shape keys
    for key in shapeKeys:
        if((key.name[0:3]=="qt_") or (key.name in ["AI","O","E","U","ETC","L","WQ","MBP","M","FV","TH","H"])):
          self.addDriver(key,key.name,armObj,pose.bones[key.name])

Thanks for the addon btw, I think I prefer this to the other options

You’d also need to make sure the “mappings” in the LoadDictionary function actually ever uses your new “H” viseme, and that the dictionary you’re using has phonemes for that “H” key too.

Nothing else springs to mind, don’t really have time to give it much effort at the moment though. Good luck!

Thanks.
I found i had to reinstall the plugin to get it to update. So updates need to be made essentially in the quicktalk.py file that’s dl or a source version. Then reinstall the addon and the method works. So I now have an H!

Yeah, if you change the source-file you’ll need to reinstall the addon. The “install” process makes a copy in the blender config directory somewhere I believe.

Glad you got it working :slight_smile:

Thank you for the creation and sharing. I watched some of your videos, appreciate the time and effort. The script seems to be a fine idea, and I have ‘plans’ but I will see what I actually do, . . . back to character creation at the moment…

Thanks. Sharing is caring. Tell your twitter feed which one was your favourite. :slight_smile:

The script seems to be a fine idea, and I have ‘plans’ but I will see what I actually do, . . . back to character creation at the moment…

Cool. Hope Quicktalk makes your plans actually possible, coz without something like it mine would never happen. I certainly don’t have time to worry about animating every individual syllable.

Papagayo was working, but not well. Somehow ergonomically it was literally painful to use.

I’ve been actually using this script in my toons for practically the first time on anything of significance during this last week or two as it goes.

It’s so much smoother a process now than that was. Seems to hurt my wrists less too.

Can see many improvements I could make to how it works if I only had the time. Not sure how valuable the “guess line markers” button is at all. Might as well go straight from Guess Dialogue to Guess Words I’m finding. Should more smoothly handle missing dictionary-words ideally.

Well, ideally, I’d be able to put character-importing and proxying and vague stage directions into the input-script and have it automatically build more broad-brush animation too.

Imagine just being able to write:

TheHero: [Enters stage left]
[Waves Right Arm]Not So Fast Bad Guy!

BadGuy: [Fighting stance]
You’ll never defeat me Hero!

TheHero: [Move to BadGuy]
Charge!

Then you just press “import” on a blank scene that’s got nothing but audio-radio-play and word-markers and they’re all there, doing about the right thing already.

That’s the dream anyway.

I have no time though.

Might look at it more once this current toon is done while I plan the next. Possible I could save time overall by writing some code.

Patches accepted. :wink:

Were can I download the quick talk add-on

Strange, though that URL would have been in the first post, will update it (assuming I can)

Blender 2.8 is coming along marvelously, and the latest version isn’t just crashing all the time like it was the last time I looked.

So I updated my Lip-Sync plugin for Blender to work with Blender 2.8. Wasn’t even difficult really. Just a few API tweeks.

The “Makehuman” compatibility mode will have to wait till Makehuman’s MHX importer is similarly adapted to 2.8 [*], which is surely much more tricky to do so could be a while. But the control-panel-building and marker-guessing and actual lipsynch to shape-keys stuff seems to be working with the new version.

[*] - https://bitbucket.org/Diffeomorphic/mhx2-makehuman-exchange/issues/68/adapting-to-blender-28

1 Like

Thanks!
I can’t wait to test it on my shiny Blender 2.8.
MakeHuman 1.2.0 alpha3 is announced for Blender 2.8, not released yet.
Wait and see.

Hi, Is it possible to add languages ​​other than English to this add-on?
In that case, how do edit py and dictionary?

Should be possible if you can find a phonetic dictionary for that language. Don’t think it should even require any changes to the code. But I have no idea where you’d find a phonetic dictionary for your language I’m afraid.

We are sorry. We didn’t notice because I did not receive notification.
Thanks for the quick reply.
Certainly, I tried to search the dictionary but I can not find it. We decided to convert it to an English format that this add-on can read.

By the way, this add-on is great for its quick action to associate multiple shape keys with bones and drivers.
We create and use scripts to assign custom shapes to all rigs generated by this add-on.
Assigning custom shapes one by one was cumbersome. =)
Thank you for the nice add-ons.

Oh, and. We think that it is better to disable the property of each Deform for quicktalk generated bone.
This is useful when using the add-on rigfy or Voxel Heat Diffuse Skinning, and auto-weighting.
This eliminates the need to attach unintended rig weights and makes weight correction easier.
We tried to edit py and put the option in place, but it has not been done so easily. Sorry for the suggestion only.

Certainly no need to apologize for a suggestion. Not sure I follow it though… “disable the property of each deform?”

Oh. You mean reset the “deform” flag on each bone when I generate a rig. Yeah. Possibly a good plan. I’d have generally not created the shape-keys for a mouth movement till after the weights were set, and usually only done it with the desired bones selected.

Will try and keep it in mind if I do some edits anytime soon. Thanks.

Yes, we talked about the deformation option for that bone. and yes, We use the Quick Talk add-on after all shape keys and all weights have been done.
However, we often adjust weights and change rigs later.

But certainly you do not have to follow. Of course we also understand it. Just a suggestion. =)
We believe that add-on developers have the freedom and choice to allow developers to do the development they want.
There is no need to incorporate what someone wants to do.
Have a nice day.

Firstly, thankyou so much for taking the time to create this godsend.
However, I am having trouble with the plugin. When I build the shapekey armature and try to pose the bones, they do not effect the shapekey. The shapekeys are displaying that they have drivers (purple shading) but the rotation of the bones does not have any effect. Can you please help me!!!

Additionally, when i move the sliders for the shapekey manually in the object data panel, nothing happens.

Presumably the sliders worked before you attached the bones to it? The drivers are likely resetting the sliders as you try to move them once the drivers are attached.

There’s an option in the panel to change whether it’s the bone’s rotation or the bone’s translation which drives the key. Possibly you picked translation and then rotated them?

Other than that I dunno I’m afraid, and am heading out for the weekend shortly so any further help is likely have to wait till next week.

Good luck!

HI, thanks for getting back to me. I hope you have a great weekend. To clarify, yes the sliders did work before attaching the bones. I have tried both rotation and translation options for the bones in the panel and tried to move them accordingly.
I have looked at the driver associations in the graph editor and they all appear to be assigned correctly, however the only thing I note is there is an error “ERROR: Python auto-execution disabled”, just under the expression box.

I am going to try to rebuild my model from scratch to see if I can get it to work. Will let you know how that goes.

Cheers