whisper-windows-mcp 2.2.2 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{LICENSE-COMMERCIAL.md → COMMERCIAL-LICENSE.md} +58 -58
- package/LICENSE +40 -40
- package/PRIVACY.es.md +192 -135
- package/PRIVACY.id.md +192 -135
- package/PRIVACY.ja.md +192 -135
- package/PRIVACY.ko.md +192 -135
- package/PRIVACY.md +192 -135
- package/PRIVACY.pl.md +192 -135
- package/PRIVACY.pt-BR.md +192 -135
- package/PRIVACY.ro.md +192 -135
- package/PRIVACY.uk.md +192 -135
- package/PRIVACY.vi.md +192 -135
- package/README.es.md +74 -48
- package/README.id.md +77 -40
- package/README.ja.md +100 -72
- package/README.ko.md +63 -37
- package/README.md +76 -39
- package/README.pl.md +77 -40
- package/README.pt-BR.md +71 -45
- package/README.ro.md +78 -41
- package/README.uk.md +77 -40
- package/README.vi.md +67 -41
- package/ROADMAP.es.md +110 -48
- package/ROADMAP.id.md +77 -104
- package/ROADMAP.ja.md +84 -123
- package/ROADMAP.ko.md +73 -97
- package/ROADMAP.pl.md +104 -44
- package/ROADMAP.pt-BR.md +78 -102
- package/ROADMAP.ro.md +102 -44
- package/ROADMAP.uk.md +65 -97
- package/ROADMAP.vi.md +78 -102
- package/SECURITY.es.md +64 -47
- package/SECURITY.id.md +64 -47
- package/SECURITY.ja.md +64 -47
- package/SECURITY.ko.md +64 -47
- package/SECURITY.md +21 -4
- package/SECURITY.pl.md +64 -47
- package/SECURITY.pt-BR.md +64 -47
- package/SECURITY.ro.md +64 -47
- package/SECURITY.uk.md +64 -47
- package/SECURITY.vi.md +64 -47
- package/TROUBLESHOOTING.es.md +309 -323
- package/TROUBLESHOOTING.id.md +333 -323
- package/TROUBLESHOOTING.ja.md +399 -286
- package/TROUBLESHOOTING.ko.md +309 -323
- package/TROUBLESHOOTING.pl.md +355 -323
- package/TROUBLESHOOTING.pt-BR.md +309 -323
- package/TROUBLESHOOTING.ro.md +355 -323
- package/TROUBLESHOOTING.uk.md +369 -323
- package/TROUBLESHOOTING.vi.md +309 -323
- package/dist/index.js +591 -216
- package/package.json +45 -45
- package/patch_roadmaps.py +0 -72
package/TROUBLESHOOTING.ja.md
CHANGED
|
@@ -1,286 +1,399 @@
|
|
|
1
|
-
# whisper-windows-mcp
|
|
2
|
-
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
## 簡易チェックリスト
|
|
6
|
-
|
|
7
|
-
詳しい調査の前に、以下をすべて確認してください:
|
|
8
|
-
|
|
9
|
-
- `claude_desktop_config.json`のパスに**バックスラッシュを2つ**使用している(`C:\\whisper
|
|
10
|
-
- `WHISPER_CLI_PATH`に指定したパスに`whisper-cli.exe`が存在する
|
|
11
|
-
- `WHISPER_MODEL`に指定したパスにモデル`.bin`ファイルが存在する
|
|
12
|
-
- FFmpegがインストールされPATH
|
|
13
|
-
- 設定ファイル編集後にClaude Desktop
|
|
14
|
-
- 設定 → 開発者でwhisper
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
##
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
1.
|
|
23
|
-
2.
|
|
24
|
-
3.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
##
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
1
|
+
# トラブルシューティング — whisper-windows-mcp
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
## 簡易チェックリスト
|
|
6
|
+
|
|
7
|
+
詳しい調査の前に、以下をすべて確認してください:
|
|
8
|
+
|
|
9
|
+
- `claude_desktop_config.json`のパスに**バックスラッシュを2つ**使用している(`C:\\whisper\\Release\\whisper-cli.exe`)
|
|
10
|
+
- `WHISPER_CLI_PATH`に指定したパスに`whisper-cli.exe`が存在する
|
|
11
|
+
- `WHISPER_MODEL`に指定したパスにモデル`.bin`ファイルが存在する
|
|
12
|
+
- FFmpegがインストールされPATHが通っている(ターミナルで`ffmpeg -version`が動作する)
|
|
13
|
+
- 設定ファイル編集後にClaude Desktopを**完全に再起動**した(システムトレイから終了、ウィンドウを閉じるだけではない)
|
|
14
|
+
- 設定 → 開発者でwhisperが**緑色の実行中バッジ**で表示されている
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## インストールと起動
|
|
19
|
+
|
|
20
|
+
### Claude Desktop → 設定 → 開発者にWhisperが表示されない
|
|
21
|
+
|
|
22
|
+
1. Claude Desktop → 設定 → 開発者 → 設定を編集を開く
|
|
23
|
+
2. JSONが有効であることを確認 — 不明な場合は[jsonlint.com](https://jsonlint.com)に貼り付けて確認
|
|
24
|
+
3. `WHISPER_CLI_PATH`と`WHISPER_MODEL`が実際に存在するファイルを指していることを確認
|
|
25
|
+
4. システムトレイからClaude Desktopを終了(トレイアイコンを右クリック → 終了)
|
|
26
|
+
5. Claude Desktopを再起動して再確認
|
|
27
|
+
|
|
28
|
+
Whisperは表示されているがエラーバッジが表示されている場合:
|
|
29
|
+
- Claudeに*「whisperの設定を確認して」*と聞く — `check_config`ツールが具体的なエラーメッセージを返す
|
|
30
|
+
- Claude Desktop → 設定 → 開発者 → サーバー名をクリックしてエラーログを確認
|
|
31
|
+
|
|
32
|
+
### 「whisper-cli.exeが見つからない」エラー
|
|
33
|
+
|
|
34
|
+
`WHISPER_CLI_PATH`のパスがバイナリの実際の場所と一致していません。
|
|
35
|
+
|
|
36
|
+
デフォルトの期待パス:`C:\whisper\Release\whisper-cli.exe`
|
|
37
|
+
|
|
38
|
+
ファイルの存在を確認:
|
|
39
|
+
```powershell
|
|
40
|
+
Test-Path "C:\whisper\Release\whisper-cli.exe"
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
`True`が返されるべきです。`False`が返された場合は、リリースzipを`C:\whisper\Release\`に展開するか、設定の`WHISPER_CLI_PATH`を実際の場所に合わせて更新してください。
|
|
44
|
+
|
|
45
|
+
### 「モデルが見つからない」エラー
|
|
46
|
+
|
|
47
|
+
`WHISPER_MODEL`のパスが実際のモデルファイルの場所または名前と一致していません。
|
|
48
|
+
|
|
49
|
+
モデルディレクトリを確認:
|
|
50
|
+
```powershell
|
|
51
|
+
Get-ChildItem "C:\whisper\models\"
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
量子化サフィックスを含む完全なファイル名が必要です(例:`ggml-large-v3-turbo-q5_0.bin`、`ggml-large-v3-turbo.bin`ではない)。モデルがインストールされていない場合は、Claude Desktopで`download_model`を使用してください。
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## GPU加速
|
|
59
|
+
|
|
60
|
+
### 文字起こしが遅い — CPUのみ、GPUを使用していない
|
|
61
|
+
|
|
62
|
+
Claudeに*「システムハードウェアを確認して」*と聞く
|
|
63
|
+
|
|
64
|
+
`check_system`ツールがwhisperバイナリディレクトリに`ggml-vulkan.dll`が存在するかどうかを確認します。DLLが見つからない場合は、GPUに関わらずCPUのみで動作しています。
|
|
65
|
+
|
|
66
|
+
**修正方法:** [リリースページ](https://github.com/eviscerations/whisper-windows-mcp/releases/tag/v1.4.0)から`whisper-vulkan-win-x64.zip`をダウンロードして`C:\whisper\Release\`に展開してください。zipにはDLLが含まれています — `whisper-cli.exe`と同じディレクトリに置く必要があります。
|
|
67
|
+
|
|
68
|
+
### GPUが検出されているが文字起こし中の使用率が0%
|
|
69
|
+
|
|
70
|
+
バイナリは動作しているがGPUにディスパッチされていません。通常の原因:
|
|
71
|
+
- Vulkan SDKがインストールされていないか、GPUドライバーがVulkanインターフェースを公開していない
|
|
72
|
+
- GPUがVulkan 1.0より古い(まれ — 2016年以降のほとんどのGPUはサポート)
|
|
73
|
+
|
|
74
|
+
Vulkanサポートを確認:
|
|
75
|
+
```powershell
|
|
76
|
+
vulkaninfo
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
出力があればVulkanが利用可能です。`vulkaninfo`が失敗する場合は、GPUベンダーのサイトから最新のGPUドライバーをインストールしてください。
|
|
80
|
+
|
|
81
|
+
### VRAMが実際のサイズの半分として報告される(AMD)
|
|
82
|
+
|
|
83
|
+
AMDのGPUでの既知のWindowsの報告上の問題です。実際の処理に使用可能なVRAMは`wmic`が報告する値の通常2倍です。モデルの推奨が過度に保守的になる場合があります — 推奨より大きなモデルを試して文字起こしが正常に完了するか確認できます。
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## 文字起こし品質
|
|
88
|
+
|
|
89
|
+
### 出力に幻覚テキストや繰り返しフレーズが含まれる
|
|
90
|
+
|
|
91
|
+
Whisperは無音または低品質の音声セグメントで幻覚を起こすことがあります。ツールはデフォルトで`--max-context 0`と`--no-speech-thold 0.6`を適用してこれを最小化しています。
|
|
92
|
+
|
|
93
|
+
追加のアプローチ:
|
|
94
|
+
- `temperature=0.2`を使用 — わずかなランダム性がノイズの多い音声での幻覚ループを解消するのに役立つ
|
|
95
|
+
- VAD(音声活動検出)モデルを使用:Silero VADモデルの`.bin`ファイルをダウンロードして`vad_model`としてパスを渡す。これが無音区間のある録音での幻覚に対して最も効果的な修正
|
|
96
|
+
- より大きなモデル(`large-v3`または`large-v3-turbo`)を使用 — 小さいモデルは難しい音声でより多く幻覚する
|
|
97
|
+
- `prompt`でコンテキストを設定:*「これはソフトウェアエンジニアリングについてのポッドキャストインタビューです。」*
|
|
98
|
+
|
|
99
|
+
### 文字起こし出力が空またはとても短い
|
|
100
|
+
|
|
101
|
+
Claudeに*「このファイルを分析して」*(`analyze_media`)と聞き、ファイルに音声コンテンツがあり認識されたフォーマットであることを確認してください。
|
|
102
|
+
|
|
103
|
+
FFprobeが音声を報告しているが文字起こしが何も生成しない場合:
|
|
104
|
+
- ファイルが設定された`language`パラメーターと一致しない言語である可能性がある
|
|
105
|
+
- `language=auto`を試してWhisperに言語を検出させる
|
|
106
|
+
- 音声が小さすぎるか過度に処理されている可能性がある — 文字起こしには聞き取れる音声が必要
|
|
107
|
+
|
|
108
|
+
### タイムスタンプモードの出力がSRTと異なる
|
|
109
|
+
|
|
110
|
+
`timestamps`モードでは、出力はwhisperのstdoutにプレーンな`[HH:MM:SS.mmm --> HH:MM:SS.mmm] テキスト`の行として出力されます。`srt`モードでは、whisperは番号付きSRTブロックとしてフォーマットします。2つのパスが異なる出力フラグを使用するため、セグメントの境界が若干異なる場合があります。どちらも有効です — 字幕ファイル形式が必要な場合は`srt`または`vtt`を、生のタイムスタンプ付きテキストが必要な場合は`timestamps`を使用してください。
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## プライバシーモードと同意ゲート
|
|
115
|
+
|
|
116
|
+
### 文字起こし前に同意プロンプトが表示されない
|
|
117
|
+
|
|
118
|
+
同意ゲートは標準モードで**セッションに1回**表示されます。このセッション(最後のClaude Desktop再起動以降)で既に文字起こしを確認した場合は、再度表示されません。
|
|
119
|
+
|
|
120
|
+
ゲートが表示されない他の理由:
|
|
121
|
+
- 設定に`WHISPER_CONSENT_ACKNOWLEDGED=true`が設定されている — これはゲートを完全に抑制する
|
|
122
|
+
- `WHISPER_PRIVACY_MODE=true`が設定されている — プライバシーモードは同意ゲートではなく独自の操作ごとのゲートを使用する
|
|
123
|
+
- 既に完了したブロッキング文字起こしの進捗を確認している — ゲートはジョブ開始時に消費された
|
|
124
|
+
|
|
125
|
+
**ゲートを再度表示するには:** Claude Desktopを完全に再起動してください(システムトレイから終了して再起動)。
|
|
126
|
+
|
|
127
|
+
### Claudeが確認なしにファイルを処理している
|
|
128
|
+
|
|
129
|
+
設定に`WHISPER_CONSENT_ACKNOWLEDGED=true`がある場合、ゲートは意図的に抑制されています。プライバシーへの影響を確認済みでリマインダーが不要なユーザーへの意図した動作です。
|
|
130
|
+
|
|
131
|
+
設定されていないのにClaudeが確認なしに進んだ場合、セッションゲートは同じセッション内の以前の文字起こしで消費されています。ゲートはセッションに1回表示されます。
|
|
132
|
+
|
|
133
|
+
セッション状態に関わらずすべての文字起こしで操作ごとの確認が必要な場合は、プライバシーモードを有効にしてください:`privacy_mode=true`を渡すか、設定に`WHISPER_PRIVACY_MODE=true`を設定してください。
|
|
134
|
+
|
|
135
|
+
### プライバシーモードが有効だが1つのトランスクリプトを読みたい
|
|
136
|
+
|
|
137
|
+
その特定の呼び出しに対して`privacy_mode=false`を文字起こしツールに直接渡してください。これはその1回の呼び出しに対してのみグローバルの`WHISPER_PRIVACY_MODE=true`設定を上書きします:
|
|
138
|
+
|
|
139
|
+
- *「このファイルを文字起こしして、privacy_mode=false」*
|
|
140
|
+
|
|
141
|
+
再起動は不要です。上書きはその単一のツール呼び出しにのみ適用されます。
|
|
142
|
+
|
|
143
|
+
### プライバシーモードがすべてのファイルの前に確認を求める
|
|
144
|
+
|
|
145
|
+
これは正しい意図された動作です。プライバシーモードは操作ごとの同意が必要です — ゲートはすべての文字起こし前に表示され、プライバシーモードが有効な間はバイパスできません。
|
|
146
|
+
|
|
147
|
+
多くのファイルをper-fileの確認なしに文字起こしする必要があり、コンテンツが機密でない場合は、プライバシーモードを無効にしてください:
|
|
148
|
+
- 設定から`WHISPER_PRIVACY_MODE=true`を削除してClaude Desktopを再起動
|
|
149
|
+
- または特定の機密でないファイルに対してper-callで`privacy_mode=false`を渡す
|
|
150
|
+
|
|
151
|
+
### プライバシーモードは毎回確認するのに同意ゲートは1回だけなのはなぜ?
|
|
152
|
+
|
|
153
|
+
2つのゲートは異なる要件を持つ異なるユーザーに対応しています。
|
|
154
|
+
|
|
155
|
+
**同意ゲート**(標準モード)は一回限りの情報開示です。トランスクリプトテキストがClaudeのAPIに送信されることを理解したら、このセッション中に再度知らされる必要はありません。
|
|
156
|
+
|
|
157
|
+
**プライバシーモードゲート**は毎回表示されます。これを必要とする人々 — 医療提供者、弁護士、金融の専門家 — はコンプライアンスワークフローの一環として操作ごとの肯定的な確認が必要だからです。抑制することは目的を損ないます。
|
|
158
|
+
|
|
159
|
+
### バックグラウンドジョブと同意ゲート
|
|
160
|
+
|
|
161
|
+
標準モードでのバックグラウンド文字起こし(`background=true`)では、同意ゲートはジョブ開始時の`transcribe_audio`ではなく、トランスクリプトが返される`check_progress`完了時に表示されます。ジョブ開始時点では、トランスクリプトはまだ存在しません。ジョブ開始前にゲートを表示すると、音声処理を不必要にブロックすることになります。ゲートはトランスクリプトテキストが初めてAPIに返される瞬間に表示されます。
|
|
162
|
+
|
|
163
|
+
プライバシーモードのバックグラウンドジョブでは、ゲートはスポーン**前**に表示されます — 音声処理が始まる前です。
|
|
164
|
+
|
|
165
|
+
### 同意ゲートを永続的にスキップするには?
|
|
166
|
+
|
|
167
|
+
`claude_desktop_config.json`のenv セクションに`WHISPER_CONSENT_ACKNOWLEDGED=true`を設定してください。これは標準モードでの一回限りのセッション開示を抑制します。
|
|
168
|
+
|
|
169
|
+
注意:プライバシーモードが有効な場合には効果がありません。
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## バックグラウンド文字起こしとバッチ
|
|
174
|
+
|
|
175
|
+
### バックグラウンドジョブが完了として表示されない
|
|
176
|
+
|
|
177
|
+
ジョブ状態はwhisper-cli.exeプロセスの終了によって追跡されます。確認:
|
|
178
|
+
|
|
179
|
+
1. Claudeに*「job_idの進捗を確認して」*と聞く — プロセスがまだ実行中の場合、ツールは経過時間と最後のセグメントタイムスタンプとともに「処理中」を返す
|
|
180
|
+
2. ファイルが非常に長い場合(2時間以上)、より多くの時間を確保してください — ミッドレンジGPUでの2時間ファイルのGPU文字起こしには約15〜20分かかる
|
|
181
|
+
3. 経過時間がおかしいと思われる場合は、タスクマネージャー → 詳細を開いて`whisper-cli.exe`がリストにあるか確認
|
|
182
|
+
|
|
183
|
+
`whisper-cli.exe`が実行中でないのに`check_progress`が「処理中」を表示している場合:
|
|
184
|
+
- プロセスがエラーで終了し、出力ファイルが存在しない
|
|
185
|
+
- Claudeに*「job_idの進捗を確認して」*と聞く — ツールがPIDなし・出力ファイルなしを検出して最後のログ行とともにエラーを報告する
|
|
186
|
+
|
|
187
|
+
### バックグラウンドジョブが完了したが出力ファイルが見つからないまたは間違った場所にある
|
|
188
|
+
|
|
189
|
+
バックグラウンドジョブは処理中に`%TEMP%\whisper-mcp-jobs\`の一時パスに出力を書き込み、完了時にソースディレクトリにファイルを移動します。移動が失敗した場合(ディスク容量不足、権限の問題、またはパスの長さ)、`check_progress`は具体的なエラーを返します:
|
|
190
|
+
|
|
191
|
+
> 「出力ファイルの書き込みに失敗しました。文字起こしは完了しましたが、次のパスに書き込めませんでした:[パス]」
|
|
192
|
+
|
|
193
|
+
確認:
|
|
194
|
+
- ソースディレクトリが存在し書き込み可能であること
|
|
195
|
+
- 十分なディスクスペースがあること
|
|
196
|
+
- ターゲットパスが長すぎないこと(Windowsのデフォルトのパス長制限は260文字)
|
|
197
|
+
|
|
198
|
+
生の出力がジョブIDベースのファイル名で`%TEMP%\whisper-mcp-jobs\`にまだ残っている可能性があります。
|
|
199
|
+
|
|
200
|
+
### バッチが停止または次のファイルに進まない
|
|
201
|
+
|
|
202
|
+
`start_batch`は終了コールバックを使用してポーリングなしで自動的に進みます。バッチが停止しているように見える場合:
|
|
203
|
+
|
|
204
|
+
1. `check_batch_progress`を呼び出す — これにより進捗チェックが強制され現在の状態が再評価される
|
|
205
|
+
2. 現在のファイルがまだ実行中の場合は完了を待つ — タスクマネージャーで`whisper-cli.exe`を確認
|
|
206
|
+
3. `check_batch_progress`が現在のファイルを失敗として表示した場合、次のファイルへの進行を試みる
|
|
207
|
+
|
|
208
|
+
注意:v2.3.0以降、バッチは各ファイルが完了すると終了コールバックで自動的に進みます。繰り返しポーリングする必要はありません — しばらく時間が経過した後に`check_batch_progress`を1回呼び出すだけで状態の更新が得られます。
|
|
209
|
+
|
|
210
|
+
### バッチが完了しているように見えるファイルを「失敗」として報告する
|
|
211
|
+
|
|
212
|
+
バリデーターは出力ファイルが空でなく、音声30秒あたり少なくとも1行あることを確認します。短いファイルや長い無音区間のある録音は、バリデーターが疑わしいほど短いと判断する出力を生成することがあります。
|
|
213
|
+
|
|
214
|
+
トランスクリプトを開いて正しいように見える場合:
|
|
215
|
+
- このファイルに対してバリデーションが過度に保守的
|
|
216
|
+
- `transcribe_audio`で個別に再実行して結果を手動で確認
|
|
217
|
+
|
|
218
|
+
出力が本当に間違っている場合:
|
|
219
|
+
- 言語が設定された言語と一致しない可能性がある場合は`language=auto`を試す
|
|
220
|
+
- より良い精度のためにより大きなモデルを試す
|
|
221
|
+
|
|
222
|
+
### バッチの開始時に複数のファイルが即座に失敗する
|
|
223
|
+
|
|
224
|
+
これは通常whisper-cli.exeがまったく機能していないことを意味します。`check_config`を実行してすべてのパスを確認し、`transcribe_audio`で単一ファイルを試して具体的なエラーを確認してください。
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## 字幕生成
|
|
229
|
+
|
|
230
|
+
### SRTファイルは保存されているが名前が間違っているまたは間違った場所にある
|
|
231
|
+
|
|
232
|
+
SRTおよびVTTファイルはソースファイルと同じ場所に保存され、ソース言語が英語でない場合は言語コードが付加されます:
|
|
233
|
+
- 英語ソース:`filename.srt`
|
|
234
|
+
- 日本語ソース:`filename.ja.srt`
|
|
235
|
+
- 英語翻訳付き:`filename.ja.srt` + `filename.en.srt`
|
|
236
|
+
|
|
237
|
+
一時WAVの隣にファイルが表示される場合は、ソースファイルがフォーマット変換を必要としたか確認してください(mp3/wav以外のフォーマットはFFmpegを通過します)。出力先ロジックは一時ファイルパスではなく元の`file_path`を使用します。
|
|
238
|
+
|
|
239
|
+
### VTT出力はウェブ用 — デスクトッププレーヤーで読み込むには?
|
|
240
|
+
|
|
241
|
+
VLCはSubtitle → Add Subtitle File → `.vtt`ファイルを選択することでVTTをサポートします。ほとんどの他のデスクトッププレーヤーはVTTよりSRTをより良くサポートします。デスクトッププレーヤーとの最大互換性には`output_format=srt`を使用してください。
|
|
242
|
+
|
|
243
|
+
VTTはHTML5の`<video>`要素やウェブベースのビデオプレーヤーに最適です。
|
|
244
|
+
|
|
245
|
+
### LRCファイルがメディアプレーヤーで表示されない
|
|
246
|
+
|
|
247
|
+
LRC(`.lrc`)ファイルは歌詞/カラオケ表示機能を持つプレーヤー用です:foobar2000、Winamp、AIMP、および各種モバイルプレーヤー。標準的なビデオプレーヤーはLRCを表示しません。ビデオの同期字幕が必要な場合は`srt`または`vtt`を使用してください。
|
|
248
|
+
|
|
249
|
+
### CSV出力 — フォーマットは?
|
|
250
|
+
|
|
251
|
+
CSV出力には行ごとにセグメントの開始時間、終了時間、テキストが含まれます。スプレッドシートツールや下流の分析スクリプトへのインポート用に設計されています。正確な列フォーマットはwhisper.cppの`-ocsv`出力に一致します。実際の字幕表示には`srt`または`vtt`を使用してください。
|
|
252
|
+
|
|
253
|
+
### 字幕生成が4分エラーでタイムアウトする
|
|
254
|
+
|
|
255
|
+
`generate_subtitles`はデフォルトで同期的に実行され、長いファイルではClaude Desktopの4分MCPタイムアウトに達する可能性があります。10分以上のファイルには`background=true`を使用してください:
|
|
256
|
+
|
|
257
|
+
- *「このファイルの字幕を生成して、background=true」*
|
|
258
|
+
|
|
259
|
+
次に`check_progress`で進捗を確認してください。注意:`translate_to_english=true`はバックグラウンドモードでは使用できません。英語翻訳を生成するにはバックグラウンドジョブが完了した後に2回目のパスを実行してください。
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
## モデル管理
|
|
264
|
+
|
|
265
|
+
### `download_model`がネットワークエラーで失敗する
|
|
266
|
+
|
|
267
|
+
ツールはHugging Faceからダウンロードします。マシンがインターネットにアクセスできること、`huggingface.co`がファイアウォールやプロキシでブロックされていないことを確認してください。
|
|
268
|
+
|
|
269
|
+
ダウンロードが開始したが途中で失敗した場合、`.part`ファイルは自動的に削除されます。`download_model`を再実行して再試行してください。
|
|
270
|
+
|
|
271
|
+
### `switch_model`がモデルがモデルディレクトリにないと言う
|
|
272
|
+
|
|
273
|
+
`switch_model`ツールは`WHISPER_MODEL`で設定されたディレクトリ内のファイルのみを受け付けます。
|
|
274
|
+
|
|
275
|
+
モデルが別の場所にある場合は、モデルディレクトリに移動するか、設定の`WHISPER_MODEL`をモデルと同じディレクトリのファイルを指すように更新してください。
|
|
276
|
+
|
|
277
|
+
### Claude Desktop再起動後にアクティブモデルが設定のモデルに戻る
|
|
278
|
+
|
|
279
|
+
`switch_model`は設計上セッションスコープです。モデルの切り替えを永続的にするには、`claude_desktop_config.json`の`WHISPER_MODEL`を更新してClaude Desktopを再起動してください。
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
283
|
+
## ファイルパスとフォーマット
|
|
284
|
+
|
|
285
|
+
### Unicodeファイル名で文字起こしが無音で失敗する
|
|
286
|
+
|
|
287
|
+
バックグラウンド文字起こしはすべての出力をサニタイズされたASCIIジョブIDベースの一時パスを通してルーティングし、Unicodeファイル名を正しく処理します。ブロッキングモードでUnicodeファイル名の失敗が見られる場合は、ファイル自体がアクセス可能か確認してください:
|
|
288
|
+
|
|
289
|
+
```powershell
|
|
290
|
+
Test-Path "C:\Users\YourName\Documents\会議録音.mp4"
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
`True`が返されるべきです。PowerShellでパスにアクセスできない場合、MCPサーバーもアクセスできません。
|
|
294
|
+
|
|
295
|
+
### 動画ファイルが出力なしまたは即座にエラーになる
|
|
296
|
+
|
|
297
|
+
FFmpegはすべての動画フォーマットに必要です。FFmpegがインストールされていることを確認:
|
|
298
|
+
```
|
|
299
|
+
ffmpeg -version
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
FFmpegがPATHにない場合は、設定の`FFMPEG_PATH`を`ffmpeg.exe`のフルパスに設定してください。
|
|
303
|
+
|
|
304
|
+
FFmpegがインストールされているが特定の動画が失敗する場合は、破損したファイルか珍しいコーデックのバリアントである可能性があります。手動で変換を試みてください:
|
|
305
|
+
```
|
|
306
|
+
ffmpeg -i input.mp4 -ar 16000 -ac 1 output.wav
|
|
307
|
+
```
|
|
308
|
+
その後WAVファイルを直接文字起こしてください。
|
|
309
|
+
|
|
310
|
+
### 「ファイルが大きすぎる」エラー
|
|
311
|
+
|
|
312
|
+
ツールは10GBを超えるファイルを拒否します。これはメモリの暴走を防ぐための安全制限です。このサイズに近いファイルは文字起こし前に分割してください。
|
|
313
|
+
|
|
314
|
+
### UNCパスの拒否
|
|
315
|
+
|
|
316
|
+
`\\server\share`で始まるパス(ネットワーク共有へのUNCパス)は入力バリデーターによって拒否されます。ネットワーク共有をドライブレター(例:`Z:\`)としてマウントしてそのパスを使用してください。
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
## 一時ファイルのクリーンアップ
|
|
321
|
+
|
|
322
|
+
`%TEMP%\whisper-mcp-jobs\`のジョブ状態ファイル(`.json`と`.log`)はサーバー起動時に7日以上経過したファイルが自動的にクリーンアップされます。必要な場合は手動クリーンアップも可能です:
|
|
323
|
+
|
|
324
|
+
```powershell
|
|
325
|
+
Remove-Item "$env:TEMP\whisper-mcp-jobs\*" -Force
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
一時WAV変換ファイル(`%TEMP%`の`whisper_tmp_*.wav`)は各文字起こし完了後に即座に削除されます。文字起こし中にクラッシュした場合、これらが残ることがあります。手動で削除してください:
|
|
329
|
+
|
|
330
|
+
```powershell
|
|
331
|
+
Remove-Item "$env:TEMP\whisper_tmp_*.wav" -Force
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
## コマンドラインからの大規模バッチ処理
|
|
337
|
+
|
|
338
|
+
Claudeなしで一晩中実行したい大規模バッチには、PowerShellを使用してください。
|
|
339
|
+
|
|
340
|
+
**重要:** whisper-cli.exeはMP4、MKVなどのほとんどの動画フォーマットを直接読み込めません。FFmpegで事前にWAVに変換する必要があります。またwhisperはトランスクリプトをstdoutに、診断情報をstderrに出力します。`Start-Process -RedirectStandardOutput`を使用してトランスクリプトを正しくキャプチャしてください。
|
|
341
|
+
|
|
342
|
+
```powershell
|
|
343
|
+
$whisper = "C:\whisper\Release\whisper-cli.exe"
|
|
344
|
+
$model = "C:\whisper\models\ggml-medium.en.bin"
|
|
345
|
+
$dir = "C:\path\to\your\folder"
|
|
346
|
+
$ffmpeg = "ffmpeg"
|
|
347
|
+
$tmp = "$env:TEMP\whisper_convert.wav"
|
|
348
|
+
|
|
349
|
+
Get-ChildItem "$dir\*.mp4" | ForEach-Object {
|
|
350
|
+
$out = ($_.FullName -replace '\.mp4$', '') + ".txt"
|
|
351
|
+
if (Test-Path $out) {
|
|
352
|
+
Write-Host "SKIP (exists): $($_.Name)"
|
|
353
|
+
return
|
|
354
|
+
}
|
|
355
|
+
Write-Host "Converting: $($_.Name)"
|
|
356
|
+
& $ffmpeg -y -i $_.FullName -ar 16000 -ac 1 -c:a pcm_s16le $tmp 2>$null
|
|
357
|
+
Write-Host "Transcribing: $($_.Name)"
|
|
358
|
+
$wArgs = "-m `"$model`" -f `"$tmp`" --threads 8 --condition-on-previous-text 0 --no-speech-thold 0.6"
|
|
359
|
+
Start-Process -FilePath $whisper -ArgumentList $wArgs -RedirectStandardOutput $out -Wait -NoNewWindow
|
|
360
|
+
Write-Host "Done: $($_.BaseName).txt"
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
Remove-Item $tmp -ErrorAction SilentlyContinue
|
|
364
|
+
Write-Host "All done."
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
`*.mp4`をファイルタイプに合わせて`*.mkv`や`*.m4a`などに変更してください。`Test-Path`のスキップチェックにより、中断後にスクリプトを再実行しても完了済みファイルは再処理されません。
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
## 設定ファイルの場所
|
|
372
|
+
|
|
373
|
+
```
|
|
374
|
+
C:\Users\ユーザー名\AppData\Roaming\Claude\claude_desktop_config.json
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
`AppData`が表示されない場合:エクスプローラーで「表示」→「隠しファイル」を有効にしてください。
|
|
378
|
+
|
|
379
|
+
---
|
|
380
|
+
|
|
381
|
+
## 完全な設定例
|
|
382
|
+
|
|
383
|
+
```json
|
|
384
|
+
{
|
|
385
|
+
"mcpServers": {
|
|
386
|
+
"whisper": {
|
|
387
|
+
"command": "npx",
|
|
388
|
+
"args": ["-y", "whisper-windows-mcp"],
|
|
389
|
+
"env": {
|
|
390
|
+
"WHISPER_CLI_PATH": "C:\\whisper\\Release\\whisper-cli.exe",
|
|
391
|
+
"WHISPER_MODEL": "C:\\whisper\\models\\ggml-medium.en.bin",
|
|
392
|
+
"FFMPEG_PATH": "ffmpeg"
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
```
|
|
398
|
+
|
|
399
|
+
`FFMPEG_PATH`のデフォルトは`ffmpeg`(PATHにあることを前提)です。FFmpegが標準以外の場所にインストールされている場合のみ明示的に設定してください。
|