概要
VoiceFloatは、グローバルショートカットで音声入力を始め、認識結果を現在のカーソル位置へ入力するmacOS常駐アプリである。ローカル音声認識、文章整形、貼り付けまでを一つの流れとして扱い、キーボードから手を離したまま短い文章を入力できることを目指した。
背景・目的
AppStoreには精度の高い音声入力ソフトがいくつかリリースされている。しかしそれらは月額利用料がかかり、維持費が高い。私のMacBookは処理能力が高く、ローカルで十分文字起こしすることも可能であるため、似たような音声入力ソフトを制作することにした。
制作で考えたこと
画面上で大きなアプリを開くと、入力したい元の作業を隠してしまう。VoiceFloatでは、録音、文字起こし、整形、完了を小さなフローティング表示で知らせ、結果は前面アプリのカーソル位置へ入れる設計にした。
実装・制作内容
SwiftとAppKitを中心に、AVAudioEngineで録音し、WhisperKitによるローカル音声認識を実装した。必要に応じてOpenAIによる文章整形を組み合わせ、ショートカット起動、Keychainでの設定管理、履歴、クリップボード経由の貼り付けまでをつないでいる。認識モデルの準備状況、聞き取り、文字起こし、整形、完了を状態ごとに表示する。



結果・学び
M2 Max・96GBメモリのMacでも、ローカル認識と整形をつなぐと待ち時間が生じ、実用にはチューニングが必要だった。精度とリアルタイム性の両方を高い水準で成立させているChatGPTやPerplexityの音声入力を使うと、プロダクトとしての完成度の高さがよく分かる。音声入力はモデル選択だけでなく、遅延、状態表示、整形品質、貼り付けまでを一体で設計する必要があると学んだ。





