RealtimeSTT: 音声活動検知とウェイクワードを統合したPython音声文字起こしライブラリ
RealtimeSTT: 音声活動検知とウェイクワードを統合したPython音声文字起こしライブラリ
解決する課題
RealtimeSTTは、Pythonアプリケーションに音声文字起こし(STT)機能を統合するための合理化された方法を提供します。音声活動検知(VAD)、オーディオストリームの管理、およびウェイクワードの実装という複雑なプロセスを簡略化し、開発者が最小限のコードで音声をテキストに変換できるようにします。
仕組み
このライブラリは AudioToTextRecorder クラスを中心に構成されており、マイクから直接音声をキャプチャするか、外部ソース(ファイルやwebsocketsなど)からオーディオチャンクを受け取ることができます。オーディオの文字起こしには、デフォルトで faster_whisper を使用しますが、kroko_onnx や whisper.cpp など、さまざまな他のエンジンをサポートしています。また、VAD(WebRTCまたはSilero経由)を使用して音声の開始と終了を検知し、オプションのウェイクワード検知(PorcupineまたはOpenWakeWord経由)によって録音を開始させることができます。
対象ユーザー
このツールは、AIアシスタント、ディクテーションソフトウェア、ブラウザベースのストリーミングサーバー、および高速なローカル音声認識を必要とする迅速なプロトタイプを構築している開発者向けに設計されています。
ハイライト
- 柔軟なオーディオ入力: 直接的なマイクアクセスと外部PCMオーディオチャンクの両方をサポートします。
- 複数のエンジンをサポート: faster-whisper、OpenAI Whisper、およびKroko-ONNXを含む、幅広い文字起こしエンジンと互換性があります。
- 統合されたVADとウェイクワード: 音声活動検知とカスタマイズ可能なウェイクワード起動の組み込みサポートを提供します。
- イベント駆動型アーキテクチャ: 録音、VADの状態、および文字起こし更新のためのコールバックを提供します。
- Webサーバーの例: マルチユーザーセッションの分離を備えたブラウザベースのストリーミングのためのFastAPIリファレンスサーバーが含まれています。
Sources
- undefinedKoljaB/RealtimeSTT