Home

Awesome

gTech Ads Ariel for AI Video Ad Dubbing

Ariel is an open-source Python library that facilitates efficient and cost-effective dubbing of video ads into multiple languages.

python PyPI GitHub last commit Code Style: Google Open in Colab

<div align="center"> <img src="ariel_logo.png" alt="Ariel Logo" width="300"> </div>
This is not an official Google product.

OverviewFeaturesBenefitsLanguage CompatibilityBefore You BeginGetting StartedBuilding BlocksReferences

Overview

Ariel is a cutting-edge solution designed to enhance the global reach of digital advertising. It enables advertisers to automate the translation and dubbing of their video ads into a wide range of languages.

Features

Benefits

Language Compatibility

You can dub video ads from and to many languages.

<details> <summary>Expand to see the full list of supported languages.</summary> </details>

Before You Begin

Getting started

To start using Ariel, just click on the this button: Open in Colab

Building Blocks

Ariel leverages a powerful combination of state-of-the-art AI and audio processing techniques to deliver accurate and efficient dubbing results:

  1. Video Processing: Extracts the audio track from the input video file.
  2. Audio Processing:
    • DEMUCS: Employed for advanced audio source separation.
    • pyannote: Performs speaker diarization to identify and separate individual speakers.
  3. Speech-To-Text (STT):
    • faster-whisper: A high-performance speech-to-text model.
    • Gemini 1.5 Flash: A powerful multimodal language model that contributes to enhanced transcription.
  4. Translation:
    • Gemini 1.5 Flash: Leverages its language understanding for accurate and contextually relevant translation.
  5. Text-to-Speech (TTS):
    • GCP's Text-To-Speech: Generates natural-sounding speech in the target language.
    • [OPTIONAL] ElevenLabs: An alternative API to generate speech. It's recommened for the best results. WARNING: ElevenLabs is a paid solution and will generate extra costs. See the pricing here.

🆕 Ariel User Interface

For a more user-friendly experience, we're also providing an Ariel version that can be deployed onto Google Cloud Platform with a GUI.

<img src="./ui/src/ui/public/assets/ariel_ui.png" alt="Ariel UI screenshot">

Requirements

In order to use Ariel UI, you need the following:

  1. Google Cloud Platform Project to host the backend. The following components are created during deployment:
    • Cloud Storage Bucket to store input & output videos, video dubbing artifacts and all other metadata files. This bucket is also used as an interaction point with GUI (files created/removed there are triggering the backend processing).
    • Cloud Run instance that processes all the steps. This part is implemented as a Python Docker container (which is also built during installation).
    • Pub/Sub Infrastructure based on EventArc, it notifies the container of new files.
  2. AppsScript Project to host the frontend, an Angular web-app. For this, you need Google Workspace access.

Deployment

Please make sure you have fulfilled all prerequisites mentioned under Requirements first.

  1. Make sure your system has an up-to-date installation of Node.js and npm.
  2. Install clasp by running npm install @google/clasp -g, then login via clasp login.
  3. Navigate to the Apps Script Settings page and enable the Apps Script API.
  4. Make sure your system has an up-to-date installation of the gcloud CLI, then login via gcloud auth login.
  5. Make sure your system has an up-to-date installation of git and use it to clone this repository: git clone https://github.com/google-marketing-solutions/ariel.
  6. Navigate to the directory where the source code lives: cd ariel.
  7. Run npm start. This will prompt you for configuration values and suggest reasonable defaults.

References