Carte che volano: dalla mano al tavolo e, finita la presa, sul mucchietto di chi ha preso (briscola, tressette, scopa; Andrea: «non si capisce quando vengono buttate le carte»). Il valzer della balera ai tavoli da carte (tools/valzer_carte.py: fisarmonica musette, basso, melodia di mandolino col tremolo), musica per primo piano; video «Come si gioca»: cache del Chromium della VM spenta, narratore e personaggi a turno, musica di sottofondo, pronunce del narratore

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01A1dxvtsZx8NE9fwjXUNDBr
This commit is contained in:
2026-10-26 18:17:23 +01:00
co-authored by Claude Opus 5.5
parent 7e1e6f6144
commit 538bf6cedb
19 changed files with 263 additions and 43 deletions
+4 -1
View File
@@ -36,7 +36,10 @@ def main() -> None:
# XTTS dice «punto» se la frase finisce col punto: si toglie, come fa narrate.py del tour.
lavori = [{"text": c["it"].rstrip(". "), "out": str(cartella / f"{c['id']}.wav"), "lang": "it", "speaker": NARRATORE} for c in cues]
(cartella / "lavori.json").write_text(json.dumps(lavori, ensure_ascii=False, indent=1))
pron = ["--pronounce", str(PRONUNCIA)] if PRONUNCIA.exists() else []
# Le pronunce del gioco più quelle del narratore, in un file solo per `mbot parla`.
regole = {k: v for f in (PRONUNCIA, VIDEO / "pronuncia-narratore.json") if f.exists() for k, v in json.loads(f.read_text()).items() if not k.startswith("_")}
(cartella / "pronuncia.json").write_text(json.dumps(regole, ensure_ascii=False, indent=1))
pron = ["--pronounce", str(cartella / "pronuncia.json")]
subprocess.run(["mbot", "parla", "--jobs", str(cartella / "lavori.json"), *pron], check=True)
ascolto = [{"file": l["out"], "expect": l["text"]} for l in lavori]
(cartella / "ascolto.json").write_text(json.dumps(ascolto, ensure_ascii=False, indent=1))