teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

6

画像の添付

2018/07/19 04:42

投稿

kimasa
kimasa

スコア7

title CHANGED
File without changes
body CHANGED
@@ -95,4 +95,6 @@
95
95
  }
96
96
 
97
97
  Dllがみつからないということなので、調べると
98
- Macでは.soを参照するみたいなのですが、Gitには.dllや.soのファイルは見当たりませんでした。
98
+ Macでは.soを参照するみたいなのですが、Gitには.dllや.soのファイルは見当たりませんでした。
99
+
100
+ ![例外が出ているスクリーンショットになります](1437a1afa0f52f3b20c90637fd7b3cc0.png)

5

修正

2018/07/19 04:42

投稿

kimasa
kimasa

スコア7

title CHANGED
File without changes
body CHANGED
File without changes

4

文の修正

2018/07/18 08:32

投稿

kimasa
kimasa

スコア7

title CHANGED
File without changes
body CHANGED
@@ -14,15 +14,15 @@
14
14
  {
15
15
  class RecordModel : IAudioRecorder
16
16
  {
17
- #region 変数
17
+ region 変数
18
18
 
19
19
  private WaveInEvent waveIn;
20
20
  private bool isStoped = false;
21
21
  private bool isDisposed = false;
22
22
 
23
- #endregion
23
+ endregion
24
24
 
25
- #region メソッド
25
+ region メソッド
26
26
 
27
27
  public void Start()
28
28
  {

3

文の修正

2018/07/18 08:06

投稿

kimasa
kimasa

スコア7

title CHANGED
File without changes
body CHANGED
@@ -84,13 +84,13 @@
84
84
  if (this.isStoped) return;
85
85
  this.RecordDataAvailabled?.Invoke(this, new RecordDataAvailabledEventArgs(e.Buffer, e.BytesRecorded));
86
86
  }
87
- #endregion
87
+ endregion
88
88
 
89
- #region イベント
89
+ region イベント
90
90
 
91
91
  public event RecordDataAvailabledEventHandler RecordDataAvailabled;
92
92
 
93
- #endregion
93
+ endregion
94
94
  }
95
95
  }
96
96
 

2

文の修正

2018/07/18 08:05

投稿

kimasa
kimasa

スコア7

title CHANGED
File without changes
body CHANGED
@@ -39,7 +39,7 @@
39
39
  this.waveIn.DataAvailable += this.OnDataAvailable;
40
40
  this.waveIn.WaveFormat = new WaveFormat(16000, 16, 1);
41
41
 
42
- this.waveIn.StartRecording();
42
+ this.waveIn.StartRecording(); //ここでSystem.DllNotFoundExceptionがでます
43
43
 
44
44
  }
45
45
 
@@ -92,4 +92,7 @@
92
92
 
93
93
  #endregion
94
94
  }
95
- }
95
+ }
96
+
97
+ Dllがみつからないということなので、調べると
98
+ Macでは.soを参照するみたいなのですが、Gitには.dllや.soのファイルは見当たりませんでした。

1

プログラムの記載

2018/07/18 08:04

投稿

kimasa
kimasa

スコア7

title CHANGED
File without changes
body CHANGED
@@ -1,2 +1,95 @@
1
1
  Visual Studio 2017 for Mac を用いてC#を書いています。
2
- ストリーミング音声認識をしたく、調べているとここ(http://kmycode.hatenablog.jp/entry/2017/04/11/220108)からサンプルコードを見つけました。Gitはこちらになります。(https://github.com/kmycode/BP_CloudSpeechTest)
2
+ ストリーミング音声認識をしたく、調べているとここ(http://kmycode.hatenablog.jp/entry/2017/04/11/220108)からサンプルコードを見つけました。Gitはこちらになります。(https://github.com/kmycode/BP_CloudSpeechTest)
3
+
4
+ プログラムはこちらになります
5
+
6
+ using NAudio.Wave;
7
+ using System;
8
+ using System.Collections.Generic;
9
+ using System.Linq;
10
+ using System.Text;
11
+ using System.Threading.Tasks;
12
+
13
+ namespace BP_CloudSpeechTest
14
+ {
15
+ class RecordModel : IAudioRecorder
16
+ {
17
+ #region 変数
18
+
19
+ private WaveInEvent waveIn;
20
+ private bool isStoped = false;
21
+ private bool isDisposed = false;
22
+
23
+ #endregion
24
+
25
+ #region メソッド
26
+
27
+ public void Start()
28
+ {
29
+ if (this.isDisposed)
30
+ {
31
+ throw new ObjectDisposedException("RecordModel");
32
+ }
33
+ if (this.waveIn != null)
34
+ {
35
+ return;
36
+ }
37
+
38
+ this.waveIn = new WaveInEvent();
39
+ this.waveIn.DataAvailable += this.OnDataAvailable;
40
+ this.waveIn.WaveFormat = new WaveFormat(16000, 16, 1);
41
+
42
+ this.waveIn.StartRecording();
43
+
44
+ }
45
+
46
+ public void Stop()
47
+ {
48
+ if (this.isDisposed)
49
+ {
50
+ throw new ObjectDisposedException("RecordModel");
51
+ }
52
+ if (this.isStoped)
53
+ {
54
+ return;
55
+ }
56
+
57
+ this.waveIn.StopRecording();
58
+ this.isStoped = true;
59
+
60
+ this.waveIn.Dispose();
61
+
62
+ this.waveIn = null;
63
+ }
64
+
65
+ public void Dispose()
66
+ {
67
+ if (this.isDisposed)
68
+ {
69
+ throw new ObjectDisposedException("RecordModel");
70
+ }
71
+
72
+ this.Stop();
73
+ GC.SuppressFinalize(this);
74
+ this.isDisposed = true;
75
+ }
76
+
77
+ ~RecordModel()
78
+ {
79
+ this.Dispose();
80
+ }
81
+
82
+ private void OnDataAvailable(object sender, WaveInEventArgs e)
83
+ {
84
+ if (this.isStoped) return;
85
+ this.RecordDataAvailabled?.Invoke(this, new RecordDataAvailabledEventArgs(e.Buffer, e.BytesRecorded));
86
+ }
87
+ #endregion
88
+
89
+ #region イベント
90
+
91
+ public event RecordDataAvailabledEventHandler RecordDataAvailabled;
92
+
93
+ #endregion
94
+ }
95
+ }