VaM_EchoAvatar_Bridge (EchoAvatar: Real-time Generative Avatar Animation from Audio Streams)

Plugins + Scripts VaM_EchoAvatar_Bridge (EchoAvatar: Real-time Generative Avatar Animation from Audio Streams)

Download [<1 MB]
  Requires executable files or external scripts. Ensure you trust the creator and apply your own security measures.

EchoAvatar → Virt-A-Mate Bridge​

Hello! Right after discovering the amazing motion generation engine EchoAvatar, I immediately felt the urge to connect it with Virt-A-Mate and created this bridge. Please give it a try if you'd like! (Hint: You might need to prepare a second high-end PC just for the inference server, lol).

🎥 Demo​

[Looks :Xspada Kira]

An unofficial bridge that allows EchoAvatar to stream real-time audio-driven body motion into Virt-A-Mate.

Note: This is an unofficial community-made tool and is not affiliated with EchoAvatar or MeshedVR.

GitHub​

Source code, installation instructions, and requirements are available here:

https://github.com/yuyaslabo/vam_echoavatar_bridge

EchoAvatar (Official):https://github.com/RobinWitch/EchoAvatar

Requirements​

  • Virt-A-Mate
  • Python 3.x
  • A working EchoAvatar environment
  • NumPy
  • SciPy

Installation​

  1. Make sure the official EchoAvatar environment and sample are working correctly.
  2. Install the required Python packages:
    pip install -r requirements.txt
  3. Run vam_echoavatar_bridge.py.
  4. Load EchoAvatarReceiver.cs onto a VaM Person.
  5. Start the EchoAvatar engine and wait for the connection.
  6. Send audio using the official EchoAvatar tool:
    python tools/pushwav2server.py

Data Flow​

pushwav2server.py
↓ Audio stream
EchoAvatar engine
↓ TCP : 12346
vam_echoavatar_bridge.py
↓ UDP : 9998
EchoAvatarReceiver.cs

VaM Person body
This bridge synchronizes body motion only. Facial expressions (Face) are not synchronized or controlled.

Hint: VaM Optimization​

For VaM users, some optional adjustments can be made in the official EchoAvatar inference script:

1. Disable Face inference
If you only need body motion, you can comment out the Face-related inference code to avoid unnecessary processing.

2. Reduce horizontal translation
In get_joint_pos(pred_motion), you can reduce the amount of character translation:

trans_x *= 0.7
trans_y *= 0.7
This can help keep the character's movement more suitable for VaM.

These are optional adjustments for VaM use and are not required for the bridge itself.
These adjustments can be made in the official EchoAvatar scripts/...py inference script.

License​

The source code is licensed under the MIT License.

The VaM package is distributed under CC BY.

This project is an unofficial third-party tool and is not affiliated with EchoAvatar or MeshedVR.
  Requires executable files or external scripts. Ensure you trust the creator and apply your own security measures.
React to this content...

Share this resource

Credits

Creator Support Link
Xspada Xspada
Back
Top Bottom