How aksh-it-code/video-agent works
Video-Agent turns a YouTube URL or local media file into meeting audio chunks, transcribes them, and produces a title, summary, action items, decisions, and open questions. Users can then ask transcript-grounded questions through a retrieval-augmented chat. The Streamlit interface and CLI both orchestrate this workflow. The sampled source confirms the processing and retrieval calls; README provides no further capability detail, and unsampled portions may contain additional UI behavior.
Main entry points: app.py Streamlit app · main.py CLI pipeline · audio_processor.py Audio preparation · transcriber.py Transcription
Components 15
User interfaces
- Streamlit app
app.py - CLI pipeline
main.py
Media transcription
- Audio preparation
utils/audio_processor.py - Transcription
core/transcriber.py
Meeting analysis
- Title and summary
core/summarize.py - Meeting extraction
core/extractor.py
Transcript chat
- RAG question answering
core/rag_engine.py - Transcript retrieval
core/vector_store.py - Chroma store
core/vector_store.py
Other components
- User
- YouTube
- FFmpeg tools
- Whisper
- Sarvam speech API
- Mistral model
Connections 22
- User → Streamlit app: submits media, asks
- User → CLI pipeline: provides media, asks
- Streamlit app → Audio preparation: processes input
- CLI pipeline → Audio preparation: processes input
- Audio preparation → YouTube: downloads audio
- Audio preparation → FFmpeg tools: converts, chunks
- Audio preparation → Transcription: passes chunks
- Streamlit app → Transcription: transcribes chunks
- CLI pipeline → Transcription: transcribes chunks
- Transcription → Whisper: transcribes locally
- Transcription → Sarvam speech API: sends Hinglish audio
- Streamlit app → Title and summary: generates title, summary
- CLI pipeline → Title and summary: generates title, summary
- Title and summary → Mistral model: invokes model
- Streamlit app → Meeting extraction: extracts meeting items
- CLI pipeline → Meeting extraction: extracts meeting items
- Meeting extraction → Mistral model: invokes model
- Streamlit app → RAG question answering: builds chain, asks
- CLI pipeline → RAG question answering: builds chain, asks
- RAG question answering → Transcript retrieval: builds or loads retrieval
- Transcript retrieval → Chroma store: stores, retrieves chunks
- RAG question answering → Mistral model: invokes model