.. _Web UI: Web UI ====== Scribe includes a web-based management interface for editing settings without touching the configuration file directly. Accessing the UI ---------------- Open the following URL in a browser, replacing ```` with the hostname or IP address of your AntMedia server: .. code-block:: http://:5080/rest/scribe/ui/ Dashboard --------- The **Dashboard** provides an overview of Scribe status and includes the **Reload Configuration** button. Configuration Hot Reload ^^^^^^^^^^^^^^^^^^^^^^^^^ After making configuration changes, you can reload the configuration without restarting AntMedia Server: 1. Click **"Reload Configuration"** on the Dashboard 2. Review the warning about active streams 3. Click **"Reload"** to confirm **Behavior:** - Active streams continue with their existing configuration - New streams use the reloaded configuration - No disruption to ongoing transcriptions Global Settings --------------- The **Global Settings** page lets you configure settings that apply across all applications: - **License Key** — your Scribe license key. - **Provider** — the transcription backend: - **Speechmatics** — cloud-based real-time transcription - **Speaches** — self-hosted OpenAI-compatible server (recommended for self-hosting) Provider-Specific Fields ^^^^^^^^^^^^^^^^^^^^^^^^^ The UI shows different fields based on the selected provider: **Speechmatics:** - **Speechmatics API Key** — API key for the Speechmatics service **Speaches:** - **Speaches Server URL** — Base WebSocket URL for your self-hosted Speaches server (e.g., ``ws://localhost:8000`` or ``wss://speaches.example.com``) Application Settings -------------------- Each AntMedia application appears in the left sidebar. Applications that do not yet have Scribe enabled are shown in a lighter color. Click an application to open its settings page. The available settings depend on the global provider selection. Common Settings (All Providers) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - **Enabled** — toggle Scribe on or off for this application. Setting this to ``false`` and saving removes the application's configuration section entirely. - **Log Transcriptions** — whether to write transcript lines to the application log. - **Max Characters Per Line** — maximum characters per subtitle line. - **Words Per Minute** — reading speed used to calculate minimum subtitle display time. Speaches-Specific Settings ^^^^^^^^^^^^^^^^^^^^^^^^^^^ When the global provider is **Speaches**, these fields are shown: - **Server URL** — Speaches WebSocket server URL (optional, overrides global setting). - **Model** — Hugging Face model ID (e.g., ``Systran/faster-distil-whisper-small.en`` for English-only, or ``Systran/faster-whisper-small`` for multilingual). - **Language** — source language code (e.g., ``en``, ``es``, ``fr``, ``de``). Leave blank for automatic language detection. Speechmatics-Specific Settings ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ When the global provider is **Speechmatics**, these fields are shown: - **Language** — source language for transcription (ISO 639-1 code, e.g. ``en``, ``es``, ``fr``). - **Translate Languages** — comma-separated list of target languages for live translation (e.g., ``fr,de``). A separate subtitle track is created for each language. Stream Name Templates ^^^^^^^^^^^^^^^^^^^^^^ The **Stream Name Templates** section (below the provider-specific fields) lets you define per-stream setting overrides based on regex patterns matched against the stream ID. - **Add a template** — click **"Add Template"** and enter a regex pattern (e.g. ``^spanish-.*``). - **Configure overrides** — each template exposes the same provider-specific fields as the application settings. Only fields you fill in are applied; empty fields fall back to the application-level value. - **Reorder templates** — use the up/down arrow buttons to control evaluation order. The first matching pattern wins. - **Remove a template** — click the delete icon on the right of any row. .. note:: Patterns are validated as Java regular expressions when you type. An invalid pattern is highlighted in red and will not be saved. Changes take effect the next time a stream starts on that application. To apply changes to running streams, use the **Reload Configuration** feature on the Dashboard.