Skip to content

feat(love): enable transcription language selector and restore Deepgram language support#10533

Open
spatialy wants to merge 1 commit intohcengineering:developfrom
spatialy:fix/transcription-language-selector-10532
Open

feat(love): enable transcription language selector and restore Deepgram language support#10533
spatialy wants to merge 1 commit intohcengineering:developfrom
spatialy:fix/transcription-language-selector-10532

Conversation

@spatialy
Copy link
Contributor

Summary

Fixes #10532.

The RoomLanguageSelector component was fully built (45 languages, flag emojis, live update via client.diffUpdate) but commented out in RoomTranscriptionSettings.svelte, so every room defaulted to English with no way to change it from the UI. OpenAI STT users in non-English environments received garbled output with ~30% confidence scores.

Changes

plugins/love-resources/src/components/RoomTranscriptionSettings.svelte

  • Uncomment the language selector antiGrid-row that was blocked behind <!-- ... -->
  • Add missing imports: ui (plugin reference, for ui.string.Language) and RoomLanguageSelector

plugins/love-resources/src/components/AddRoomPopup.svelte

  • Replace hardcoded language: 'en' with getDefaultLanguage() which reads navigator.language
  • Checks full locale first (zh-TW, en-GB, …), falls back to base language (zh, en, …), then to 'en' if not in the supported list

services/ai-bot/love-agent/src/deepgram/stt.ts

  • Restore private language: string = 'multi' (default preserves existing Nova-3 auto-detect behaviour)
  • Uncomment the updateLanguage() stop/restart implementation so language changes propagate to active connections
  • Wire this.language through getOptions() instead of hardcoded 'multi'
  • Remove the now-redundant commented-out local variable in processTrack

Behaviour after this change

Scenario Before After
Room language setting visible ❌ Hidden ✅ Shown in transcription settings
New room language default Always 'en' Browser locale (fallback 'en')
OpenAI STT language Always 'en' → garbled for non-English Follows room language setting
Deepgram STT language Always 'multi' (hardcoded) 'multi' by default; follows room language if changed
Mid-meeting language change (Deepgram) No-op Restarts connections with new language

Test plan

  • Open a Room's transcription settings — language selector row is visible
  • Change language in settings — selector persists after page refresh
  • Start a meeting in a non-English room with OpenAI STT — transcriptions are in the correct language
  • Create a new room from a non-English browser locale — room defaults to that locale
  • Deepgram: change room language mid-meeting — connections restart and use new language
  • Deepgram: leaving language at default — 'multi' auto-detect is unchanged

…am language support

The RoomLanguageSelector component (45 languages, flag emojis) was fully
built but commented out in RoomTranscriptionSettings.svelte, so all rooms
defaulted to English with no way to change it from the UI. OpenAI STT users
in non-English environments received garbled output (~30% confidence).

- RoomTranscriptionSettings.svelte: uncomment the language selector row;
  add missing imports for the ui plugin reference and RoomLanguageSelector
- AddRoomPopup.svelte: replace hardcoded 'en' default with browser locale
  (navigator.language), falling back to 'en' when the locale is not in the
  supported language list
- deepgram/stt.ts: restore updateLanguage() stop/restart implementation and
  wire this.language through getOptions() so Deepgram users can override the
  'multi' auto-detect default with a specific language when needed;
  default remains 'multi' to preserve existing behaviour

Fixes hcengineering#10532

Signed-off-by: Yulian Diaz <5605867+spatialy@users.noreply.github.com>
@huly-github-staging
Copy link

Connected to Huly®: UBERF-15625

@ArtyomSavchenko
Copy link
Member

Hi @kristina-fefelova
Could you please take a look at this PR?
Perhaps you remember better why language selector was disabled.

@kristina-fefelova
Copy link
Member

We did not use language selector because we use the nova-3 model with automatic language detection (English, Spanish, French, German, Hindi, Russian, Portuguese, Japanese, Italian and Dutch).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature: Enable transcription language selector in Room settings (currently commented out)

3 participants