Metadata-Version: 2.5
Name: mmu-cli
Version: 0.1.0.dev0
Summary: Mixed Media Utility — CLI and core for scan/extract/calibrate workflows
Project-URL: Homepage, https://github.com/GanTiz/mixed_media_utility
Project-URL: Repository, https://github.com/GanTiz/mixed_media_utility
Project-URL: Issues, https://github.com/GanTiz/mixed_media_utility/issues
Project-URL: Auteur, https://github.com/GanTiz
Author: Egan
Maintainer: Egan
License-Expression: GPL-3.0-or-later
License-File: LICENSE
License-File: THIRD-PARTY-NOTICES.md
Keywords: calibration,cli,ffmpeg,media,scan,terminal
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Graphics
Classifier: Topic :: System :: Shells
Requires-Python: >=3.11
Requires-Dist: jsonschema
Requires-Dist: numpy>=2.0
Requires-Dist: opencv-python-headless<6,>=4.10
Requires-Dist: pillow
Requires-Dist: pypdfium2
Requires-Dist: reportlab
Requires-Dist: segno<2,>=1.6
Provides-Extra: dev
Requires-Dist: hatchling>=1.27; extra == 'dev'
Requires-Dist: mutmut>=3.0; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: pytest-qt>=4.4; extra == 'dev'
Requires-Dist: pytest-timeout>=2.3; extra == 'dev'
Requires-Dist: pytest-xdist>=3.5; extra == 'dev'
Provides-Extra: full
Requires-Dist: hatchling>=1.27; extra == 'full'
Requires-Dist: mutmut>=3.0; extra == 'full'
Requires-Dist: pyside6-essentials<6.9,>=6.8; extra == 'full'
Requires-Dist: pytest; extra == 'full'
Requires-Dist: pytest-qt>=4.4; extra == 'full'
Requires-Dist: pytest-timeout>=2.3; extra == 'full'
Requires-Dist: pytest-xdist>=3.5; extra == 'full'
Provides-Extra: gui
Requires-Dist: pyside6-essentials<6.9,>=6.8; extra == 'gui'
Requires-Dist: pytest-qt>=4.4; extra == 'gui'
Provides-Extra: test
Requires-Dist: hatchling>=1.27; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-qt>=4.4; extra == 'test'
Requires-Dist: pytest-timeout>=2.3; extra == 'test'
Requires-Dist: pytest-xdist>=3.5; extra == 'test'
Description-Content-Type: text/markdown

# Mixed Media Utility

**Faire passer une séquence vidéo par le papier, et la récupérer.**

À partir d'un rush, l'outil extrait des images, les compose en planches A4
imprimables portant de quoi les relire — un QR par page, des marqueurs ArUco aux
coins, des pastilles de calibration. Vous imprimez, vous travaillez le papier,
vous scannez : l'outil retrouve chaque image, la redresse, la recale en couleur
et reconstruit une vidéo.

```
rush ──▶ frames ──▶ planches ──▶ [papier] ──▶ scan ──▶ frames ──▶ master
```

## Installation

Prérequis : **Python ≥ 3.11**, **ffmpeg ≥ 5.0** (avec `ffprobe`) sur le `PATH`.

```bash
curl -fsSL https://raw.githubusercontent.com/GanTiz/mixed_media_utility/main/scripts/install.sh | bash
```

Le script pose ses questions au clavier et n'exige aucune syntaxe. À la main :
`pipx install mmu-cli` pour la ligne de commande seule, `pipx install mmu-tui`
pour les deux.

L'interface graphique Qt est optionnelle : `pipx install "mmu-cli[gui]"`.

Le détail par plateforme — [Windows](docs/installation/windows.md),
[macOS](docs/installation/macos.md), [Linux](docs/installation/linux.md) — et
[l'installation depuis les sources](docs/installation/from-source.md).

## Les deux façons de s'en servir

| commande | ce qu'elle ouvre | posée par |
|---|---|---|
| `mmu` | la ligne de commande, scriptable | `pip install mmu-cli` |
| `mmu-tui` | l'interface en terminal, chemin nominal | `pip install mmu-tui` |

Deux paquets, et `mmu-tui` s'appuie sur `mmu-cli` : l'installer donne les deux
commandes sans rien poser en double. La distribution s'appelle `mmu-cli` parce
que le nom `mmu` est déjà pris sur l'index public ; la commande reste `mmu`.

## Documentation

* [Le parcours complet](docs/guide-utilisateur/workflow.md) — d'un rush au
  master, joué sur les fichiers du dépôt
* [Les mots de l'outil](docs/guide-utilisateur/concepts.md) — projet, rush, lot,
  planche, scan, master, profil, version
* [L'interface en terminal](docs/guide-utilisateur/tui.md) et
  [la ligne de commande](docs/guide-utilisateur/cli.md)
* [Référence des commandes](docs/reference/commandes.md) et
  [configuration](docs/reference/configuration.md)
* [Guide développeur](docs/guide-developpeur/architecture.md) — architecture,
  tests, conventions, contribution

## Licence

**GPL-3.0-or-later** — texte intégral dans [LICENSE](LICENSE). Les composants
tiers et ce que leurs licences exigent à la distribution sont recensés dans
[THIRD-PARTY-NOTICES.md](THIRD-PARTY-NOTICES.md).
