gnilets commited on
Commit
6f0412b
·
verified ·
1 Parent(s): 8c79480

Update main.ts

Browse files
Files changed (1) hide show
  1. main.ts +28 -1
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
  }