From afb86d5c559413bddf80ff38260d0cf0debb585f Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Thu, 6 Nov 2025 00:43:13 -0600 Subject: feat: Add AssemblyAI transcription backend with speaker diarization MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Integrated AssemblyAI as the third transcription backend alongside OpenAI API and local-whisper, now set as the default due to superior speaker diarization capabilities (up to 50 speakers). New Features: - AssemblyAI backend with automatic speaker labeling - Backend switching UI via C-; T b (completing-read interface) - Universal speech model supporting 99 languages - API key management through auth-source/authinfo.gpg Implementation: - Created scripts/assemblyai-transcribe (upload → poll → format workflow) - Updated transcription-config.el with multi-backend support - Added cj/--get-assemblyai-api-key for secure credential retrieval - Refactored process environment handling from if to pcase - Added cj/transcription-switch-backend interactive command Testing: - Created test-transcription-config--transcription-script-path.el - 5 unit tests covering all 3 backends (100% passing) - Followed quality-engineer.org guidelines (test pure functions only) - Investigated 18 test failures: documented cleanup in todo.org Files Modified: - modules/transcription-config.el - Multi-backend support and UI - scripts/assemblyai-transcribe - NEW: AssemblyAI integration script - tests/test-transcription-config--transcription-script-path.el - NEW - todo.org - Added test cleanup task (Method 3, priority C) - docs/NOTES.org - Comprehensive session notes added Successfully tested with 33KB and 4.1MB audio files (3s and 9s processing). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- init.el | 1 + 1 file changed, 1 insertion(+) (limited to 'init.el') diff --git a/init.el b/init.el index c54f14a6..cc5df3ce 100644 --- a/init.el +++ b/init.el @@ -84,6 +84,7 @@ (require 'pdf-config) ;; pdf display settings (require 'quick-video-capture) ;; download videos with a browser bookmark (require 'video-audio-recording) ;; desktop and/or audio recording via ffmpeg +(require 'transcription-config) ;; audio transcription using Whisper (require 'weather-config) ;; utility to display the weather ;; -------------------------------- Programming -------------------------------- -- cgit v1.2.3