OpenViSTAI · Agents · Blockchain · Crypto
Menu
Image & Video AI

Faceformer

FaceFormer is a PyTorch implementation of a Transformer-based model that generates 3D facial motion, including lip movement, from raw audio and a neutral 3D face mesh.

Independent OpenViST project profile, based on linked sources.

Faceformer — OpenViST project profile in Image & Video AI.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use FaceFormer when you want to explore a local research workflow for turning speech audio into 3D facial motion, and can work with the repository's Python environment, mesh data and model weights.

Who it is for

  • Researchers exploring speech-driven facial animation.
  • 3D-character developers prototyping audio-to-facial-motion workflows.

Documented uses

  • Generate a 3D facial-motion sequence from speech audio and a neutral mesh.
  • Render a demo animation using the documented BIWI or FLAME topology workflows.
  • Prepare BIWI, VOCASET or custom data for model training and visualization.
Before you choose

Requirements & limits

The repository is public and lists an MIT license.

  • The README specifies Ubuntu 18.04.1, Python 3.7 and PyTorch 1.9.0.
  • The project requires dependencies including ffmpeg and MPI-IS/mesh.
  • Demo generation requires pretrained weights and a WAV input.
  • BIWI and VOCASET data must be requested from their respective sources.
  • Custom datasets require vertex data, WAV audio, subject templates and dataset-specific settings.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Generate a demo animation from WAV audio

Use a documented pretrained BIWI or VOCASET model to render an audio-driven 3D facial animation.

Before you start

  • Ubuntu 18.04.1, Python 3.7 and PyTorch 1.9.0.
  • The packages listed in requirements.txt, ffmpeg and MPI-IS/mesh.
  • The pretrained model for BIWI or VOCASET and a WAV audio file.

Steps

  1. Download the pretrained model for BIWI or VOCASET and place it in the corresponding dataset folder.

  2. Place the WAV file in demo/wav, or set the demo's --wav_path to its location.

  3. Run demo.py with the documented settings for the chosen BIWI or FLAME topology.

  4. Find the rendered video in demo/output.

Expected outcome

A rendered video of speech-driven facial motion saved in demo/output.

Guide limitations

  • The README's demo commands specify dataset-specific mesh topology and model settings.
  • The documented environment is Ubuntu 18.04.1, Python 3.7 and PyTorch 1.9.0.
Source-based practical guide

Prepare a custom dataset for FaceFormer training

Arrange custom mesh and audio data and define the dataset splits needed by the training workflow.

Before you start

  • A local FaceFormer checkout.
  • Vertex data in .npy format, audio in .wav format, subject templates in templates.pkl and an exported template in .ply format.

Steps

  1. Create a dataset directory with vertices_npy and wav subfolders, and place the corresponding files there.

  2. Save the subject templates as templates.pkl in the dataset directory and place an exported template in its templates subfolder.

  3. Specify the dataset name, vertex dimension and train, validation and test subjects in the documented main.py arguments.

  4. Adjust feature_dim or period for the dataset if needed.

Expected outcome

The custom data and split settings are arranged for the documented training stage.

Guide limitations

  • The README describes preparation and training commands but does not establish that a particular custom dataset will work without adjustment.
  • The vertex dimension is the number of mesh vertices multiplied by three.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
16 October 2026
Original website title
EvelynFan/FaceFormer · Official homepage title · retained in its source language