Files
UmbraAudio/samples/translations/deal_hunter_sample_ch1_ZH.json
B.D. Murphy b63bc5bd0a Fix language selector being invisible; correct sample utterance types
The dropdown was in the HTML all along and still could not be seen. Three
separate causes, found by measuring the rendered element rather than
trusting that the markup existed:

1. Clipped off-screen. The h1 is a flex row with no wrap. Measured at an
   800px viewport: the language span started at x=620 and ended at x=810,
   past the viewport edge, so only its first few pixels were painted. The
   project badge alone took 309px. Adding flex-shrink and truncating the
   badge did not fix it - there is genuinely no room in that row. The
   selector now gets its own bar directly under the header, and the
   project name ellipsises. Verified visible: x=181, right=341 in an
   800px viewport, 34px tall.

2. Empty on every other page. base.html rendered the select from a
   `languages` variable that almost no page supplies, so the login page
   and the rest of the app showed a 38px-wide dropdown with zero options -
   effectively invisible, and a dead control. Pages now opt in by
   overriding a header_bar block. Verified /, /speakers, /chapters-audio
   and /login all still render.

3. Browser cache made my own screenshot lie. It showed a stale Japanese
   string containing the word "decisiveness" that is in no file on disk.
   A cache-busted fetch confirmed the server is clean. Worth remembering:
   a screenshot taken through a warm cache is not evidence.

The screenshot also exposed a data bug. All 12 sample utterances carried
type "narration" - including Kainda, Duchess Victoria, Deal Hunter, Nanny
and Trader Romano, who are all speaking. Every row rendered a narration
badge and the file told UmbraTrans that six characters were not speaking.
SHAPE in build_sample_translations.py now marks 6 dialogue / 6 narration,
and the generated JSONs are regenerated to match.

Also removed a misleading issue. It reported "12 rendered clips have no
staleness marker" as a translation problem; the markers are absent because
render_lang_test.py does not write them, so it was sending the reader after
a defect that does not exist. Replaced with the honest one: only 12 of
4,319 translated and none confirmed - sample only, not publishable.

Suite: 721 passed, 8 pre-existing. ruff clean on changed regions.
2026-10-14 08:06:38 -07:00

84 lines
2.9 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"project": "DealHunterShip_4.0e_whole-to-audio",
"chapter_id": 1,
"chapter_title": "Sample / voice introduction",
"language_name": "Chinese",
"language_code": "zh",
"tts_engine": "Qwen3-TTS",
"is_source_language": false,
"provenance": "LLM-produced sample, single pass, NOT the multi-pass pipeline. Requires native-speaker review.",
"utterances": [
{
"index": 0,
"speaker": "Narrator",
"type": "narration",
"text": "欢迎收听有声书《Deal Hunter》!我是旁白,接下来给你介绍几段你即将听到的声音。凯因达公主,打个招呼吧!"
},
{
"index": 1,
"speaker": "Kainda",
"type": "dialogue",
"text": "大家好!我是凯因达公主,本故事的主人公。我的冒险很快就要开始了。"
},
{
"index": 2,
"speaker": "Narrator",
"type": "narration",
"text": "谢谢你,凯因达!维多利亚女爵,打个招呼吧!"
},
{
"index": 3,
"speaker": "Duchess Victoria",
"type": "dialogue",
"text": "大家好!我是维多利亚女爵,也是凯因达的姑母。我非常期待和你一起分享这段冒险!"
},
{
"index": 4,
"speaker": "Narrator",
"type": "narration",
"text": "你还会听到其他几位声音。Deal Hunter,也就是「Hunter」,打个招呼吧!"
},
{
"index": 5,
"speaker": "Deal Hunter",
"type": "dialogue",
"text": "大家好!我是操控这艘飞船的人工智能。平常大家都叫我「Hunter」。我非常期待用这个故事为你带来乐趣。我的一位机器人同伴——凯因达给她起名叫「南妮」。南妮,打个招呼吧!"
},
{
"index": 6,
"speaker": "Nanny",
"type": "dialogue",
"text": "大家好!凯因达叫我「南妮」,因为这比我的机器人编号好叫。我会尽力帮上忙!"
},
{
"index": 7,
"speaker": "Narrator",
"type": "narration",
"text": "再介绍一位声音。打个招呼吧!"
},
{
"index": 8,
"speaker": "Trader Romano",
"type": "dialogue",
"text": "大家好,我是罗曼诺!我跟 Deal Hunter 做回收物交易,收购价格一向最优。欢迎到空间站来找我交易!"
},
{
"index": 9,
"speaker": "Narrator",
"type": "narration",
"text": "这些声音以及更多声音,都是由 B·D·墨菲在他的 Umbra Audio 系统中创作出来的,用以为他的原创小说《Deal Hunter》配音。这个项目的目标是让人工智能辅助的有声书制作成为可能。"
},
{
"index": 10,
"speaker": "Narrator",
"type": "narration",
"text": "我们大家都期待用《Deal Hunter》的有声版为你带来享受!"
},
{
"index": 11,
"speaker": "Deal Hunter",
"type": "dialogue",
"text": "感谢收听!"
}
]
}