Skip to content

berd-call: show names for code-named Siri voices - #401

Merged
johnmatthewtennant merged 3 commits into
mainfrom
jtennant/berd-call-voice-display-names
Oct 20, 2026
Merged

johnmatthewtennant merged 3 commits into
mainfrom
jtennant/berd-call-voice-display-names

Conversation

@johnmatthewtennant

@johnmatthewtennant johnmatthewtennant commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Sixteen newer Siri voices have a locale code for a name: en-US-F, en-US-G, en-AU-C/D, en-GB-C/D, de-DE-C/D, fr-FR-C/D, it-IT-C/D, pt-PT-A/B and zh-CN-C/D. berd-call voices list and the berd-call menu bar showed those codes, where macOS shows "Voice 7" or "Voice 6".

Each voices.list record now has a displayName. It is the catalog name for named voices (Aaron, Nora, Li-Mu). en-US-F and en-US-G are "Zack" and "Gigi", the names in their asset build paths (zack_v2_dual_prompt_with_fallback, gigi_test_2). The other code-named voices get "Siri" plus the name macOS shows, for example "Siri Voice 3" for en-GB-C. The menu bar uses it for each voice and for the current voice's heading. Commands and saved settings still use the exact name.

The "Voice N" name comes from the Siri catalog entry's localizedName. That entry is already read for the catalog, and it covers voices that aren't installed. AVSpeechSynthesisVoice won't work here, because it doesn't list Siri voices to binaries Apple didn't sign. The build-path names appear only in installed asset plists, so Zack and Gigi are listed in a small table instead of being read at runtime. The other 14 voices have no name on the system: the SiriTTSService voice maps and the framework name tables give only the code, gender and the "Voice N" order.

Related issue

N/A, none found.

Testing

  • Live on macOS 27: berd-call voices list --language en-US shows en-US-F → Zack and en-US-G → Gigi, with Aaron, Nora and Simone unchanged. Across all 49 catalog voices, only the 16 code-named ones change. The menu bar shows "Zack (en-US)" and a "Voice: Zack" heading.

johnmatthewtennant and others added 2 commits October 20, 2026 14:59
Sixteen newer Siri voices (en-US-F, en-US-G, en-GB-C, de-DE-D, ...)
have a locale code as their catalog name, so `berd-call voices list`
and the menu bar showed codes. Each voice record now has a
`displayName`: the catalog `name`, or for a code-named voice "Siri"
plus the localized name macOS shows ("Siri Voice 7"). The bridge reads
it from the catalog resource's `localizedName`, since
AVSpeechSynthesisVoice hides Siri voices from non-Apple binaries.
Commands still take the exact `name`.

Co-authored-by: Aaron <f425b86c3b780d43f8d9cf1802429d04dd985bf92eac44fca9468b5ad3887c5e@buzz.block.builderlab.xyz>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Their asset build paths (zack_v2_dual_prompt_with_fallback,
gigi_test_2) name them, so show those names rather than "Siri Voice 7"
and "Siri Voice 6". Other code-named voices keep "Siri Voice N".

Co-authored-by: Aaron <f425b86c3b780d43f8d9cf1802429d04dd985bf92eac44fca9468b5ad3887c5e@buzz.block.builderlab.xyz>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@johnmatthewtennant johnmatthewtennant changed the title berd-call: show "Siri Voice N" for code-named Siri voices berd-call: show names for code-named Siri voices Oct 20, 2026
Co-authored-by: Aaron <f425b86c3b780d43f8d9cf1802429d04dd985bf92eac44fca9468b5ad3887c5e@buzz.block.builderlab.xyz>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@johnmatthewtennant
johnmatthewtennant marked this pull request as ready for review October 20, 2026 20:32
@johnmatthewtennant
johnmatthewtennant requested a review from a team October 20, 2026 20:32

@morgmart morgmart left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Automated code review

APPROVE. The exact prepared three-dot comparison was reviewed statically. No concrete defects are present on the current changed lines. Supplied GitHub check evidence is structurally valid; required checks remain the merge-readiness authority.

Deterministic publication result: 0 blocking and 0 non-blocking inline finding(s) publishable; 0 duplicate(s) suppressed; 0 blocking screenshot-evidence requirement(s) in this review body.

Pending checks: 1 check(s) are not complete.

This approval reflects the completed code review only; merge readiness remains governed by the repository's required checks.

@johnmatthewtennant
johnmatthewtennant merged commit d1bf7e9 into main Oct 20, 2026
10 checks passed
@johnmatthewtennant
johnmatthewtennant deleted the jtennant/berd-call-voice-display-names branch October 20, 2026 20:56
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.

2 participants