Skip to content

AngyIce/Mediapipe4u

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

简体中文

MediaPipe4U

An Unreal Engine plugin that helps you use AI and ML techniques in your unreal engine project.

Windows Android Linux

News | Document | Download | Demo Project | M4U Remoting(Android App) | Speech Model Packages

Free Edtion vs Commercial Edition

Introduction

MediaPipe4U provides a suite of libraries and tools for you to quickly apply artificial intelligence (AI) and machine learning (ML) techniques in Unreal Engine project. You can plug these solutions into your UE project immediately, customize them to your needs. Include motion capture , facial expression capture for your 3D avatar, text to speech (TTS), speech recorgnization (ASR), etc. All features are real-time, offline, low latency and easy to use.

What's news

Latest update: 20240520

  • [new] 🌈 Unreal Engine version 5.4 support, I skipped UE 5.3, I'm sorry for that.
  • [new] 🌈 Control Rig supported (preview). Add a new animation blueprint node ControlRigFromPose that used to convert FK poses to Control Rig Blueprints pose.
  • [new] 🔥 Upgrade to latest goole mediapipe holistic task api, got better performace for holistic tracking.
  • [fix] #130: When packaging a game, the mediapipe model file is missing.
  • [improve] Optimize android performace, now Android platfrom can reach 15-20 fps (CPU: Qualcomm Snapdragon 870 ).
  • [remove] 🤢 LLM plugin has been removed. Because of the high latency of the LLM and the frequent updates of the llama.cpp project for a long time, there is no stable version. So I remove it, and maybe it will come back in the future.
  • [remove] 🤢 Since this version, the 5.0.x version of UnrealEngine is no longer supported. Because 5.0.X requires VS 2019 and VS 2019 is no longer installed on my development PC. Sorry for that, but the older versions of the 5.0.x plugin are still available.

Known Issue:

  • Google's new holistic task API doesn't support GPUs, so Android uses CPU inference, and Windows, as always, CPU inference.
  • Sine Unreal Engine 5.4 , the 'OpenCV' engine built-in plugin no longer contains precompiled libraries (dll files), the first time of the engine launched, because M4U dependent on the 'OpenCV' plugin, the UE Editor will try to download the OpenCV source code over the internet and compile it, this process may take a long time, it feels like the UE loading is stuck at 75%, please be patient and wait it, for Chinese users, you may also need a VPN networking for that, you can do this manually: #166.

Release Notes

For the release notes, ref below:

Features

💚All features are pure C++, no Python or external programs required.

  • Motion Capture
    • Motion of the body
    • Motion of the fingers
    • Movement
    • Drive 3D avatar
    • Real-time
    • RGB webcam supported
    • ControlRig supported
  • Face Capture
    • Facial expression.
    • Arkit Blendshape compatible (52 expression)
    • Live link compatible
    • Real-time
    • RGB webcam supported
  • Multi-source Capture
    • RGB WebCam
    • Video File
    • Image
    • Living Stream (RTMP/SMTP)
    • Android Device (M4U Remoting)
  • LLM
    • Offline
    • CPU/GPU Inference
    • Multiple models
      • LLaMA/LLaMA2
      • ChatGLM (work in progress)
  • TTS
    • Offline
    • Real-time
    • Lip-Sync
    • Multiple models
      • Paddle Speech: Chinese, English
      • Bark: 13 languages (work in progress)
  • ASR
    • Offline
    • Real-time
    • Multiple models
      • FunASR: Chinese
      • Whisper: 99 languages
  • Animation Data Export
    • BVH export
  • Pure plugins
    • No external programs required
    • All in Unreal Engine

Document

Download

Unreal Engine China Site Global Site Update
UE 5.0 奶牛快传 One Drive 2023-10-10
UE 5.1 奶牛快传 One Drive 2023-10-10
UE 5.2 奶牛快传 One Drive 2023-10-10

Because the plugin is precompiled and contains a large number of C++ link symbols and debug symbols, it will cost 10G disk space after decompression (most files are UE-generated binaries in Intermediate).
Don't need to worry about disk usage, this is just disk usage during development, after the project is packaged, the plug-in disk usage is 300M only (most files are GStreamer dynamic library and speech models).

Cross Platform

Now, M4U support Android and Windows (Linux is coming soom)

Plugins (Modules) Windows Android Linux
MediaPipe4U ✔️ ✔️ Coming Soon
MediaPipe4ULiveLink ✔️ ✔️ Coming Soon
GStreamer ✔️ Coming Soon
MediaPipe4UGStreamer ✔️ Coming Soon
MediaPipe4UBVH ✔️ Coming Soon
MediaPipe4USpeech ✔️ Coming Soon
MediaPipe4ULLM ✔️ Coming Soon

Free License File Release

The license file will be published in the discussion, and the plugin package file will automatically include an license file.

M4U Remoting App

Android Version Download Link Update
Android 7.0 or later Download 2023-04-21

About M4U Remoting

Note
This is a commercial license exclusive feature: capturing facial expressions from android device.
Free license only supports using in UE Editor, cannot be packaged this feature.
M4U Remoting Document

Demo Project

Please clone this repository to get demo project:

The demo project does not contain plugins, you need to download the plugin and copy content to the project's plugins folder to run.

Video Channels

Video Tutorials (English)

MediaPipeU Metahuman Tutorials

Video Tutorials (Chinese)

bilibili

FAQ

If you have any questiongs, please check FAQ first. The problems listed there may be also yours. If you can’t find an answer in the FAQ, please post an issue. Private message or emal may cause the question to be mised .

Performance

Since the Windows version of MediaPipe does not support GPU inference, Windows relies on the CPU to inferring human pose estimation (see MediaPipe offical site for more details).

Evaluation

Frame Rate: 18-24 fps

CPU usage:20% (Based on DEMO project)

Testing Evnrioment

CPU: AMD 3600 CPU
RAM: 32GB
GPU: Nvidia 1660s

Follow Me

bilibili

Youtube

Acknowledge

  1. M4U used MediaPipe for motion capture and face capture.
  2. M4U used NVIDIA Maxine AR SDK for facal capture.
  3. M4U used Paddle Speech for TTS.
  4. M4U used FunASR for ASR.
  5. M4U used whisper.cpp for ASR.
  6. M4U used GStreamer for video and live streaming decoding.
  7. M4U used llama.cpp for inference of LLaMA2 model.
  8. M4U borrowed a lot of code from PowerIK for ground ik.
  9. M4U borrowed a lot of ideas from Kalidokit for mocap.
  10. M4U borrowed a lot of code from wongfei for gstreamer/mediapipe integration.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dockerfile 100.0%