Lip Sync - React Three Fiber Tutorial

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ก.ย. 2024

ความคิดเห็น • 140

  • @AnishKumar-s4e
    @AnishKumar-s4e 4 หลายเดือนก่อน +2

    Hey, its great, but i am trying to implement the same thing but its not working, how i can do it in threejs

  • @ThETaBLaGiRL-h9t
    @ThETaBLaGiRL-h9t 2 หลายเดือนก่อน

    Hey! Wawa Sensei!
    I'm facing an error while yarn dev
    It is not working at all, there are only errors. Please help me!
    I'm trying hard from last 3 days

  • @pulkitgarg189
    @pulkitgarg189 8 หลายเดือนก่อน +1

    @WawaSensei any other alternative we can choose for avatar other than Ready Player Me? I need more realistic avatars

    • @WawaSensei
      @WawaSensei  8 หลายเดือนก่อน

      Free ones I don't know, but you can purchase any you like on the different 3D marketplaces

  • @AnushkaJoshi-wu7pd
    @AnushkaJoshi-wu7pd 4 หลายเดือนก่อน +3

    in my case it is not working

  • @hafizabdullah2375
    @hafizabdullah2375 2 หลายเดือนก่อน +1

    The transition between animations is not smooth as it hit the T-pose first. Any solution?

  • @habibahegazy333
    @habibahegazy333 6 หลายเดือนก่อน +2

    Can I apply this to blender or daz studio avatars?

  • @kanandave-dh4js
    @kanandave-dh4js หลายเดือนก่อน

    Hello Thank you for This Video ... But I m looking for other lip sync library than rhubarb, is there any library ?? please help ...

  • @pranitithape9934
    @pranitithape9934 20 วันที่ผ่านมา

    My avatar somehow lost eyes, in mixamo its there but on UI its not appearing. what could be the possible cause ?

  • @ignacioarias2234
    @ignacioarias2234 17 วันที่ผ่านมา

    How did you create shape keys (o "morph targets") in the avatar?

  • @HamzaGabbar
    @HamzaGabbar 17 วันที่ผ่านมา

    how i apply voice recognition and voice synthesis

  • @AhmadRaza-mw7ux
    @AhmadRaza-mw7ux ปีที่แล้ว +9

    A month ago, I was dreaming of creating a project like this one to automate video creation. But I was not able to do that.
    Now you give me a good starting point. ❤️❤️❤️❤️

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +1

      Wow, I'm so happy to help!
      Don't hesitate if you have questions 🙌

  • @BrajBliss
    @BrajBliss 8 หลายเดือนก่อน +1

    Hey, I followed your tutorial but for some reason, the shoulders are all tucked in weirdly when I am using the mixamo animations. They look just fine on the website but not when rendering them after downloading the file from mixamo. Any idea?

    • @WawaSensei
      @WawaSensei  8 หลายเดือนก่อน +1

      Hey, you can check my second lipsync tutorial maybe I do it differently. Maybe it depends on the param used on how we export the fbx, let me know if that helps 🙌

    • @BrajBliss
      @BrajBliss 8 หลายเดือนก่อน

      @@WawaSensei Is it this one?
      th-cam.com/video/pGMKIyALcK0/w-d-xo.htmlsi=MGrvPgVROT9tHLk8

    • @WawaSensei
      @WawaSensei  8 หลายเดือนก่อน +1

      Oh sorry, this one th-cam.com/video/EzzcEL_1o9o/w-d-xo.html 🙌

  • @bbg-u5w
    @bbg-u5w ปีที่แล้ว +1

    Thank you very much for the video you shared, but I encountered this problem when expanding the function. I tried to use eyeBlinkLeft in the model to control blinking, but in LeftEye, the animation did not take effect. Is there any good solution?

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      You're welcome! Please join us on Discord and share your project to be able to help you 🙌

  • @kilian5245
    @kilian5245 13 วันที่ผ่านมา

    Hey, is it possible to make this character as an augmented reality project with three.js?

    • @WawaSensei
      @WawaSensei  12 วันที่ผ่านมา

      Yes! I've helped on this project aivah.ai/ and that's what they are using!

  • @hoangsonit
    @hoangsonit ปีที่แล้ว +1

    Hello Sensei, thanks for the video.
    Your video is very helpful for me.
    I have an idea to call the api to get the audio file, then automatically genarate the json file from Rhubarb LipSync. But I can't find any documentation that can automatically run Rhubarb LipSync in reactjs. Can you help me?
    I will be very grateful to you.

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +1

      Hello, Nice if you go this way!
      I can probably make a V2 of this video to show it in the near future.
      You shouldn't run Rhubarb client side as it's a binary your users won't have. It needs to be your server and then you return the JSON it generates. (So run the shell command using nodejs)

  • @voloUA
    @voloUA 3 หลายเดือนก่อน

    Hi, in my case avatar is rotated horizontally for some reason. And when I have uploaded it into Mixano, there was a half-sphere block in the bottm half of my avatar. Did somebody faced this?

    • @BhavinParekh-h6x
      @BhavinParekh-h6x 3 หลายเดือนก่อน

      use y forward when the time of export from blender

  • @pulkitgarg189
    @pulkitgarg189 10 หลายเดือนก่อน +1

    @wawa-sensei thanks a lot for shring this rare stuff on youtube. Learning a lot from this. Can you upload also please video for Metahuman avatar rather than Ready Player Me. Thanks!!

    • @WawaSensei
      @WawaSensei  9 หลายเดือนก่อน

      Thank you! Are you sure it's usable with Threejs and not only within Unreal?

    • @pulkitgarg189
      @pulkitgarg189 9 หลายเดือนก่อน

      @@WawaSensei honestly I am not sure, but I know we can download file into glb format thus technically this should be possible.

  • @dounia-o7i
    @dounia-o7i 11 วันที่ผ่านมา

    can u please tell me how to use the aditional blend shapes of oculus visemes ? i want my avatar to close his eyes in a natural way

    • @WawaSensei
      @WawaSensei  11 วันที่ผ่านมา

      Hey, please check this video, it's what I did:
      th-cam.com/video/EzzcEL_1o9o/w-d-xo.html

  • @GordonMcIntyre-tw1rl
    @GordonMcIntyre-tw1rl 5 หลายเดือนก่อน

    Love it but a question:
    In the elevenlabs-nodejs module textToSpeech you specify 'responseType: "stream"',. I don't understand why not "ArrayBuffer" and use responseType: "stream", in the textToSpeechStream? Btw there's a bit of duplicate code in lines 93-96 in the index.js.

  • @hamitaksln
    @hamitaksln ปีที่แล้ว +2

    Great tutorial! Is there a way to smooth transition between visemes? It looks it's instant now and it feels a bit off. Thanks!

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +2

      Thank you 🙌
      You're right, I didn't try to see what it would look like but should be very easy to do!
      I will try and update the code if it's better 😊
      In the meantime if you want to try it on your own, instead of setting the value to 0 or 1, you can use THREE.MathUtils.lerp to smoothly transition from the current value of the viseme towards 1 or 0

    • @hamitaksln
      @hamitaksln ปีที่แล้ว

      @@WawaSensei Thanks for the detailed answer. I would be glad if you update the code 😊I've tried something with lerp but I didn't get what I want.

    • @hamitaksln
      @hamitaksln ปีที่แล้ว

      @@WawaSensei I've raised PR for it. I got some helps from chatGPT and the result looks better :)

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +2

      @@hamitaksln github.com/wass08/r3f-lipsync-tutorial/blob/main/src/components/Avatar.jsx
      Done! You were right the result is way better this way 🙌

    • @hamitaksln
      @hamitaksln ปีที่แล้ว

      @@WawaSensei Ah I just saw your commit. Thanks for your time and work

  • @khanhhq2044
    @khanhhq2044 3 หลายเดือนก่อน

    Does this lip sync work well for all languages?

  • @udiiiiiit5020
    @udiiiiiit5020 ปีที่แล้ว +1

    Hello Sensei, thanks for the video.
    But I'm having an issue after adding the animations.
    Console says:
    three.propertybinding: trying to update node for track: armature.quaternion but it wasn't found.
    And the model is rotated by 360 in z axis from its feet as pivot.
    I tried rotating and setting it's position but the result is not satisfactory

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      Hello, you're welcome!
      About this error: three.propertybinding: trying to update node for track: armature.quaternion but it wasn't found.
      I also have it with mixamo + ready player me, it doesn't cause an issue to me, but I don't know where it comes from yet.
      About your model rotation, be sure to use the same threejs version / r3f / drei than me, and that you correctly exported the fbx with the right settings (shown in the video) to generate your mixamo animations 🙏

    • @udiiiiiit5020
      @udiiiiiit5020 ปีที่แล้ว

      @@WawaSensei Yeah, I figured it out. Again thanks for the video😊

  • @pratikpatre8664
    @pratikpatre8664 4 หลายเดือนก่อน

    Can I do this in React Native ? Please let me know

  • @salaheddineelmahjour8956
    @salaheddineelmahjour8956 6 หลายเดือนก่อน

    hhhhhh 💯💯💯💯

  • @bernaferrari
    @bernaferrari 8 หลายเดือนก่อน +1

    Best tutorial I've seen in a long time. Wish you knew some alternatives to ready player one, but not your fault. Amazing tutorial.

    • @WawaSensei
      @WawaSensei  8 หลายเดือนก่อน

      Thanks a lot! I'm considering paying artists on Fiverr for some new content

  • @ShivamKumar-cu3lb
    @ShivamKumar-cu3lb ปีที่แล้ว +1

    Hi , this project was literally helpful for me. I was thinking, is there any possibility to add real time interaction using text to speech services and rhubarb oculus visemes?

    • @sharonthomas4010
      @sharonthomas4010 11 หลายเดือนก่อน

      @ShivamKumar-cu3lb im working on a similar project, would love to have a discussion

    • @WawaSensei
      @WawaSensei  11 หลายเดือนก่อน +1

      My friends, I think you will appreciate the next video, it will include ElevenLabs and ChatGPT 😊
      Here's an early teaser of the facial expressions 👉 twitter.com/wawasensei/status/1711328416837029970

    • @ShivamKumar-cu3lb
      @ShivamKumar-cu3lb 10 หลายเดือนก่อน

      @@sharonthomas4010 Hi, sure let me know how we can connect?

  • @kushaltanna5569
    @kushaltanna5569 ปีที่แล้ว +1

    Wow another unique idea.! Really great video. Thanks.

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      😻 Thanks, wish you'll give lip sync a try!

  • @soumyaranjansia3782
    @soumyaranjansia3782 9 หลายเดือนก่อน

    for lipsync- write command like rhubarb instead of ./rhubarb (only for windows user)

    • @NanoGi-lt5fc
      @NanoGi-lt5fc 9 หลายเดือนก่อน

      Still not working hey did u add the rhubarb to path to env

    • @soumyaranjansia3782
      @soumyaranjansia3782 9 หลายเดือนก่อน

      @@NanoGi-lt5fc no please download the rhubarb file and then extract the zip file then put that zip file in the root of the project and then go to the rhubarb path in your project and on that path , type the command for rhubarb but note that , you need to type rhubarb instead of ./rhubarb

    • @WawaSensei
      @WawaSensei  9 หลายเดือนก่อน +1

      Thanks for helping 😍

  • @nicolassuarez2933
    @nicolassuarez2933 9 หลายเดือนก่อน

    Outstanding! But your approauch with Rhubarb lipsync just runs on local, how to run it on server side, any clue? Thanks! 😄

    • @WawaSensei
      @WawaSensei  9 หลายเดือนก่อน +1

      Hey, thank you very much!
      Well a backend is exactly like your local machine, you can have Rhubarb there and execute the command. I show it in this video how to create the backend th-cam.com/video/EzzcEL_1o9o/w-d-xo.html

  • @boshen3953
    @boshen3953 8 หลายเดือนก่อน

    Hello Sensei, I followed your steps to export y as up and z as forward to Mixamo. However, the final animated character I run has the head facing downwards. I'm not sure where I went wrong in the process and would appreciate your assistance.

    • @WawaSensei
      @WawaSensei  8 หลายเดือนก่อน

      Hey be careful about your threejs and r3f versions (compare with my package.json)
      Also check the process in my virtual gf video maybe I made it differently there

  • @martrom0
    @martrom0 4 หลายเดือนก่อน

    Wonderful !! Thanks man !! Great Job !!🎉🚀

  • @ChiragSaraswat-ty8vy
    @ChiragSaraswat-ty8vy 6 หลายเดือนก่อน

    I have a doubt, video is super amazing and innovative but Imagine I am using a api which is bringing a response(textual refrence) I need to make the model speak it up in realtime, but here I first need to convert it in json and than set it to particular folders, how can Ik make it speak in realtime like as the response arrived it speaks it with lip sync. can you guide me @wawa sensei. I dont want to use rhubarb library it will casue a lag for me

    • @WawaSensei
      @WawaSensei  6 หลายเดือนก่อน

      Hey, you can use Azure to make it directly. That's what I show in this video th-cam.com/video/_bi4Ol0QEL4/w-d-xo.html

  • @ffff42
    @ffff42 8 หลายเดือนก่อน

    I try to install step by step with your auto but I have the error : Avatar non defined in the Experience.jsx file

    • @WawaSensei
      @WawaSensei  8 หลายเดือนก่อน

      Do you have a component named Avatar that you imported/exported correctly?

  • @pramodramdurg
    @pramodramdurg 6 หลายเดือนก่อน

    Thanks for this amazing tutorial. I am unable to play both animation and lipsync together, either one of them is playing at a time. do you know what could be the issue ?

    • @WawaSensei
      @WawaSensei  6 หลายเดือนก่อน

      Did you download the model correctly with the query string parameters?

  • @idkman8520
    @idkman8520 7 หลายเดือนก่อน

    i made a female avatar but for some reason i no matter how much i try to position her, her head is stuck to the ceiling of the page. I followed your code to the T. Any advice 😕

    • @WawaSensei
      @WawaSensei  7 หลายเดือนก่อน

      Hey feel free to share a codesandbox on the discord

  • @priyanshiyadav3350
    @priyanshiyadav3350 7 หลายเดือนก่อน

    I want video in avatar's background please help

    • @WawaSensei
      @WawaSensei  6 หลายเดือนก่อน

      You can with useVideoTexture -> lessons.wawasensei.dev/courses/react-three-fiber/lessons/image-and-video-textures

  • @BeenaSharma-v3x
    @BeenaSharma-v3x 10 หลายเดือนก่อน

    Hi sir, I want to use this same in my android app but by using kotlin ...can i use it if yes then how ??

    • @WawaSensei
      @WawaSensei  9 หลายเดือนก่อน

      Hum.. You can use it! The simplest solution would be to embed in a webview, or rewrite for Kotlin following my logic

  • @sergiogonzalez2611
    @sergiogonzalez2611 3 หลายเดือนก่อน

    thank you man, clear and precise tutorial, thnak you for shared

    • @WawaSensei
      @WawaSensei  3 หลายเดือนก่อน

      Thanks for the motivation 🫶

  • @freddyie-do4oy
    @freddyie-do4oy ปีที่แล้ว

    ​ @WawaSensei Hello Sensei, thanks for the video, you are great. Can I use this avatar in a project for my clients?

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      Yes, of course! Look at Ready Player Me terms of service part 7 readyplayer.me/terms

  • @TA-du6bf
    @TA-du6bf 7 หลายเดือนก่อน

    Is this code compatible with other tools other than Ready Player Me for avatar creation as long as the file is in .glb format? I tried using a custom .glb avatar (very similar to the one in this video) but the page was frozen and eventually crashed.

    • @WawaSensei
      @WawaSensei  7 หลายเดือนก่อน

      Hey it is but you must have a mixamo rig attached to your 3D model
      (If it’s not you can learn how to do it in this video th-cam.com/video/mdj7Z3PCxRg/w-d-xo.html)

    • @TA-du6bf
      @TA-du6bf 7 หลายเดือนก่อน

      @@WawaSensei Thank you!

  • @ryanchen1793
    @ryanchen1793 ปีที่แล้ว

    great tutorial, but the morph changes too quick, would a lerp be helpful?

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      Hey thank you!
      Yes I had changed the code and demo based another comment about it 🙌
      Let me know what you think !

  • @j45t7
    @j45t7 11 หลายเดือนก่อน

    Hey,
    Do you know why audio doesn't work on mobile?

    • @WawaSensei
      @WawaSensei  11 หลายเดือนก่อน

      Hey, is it because you didn't do any interaction with the screen before playing the audio? Maybe add a button to be pressed before playing the audio

  • @NabenduInfusAI
    @NabenduInfusAI ปีที่แล้ว

    Anyway to connect it to a OpenAI API endpoint, so that we can ask it a question and it can answer.

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +2

      Of course yes!
      It would be a bit long to get the answer but you'd need to have the following in your backend:
      Call open AI (ChatGPT) with the question > generate audio with eleven lab API > have the Rhubarb Lip Sync on your server and run it on the audio > then play it in your frontend!

  • @kimiaiassistant
    @kimiaiassistant 9 หลายเดือนก่อน

    is possible to make text to speech with lip sync?

    • @WawaSensei
      @WawaSensei  9 หลายเดือนก่อน

      Hey, what do you mean?

  • @eduardoarhuata274
    @eduardoarhuata274 10 หลายเดือนก่อน

    my avatar appears behind the background how can i fix it?

    • @WawaSensei
      @WawaSensei  10 หลายเดือนก่อน

      Hey, did you try adjusting the positions?

    • @eduardoarhuata274
      @eduardoarhuata274 10 หลายเดือนก่อน

      @@WawaSensei yeah i did, but got another error lol now the lipsync dont work lol

  • @jesusleguiza77
    @jesusleguiza77 ปีที่แล้ว

    Hello sir, how can I make it generate a video with the animations directly from js, and make an mp4? sending only the video to the website, thanks

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +1

      Hi,
      You can use this library github.com/spite/ccapture.js/, not sure it would work full backend (you can try) but you could pre-record them and use it in front too 🙏

    • @jesusleguiza77
      @jesusleguiza77 ปีที่แล้ว

      Thanks you! I have tried that library and it only generates the video on the client side@@WawaSensei do you know other option?

  • @NitinRawat-n1p
    @NitinRawat-n1p หลายเดือนก่อน

    Arigato Gojaaimasta Sensei ❤❤

    • @WawaSensei
      @WawaSensei  หลายเดือนก่อน

      You’re welcome 🫶

  • @nagasai4981
    @nagasai4981 11 หลายเดือนก่อน

    when i enter preset="sunset" then i am getting errors

    • @WawaSensei
      @WawaSensei  11 หลายเดือนก่อน

      Check your package.json with the one from my repository here github.com/wass08/r3f-vite-starter
      Old drei versions have an issue with the url used for environment presets

  • @splitspecs
    @splitspecs ปีที่แล้ว

    Once again great video ❤. Can you make a video on techniques for optimizing react three fiber projects

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +1

      Thank youuu! 🙏
      I'm finishing writing my getting started with react three fiber course which include a lesson for optimizing projects 🙌
      I might do it a light version for free in the future too
      (But basically it covers aspects you have in R3F documentation docs.pmnd.rs/react-three-fiber/advanced/scaling-performance and the performance pitfalls too)

  • @ludoski68
    @ludoski68 4 หลายเดือนก่อน

    Thanks for your work!

  • @Beata-yn9kn
    @Beata-yn9kn ปีที่แล้ว

    Hello, I really enjoying your videos! I am just wondering if you have any videos without started project to clone? So it's easier to understand everything from scratch! I would be really glad if you answer! Have a great day!

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +1

      Hello, thanks a lot!
      Sure, the first lessons of my course are free and include all the steps to create that starter project
      lessons.wawasensei.dev/courses/react-three-fiber
      Hit preview and you're ready to go 🙏

    • @Beata-yn9kn
      @Beata-yn9kn ปีที่แล้ว

      @@WawaSensei thank you so much! I am really enoying your videos, everything seems so easy, after your explanation!

  • @stamatiskourtis9653
    @stamatiskourtis9653 6 หลายเดือนก่อน

    Fantastic tutorial! very well done!

    • @WawaSensei
      @WawaSensei  6 หลายเดือนก่อน

      Thanks a lot! 🙌

  • @Venkatesh-vm4ll
    @Venkatesh-vm4ll ปีที่แล้ว

    Wow this project is amazing thank you

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      You are welcome 😊
      Wish you'll give it a try!

  • @tarunsukhu2614
    @tarunsukhu2614 ปีที่แล้ว

    Another class act by our champion wawa

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      Owww 🥰
      Thanks a lot for your huge support everytime 🙌

  • @mandymozart
    @mandymozart 8 หลายเดือนก่อน

    really like you didactics and calm when explaining.

    • @WawaSensei
      @WawaSensei  8 หลายเดือนก่อน

      🙏 happy to read it, glad it resonates with you! As I do my best, such kind comments mean a lot 🤗

  • @harimohan_choudhary_6
    @harimohan_choudhary_6 ปีที่แล้ว

    This is really nice video. Thank you for sharing.

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      Glad you enjoyed it, thaaaaanks 🙌

  • @AhmadRaza-mw7ux
    @AhmadRaza-mw7ux ปีที่แล้ว +1

    ❤️❤️❤️❤️❤️❤️❤️

  • @jfluffydog2110
    @jfluffydog2110 ปีที่แล้ว

    thanks for making these videos, they help a lot

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      My pleasure! 🙌
      Thank you for your feedback!

    • @jfluffydog2110
      @jfluffydog2110 ปีที่แล้ว

      @@WawaSensei please can you make a video on gsap scroll trigger for full page scroll? In your portfolio tutorials the solution you use doesn't scale well for multiple sections

  • @inteligenciafutura
    @inteligenciafutura ปีที่แล้ว

    Super mega excellet

  • @sumitranjan7005
    @sumitranjan7005 ปีที่แล้ว

    how to make it eye blinking?

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว +3

      Hey, the logic is the same than the visemes, there are morphTargets you can play with to open/close the eyes and by animating them smoothly you can make the avatar blink.
      I'm considering making a second more advanced version of the lipsync, would it interest you? What would you like to see inside?

    • @sumitranjan7005
      @sumitranjan7005 ปีที่แล้ว

      @@WawaSensei more advance video great. I'm sure all your subscriber are early waiting for that. i want to see how emotion and more advance(multiple animation during a single dialog) gesture can be controlled. 😇

  • @dindustack
    @dindustack ปีที่แล้ว

    Thanks for your consistency

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      Thanks for your support! 🙌

  • @pdrusr
    @pdrusr 6 หลายเดือนก่อน

    Perfect!

    • @WawaSensei
      @WawaSensei  5 หลายเดือนก่อน

      You are perfect 😍

  • @alijeblawi3438
    @alijeblawi3438 ปีที่แล้ว

    You're the best ❤❤

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      No, you are! I'm only second 😍

  • @thimethimesha8495
    @thimethimesha8495 ปีที่แล้ว

    Amazing...

    • @WawaSensei
      @WawaSensei  ปีที่แล้ว

      Thanks a lot 😊 !

  • @sarkarsourav1
    @sarkarsourav1 6 หลายเดือนก่อน

    thank you for such a video

    • @WawaSensei
      @WawaSensei  6 หลายเดือนก่อน

      Glad you liked it! 🙏