dbpq commited on
Commit
e47eacc
·
verified ·
1 Parent(s): 7dbbc09

Upload 3 files

Browse files
Files changed (3) hide show
  1. index.html +16 -0
  2. script.js +9 -1
  3. styles.css +6 -1
index.html CHANGED
@@ -417,6 +417,10 @@
417
  <img src="img/icon-provider-gemini.png" alt="" aria-hidden="true" class="provider-option-icon">
418
  <span>Gemini</span>
419
  </button>
 
 
 
 
420
  </div>
421
  <p class="text-handling-sample">
422
  The startup secured <span class="text-highlight">$5.2M</span> in venture capital,<br>
@@ -457,6 +461,10 @@
457
  <img src="img/icon-provider-gemini.png" alt="" aria-hidden="true" class="provider-option-icon">
458
  <span>Gemini</span>
459
  </button>
 
 
 
 
460
  </div>
461
  <p class="text-handling-sample">
462
  The train delay was announced at <span class="text-highlight">4:45 PM</span> on
@@ -497,6 +505,10 @@
497
  <img src="img/icon-provider-gemini.png" alt="" aria-hidden="true" class="provider-option-icon">
498
  <span>Gemini</span>
499
  </button>
 
 
 
 
500
  </div>
501
  <p class="text-handling-sample">
502
  You can reach the hotel front desk at <span class="text-highlight">(212) 555-0142 ext. 402</span> anytime.
@@ -536,6 +548,10 @@
536
  <img src="img/icon-provider-gemini.png" alt="" aria-hidden="true" class="provider-option-icon">
537
  <span>Gemini</span>
538
  </button>
 
 
 
 
539
  </div>
540
  <p class="text-handling-sample">
541
  Our drone battery lasts <span class="text-highlight">2.3h</span> when flying at
 
417
  <img src="img/icon-provider-gemini.png" alt="" aria-hidden="true" class="provider-option-icon">
418
  <span>Gemini</span>
419
  </button>
420
+ <button type="button" class="provider-option" data-provider="Microsoft" aria-pressed="false">
421
+ <img src="img/icon-provider-microsoft.svg" alt="" aria-hidden="true" class="provider-option-icon">
422
+ <span>Microsoft</span>
423
+ </button>
424
  </div>
425
  <p class="text-handling-sample">
426
  The startup secured <span class="text-highlight">$5.2M</span> in venture capital,<br>
 
461
  <img src="img/icon-provider-gemini.png" alt="" aria-hidden="true" class="provider-option-icon">
462
  <span>Gemini</span>
463
  </button>
464
+ <button type="button" class="provider-option" data-provider="Microsoft" aria-pressed="false">
465
+ <img src="img/icon-provider-microsoft.svg" alt="" aria-hidden="true" class="provider-option-icon">
466
+ <span>Microsoft</span>
467
+ </button>
468
  </div>
469
  <p class="text-handling-sample">
470
  The train delay was announced at <span class="text-highlight">4:45 PM</span> on
 
505
  <img src="img/icon-provider-gemini.png" alt="" aria-hidden="true" class="provider-option-icon">
506
  <span>Gemini</span>
507
  </button>
508
+ <button type="button" class="provider-option" data-provider="Microsoft" aria-pressed="false">
509
+ <img src="img/icon-provider-microsoft.svg" alt="" aria-hidden="true" class="provider-option-icon">
510
+ <span>Microsoft</span>
511
+ </button>
512
  </div>
513
  <p class="text-handling-sample">
514
  You can reach the hotel front desk at <span class="text-highlight">(212) 555-0142 ext. 402</span> anytime.
 
548
  <img src="img/icon-provider-gemini.png" alt="" aria-hidden="true" class="provider-option-icon">
549
  <span>Gemini</span>
550
  </button>
551
+ <button type="button" class="provider-option" data-provider="Microsoft" aria-pressed="false">
552
+ <img src="img/icon-provider-microsoft.svg" alt="" aria-hidden="true" class="provider-option-icon">
553
+ <span>Microsoft</span>
554
+ </button>
555
  </div>
556
  <p class="text-handling-sample">
557
  Our drone battery lasts <span class="text-highlight">2.3h</span> when flying at
script.js CHANGED
@@ -3712,6 +3712,8 @@ document.addEventListener('DOMContentLoaded', () => {
3712
  return 'openai';
3713
  case 'gemini':
3714
  return 'gemini';
 
 
3715
  default:
3716
  return normalized;
3717
  }
@@ -3737,7 +3739,9 @@ document.addEventListener('DOMContentLoaded', () => {
3737
 
3738
  function getOrCreateTextHandlingAudio(cardState, providerSlug) {
3739
  if (!cardState.audioElements.has(providerSlug)) {
3740
- const audioPath = `audio/${providerSlug}_speech-${cardState.audioNumber}.mp3`;
 
 
3741
  const audioEl = new Audio(audioPath);
3742
  audioEl.preload = 'auto';
3743
  audioEl.addEventListener('ended', () => handleTextHandlingAudioEnded(cardState, audioEl));
@@ -3922,6 +3926,8 @@ document.addEventListener('DOMContentLoaded', () => {
3922
  return getComputedStyle(document.documentElement).getPropertyValue('--brand-openai') || '#52a584';
3923
  case 'Gemini':
3924
  return getComputedStyle(document.documentElement).getPropertyValue('--brand-gemini') || '#887eca';
 
 
3925
  default:
3926
  return getComputedStyle(document.documentElement).getPropertyValue('--primary') || '#227CFF';
3927
  }
@@ -3937,6 +3943,8 @@ document.addEventListener('DOMContentLoaded', () => {
3937
  return 'TTS-1';
3938
  case 'gemini':
3939
  return '2.5 Flash TTS';
 
 
3940
  default:
3941
  return provider || 'Supertonic';
3942
  }
 
3712
  return 'openai';
3713
  case 'gemini':
3714
  return 'gemini';
3715
+ case 'microsoft':
3716
+ return 'microsoft';
3717
  default:
3718
  return normalized;
3719
  }
 
3739
 
3740
  function getOrCreateTextHandlingAudio(cardState, providerSlug) {
3741
  if (!cardState.audioElements.has(providerSlug)) {
3742
+ // Microsoft uses .wav files, others use .mp3
3743
+ const audioExtension = providerSlug === 'microsoft' ? 'wav' : 'mp3';
3744
+ const audioPath = `audio/${providerSlug}_speech-${cardState.audioNumber}.${audioExtension}`;
3745
  const audioEl = new Audio(audioPath);
3746
  audioEl.preload = 'auto';
3747
  audioEl.addEventListener('ended', () => handleTextHandlingAudioEnded(cardState, audioEl));
 
3926
  return getComputedStyle(document.documentElement).getPropertyValue('--brand-openai') || '#52a584';
3927
  case 'Gemini':
3928
  return getComputedStyle(document.documentElement).getPropertyValue('--brand-gemini') || '#887eca';
3929
+ case 'Microsoft':
3930
+ return getComputedStyle(document.documentElement).getPropertyValue('--brand-microsoft') || '#00A4EF';
3931
  default:
3932
  return getComputedStyle(document.documentElement).getPropertyValue('--primary') || '#227CFF';
3933
  }
 
3943
  return 'TTS-1';
3944
  case 'gemini':
3945
  return '2.5 Flash TTS';
3946
+ case 'microsoft':
3947
+ return 'VibeVoice Realtime 0.5B';
3948
  default:
3949
  return provider || 'Supertonic';
3950
  }
styles.css CHANGED
@@ -742,7 +742,7 @@ section {
742
  .comparison-text p {
743
  text-align: center;
744
  line-height: 1.2rem;
745
- font-size: 0.8rem;
746
  font-family: var(--font-body);
747
  }
748
 
@@ -2194,6 +2194,11 @@ body.comparison-mode .demo-result-item {
2194
  height: 100%;
2195
  }
2196
 
 
 
 
 
 
2197
  .text-handling-player {
2198
  width: 3rem;
2199
  height: 3rem;
 
742
  .comparison-text p {
743
  text-align: center;
744
  line-height: 1.2rem;
745
+ font-size: 16px;
746
  font-family: var(--font-body);
747
  }
748
 
 
2194
  height: 100%;
2195
  }
2196
 
2197
+ .provider-option[data-provider="Microsoft"] .provider-option-icon {
2198
+ width: 72.25%;
2199
+ height: 72.25%;
2200
+ }
2201
+
2202
  .text-handling-player {
2203
  width: 3rem;
2204
  height: 3rem;