From 9c605cd3a0c5a6650b8a18fa3b4fc46128d7d0ec Mon Sep 17 00:00:00 2001 From: Steve White Date: Thu, 14 Aug 2025 10:42:40 -0500 Subject: [PATCH] docs: update README with Windows setup and Paste Script instructions --- README.md | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 52 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index f516147..176a121 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ A comprehensive text-to-speech application with multiple interfaces for generati - **Dialog Generation**: Create multi-speaker conversations with configurable silence gaps - **Audiobook Generation**: Convert long-form text into narrated audiobooks - **Speaker Management**: Add/remove speakers with custom audio samples +- **Paste Script (JSONL) Import**: Paste a dialog script as JSONL directly into the editor via a modal - **Memory Optimization**: Automatic model cleanup after generation - **Output Organization**: Files saved in organized directories with ZIP packaging @@ -23,7 +24,6 @@ A comprehensive text-to-speech application with multiple interfaces for generati pip install -r requirements.txt npm install ``` - 2. Run automated setup: ```bash python setup.py @@ -33,6 +33,24 @@ A comprehensive text-to-speech application with multiple interfaces for generati - Add audio samples (WAV format) to `speaker_data/speaker_samples/` - Configure speakers in `speaker_data/speakers.yaml` +### Windows Quick Start + +On Windows, a PowerShell setup script is provided to automate environment setup and startup. + +```powershell +# From the repository root in PowerShell +./setup-windows.ps1 + +# First time only, if scripts are blocked: +# Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser +``` + +What it does: +- Creates/uses `.venv` +- Upgrades pip and installs deps from `backend/requirements.txt` and root `requirements.txt` +- Creates a default `.env` with sensible ports if missing +- Starts both servers via `start_servers.py` + ### Running the Application **Full-Stack Web Application:** @@ -41,6 +59,12 @@ A comprehensive text-to-speech application with multiple interfaces for generati python start_servers.py ``` +On Windows, you can also use the one-liner PowerShell script: + +```powershell +./setup-windows.ps1 +``` + **Individual Components:** ```bash # Backend only (FastAPI) @@ -56,7 +80,26 @@ python gradio_app.py ## Usage ### Web Interface -Access the modern web UI at `http://localhost:8001` for interactive dialog creation with drag-and-drop editing. +Access the modern web UI at `http://localhost:8001` for interactive dialog creation. + +#### Paste Script (JSONL) in Dialog Editor +Quickly load a dialog by pasting JSONL (one JSON object per line): + +1. Click `Paste Script` in the Dialog Editor. +2. Paste JSONL content, for example: + +```jsonl +{"type":"speech","speaker_id":"dummy_speaker","text":"Hello there!"} +{"type":"silence","duration":0.5} +{"type":"speech","speaker_id":"dummy_speaker","text":"This is the second line."} +``` + +3. Click `Load` and confirm replacement if prompted. + +Notes: +- Input is validated per line; errors report line numbers. +- The dialog is saved to localStorage, so it persists across refreshes. +- Unknown `speaker_id`s will still load; add speakers later if needed. ### CLI Tools @@ -151,3 +194,10 @@ The application automatically: - **Memory issues**: Use model reinitialization options for long content - **CORS errors**: Check frontend/backend port configuration (frontend origin is auto-included when using `start_servers.py`) - **Import errors**: Run `python import_helper.py` to check dependencies + +### Windows-specific +- If PowerShell blocks script execution, run once: + ```powershell + Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser + ``` +- If Windows Firewall prompts the first time you run servers, allow access on your private network.