2011-07-04 9 views
4

私はC#言語を使用してテキストエディタを設計し、通常のファイル機能の音声認識を実装しようとしていますが、これを実装することは可能です。 これまでに質問された質問を繰り返すことは大変申し訳ございません。 C#を使用して音声をテキストに変換する方法があるかどうかを知りたいだけです。 あなたの助けは本当に貴重です。 応答を待っています。 ありがとうございます。C#を使用してテキストにテキスト

+1

のSharpSphinx A C#バージョンを試してみてくださいスタックオーバーフローを歓迎します。現時点では正確ではありません。 [Whatever Happened to Voice Recognition?](http://www.codinghorror.com/blog/2010/06/whatever-happened-to-voice-recognition.html)をお読みください。 – naveen

答えて

0

Webサービスとしての音声認識に使用できるiSpeech APIもあります。

2

コード

をテキストに、音声から変換するためのC#およびSystem.Speechを使用して完全な例である2つの主な部分に分けることができる:

がSpeechRecognitionEngineオブジェクト(及びその必須要素)を構成 SpeechRecognizedイベントとSpeechHypothesizedイベントを処理します。

ステップ1:あなたのオブジェクトは、マイクからの音声を転写開始する準備ができている。この時点でSpeechRecognitionEngine

_speechRecognitionEngine = new SpeechRecognitionEngine(); 
_speechRecognitionEngine.SetInputToDefaultAudioDevice(); 
_dictationGrammar = new DictationGrammar(); 
_speechRecognitionEngine.LoadGrammar(_dictationGrammar); 
_speechRecognitionEngine.RecognizeAsync(RecognizeMode.Multiple); 

の設定。実際に結果にアクセスするには、いくつかのイベントを処理する必要があります。

ステップ2:取り扱いSpeechRecognitionEngineイベント

_speechRecognitionEngine.SpeechRecognized - =新しいEventHandlerの(SpeechRecognized)。 _speechRecognitionEngine.SpeechHypothesized - =新しいEventHandler(SpeechHypothesizing);

_speechRecognitionEngine.SpeechRecognized + =新しいEventHandler(SpeechRecognized); _speechRecognitionEngine.SpeechHypothesized + =新しいEventHandler(SpeechHypothesizing);エンジン ストリングrealTimeResults = e.Result.Textから

プライベートボイドSpeechHypothesizing(オブジェクト送信者、 SpeechHypothesizedEventArgs E){ ///リアルタイム結果。 }

プライベートボイドSpeechRecognized(オブジェクト送信者、SpeechRecognizedEventArgs E)エンジン列finalAnswer = e.Result.Textから{ ///最終的な答え。 }

これだけです。マイクの代わりに事前録音された.wavファイルを使用する場合は、

_speechRecognitionEngineを使用します。SetInputToWaveFile(pathToTargetWavFile);代わり

_speechRecognitionEngine.SetInputToDefaultAudioDeviceの

()。

これらのクラスにはさまざまなオプションがあり、詳細に調べる価値があります。あなたが使用することができます

http://ellismis.com/2012/03/17/converting-or-transcribing-audio-to-text-using-c-and-net-system-speech/

関連する問題