https://github.com/yamb0x/audio-capture-n8n
๐ค Transform any browser tab into an intelligent audio recording system with automated transcription and AI analysis via n8n. Works with Zoom, Meet, Teams, YouTube, Spotify, Discord & more!
https://github.com/yamb0x/audio-capture-n8n
ai-analysis audio-capture automation chrome-extension dashboard discord google-meet meeting-notes n8n notion-integration openai spotify teams transcription whisper youtube zoom
Last synced: about 2 months ago
JSON representation
๐ค Transform any browser tab into an intelligent audio recording system with automated transcription and AI analysis via n8n. Works with Zoom, Meet, Teams, YouTube, Spotify, Discord & more!
- Host: GitHub
- URL: https://github.com/yamb0x/audio-capture-n8n
- Owner: yamb0x
- Created: 2025-06-02T11:41:08.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-06-03T19:30:13.000Z (12 months ago)
- Last Synced: 2025-06-28T22:37:13.520Z (11 months ago)
- Topics: ai-analysis, audio-capture, automation, chrome-extension, dashboard, discord, google-meet, meeting-notes, n8n, notion-integration, openai, spotify, teams, transcription, whisper, youtube, zoom
- Language: JavaScript
- Size: 624 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ๐ค Audio Capture for n8n
> **Transform any browser tab into an intelligent audio recording system with automated transcription and AI analysis**
[](chrome://extensions/)
[](https://n8n.io)
[](https://nodejs.org)
[](https://opensource.org/licenses/MIT)
## โจ What This Does
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.
## ๐ Key Features
- ๐ **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
## ๐ฑ Live Dashboard

**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
## ๐ฏ Quick Start
### 1. Install Chrome Extension
```bash
# Clone this repository
git clone https://github.com/yamb0x/audio-capture-n8n.git
cd audio-capture-n8n
# Install dependencies
npm install
```
1. Open Chrome: `chrome://extensions/`
2. Enable "Developer mode"
3. Click "Load unpacked"
4. Select this folder
### 2. Start Dashboard
```bash
# Mac/Linux
./start-dashboard.sh
# Windows
start-dashboard.bat
# Or use npm
npm start
```
### 3. Start Recording
1. Open any website with audio
2. Click the extension icon
3. Click "Start Recording"
4. Monitor at http://localhost:5678
## ๐ง n8n Integration
### Webhook Data Structure
Each audio chunk includes rich metadata:
```json
{
"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"
}
```
### Pre-built n8n Workflow
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 Support
| 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 |
## ๐ ๏ธ Configuration
### Default Webhook URL
```
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
### Environment Variables
```bash
PORT=5678 # Dashboard port
N8N_WEBHOOK_URL=... # Your n8n webhook URL
LOG_LEVEL=info # Logging verbosity
```
## ๐๏ธ Architecture
```
๐ Browser Tab โ ๐งฉ Chrome Extension โ ๐ Dashboard โ ๐ค n8n โ ๐ฃ๏ธ Whisper โ ๐ง GPT-4 โ ๐ Notion
(Audio) (Capture) (Monitor) (Process) (Transcribe) (Analyze) (Store)
```
## ๐ Privacy & Security
- ๐ **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
## ๐จ Dashboard Features
### Real-Time Monitoring
- ๐ข **System Status** - Server health and uptime
- ๐ **Recording Stats** - Sessions, chunks, data volume
- ๐ต **Live Sessions** - Active recordings with progress
- โก **Processing Times** - n8n forwarding performance
### Rich Source Information
- ๐ท๏ธ **Platform Detection** - Automatic source identification
- ๐ **Tab Titles** - Full page context
- ๐ฏ **Recording Types** - Meeting, media, chat categorization
- ๐ **Audio Analytics** - Size, duration, chunk count
### Modern UI Design
- ๐จ **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
## ๐งช Advanced Usage
### Custom Webhook URLs
```javascript
// 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-audio
```
### Arc Browser Support
Special handling for Arc's unique permission model:
- ๐ **Auto-detection** - Recognizes Arc browser
- ๐ **Full-page recorder** - Alternative interface for permissions
- โก **Permission recovery** - Automatic fallback methods
## ๐ฆ File Structure
```
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
```
## ๐ค Contributing
We welcome contributions! Please see our contributing guidelines:
1. ๐ด Fork the repository
2. ๐ Create your feature branch
3. โ
Test thoroughly with the dashboard
4. ๐ Update documentation
5. ๐ Submit a pull request
## ๐ Troubleshooting
### Extension Issues
- **Permission denied**: Check Chrome microphone settings
- **No recordings**: Verify webhook URL in extension popup
- **Arc browser**: Use the full-page recorder interface
### Dashboard Issues
- **Empty dashboard**: Extension using old webhook URL (auto-fixed)
- **Port conflicts**: Dashboard handles port 5678 automatically
- **Missing data**: Check extension console logs
### n8n Integration
- **No events**: Verify webhook URL configuration
- **Processing errors**: Check OpenAI API key and credits
- **Workflow failures**: Review n8n execution logs
## ๐ Changelog
### v1.1.0 (2025-06-03)
- ๐จ **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
### v1.0.0 (Initial Release)
- ๐ค Core audio capture functionality
- ๐ Real-time dashboard
- ๐ค n8n integration
- ๐ Multi-platform support
## ๐ License
MIT License - Feel free to use, modify, and distribute!
## ๐ Star This Repository
If this project helps you automate your audio workflows, please give it a star! โญ
---
**Built with โค๏ธ for seamless meeting transcription and audio analysis**
[](https://github.com/yamb0x/audio-capture-n8n/stargazers)
[](https://github.com/yamb0x/audio-capture-n8n/network/members)
[](https://github.com/yamb0x/audio-capture-n8n/issues)