Metadata-Version: 2.4
Name: lectura-stt
Version: 1.0.3
Summary: Pipeline STT complet du francais — audio vers texte (CTC + P2G)
Author-email: Max Carriere <contact@lec-tu-ra.com>
License: AGPL-3.0-or-later
Project-URL: Homepage, https://www.lec-tu-ra.com/solutions/outils/modules/
Project-URL: Repository, https://github.com/maxcarriere/lectura-modules/tree/main/STT
Project-URL: Issues, https://github.com/maxcarriere/lectura-modules/issues
Keywords: stt,asr,french,speech-to-text,pipeline,ctc,p2g
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Classifier: Natural Language :: French
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 :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Multimedia :: Sound/Audio :: Speech
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENCE.txt
Requires-Dist: lectura-ctc>=1.0
Provides-Extra: p2g
Requires-Dist: lectura-p2g>=1.0; extra == "p2g"
Provides-Extra: onnx
Requires-Dist: lectura-ctc[onnx]; extra == "onnx"
Requires-Dist: lectura-graphemiseur[onnx]; extra == "onnx"
Provides-Extra: micro
Requires-Dist: lectura-ctc[micro]; extra == "micro"
Dynamic: license-file

# Lectura STT — Pipeline STT complet du francais

Pipeline de transcription automatique du francais : audio vers texte.
Chaine le decodeur CTC (audio → phones IPA) avec le pipeline P2G (phones → orthographe).

## Installation

```bash
# Mode minimal (CTC uniquement, transcription phonetique)
pip install lectura-stt

# Avec pipeline P2G complet (formules + noms propres)
pip install lectura-stt[p2g]

# Avec backend ONNX (inference locale rapide)
pip install lectura-stt[onnx]

# Avec support micro
pip install lectura-stt[micro]
```

## Exemple

```python
import numpy as np
from lectura_stt import creer_engine

engine = creer_engine()

# Charger un fichier WAV
import wave
with wave.open("bonjour.wav", "rb") as wf:
    sr = wf.getframerate()
    audio = np.frombuffer(
        wf.readframes(wf.getnframes()), dtype=np.int16
    ).astype(np.float32) / 32768.0

result = engine.transcrire(audio, sr=sr)
print(result.ipa)    # "b ɔ̃ ʒ u ʁ | l ə | m ɔ̃ d ."
print(result.texte)  # "Bonjour le monde."
```

## Architecture

```
Audio 16kHz mono
     |
     v
[lectura-ctc]  --> IPA phones "b ɔ̃ ʒ u ʁ | l ə | m ɔ̃ d ."
     |
     v
[_parse_ctc]   --> mots IPA ["bɔ̃ʒuʁ", "lə", "mɔ̃d"] + ponctuation ["."]
     |
     v
[lectura-p2g]  --> ortho ["bonjour", "le", "monde"]
     |
     v
[_assembler]   --> "Bonjour le monde."
```

## Licence

AGPL-3.0-or-later — voir [LICENCE.txt](LICENCE.txt).
Licence commerciale disponible — voir [LICENCE-COMMERCIALE.md](LICENCE-COMMERCIALE.md).
