mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Adjust system TTS
This commit is contained in:
@ -130,7 +130,7 @@ async function onTtsVoicesClick() {
|
|||||||
const voiceIds = await ttsProvider.fetchTtsVoiceIds()
|
const voiceIds = await ttsProvider.fetchTtsVoiceIds()
|
||||||
|
|
||||||
for (const voice of voiceIds) {
|
for (const voice of voiceIds) {
|
||||||
popupText += `<div class="voice_preview"><b>${voice.name}</b> <i onclick="tts_preview('${voice.voice_id}')" class="fa-solid fa-play"></i></div>`
|
popupText += `<div class="voice_preview"><span class="voice_lang">${voice.lang || ''}</span> <b class="voice_name">${voice.name}</b> <i onclick="tts_preview('${voice.voice_id}')" class="fa-solid fa-play"></i></div>`
|
||||||
popupText += `<audio id="${voice.voice_id}" src="${voice.preview_url}" hidden="${!!voice.preview_url}"></audio>`
|
popupText += `<audio id="${voice.voice_id}" src="${voice.preview_url}" hidden="${!!voice.preview_url}"></audio>`
|
||||||
}
|
}
|
||||||
} catch {
|
} catch {
|
||||||
|
@ -25,4 +25,19 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
gap: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.voice_preview .voice_name {
|
||||||
|
text-align: left;
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.voice_preview .voice_lang {
|
||||||
|
width: 4rem;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.voice_preview .fa-play {
|
||||||
|
cursor: pointer;
|
||||||
}
|
}
|
@ -84,7 +84,10 @@ class SystemTtsProvider {
|
|||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
return speechSynthesis.getVoices().map(x => ({ name: x.name, voice_id: x.voiceURI, preview_url: '' }));
|
return speechSynthesis
|
||||||
|
.getVoices()
|
||||||
|
.sort((a, b) => a.lang.localeCompare(b.lang) || a.name.localeCompare(b.name))
|
||||||
|
.map(x => ({ name: x.name, voice_id: x.voiceURI, preview_url: '', lang: x.lang }));
|
||||||
}
|
}
|
||||||
|
|
||||||
previewTtsVoice(voiceId) {
|
previewTtsVoice(voiceId) {
|
||||||
|
Reference in New Issue
Block a user