Skip to main content

Video analysis lens for the modular assessment platform - extracts frames, transcripts, and quality metrics

Project description

DeepBrief

PyPI version Python 3.11+ License: MIT

A video analysis application that helps students, educators, and professionals analyze presentations by combining speech transcription, visual analysis, and AI-powered feedback.

Status: Phase 1 MVP in development. Core infrastructure complete, video processing pipeline in progress.

Features

  • Video Processing: Support for MP4, MOV, AVI, and WebM formats
  • Speech Analysis: Automatic transcription with speaking rate and filler word detection
  • Visual Analysis: Scene detection with frame captioning and quality assessment
  • AI Feedback: Actionable insights and recommendations for improvement
  • Professional Reports: Interactive HTML and structured JSON outputs

Installation

Prerequisites

  • Python 3.11 or higher
  • ffmpeg (for video processing)

Option 1: Install from PyPI (recommended for users)

pip install deep-brief

Option 2: Install from source (for development)

# Install uv (fast Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Clone the repository
git clone https://github.com/michael-borck/deep-brief.git
cd deep-brief

# Create virtual environment and install
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -e ".[dev]"

Installing ffmpeg

macOS:

brew install ffmpeg

Ubuntu/Debian:

sudo apt update && sudo apt install ffmpeg

Windows: Download from https://ffmpeg.org/download.html

Quick Start

# Show available commands
deep-brief --help

# Check version
deep-brief version

# Launch web interface (coming soon)
deep-brief analyze

# Analyze a specific video (CLI mode - coming soon)
deep-brief analyze video.mp4 --output ./reports

Current Status: The CLI framework is complete. Video processing features are in active development.

Development

This project uses modern Python tooling and follows strict quality standards:

  • uv for fast package management
  • ruff for formatting and linting
  • basedpyright for strict type checking
  • pytest for testing with coverage
  • pyproject.toml for all configuration (no setup.py)

Development Setup

# Clone and setup
git clone https://github.com/michael-borck/deep-brief.git
cd deep-brief
uv venv && source .venv/bin/activate
uv pip install -e ".[dev]"

# Verify setup
deep-brief --help
pytest -v

Code Quality Standards

# Format code
ruff format .

# Lint code  
ruff check .

# Type checking (strict mode)
basedpyright

# Run tests with coverage
pytest -v

# Run all quality checks
ruff format . && ruff check . && basedpyright && pytest -v

Project Structure

src/deep_brief/          # Main package
├── core/                # Video processing pipeline
├── analysis/            # Speech and visual analysis  
├── reports/             # Report generation
├── interface/           # Gradio web interface
└── utils/               # Configuration and utilities

tests/                   # Test suite (mirrors src structure)
docs/                    # Documentation and specs
tasks/                   # Development task tracking
config/                  # Configuration files

Current Development Phase

  • Phase 0: Project setup, packaging, PyPI publication
  • 🚧 Phase 1: Core video processing pipeline (in progress)
  • 📋 Phase 2: Enhanced analysis features
  • 📋 Phase 3: Advanced AI features

See tasks/tasks-prd-phase1-mvp.md for detailed task tracking.

Links

License

MIT License - see LICENSE file for details.

Contributing

Contributions are welcome! Please read the development guidelines in CLAUDE.md for our coding standards and toolchain requirements.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

video_lens-0.5.16.tar.gz (224.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

video_lens-0.5.16-py3-none-any.whl (152.6 kB view details)

Uploaded Python 3

File details

Details for the file video_lens-0.5.16.tar.gz.

File metadata

  • Download URL: video_lens-0.5.16.tar.gz
  • Upload date:
  • Size: 224.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for video_lens-0.5.16.tar.gz
Algorithm Hash digest
SHA256 c842504859d99630563a30e79818d08c9e2857718dd5dc65074a5ba0faa362e7
MD5 3f82f9106c127d47b95dd05e73843b76
BLAKE2b-256 ed6122cf9c82857a894ed5cad5c87de18f0db374b0ede41a8d14216c6b7b4521

See more details on using hashes here.

File details

Details for the file video_lens-0.5.16-py3-none-any.whl.

File metadata

  • Download URL: video_lens-0.5.16-py3-none-any.whl
  • Upload date:
  • Size: 152.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for video_lens-0.5.16-py3-none-any.whl
Algorithm Hash digest
SHA256 f1ba1c909a9cdabb5bc77b443b0bd7f1b6dd6d037327fdc1b5f59f021f18ef2c
MD5 42b2a8c74a7b2d80aea267b6dcba4f1f
BLAKE2b-256 c4651cf0e5d504b558ed5946fb2fe0291403e81b9b9cef333241b95581822988

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page