Anchor Open Source · Video Translator

One MP4 in.
Thirty markets out.

The same pipeline Anchor Media ships on every paid ad. The original speaker's voice cloned for every language. Captions burned in where you placed them. No dead air, no rebuilds.

32

Languages

~6 min

Per cut

5

Setup steps

0

Editing hours

01 · How it works

Drop a clip, pick markets, walk away.

Phase · 01

Upload the source

Drag an MP4 onto the studio. Any aspect ratio, any duration up to ~5 minutes works comfortably.

Phase · 02

Pick the markets

32 languages preloaded. EU-7 preset in one click, or hand-pick. Optional script if you've already translated.

Phase · 03

Place the caption

Drag, resize, rotate. The preview is WYSIWYG — what you see is exactly what gets burned in.

Phase · 04

Hit Translate

Three jobs run in parallel. ElevenLabs clones the voice. Gemini handles translation. ffmpeg fits everything together.

Phase · 05

Download the cuts

Each language drops into a delivery grid with a preview + download link. Ready to upload anywhere.

Built for ads

Cut-respecting tempo

When the dub runs long, audio speeds up to +20% first. When it runs short, the video compresses. Never silence-padded.

02 · Setup

Five steps.
Claude Code does the typing.

You don't need to know any code. You'll install Claude Code (free), give it a prompt, paste two API keys when it asks, and the studio will open in your browser.

⏱ ~15 minutes total 💳 ElevenLabs Creator plan $22/mo 💳 KIE.ai $5 top-up

Step 01

Install Claude Code

Claude Code is the AI assistant that will set everything up for you. Free to install. Open Terminal on your Mac (search Spotlight: + Space, type "Terminal"), then paste the command below.

Terminal
$curl -fsSL https://claude.ai/install.sh | bash
↳ installs the `claude` command on your machine

If you already have Claude Code installed, skip to Step 02.

Step 02

Download the project

Still in the same Terminal window. This pulls the latest code and steps inside the project folder in one go.

Terminal
$git clone https://github.com/XYconst/anchor-video-translator.git
$cd anchor-video-translator

Copy with the button on the top right, paste in Terminal, press Enter.

Step 03

Launch Claude Code

Type one word, hit enter. Claude wakes up inside the project folder.

Terminal · anchor-video-translator
$claude
 
Welcome to Claude Code
/help for help, /status for your current setup
cwd: ~/anchor-video-translator
 
>type your prompt here ↓

Step 04

Paste this prompt into Claude

Copy the box below, paste it into Claude Code, hit Enter. Claude takes over from here.

Prompt for Claude Code

Set up the Anchor Video Translator from this repo. Read the README first. Then walk me step-by-step through getting an ElevenLabs API key and a KIE.ai API key. When I paste each key, write it into a .env file at the project root using the .env.example as a template. Run ./setup.sh to install the backend dependencies. Run ./start.sh to boot both the backend (port 8000) and frontend (port 3000). When both are running, open http://localhost:3000 in my browser and tell me what to drag in first.

Claude will

Read the project, then ask you for the keys.

You will

Paste keys (Step 05 below) when Claude asks.

Result

Browser opens at localhost:3000 ready to use.

Step 05

Get the two API keys when Claude asks

These two services do the heavy lifting. Open each in a new tab, follow the numbered steps, copy the key, paste it back in Claude when prompted.

Key 1

ElevenLabs

Clones the speaker's voice into each language.

$22/mo
  1. 01Open elevenlabs.io/sign-up and create an account.
  2. 02Subscribe to the Creator plan ($22/mo). Free tier won't work — no voice cloning.
  3. 03Open Settings → API Keys and click Create API Key.
  4. 04Copy the value (starts with sk_…). Paste back in Claude.
Open ElevenLabs ↗

Key 2

KIE.ai

Cheap Gemini-3-Flash proxy. Transcription + translation.

$5 top-up
  1. 01Open kie.ai and sign up with email or Google.
  2. 02Top up $5 on the billing page. Each call is sub-cent; that lasts hundreds of clips.
  3. 03Open the dashboard, hit API Keys in the sidebar, click Create.
  4. 04Copy the resulting key. Paste back in Claude when it asks.
Open KIE.ai ↗

Done

You're in. What you'll see.

Claude will open this in your browser when both servers are running:

http://localhost:3000

Video Translator · Studio

Re-voice & caption video per market

Drop your MP4 here, or click to browse

Languages

Bulgarian
German
Spanish
+29 more

Drag any MP4 into the dropzone, hand-pick the markets, place the caption, click Translate. Three jobs run in parallel by default.

03 · When something goes sideways

Tell Claude.
It will fix it.

Claude Code is still attached to your terminal. If something errors, copy the message and paste it into Claude. It will read the logs, find the issue, and apply the fix. Examples of things it handles automatically:

"python3: command not found"

Tell Claude: "Install Python 3.12 with Homebrew and rerun setup." It will install Homebrew if missing, then install Python, then rerun ./setup.sh.

"ffmpeg not found" during a translation

Tell Claude: "Install ffmpeg with Homebrew, then restart the backend." Should take 30 seconds.

Frontend loads but says "Could not reach the API"

The backend stopped. Tell Claude: "Restart the backend on port 8000." It will check the logs and bring it back.

"The read operation timed out"

KIE was slow. The pipeline already auto-retries 6 times. If it still fails, your KIE balance might be empty — log into kie.ai and top up another $5.

Laptop fan screams / runs out of memory

Tell Claude: "Lower MAX_CONCURRENT_JOBS to 1 in .env and restart the backend." Default is 3, which assumes 16 GB+ RAM. With 8 GB run 1 at a time.

Anything else

Paste the error into Claude verbatim. It can read every file in the project and the running logs. It will tell you what's wrong and fix it without you typing commands manually.