Observed since 21 Oct, 09:54 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Multi-agent AI system for video transcription using OpenAI Whisper, ChromaDB, and AutoGen
Multi-agent AI system for video transcription using OpenAI Whisper, ChromaDB, and AutoGen
Transform your videos into accurate transcriptions with an intelligent multi-agent system that combines the power of OpenAI Whisper, persistent memory with ChromaDB, and advanced agent coordination.
# Install from PyPI
pip install ai-agent-video-transcription
# Or install from source
git clone https://github.com/lopand-solutions/video-transcription-agent.git
cd video-transcription-agent
pip install -e .
# Install FFmpeg
# macOS
brew install ffmpeg
# Ubuntu/Debian
sudo apt update && sudo apt install ffmpeg
# Windows (using Chocolatey)
choco install ffmpeg
# Start the interactive CLI
vt-cli
# Or use the full command
video-transcription-agent
Available Commands:
🚀 Main Commands:
• discovery - Find videos in current directory
• select <ID> - Select a video from discovery results
• transcribe - Transcribe video file (always in Spanish)
• analyze - Analyze video metadata
• search - Search in saved transcriptions
• history - Show transcription history
• status - Show system status
• help - Show all commands
• exit - Exit the program
# Transcribe a video file
vt-cli transcribe path/to/video.mp4
# Analyze video metadata
vt-cli analyze path/to/video.mp4
# Search in transcriptions
vt-cli search "artificial intelligence"
# Show system status
vt-cli status
import asyncio
from ai_agent_video_transcription import CoordinatorAgent
async def transcribe_video():
# Configuration
config = {
'transcriber': {
'model_size': 'base', # tiny, base, small, medium, large
'language': 'es' # Force Spanish transcription
},
'formatter': {
'output_directory': './output'
},
'output_formats': ['txt', 'srt']
}
# Create coordinator
coordinator = CoordinatorAgent(config)
# Execute transcription
result = await coordinator.execute({
'video_path': 'path/to/video.mp4',
'output_name': 'my_transcription'
})
return result
# Run transcription
result = asyncio.run(transcribe_video())
print(f"Transcription completed: {result['final_outputs']}")
# Optional: Set OpenAI API key for advanced features
export OPENAI_API_KEY="your_api_key_here"
# Optional: Custom ChromaDB directory
export CHROMADB_PERSIST_DIRECTORY="./my_chroma_db"
Create a config.yaml file for advanced configuration:
transcriber:
model_size: "base" # tiny, base, small, medium, large, large-v2, large-v3
language: "es" # Force Spanish, or null for auto-detection
temperature: 0.0
formatter:
output_directory: "./output"
supported_formats: ["txt", "srt", "vtt", "json"]
memory:
persist_sessions: true
session_timeout_minutes: 60
| Model | Size | Speed | Accuracy | Use Case |
|---|---|---|---|---|
| tiny | 39M | Fastest | Basic | Quick testing |
| base | 74M | Fast | Good | Recommended |
| small | 244M | Medium | Better | Balanced |
| medium | 769M | Slow | High | Quality focus |
| large | 1550M | Slowest | Highest | Best quality |
Video Transcription Agent
├── 🤖 Multi-Agent System
│ ├── Coordinator Agent (orchestrates workflow)
│ ├── Analyzer Agent (video metadata extraction)
│ ├── Transcriber Agent (Whisper-based transcription)
│ ├── Processor Agent (text enhancement)
│ └── Formatter Agent (output generation)
├── 🧠 Memory System (ChromaDB)
│ ├── Persistent storage
│ ├── Semantic search
│ └── Session management
└── 💬 CLI Interface
├── Interactive commands
├── Progress indicators
└── Error handling
# Process multiple videos
videos = ['video1.mp4', 'video2.mp4', 'video3.mp4']
results = await coordinator.execute_batch(videos, 'batch_output')
# Search in stored transcriptions
memory = MemoryManager()
results = memory.search_transcriptions("machine learning", limit=10)
# Analyze video quality before transcription
analyzer = AnalyzerAgent()
metadata = await analyzer.execute({'video_path': 'video.mp4'})
print(f"Quality Score: {metadata['quality_score']}")
FFmpeg not found:
# Verify installation
ffmpeg -version
# Install if missing
brew install ffmpeg # macOS
sudo apt install ffmpeg # Ubuntu
Memory issues with large models:
tiny, base, smallTranscription in wrong language:
language: "es" in configWe welcome contributions! Please see our Contributing Guide for details.
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)This project is licensed under the MIT License - see the LICENSE file for details.
🎬 Transform your videos into accurate transcriptions with AI! 🚀
Made with ❤️ by Lopand Solutions
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.1.3 | 21 Sept 2025 | 26 |
This describes our collected data; it is not a security assessment.
Shared repository data · GitHub
Observed since 21 Oct, 09:54 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:814ff06fb74e402f28524f1f891c413b1bab17b5b0b22175346799390803b855