Building Talking Human Videos Using Azure Video Avatars

Have you ever wanted to turn a simple piece of text into a professional-looking video presenter without hiring actors, recording videos, or using complex animation software?

With Azure AI Video Avatars, that’s now possible.

In this blog, we’ll walk through how Azure can transform plain text into a realistic talking avatar video, and how you can build a simple application that automates the entire process.

From Text to a Talking Video

At a high level, the process is remarkably simple:

Text → Azure AI → Human-like Avatar MP4 Video

All you need is a script. Azure handles everything else:

  • Converting text into natural speech
  • Synchronizing lip movements
  • Animating facial expressions
  • Rendering the avatar
  • Generating a downloadable MP4 video

The result is a realistic presenter video that can be used for training, onboarding, marketing, education, and more.

How Azure Creates the Video

Although it looks like a single API call from the outside, Azure performs several AI-powered steps behind the scenes:

1. Text Processing

  • Analyzes the input text
  • Handles punctuation and pauses
  • Neural Text-to-Speech

2. Converts text into natural-sounding speech

  • Lip-Sync Generation
  • Maps spoken sounds to mouth movements

3. Avatar Rendering

  • Animates facial expressions and head movements

4. Video Encoding

  • Produces a final MP4 video ready for viewing or download

The beauty of this approach is that developers don’t need expertise in animation, video editing, or character modeling. Azure takes care of the complexity.

What You Need to Get Started

To build your own text-to-avatar application, you’ll need:

  • An Azure subscription
  • An Azure AI Speech resource with Avatar capability enabled
  • Azure API Key and Region (currently East US)
  • A lightweight Python backend
  • A simple HTML/JavaScript frontend

That’s all it takes to get started.

Solution Architecture

The application uses the Azure Batch Avatar Synthesis API.

The workflow looks like this:

  1. The user enters text in a web page.
  2. The request is sent to a Python backend.
  3. The backend submits a rendering job to Azure.
  4. Azure processes the request asynchronously.
  5. The frontend polls for completion.
  6. Once finished, Azure returns an MP4 video URL.
  7. The video is played directly in the browser or downloaded locally.

Step 1: Create an Azure AI Speech Resource

Start by creating an Azure AI Speech resource in the Azure portal.

Make sure the resource is created in the East US region because Azure Video Avatars are currently available there.

After creation, note down:

  • Speech API Key
  • Region Name

These credentials will be used for both speech generation and avatar rendering.

Step 2: Choose an Avatar and Voice

Azure provides several prebuilt avatar characters and styles.

For example:

Avatar Character: Lisa

Available Styles:

  1. Casual Sitting
  2. Graceful Sitting
  3. Technical Standing

Popular Voices:

  1. en-US-AvaMultilingualNeural
  2. en-US-JennyNeural

You can mix and match avatars, styles, and voices to create different presentation experiences.

Step 3: Prepare the Script

The simplest approach is to provide plain text:

Hello! Welcome to our AI platform.
Azure automatically converts the text into speech and animates the avatar.

For advanced scenarios, you can use SSML (Speech Synthesis Markup Language) to control:

  1. Pauses
  2. Speaking rate
  3. Emphasis Pronunciation

For most business applications, plain text is more than sufficient.

Step 4: Submit the Rendering Job

Azure Batch Avatar Synthesis works asynchronously.

When a user clicks Generate AI Video, the application:

  1. Creates a unique job ID.
  2. Sends the text, avatar selection, and voice configuration to Azure.
  3. Azure queues the rendering request.
  4. Azure returns a job status indicating that processing has started.
  5. The rendering happens entirely in Azure while the user continues interacting with the application.

Step 5: Monitor the Job Status
Video generation takes time because Azure needs to synthesize speech, animate the avatar, and render the video.

The frontend periodically checks the job status:

  1. NotStarted – Job is queued
  2. Running – Rendering in progress
  3. Succeeded – Video is ready
  4. Failed – Rendering encountered an issue

Once the status becomes Succeeded, Azure provides a secure URL to the generated MP4 file.

Step 6: View or Download the Video
When rendering is complete:

  1. The video can be played directly in the browser.
  2. Users can download the MP4 for offline use.
  3. The output is a standard H.264 MP4 file compatible with modern browsers and media players.

What We Observed

After testing the solution with multiple scripts, a few observations stood out:

What Works Well

  • Very simple setup
  • High-quality video output
  • Accurate lip synchronization
  • Professional-looking avatars
  • No animation expertise required

Performance

Typical rendering times were:

Rendering time increases as the script becomes longer.

Current Limitations

While the service is impressive, there are some limitations:

  1. Batch processing only (not real-time)
  2. Rendering requires a waiting period
  3. Output is 2D video only
  4. Limited facial-expression customization
  5. Limited background customization
  6. Usage costs increase with volume

For real-time conversations and streaming avatars, Azure provides a separate WebRTC-based solution.

Author Details

Deepti Parachuri

Deepti is a Emerging Tech Leader in the XR space. She possesses extensive experience working with various technologies, including AR, VR, MR, and wearable devices. She has managed diverse XR projects and is a thought leader who effectively applies market trends to project requirements.

Chhayank Sahu

A motivated and forward-thinking Specialist Programmer with a growing focus on AI, conversational systems, and immersive digital experiences. Currently exploring advanced domains such as AI avatars, real-time conversational agents, and generative AI applications. Passionate about building practical, production-ready AI systems, with a strong hands-on interest in AI-driven customer support solutions, real-time virtual avatars using Speech and OpenAI, and digital human interfaces that enable rich, interactive user experiences.

Leave a Comment

Your email address will not be published. Required fields are marked *