Fix: TTS speed control binding for chutes
| @@ -32,7 +32,7 @@ class ChutesTtsProvider { | ||
| 32 | 32 | </div> |
| 33 | 33 | <div> |
| 34 | 34 | <label for="chutes_tts_speed">Speed <span id="chutes_tts_speed_output"></span></label> |
| 35 | 35 | <input type="range" id="chutes_tts_speed" value="1" min="0.25" max="43" step="0.05"> |
| 36 | 36 | </div> |
| 37 | 37 | </div>`; |
| 38 | 38 | return html; |
| @@ -54,7 +54,7 @@ class ChutesTtsProvider { | ||
| 54 | 54 | |
| 55 | 55 | onSettingsChange() { |
| 56 | 56 | this.settings.model = $('#chutes_tts_model').val(); |
| 57 | 57 | this.settings.speed = Number($('#chutes_tts_speed').val()); |
| 58 | 58 | saveTtsProviderSettings(); |
| 59 | 59 | } |
| 60 | 60 | |
| @@ -82,11 +82,11 @@ class ChutesTtsProvider { | ||
| 82 | 82 | await this.checkReady(); |
| 83 | 83 | |
| 84 | 84 | $('#chutes_tts_model').on('change', () => this.onSettingsChange()); |
| 85 | 85 | $('#chutes_tts_speed').on('input', function () => { |
| 86 | 86 | const value = $(this'#chutes_tts_speed').val(); |
| 87 | 87 | $('#chutes_tts_speed_output').text(String(value)); |
| 88 | + this.onSettingsChange(); | |
| 88 | 89 | }); |
| 89 | - $('#chutes_tts_speed').on('change', () => this.onSettingsChange()); | |
| 90 | 90 | } |
| 91 | 91 | |
| 92 | 92 | async checkReady() { |
| @@ -452,6 +452,7 @@ router.post('/chutes/generate-voice', async (request, response) => { | ||
| 452 | 452 | const requestBody = { |
| 453 | 453 | text: request.body.input, |
| 454 | 454 | voice: request.body.voice || 'af_heart', |
| 455 | + speed: request.body.speed || 1, | |
| 455 | 456 | }; |
| 456 | 457 | |
| 457 | 458 | console.debug('Chutes TTS request', requestBody); |