Spaces:
Running
Running
Update main.ts
Browse files
main.ts
CHANGED
@@ -341,6 +341,31 @@ async function handleDemoRequest(req: Request) {
|
|
341 |
});
|
342 |
}
|
343 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
344 |
|
345 |
|
346 |
serve(async (req) => {
|
@@ -350,7 +375,9 @@ serve(async (req) => {
|
|
350 |
if (url.pathname === "/") {
|
351 |
return handleDemoRequest(req);
|
352 |
}
|
353 |
-
|
|
|
|
|
354 |
if (url.pathname === "/tts") {
|
355 |
return handleDebugRequest(req);
|
356 |
}
|
|
|
341 |
});
|
342 |
}
|
343 |
|
344 |
+
async function handleVoiceList() {
|
345 |
+
let voices = [
|
346 |
+
{model: 'ava', gender: 'female'},
|
347 |
+
{model: 'andrew', gender: 'male'},
|
348 |
+
{model: 'emma', gender: 'female'},
|
349 |
+
{model: 'brian', gender: 'male'},
|
350 |
+
{model: 'vivienne', gender: 'female'},
|
351 |
+
{model: 'remy', gender: 'male'},
|
352 |
+
{model: 'seraphina', gender: 'female'},
|
353 |
+
{model: 'florian', gender: 'male'},
|
354 |
+
{model: 'dmitry', gender: 'male'},
|
355 |
+
{model: 'svetlana', gender: 'female'}
|
356 |
+
];
|
357 |
+
|
358 |
+
const sortedVoiceList = voices.sort((a, b) => {
|
359 |
+
if (a.gender === 'male' && b.gender === 'female') return -1;
|
360 |
+
if (a.gender === 'female' && b.gender === 'male') return 1;
|
361 |
+
return 0;
|
362 |
+
});
|
363 |
+
|
364 |
+
return new Response(JSON.stringify(sortedVoiceList), {
|
365 |
+
headers: { "Content-Type": "application/json" },
|
366 |
+
});
|
367 |
+
|
368 |
+
}
|
369 |
|
370 |
|
371 |
serve(async (req) => {
|
|
|
375 |
if (url.pathname === "/") {
|
376 |
return handleDemoRequest(req);
|
377 |
}
|
378 |
+
if (url.pathname === "/v1/audio/models") {
|
379 |
+
return handleVoiceList();
|
380 |
+
}
|
381 |
if (url.pathname === "/tts") {
|
382 |
return handleDebugRequest(req);
|
383 |
}
|