Transform any browser tab into an intelligent audio recording system with automated transcription and AI analysis
Capture audio from any browser tab (Zoom calls, YouTube videos, Spotify, Discord) and automatically send it to n8n for intelligent processing with OpenAI Whisper transcription, GPT-4 analysis, and Notion integration.
๐ฏ Perfect for: Meeting notes, content analysis, lecture transcription, podcast processing, and any audio-to-text workflow.
- ๐ Universal Audio Capture - Works with any website (Zoom, Meet, Teams, YouTube, Spotify, Discord)
- ๐ค Smart Chunking - Automatically splits audio into 30-second chunks for optimal processing
- ๐ Real-time Dashboard - Monitor recordings with rich metadata and source detection
- ๐ n8n Integration - Pre-built workflow for transcription and AI analysis
- ๐ฏ Source Intelligence - Detects platform and adds contextual metadata
- ๐ Arc Browser Support - Special handling for Arc's permission model
- โก Zero Configuration - Works out of the box with sensible defaults
Features:
- ๐ Source Detection: Google Meet, Zoom, Teams, YouTube, Spotify, Discord
- ๐ Real-time Monitoring: Active sessions, chunk processing, forwarding status
- ๐ต Rich Metadata: Tab titles, recording types, audio sizes, processing times
- โก๏ธ n8n Forwarding: Automatic forwarding with status indicators
# Clone this repository
git clone https://github.com/yamb0x/audio-capture-n8n.git
cd audio-capture-n8n
# Install dependencies
npm install- Open Chrome:
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked"
- Select this folder
# Mac/Linux
./start-dashboard.sh
# Windows
start-dashboard.bat
# Or use npm
npm start- Open any website with audio
- Click the extension icon
- Click "Start Recording"
- Monitor at http://localhost:5678
Each audio chunk includes rich metadata:
{
"audio": "base64-encoded-webm-data",
"timestamp": "2025-06-02T12:30:45.123Z",
"duration": 30,
"format": "webm",
"recordingSessionId": "session_1733067015123_x3k9m2n1p",
"meetingId": "team-standup-zoom",
"meetingUrl": "https://zoom.us/j/123456789",
"chunkIndex": 0,
"isFirstChunk": true,
"isLastChunk": false,
"source": "zoom",
"recordingType": "meeting-audio",
"title": "Team Weekly Standup"
}Import n8n-enhanced-workflow.json for complete automation:
- ๐ฏ Session Aggregation - Waits for complete recordings
- ๐ฃ๏ธ OpenAI Whisper - High-quality transcription
- ๐ง GPT-4 Analysis - Extract insights, action items, summaries
- ๐ Notion Integration - Create structured meeting notes
- ๐ท๏ธ Smart Tagging - Automatic categorization and metadata
| Platform | Emoji | Recording Type | Special Features |
|---|---|---|---|
| Google Meet | ๐ | meeting-audio |
Meeting ID extraction |
| Zoom | ๐ฆ | meeting-audio |
Session detection |
| Microsoft Teams | ๐ฌ | meeting-audio |
Team context |
| YouTube | ๐บ | media-playback |
Video metadata |
| Spotify | ๐ต | media-playback |
Track information |
| Discord | ๐ฎ | chat-audio |
Channel context |
| Any Website | ๐ | general-audio |
Universal capture |
http://localhost:5678/webhook/meeting-audio?forward=true
What this does:
- โ Records in dashboard for monitoring
- โ Forwards to n8n for processing
- โ Best of both worlds
PORT=5678 # Dashboard port
N8N_WEBHOOK_URL=... # Your n8n webhook URL
LOG_LEVEL=info # Logging verbosity๐ Browser Tab โ ๐งฉ Chrome Extension โ ๐ Dashboard โ ๐ค n8n โ ๐ฃ๏ธ Whisper โ ๐ง GPT-4 โ ๐ Notion
(Audio) (Capture) (Monitor) (Process) (Transcribe) (Analyze) (Store)
- ๐ Local Processing - Audio processed locally when possible
- ๐ซ No Cloud Storage - Audio chunks are temporary
- ๐ Minimal Permissions - Only required Chrome APIs
- ๐ Secure Transfer - HTTPS recommended for production
- ๐๏ธ Auto-cleanup - Temporary files deleted after processing
- ๐ข System Status - Server health and uptime
- ๐ Recording Stats - Sessions, chunks, data volume
- ๐ต Live Sessions - Active recordings with progress
- โก Processing Times - n8n forwarding performance
- ๐ท๏ธ Platform Detection - Automatic source identification
- ๐ Tab Titles - Full page context
- ๐ฏ Recording Types - Meeting, media, chat categorization
- ๐ Audio Analytics - Size, duration, chunk count
- ๐จ Monospace Aesthetic - Clean, minimal interface with Basis Grotesque and Kalice fonts
- โซ Black & White Theme - Professional, distraction-free design
- ๐ฒ Sharp Borders - Precise, geometric interface elements
- ๐ซ No Emojis in UI - Clean icons using CSS shapes instead
// Dashboard only (no forwarding)
http://localhost:5678/webhook/meeting-audio
// Dashboard + custom n8n forwarding
http://localhost:5678/webhook/meeting-audio?forward=true
// Direct to your n8n instance
https://your-n8n-instance.com/webhook/meeting-audioSpecial handling for Arc's unique permission model:
- ๐ Auto-detection - Recognizes Arc browser
- ๐ Full-page recorder - Alternative interface for permissions
- โก Permission recovery - Automatic fallback methods
audio-capture-n8n/
โโโ ๐งฉ Extension Core
โ โโโ manifest.json # Chrome Extension Manifest V3
โ โโโ popup.html/js # Main extension interface
โ โโโ background.js # Service worker
โ โโโ content.js # Page integration
โ โโโ recording-page.html # Arc browser support
โโโ ๐ Dashboard & Monitoring
โ โโโ dashboard-server.js # Real-time monitoring
โ โโโ launcher.js # Application launcher
โ โโโ start-dashboard.* # Cross-platform scripts
โโโ ๐ค n8n Integration
โ โโโ n8n-enhanced-workflow.json # Complete automation workflow
โโโ ๐ง Audio Processing
โ โโโ audio-processor.js # Modern AudioWorklet implementation
โโโ ๐ Documentation
โโโ README.md # This file
We welcome contributions! Please see our contributing guidelines:
- ๐ด Fork the repository
- ๐ Create your feature branch
- โ Test thoroughly with the dashboard
- ๐ Update documentation
- ๐ Submit a pull request
- Permission denied: Check Chrome microphone settings
- No recordings: Verify webhook URL in extension popup
- Arc browser: Use the full-page recorder interface
- Empty dashboard: Extension using old webhook URL (auto-fixed)
- Port conflicts: Dashboard handles port 5678 automatically
- Missing data: Check extension console logs
- No events: Verify webhook URL configuration
- Processing errors: Check OpenAI API key and credits
- Workflow failures: Review n8n execution logs
- ๐จ New UI Design - Complete interface redesign with monospace aesthetic
- ๐ค Custom Fonts - Added Basis Grotesque and Kalice font families
- ๐ง UTF-8 Fix - Fixed character encoding issues across all interfaces
- ๐ฏ Improved Icons - Replaced emojis with clean CSS-based icons
- ๐ฑ Better Popup - Enhanced popup design with consistent styling
- ๐ค Core audio capture functionality
- ๐ Real-time dashboard
- ๐ค n8n integration
- ๐ Multi-platform support
MIT License - Feel free to use, modify, and distribute!
If this project helps you automate your audio workflows, please give it a star! โญ
Built with โค๏ธ for seamless meeting transcription and audio analysis