Update TTS providers and story markup

This commit is contained in:
2026-05-20 22:13:31 +02:00
parent b911c40d89
commit 8258ea2321
36 changed files with 1482 additions and 197 deletions
+38 -2
View File
@@ -23,13 +23,14 @@
<div class="option-item">
<label>Voice:</label>
<select id="tts-voice" data-pref-bind="tts.voice"></select>
<input type="text" id="local-openai-voice" data-pref-bind="tts.local-openai-tts_voice" placeholder="alloy" style="display: none;">
</div>
<div class="option-item">
<label>Speech:</label>
<span class="slider-value">100%</span>
<input type="range" id="tts-speed" min="50" max="200" value="100"
data-pref-bind="app.speed" data-pref-transform="range:0.5,2.0">
data-pref-bind="tts.speed" data-pref-transform="multiplier-percent">
</div>
<!-- API Settings -->
@@ -50,7 +51,7 @@
</div>
<!-- OpenAI Settings -->
<div class="api-settings openai-settings" style="display: none;">
<div class="api-settings openai-tts-settings" style="display: none;">
<h3>OpenAI API Settings</h3>
<div class="option-item">
@@ -62,6 +63,41 @@
<label>API URL:</label>
<input type="text" id="openai-api-url" data-pref-bind="tts.openai-tts_api_url">
</div>
<div class="option-item">
<label>Model:</label>
<select id="openai-model" data-pref-bind="tts.openai-tts_model">
<option value="tts-1">TTS-1</option>
<option value="tts-1-hd">TTS-1 HD</option>
<option value="gpt-4o-mini-tts">GPT-4o mini TTS</option>
</select>
</div>
</div>
<!-- Local OpenAI-compatible Settings -->
<div class="api-settings local-openai-tts-settings" style="display: none;">
<h3>Local OpenAI API Settings</h3>
<div class="option-item">
<label>API Key (optional):</label>
<input type="password" id="local-openai-api-key" data-pref-bind="tts.local-openai-tts_api_key">
</div>
<div class="option-item">
<label>API URL:</label>
<input type="text" id="local-openai-api-url" data-pref-bind="tts.local-openai-tts_api_url">
</div>
<div class="option-item">
<label>Model:</label>
<input type="text" id="local-openai-model" data-pref-bind="tts.local-openai-tts_model" placeholder="tts-1">
</div>
<div class="option-item">
<label>Request timeout (ms):</label>
<input type="number" id="local-openai-timeout-ms" min="1000" max="600000" step="1000"
data-pref-bind="tts.local-openai-tts_timeout_ms" data-pref-transform="integer:1000,600000">
</div>
</div>
</div>
</div>