All work

Case study 03 / 05

IG-2-Insights

Instagram Reel Transcription

A CLI tool written in Go that transcribes Instagram Reels to text using local Whisper AI. Batch process reels, extract insights, and keep everything private on your machine.

Project
IG-2-Insights
Year
2025
Role
Design & development
Source
GitHub
Stack
Go, CLI, Whisper AI, yt-dlp
ig2insights — zsh
$ig2insights batch reels.txt --model medium --workers 8
whisper.cpp medium ......... cached
downloading 42 reels ........ done 18.2s
transcribing 42/42 .......... done 1m 04s
[ok] wrote transcripts/*.txt *.srt *.json
0 uploads / 0 API calls / everything stayed local
$
Fig. 01IG-2-Insights, 2025

01/Problem

The problem

Content creators and researchers often need to extract text from Instagram Reels for analysis, repurposing, or accessibility. Existing solutions require uploading content to cloud services, raising privacy concerns and adding latency. Manual transcription is tedious and error-prone. I needed a fast, private, and offline-capable solution that could handle batch processing without compromising on accuracy.

  • Privacy Concerns: Cloud-based transcription services require uploading content, exposing potentially sensitive material to third parties.

  • Manual Effort: Transcribing reels by hand is slow, tedious, and prone to errors, especially for non-native speakers.

  • Scale Limitations: Processing large batches of reels for research or content analysis requires automation that most tools lack.

  • Inconsistent Quality: Free online tools often produce poor transcriptions with limited language support and no customization.

02/Approach

Goals and approach

A command-line tool built in Go that runs entirely on your local machine. It uses yt-dlp to download reels and whisper.cpp for AI-powered transcription. Users can process single reels or batch hundreds concurrently. Output formats include plain text, SRT subtitles, and JSON for programmatic use. Smart caching prevents re-downloading and re-transcribing already processed content.

  • Enable fully offline, private transcription using local AI models.

  • Support batch processing with concurrent workers for high throughput.

  • Provide multiple output formats (text, SRT, JSON) for different use cases.

  • Auto-manage dependencies so users can start transcribing immediately.

03/Architecture

How it is built

Built with Go for cross-platform compatibility and fast execution. whisper.cpp provides local AI transcription with multiple model sizes (tiny to large) for accuracy vs. speed tradeoffs. yt-dlp handles reliable downloading from Instagram. The concurrent worker pool allows batch processing of up to 50 reels simultaneously. All dependencies are auto-managed and downloaded on first run.

  • A Go CLI with whisper.cpp for accurate, local AI transcription.

  • Concurrent batch processing with smart caching to avoid redundant work.

  • Interactive menu mode for easy use, plus full CLI flags for automation.

04/Results

What happened

ig2insights enables private, offline transcription of Instagram Reels at scale. Users report significant time savings compared to manual transcription or cloud-based alternatives. The batch processing feature allows researchers to analyze hundreds of reels in minutes. The tool has become essential for content repurposing workflows and social media analysis.

Ninibot

Ask me anything about Nicolas Laforet and his work.