Convert demo videos into structured documentation, locally.
Project description
VideoDocGen
Convert demo/screen-recording videos into structured documentation — a
Markdown "User Guide", extracted screenshots, and a structured
document.json — using only local, pip-installable dependencies.
An open-source project by VOCSO Technologies Pvt. Ltd. · Maintained by Deepak Chauhan · github.com/vocso-com/videodocgen
Guarantees
- Local only. No cloud APIs, no API keys, no model downloads, no network calls at runtime.
- Deterministic & reproducible. Same input + config produce the same output. Runnable in CI.
- Extensible by design. OCR, understanding, rendering, and export are provider interfaces selected by config, so new implementations (cloud AI, additional OCR engines, more output formats) slot in without rework. See ARCHITECTURE.md.
Installation
VideoDocGen needs Python 3.12+ and two command-line tools on your PATH:
FFmpeg (ffmpeg + ffprobe, for video decode and
screenshot extraction) and Tesseract OCR
(tesseract, for reading on-screen text).
1. Install the system tools
# macOS (Homebrew)
brew install ffmpeg tesseract
# Debian / Ubuntu
sudo apt-get update && sudo apt-get install -y ffmpeg tesseract-ocr
# Windows (winget)
winget install Gyan.FFmpeg UB-Mannheim.TesseractOCR
2. Install VideoDocGen
Not yet on PyPI — install from source. (
pip install videodocgenis coming once the release workflow lands.)
git clone https://github.com/vocso-com/videodocgen.git
cd videodocgen
python3.12 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
Use pip install -e ".[dev]" instead if you plan to run the tests or contribute
(see Development).
3. Verify your setup
videodocgen doctor
This checks that FFmpeg, ffprobe, Tesseract, OpenCV, and PySceneDetect are all available and prints a ✓/✗ for each. Fix anything marked ✗ before running.
Quickstart
videodocgen run input.mp4
This runs the full pipeline against input.mp4 and writes a Markdown user
guide, extracted screenshots, and document.json to the output directory
(default docs/).
Other commands:
videodocgen batch DIR # process every video in a directory
videodocgen config # print the resolved effective configuration
videodocgen doctor # verify FFmpeg/Tesseract/OpenCV are available
Run videodocgen doctor first if you're unsure whether your environment has
the required system dependencies installed.
Development
pip install -e ".[dev]"
pre-commit install
ruff check .
black --check .
pytest
See CONTRIBUTING.md for the full workflow and ARCHITECTURE.md for the module layout.
About VOCSO
VideoDocGen is developed and maintained by VOCSO Technologies Pvt. Ltd., a software and design studio. We build it in the open so teams everywhere can turn product demos into documentation without manual screenshotting and writing.
GitHub org: @vocso-com · Maintainer: Deepak Chauhan. Contributions are welcome — see CONTRIBUTING.md.
License
MIT © VOCSO Technologies Pvt. Ltd.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file videodocgen-0.1.0.tar.gz.
File metadata
- Download URL: videodocgen-0.1.0.tar.gz
- Upload date:
- Size: 60.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f452a6256c6a48b787198844976bc68900b562aee4d02886b998d4d4a7bf5a6b
|
|
| MD5 |
2949de5ef21bb00766c481111a687414
|
|
| BLAKE2b-256 |
47ae28ed336e5b68082d2dd98dd6d0c5b57ee599851a31bb55fdcbc135d749bb
|
Provenance
The following attestation bundles were made for videodocgen-0.1.0.tar.gz:
Publisher:
release.yml on vocso-com/videodocgen
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
videodocgen-0.1.0.tar.gz -
Subject digest:
f452a6256c6a48b787198844976bc68900b562aee4d02886b998d4d4a7bf5a6b - Sigstore transparency entry: 2321427537
- Sigstore integration time:
-
Permalink:
vocso-com/videodocgen@fa1071983eb2c180b314391fe3f00c6210018962 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/vocso-com
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@fa1071983eb2c180b314391fe3f00c6210018962 -
Trigger Event:
push
-
Statement type:
File details
Details for the file videodocgen-0.1.0-py3-none-any.whl.
File metadata
- Download URL: videodocgen-0.1.0-py3-none-any.whl
- Upload date:
- Size: 40.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d671994ed7732442f7e6ae3efd9e75483092f5f8e7ce706e2882758043f3f799
|
|
| MD5 |
f8768d521447862db330a25d686e9778
|
|
| BLAKE2b-256 |
4bf219f8fb90a39de307a447fa2341ec8133b471a4303770912365922a28ea25
|
Provenance
The following attestation bundles were made for videodocgen-0.1.0-py3-none-any.whl:
Publisher:
release.yml on vocso-com/videodocgen
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
videodocgen-0.1.0-py3-none-any.whl -
Subject digest:
d671994ed7732442f7e6ae3efd9e75483092f5f8e7ce706e2882758043f3f799 - Sigstore transparency entry: 2321428097
- Sigstore integration time:
-
Permalink:
vocso-com/videodocgen@fa1071983eb2c180b314391fe3f00c6210018962 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/vocso-com
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@fa1071983eb2c180b314391fe3f00c6210018962 -
Trigger Event:
push
-
Statement type: