Metadata-Version: 2.4
Name: praisonai-editor
Version: 0.1.6
Summary: Protocol-driven audio & video editor for PraisonAI — transcribe, clean, and edit media with AI
Project-URL: Homepage, https://docs.praison.ai
Project-URL: Repository, https://github.com/MervinPraison/praisonai-editor
Project-URL: Documentation, https://docs.praison.ai/editor
Author: Mervin Praison
License: MIT
Keywords: ai,audio,editor,praisonai,transcribe,video,whisper
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Multimedia :: Sound/Audio
Classifier: Topic :: Multimedia :: Video
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Requires-Dist: librosa>=0.10.0
Requires-Dist: openai>=2.0.0
Requires-Dist: praisonaiagents>=0.0.1
Provides-Extra: all
Requires-Dist: demucs>=4.0.0; extra == 'all'
Requires-Dist: faster-whisper>=1.0.0; extra == 'all'
Requires-Dist: praisonai-tools>=0.1.0; extra == 'all'
Provides-Extra: demix
Requires-Dist: demucs>=4.0.0; extra == 'demix'
Provides-Extra: detect
Requires-Dist: inaspeechsegmenter>=0.7.0; extra == 'detect'
Provides-Extra: dev
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Provides-Extra: local
Requires-Dist: faster-whisper>=1.0.0; extra == 'local'
Provides-Extra: tools
Requires-Dist: praisonai-tools>=0.1.0; extra == 'tools'
Description-Content-Type: text/markdown

# PraisonAI Editor

AI-powered audio & video editor for [PraisonAI](https://docs.praison.ai). Protocol-driven, modular, and ready for agent integration.

## Install

```bash
pip install praisonai-editor
```

With local Whisper support:
```bash
pip install "praisonai-editor[local]"
```

With PraisonAI Agent integration:
```bash
pip install "praisonai-editor[agent]"
```

## Quick Start

### CLI

```bash
# Edit audio (transcribe → detect fillers/silence → render)
praisonai-editor edit podcast.mp3 --preset podcast --verbose

# Edit video
praisonai-editor edit interview.mp4 --output edited.mp4

# AI-guided editing with prompt
praisonai-editor edit podcast.mp3 --prompt "Remove intro and off-topic weather discussion"

# Transcribe
praisonai-editor transcribe audio.mp3 --format srt

# Convert MP4 → MP3
praisonai-editor convert video.mp4 --format mp3

# Probe file metadata
praisonai-editor probe media.mp4
```

### Python API

```python
from praisonai_editor import edit_media, transcribe_audio, convert_media

# Edit any media
result = edit_media("podcast.mp3", preset="podcast")

# Transcribe
transcript = transcribe_audio("audio.mp3")
print(transcript.to_srt())

# Convert
convert_media("video.mp4", "audio.mp3")
```

### PraisonAI Agent

```python
from praisonaiagents import Agent
from praisonai_editor.agent_tool import audio_editor_tool

agent = Agent(
    instructions="You are an audio editor.",
    tools=[audio_editor_tool],
)
```

## Presets

| Preset | Fillers | Repetitions | Silence (min) |
|--------|---------|-------------|---------------|
| podcast | ✅ Remove | ✅ Remove | 1.5s |
| meeting | ✅ Remove | Keep | 2.0s |
| course | ✅ Remove | ✅ Remove | 1.0s |
| clean | ✅ Remove | ✅ Remove | 0.8s |

## Requirements

- Python ≥ 3.10
- FFmpeg (for audio/video processing)
- OpenAI API key (for transcription) or `[local]` extra for offline Whisper
