Categories: 工作・開発

ラズパイで難聴の父のために電話と会話をリアルタイム字幕化する装置を自作、オフライン動作にも対応

高齢者の難聴は深刻な問題だ。補聴器で改善できるケースもあるが、特に固定電話での通話は相手の声が聞き取りにくく、コミュニケーションの障壁になりやすい。スマートフォンの字幕機能は存在するものの、固定電話には対応していない。

ある開発者が、難聴の父親のためにRaspberry Pi 5と10インチタッチスクリーンを組み合わせた字幕表示装置を製作した。固定電話の通話内容と部屋の会話をリアルタイムで文字起こしし、大きく読みやすいテキストで画面に表示する。電話機の横に置いておけば、電源を入れるだけで動作する。

音声入力は2系統を使い分ける。固定電話の通話にはFi3001A USB電話レコーダーを使い、RJ-11端子から音声を取得する。部屋での対面会話にはTONOR G11 USBコンファレンスマイクを使う。電話が鳴ると自動的に電話側の音声入力に切り替わり、通話終了後10秒で部屋のマイクに戻る仕組みだ。

音声認識エンジンは3段階のフォールバック構成を採用した。通常はクラウドベースのDeepgramを使い、約200ミリ秒の遅延で90~95%の認識精度を得る。インターネット接続が切れた場合はfaster-whisperに切り替わり(遅延約3秒、精度約85%)、さらにそれも使えない場合はVoskで動作する(遅延約300ミリ秒、精度約75%)。

UIはPyQt6で構築したフルスクリーン表示で、フォントサイズをS/M/Lの3段階で変更できる。背景と文字の配色は白地に黒、黒地に白、黒地に黄色、黒地に緑の4種類を用意した。誰も話していないときはスプリットフラップ式の時計を表示し、22時から7時の間は自動で減光する。

信頼性にも配慮している。systemdサービスとして動作し、ウォッチドッグタイマーが60秒ごとにプロセスを監視する。2分間無音が続くと音声認識エンジンを自動再起動し、ディスプレイやネットワーク接続の異常も検知して復旧する。高齢者が日常的に使う装置として、電源を入れたら何も操作しなくても動き続ける設計だ。

プロジェクトはMITライセンスで公開されている。Raspberry Pi 5(8GB)、10インチタッチスクリーン(1280×800ピクセル)、Fi3001A USBレコーダー、TONOR G11マイクが主な構成部品だ。ソフトウェアはPython 3.13で記述されており、音声認識のAPIキーを設定すればセットアップスクリプトで導入できる。難聴者向けの市販キャプション電話は高価なものが多いが、このアプローチなら既存の固定電話をそのまま使いつつ、手頃な部品費で字幕機能を追加できる。

関連情報

telephone-and-conversation-transcriber(GitHub)

Raspberry Pi
¥23,497 (2026/02/18 22:46時点 | Amazon調べ)
FabScene編集部

FabScene編集部