Was macht ECC?
Video und Audio sehen, verstehen und bearbeiten. Sehen – Aufnahme von lokalen Dateien, URLs, RTSP/Live-Feeds oder Desktop-Bildschirmaufnahme; Rückgabe von Echtzeitkontext und abspielbaren Stream-Links. Verstehen – Frameextraktion, Aufbau visueller/semantischer/temporaler Indizes und Suche nach Momenten mit Zeitstempeln und automatischen Clips. Handeln – Transkodieren und Normalisieren (Codec, FPS, Auflösung, Seitenverhältnis), Durchführen von Timeline-Edits (Untertitel, Text-/Bildeinblendungen, Branding, Audio-Overlays, Synchronisation, Übersetzung), Generieren von Medien-Assets (Bild, Audio, Video).
Voraussetzungen
- Betriebssystem: Linux (bevorzugt Ubuntu 22.04+), macOS (ARM64), Windows (WSL2)
- Python 3.10+
- FFmpeg 6.0+
- ExifTool 12.60+
- CUDA 12.x (optional, für GPU-Beschleunigung)
- KI-Agent: Claude Code, Cursor, Codex oder ein anderer unterstützter CLI-Agent
Installation
- Repository klonen:
git clone https://github.com/affaan-m/ECC.git cd ECC - Abhängigkeiten installieren:
pip install -r requirements.txt - (Optional) Umgebungsvariablen setzen:
ECC_CACHE_DIR=/pfad/zu/cache ECC_GPU_ENABLED=true ECC_LOG_LEVEL=INFO
Verwendung
Aufnahme (See)
python ecc.py see --source /pfad/zu/video.mp4 --output stream.m3u8
python ecc.py see --source rtsp://kamera/stream --realtime
Verstehen (Understand)
python ecc.py understand --source /pfad/zu/video.mp4 --extract-frames --build-index
python ecc.py search --index /pfad/zu/index --query "Person mit rotem Hut" --output clips/
Handeln (Act)
python ecc.py act transcode --source input.mp4 --codec h264 --fps 30 --resolution 1920x1080
python ecc.py act overlay --source input.mp4 --overlay-text "Willkommen" --duration 5 --output branded.mp4
python ecc.py act subtitle --source input.mp4 --subtitle-file untertitel.srt --burn-in --output untertitelt.mp4
Architektur
Das Skill besteht aus drei Hauptmodulen:
| Modul | Funktion |
|---|---|
| Ingestor | Datei-, URL-, RTSP- und Desktop-Aufnahme, Caching |
| Analyzer | Frameextraktion, semantische Indizierung (CLIP, Whisper), temporale Segmentierung |
| Processor | Transkodierung, Timeline-Edits, Media-Asset-Generierung |
Beispiele
1. Live-Stream überwachen und Schlüsselmomente erkennen
python ecc.py see --source rtsp://kamera --realtime --output stream.m3u8 &
python ecc.py understand --source stream.m3u8 --build-index --semantic
2. Videos automatisch transkodieren und mit Untertiteln versehen
python ecc.py act transcode --source rohvideo.mp4 --codec h265 --fps 30
python ecc.py act subtitle --source rohvideo_h265.mp4 --auto-generate --language de --output fertig.mkv
Lizenz
MIT – siehe LICENSE für Details.