File size: 1,543 Bytes
7c8fbd2 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | # videoclean
Open-source, CPU-friendly video cleanup for hardcoded subtitles, watermarks, logos, and timestamps.
`videoclean` uses OpenCV's Telea or Navier–Stokes inpainting with a stable mask applied to every frame. It has no PyTorch, ONNX Runtime, GPU, or model-weight dependency for inpainting. FFmpeg must be installed and available on `PATH`.
Automatic detection uses the separately distributed PP-OCRv5 detector weight. The weight is Apache-2.0 licensed and hosted at [Hugging Face](https://huggingface.co/stevenlearns/videoclean-detector); see [NOTICE](NOTICE), [LICENSE-APACHE-2.0](LICENSE-APACHE-2.0), and [PROVENANCE.md](PROVENANCE.md). Manual masks work without downloading detector weights.
The source code is GPLv3; third-party detector weights retain their separate license.
## Development
```bash
python -m pip install -e '.[dev]'
python -m pytest -q
python -m build
```
Canonical source: [GitHub](https://github.com/oohfixer/videoclean).
## Install
```bash
pip install videoclean
```
Optional OCR support:
```bash
pip install 'videoclean[ocr]'
```
## Usage
```bash
videoclean clean input.mp4 -o output-directory
vpipe -y --clean input.mp4
```
For a reviewed mask:
```bash
videoclean clean input.mp4 -m mask.png -o output-directory \
--inpaint-method telea --inpaint-radius 5 --inpaint-dilate 2
```
No-candidate detection is a successful passthrough: the input is copied to the output directory unchanged. Use `--preview` to inspect detection artifacts before processing.
## License
GPLv3. See `LICENSE`.
|