Skip to main content
Cette recette présente les différentes briques de la transcription depuis le microphone du navigateur. En production, combinez-la avec les WebSockets dans le navigateur afin que le navigateur utilise un token de courte durée plutôt qu’une clé API.

Déroulement

  1. Demandez à l’utilisateur l’autorisation d’accéder au microphone.
  2. Capturez l’audio avec la Web Audio API.
  3. Convertissez les échantillons flottants en PCM mono 16 bits.
  4. Envoyez des fragments audio en base64 via wss://api.gradium.ai/api/speech/asr.
  5. Affichez les messages text et utilisez les messages step pour la gestion des tours de parole.

Client navigateur

ScriptProcessorNode est facile à lire mais obsolète. En production, préférez un AudioWorklet pour que la capture audio reste fiable même lorsque l’interface est chargée.

Remarques sur le format audio

  • input_format: "pcm" correspond à du PCM mono 24 kHz, entiers signés 16 bits.
  • Si le graphe audio de votre navigateur tourne à 48 kHz, rééchantillonnez à 24 kHz ou envoyez input_format: "pcm_48000".
  • Envoyez de petits fragments, d’environ 80-100 ms, pour maintenir une latence faible.
  • N’envoyez pas de formats compressés du navigateur, sauf si vous définissez explicitement un format d’entrée Gradium pris en charge, comme opus.

Voir aussi

WebSocket de transcription (STT)

Types de messages, VAD, flush et exemples de WebSocket direct.

Gestion des tours de parole avec la VAD

Utilisez la VAD sémantique pour déterminer quand un locuteur a fini de parler.