質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Q&A

解決済

1回答

3256閲覧

google cloud のspeech to text API のサンプルコードを、windows formアプリで動かしたい

ffshtt

総合スコア16

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

0グッド

0クリップ

投稿2019/07/09 14:01

こんばんは。
表題の通り、googleのspeech to text APIのサンプルコード(音声ファイルを文字起しするコード)を、
c#のwindows formアプリで動かしたいです。

web上のサンプルコードは、下記に記載されているとおりですが、
これはコンソールアプリケーションで動作します。
https://cloud.google.com/speech-to-text/docs/quickstart-client-libraries

これを、windows formアプリで、例えばボタンをクリックしたときに動作するようにしたい場合、
下記のように書いてみたのですが、、、

csharp

1private void button1_Click(object sender, EventArgs e) 2 { 3 Environment.SetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS", "hogehoge.json", EnvironmentVariableTarget.Process); 4 var speech = SpeechClient.Create(); 5 var response = speech.Recognize(new RecognitionConfig() 6 { 7 Encoding = RecognitionConfig.Types.AudioEncoding.Linear16, 8 SampleRateHertz = 16000, 9 LanguageCode = "ja", 10 }, RecognitionAudio.FromFile("sample.raw")); 11 foreach (var result in response.Results) 12 { 13 foreach (var alternative in result.Alternatives) 14 { 15 Console.WriteLine(alternative.Transcript); 16 } 17 } 18 Console.ReadKey(); 19 }

var speech = SpeechClient.Create();のところで、次のようなエラーが出ます。

"System.IO.FileLoadException: 'ファイルまたはアセンブリ 'Google.Apis.Auth, Version=1.21.0.0, Culture=neutral, PublicKeyToken=4...(省略)'、またはその依存関係の 1 つが読み込めませんでした。見つかったアセンブリのマニフェスト定義はアセンブリ参照に一致しません。 (HRESULT からの例外:0x80131040)'"

コンソールアプリで書くと、エラーが出ず、正常に認識結果が返ってくるのですが、
なぜwindows formアプリで書くとこのようにエラーになるのでしょうか。

ご教授お願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

papinianus

2019/07/09 22:39

.netのバージョンは?
ffshtt

2019/07/11 15:08

お返事が遅れてすみません。 コメントありがとうございます。 .netのバージョンは4.6で、vs2017を使ってますが、 ライブラリ関係をいじったら普通に動きました。 どうも依存関係の問題...?だったようで(本当にそうかは不明ですが)。
guest

回答1

0

自己解決

新しく作成したプロジェクトで、1からライブラリをいれたら、無事に動きました。
ありがとうございました。

投稿2019/07/11 15:09

ffshtt

総合スコア16

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問