Quick start#

Steps below will help you setup and run the microservice on a Linux system and use our simple sample application to receive blendshapes in real-time.

For Windows, we recommend using WSL by following WSL Setup Guide. After setting up WSL, you can follow any page in the Audio2Face Authoring section of the documentation, but ensure that you run the commands inside the WSL terminal.

Prerequisites#

This documentation assumes the following system requirements:

OS

Ubuntu 22.04

CUDA

12.1

Driver

535.54

Docker

27.1.1

  • Any Linux distribution should work but has not been tested by our teams.

  • Some of the newer versions of CUDA 12.x have not been fully tested and may encounter issues during TRT model generation.

  • The sample application will run inside a python Docker container.

NGC ACE EA access#

To download Audio2Face Authoring Container you need access to NGC nv-ucf/ace-ea.

Note

Early Access (EA) products are available for selected customers.

NGC Access and Cloud Function Run Key#

You will need a NGC account to get access to NGC resources and retrieve sample applications. A separate Cloud Function Run Key is also needed to use the service. Please reach out to your NVIDIA account manager if you do not have access to NGC or do not have a Cloud Function Run key assigned to you by your NVIDIA account manager.

NGC Setup#

Once you have access to NGC, please follow the setup instructions. You will need to generate an API Key to use the NGC service through the NGC CLI tools.

After completing the above, you can download the sample applications from NGC:

$ ngc registry resource download-version "eevaigoeixww/ace-ea/a2f-authoring-sample-code:0.2.2"
$ cd a2f-authoring-sample-code_v0.2.2
$ unzip authoring_script.zip
$ cd authoring_script

Inside you will find the client_nvcf_deploy.py script. Follow the instructions in the downloaded README.md file, the Requirements section to setup the python dependencies inside a Docker container.

Note

To find the checksum of authoring_script.zip, run:

$ sha256sum authoring_script.zip

You should get:

5ad1e0e3b43f287fc0de316648b4f833ab38b09c90debe94cc875410961c804d  authoring_script.zip

Trying Audio2Face Authoring Microservice#

Using your assigned Cloud Function Run Key, a function-id and a version-id you can communicate with the NVCF deployment of A2F Authoring MS. Note that the API_Key used here should be your assigned Cloud Function Run Key instead of your NGC API Key. Inside the Docker container from the previous step you can run:

$ python3 client_nvcf_deploy.py data_capture --function-id {FUNCTION_ID} --version-id {VERSION_ID} --apikey {API_KEY} Female_Neutral_16khz.wav

You can find the right ids in this table:

Model

Function ID

Version ID

Mark

be24fd18-4c26-4a38-84ad-c7f88da10835

1e5f3b3a-f47e-4189-a0e7-8cbe4ec27d32

Claire

f33c62b0-96d2-434a-9a4c-e89b7c064be5

008c044f-43e8-4e35-ae48-ca47a4e150e0

Note

This Microservice is hosted in the US. So for remote regions, it is recommend to self-deploy the container.

The results of the script are saved in 2 files:

  • output_blendshape.csv: contains the blendshapes with their name, value and time codes.

  • output_emotions.csv: contains the emotions with their name, value and time codes.

The timecodes are relative to the beginning of the audio file.

For additional functionality like checking the service health, you can follow the full guide of the NVCF version of the sample app.

We recommend the following workflows:

  • (optional) self-deploy the Authoring Microservice.

  • Try the sample app to check your service health (if using self-deploy) or NVCF endpoint health.

  • Try interactive avatar tuning by connecting Maya-ACE to the authoring microservice. Follow this section.