6

私が達成しようとしていること:

  • C# で RTP ストリームをキャプチャする
  • そのストリームを System.Speech.SpeechRecognitionEngine に転送します

マイク入力を受け取り、Microsoft 音声認識を使用して音声を処理し、応答をロボットに返す Windows マシンに送信する Linux ベースのロボットを作成しています。ロボットはサーバーから何百マイルも離れている可能性があるため、これをインターネット経由で行いたいと考えています。

私がこれまでに行ったこと:

  • ロボットに、FFmpeg を使用して MP3 形式 (他の形式も利用可能) でエンコードされた RTP ストリームを生成させます (ロボットは、Arch Linux を実行している Raspberry Pi で実行されています)。
  • VLC ActiveX コントロールを使用してクライアント コンピューターでキャプチャされたストリーム
  • SpeechRecognitionEngine に使用可能なメソッドがあることがわかりました。
    1. 認識機能.SetInputToWaveStream()
    2. 認識機能.SetInputToAudioStream()
    3. 認識機能.SetInputToDefaultAudioDevice()
  • アプリの出力をラインインに送信するために JACK を使用することを検討しましたが、完全に混乱していました。

助けが必要なこと:

VLC から SpeechRecognitionEngine にストリームを実際に送信する方法に行き詰まっています。VLC はストリームをまったく公開しません。ストリームをキャプチャして、そのストリーム オブジェクトを SpeechRecognitionEngine に渡す方法はありますか? それともRTPはここでの解決策ではありませんか?

よろしくお願いします。

4

3 に答える 3