给读不了屏幕的人朗读多语言紧急警报(ReachAloud)
来源:dev.to — 2026-09-07
📋 概述
DEV「慷慨周挑战」投稿,纪念 2026 年 8 月尼泊尔-西藏洪灾遇难者。作者明确承认 ReachAloud 不是早期预警系统——不探测洪水、不发送警报、不取代官方渠道,它是「最后一公里」的理解层:警报已以短信/横幅/警笛存在,它让每个人都能听懂。用 ElevenLabs 一个多语言模型朗读任何语言的文本;紧急广播模式用全屏高对比接管循环播放并同步滚动大字幕;支持离线(service worker 预缓存)、下载 MP3 分享。
🔑 核心要点
- 它只解决「理解」而非「预警」:在真实洪灾中——不识字的老人、失明者、不会尼泊尔语的外国徒步者——救命的文字警报以他们无法使用的形式抵达,工具就是让他们也能听懂的最后一段
- 语音是承重核心:整个产品就是那声音,故 TTS 不能是可选项;eleven_multilingual_v2 自动检测输入文本的语言,同一条代码路径无需按语言分支就能讲英/尼泊尔/马拉地/印地/阿拉伯/中文
- 两种模式保证演示难被弄坏:模式一预生成六个语言的静态 MP3(约耗 670 字符免费额度)永久服务零 API 调用;模式二「现在听」让用户粘贴免费 key、仅存 localStorage 直连 ElevenLabs,无需后端
- 无障碍工程是难点:广播需同时服务两种相反障碍——看不见的靠循环的大声语音、听不见的靠同步滚动的大号高对比字幕;绝不自动播放、复用单一 Web Audio context、循环最多三圈、三种方式可关闭、尊重 prefers-reduced-motion
- 离线正是关键时刻:service worker 预缓存外壳与六段剪辑、缓存优先,洪灾正是断网之时;诚实标注 CDN 字体与 CSS 不缓存会退化样式,但救人的核心音频仍可播放
💡 金句
In memory of the victims of the August 2026 Nepal-Tibet floods. ReachAloud exists so the next warning reaches everyone, in a voice they understand.
👍 0
👎 0
← 返回 dev.to 首页