Skip to main content

Transcribe social media videos locally. No cloud, no APIs, unlimited use.

Project description

██╗   ██╗ ██████╗ ██╗  ██╗██╗
██║   ██║██╔═══██╗╚██╗██╔╝██║
██║   ██║██║   ██║ ╚███╔╝ ██║
╚██╗ ██╔╝██║   ██║ ██╔██╗ ██║
 ╚████╔╝ ╚██████╔╝██╔╝ ██╗██║
    ╚═══╝   ╚═════╝ ╚═╝  ╚═╝╚═╝                
  

Voxi

Transcribe social media videos locally

No cloud. No paid APIs. Unlimited use. 🤯

MIT License Python 3.8+ PRs Welcome MCP Ready Buy Me a Coffee


🚀 What is Voxi?

A terminal tool that downloads and transcribes any social media video into clean text with timestamps.

Paste an Instagram Reel, YouTube video, TikTok, Twitter/X clip, or Facebook video — get back a full transcript. All on your machine. Forever free.

Pipeline:

YouTube/Instagram/TikTok/Twitter/X/Facebook ──► yt-dlp ──► ffmpeg ──► Whisper ──► JSON + Text

⚡ Quick Start

Option A — Clone & run (30 seconds)

git clone https://github.com/royalashu4u/voxi.git
cd voxi
pip install -e .
voxi "https://www.instagram.com/reel/..."

Option B — One-click setup (auto)

git clone https://github.com/royalashu4u/voxi.git
cd voxi
bash scripts/setup.sh        # Linux / macOS
powershell -File scripts/setup.ps1    # Windows

Option C — pip install (from anywhere)

pip install voxi
voxi "https://www.youtube.com/watch?v=..."

🎮 Usage

Interactive mode

voxi
# Paste a URL at the prompt — or type / to see command suggestions
# Try /help, /lang hi, /history, /config

Direct mode

voxi "https://www.instagram.com/voxi/..."

🤖 MCP Integration — Use Voxi inside Claude, Cursor, Windsurf

Voxi can run as an MCP server, letting AI assistants transcribe videos on your behalf. You say "transcribe this reel" — the AI calls Voxi locally, gets the text, and replies.

Step 1 — Install MCP support (Python 3.10+ required):

pip install voxi[mcp]

Step 2 — Add to your Claude Desktop config (~/.config/claude/claude_desktop_config.json on Linux/macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):

{
  "mcpServers": {
    "voxi": {
      "command": "python",
      "args": ["-m", "voxi_transcriber.mcp_server"]
    }
  }
}

Step 3 — Restart Claude Desktop. Done! 🎉

Two tools are exposed to the AI:

Tool Returns
transcribe_video(url) Full plain-text transcript
transcribe_video_with_timestamps(url) [MM:SS → MM:SS] text per segment

Works with Claude Desktop, Cursor, Windsurf, Zed, and any MCP-compatible client.


💸 vs Cloud APIs

Feature Voxi AssemblyAI Rev.ai Whisper API
Cost $0 $0.015/min $0.25/min $0.006/min
Unlimited
Offline
Privacy
MCP support
Instagram

🛠 Commands

Command What it does
Paste a URL Transcribe the video
/help Show commands
/lang [code] Set language
/history View transcripts
/config Show settings
/cache View/clear cache
/clear Clear screen
/exit Quit

⚙️ Configuration

Edit voxi_transcriber/config.py:

Setting Default Options Description
MODEL_SIZE base tiny, base, small, medium, large-v3 Model size
DEVICE auto auto, cuda, cpu Compute device
COMPUTE_TYPE int8 int8, float16, float32 Precision
LANGUAGE auto auto, en, hi, es, ... Language
USE_COOKIES True True, False Instagram cookies
USE_CACHE True True, False Enable caching

🌐 Platform Support

Platform Works out of the box Needs cookies
YouTube
TikTok
Twitter / X
Facebook Sometimes
Instagram Always

❓ FAQ

Missing dependencies: faster-whisper
pip install faster-whisper
"Instagram blocked the request"
yt-dlp --cookies-from-browser firefox --cookies cookies.txt "https://www.instagram.com/"
Missing ffmpeg
sudo apt install ffmpeg  # Ubuntu/Debian
brew install ffmpeg      # macOS

📁 Folder Structure

voxi/
├── voxi_transcriber/         # Python package
│   ├── __init__.py
│   ├── __main__.py
│   ├── app.py                # ← Textual TUI (main entry point)
│   ├── cli.py                # Rich REPL (legacy)
│   ├── config.py             # All settings
│   ├── mcp_server.py         # MCP server for AI agents
│   ├── transcribe.py         # Core pipeline
│   ├── utils.py              # Cache, download, formatting
│   └── ui/
│       ├── header.py
│       ├── history_viewer.py
│       └── transcript_viewer.py
├── scripts/
│   ├── setup.sh              # Linux / macOS auto-setup
│   └── setup.ps1             # Windows auto-setup
├── outputs/                  # Saved transcripts (auto-created)
├── .cache/                   # Cache directory (auto-created)
├── cookies.txt               # Instagram auth (you generate this)
├── pyproject.toml
├── README.md
└── AGENTS.md

🤝 Contributing

Contributions welcome!

  1. Fork the repo
  2. Create your feature branch
  3. Commit your changes
  4. Push to the branch
  5. Open a Pull Request

📜 License

MIT © 2026 royalashu4u


⭐ Star this repo if you find it useful! ⭐

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

voxi-1.1.0.tar.gz (22.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

voxi-1.1.0-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

Details for the file voxi-1.1.0.tar.gz.

File metadata

  • Download URL: voxi-1.1.0.tar.gz
  • Upload date:
  • Size: 22.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for voxi-1.1.0.tar.gz
Algorithm Hash digest
SHA256 f6884b69de79b47cb366310dbcf471de057a1a4c88affe091effbf4a3bc857e7
MD5 982aa2e9c458d84c46dd99c556e43514
BLAKE2b-256 c4d14908683814c3fbc616db40b13bfa4381a0b2b03883dbaeafeb061d8310e1

See more details on using hashes here.

File details

Details for the file voxi-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: voxi-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 30.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for voxi-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1418f07a88b25252c92f17f8d3da9c202e3dd2d646c1e63b3e67a4194d891980
MD5 06662713b3899e0014bb0a81263060e6
BLAKE2b-256 2a1ec73a83158bfbfe66a9940014f73fb8ad347fbb3d60bbecfa247486a1a1c0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page