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.vi.md
CHANGED
|
@@ -1,323 +1,309 @@
|
|
|
1
|
-
# whisper-windows-mcp — Khắc phục sự cố
|
|
2
|
-
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
## Danh sách kiểm tra nhanh
|
|
6
|
-
|
|
7
|
-
Trước khi tìm hiểu sâu hơn, hãy xác nhận tất cả những điều sau:
|
|
8
|
-
|
|
9
|
-
- Đường dẫn trong `claude_desktop_config.json` dùng **dấu gạch chéo ngược kép** (`C:\\whisper\\...`)
|
|
10
|
-
- `whisper-cli.exe` tồn tại tại đường dẫn được chỉ định trong `WHISPER_CLI_PATH`
|
|
11
|
-
- Tệp mô hình `.bin` tồn tại tại đường dẫn được chỉ định trong `WHISPER_MODEL`
|
|
12
|
-
- FFmpeg đã cài đặt và có thể truy cập (`ffmpeg -version` hoạt động trong command prompt)
|
|
13
|
-
- Claude Desktop đã được **khởi động lại hoàn toàn** sau khi chỉnh sửa cấu hình (thoát từ system tray, không chỉ đóng cửa sổ)
|
|
14
|
-
- Máy chủ whisper hiển thị **đang chạy** (huy hiệu màu xanh) trong Cài đặt → Nhà phát triển
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## "whisper không được kết nối" hoặc không có công cụ nào
|
|
19
|
-
|
|
20
|
-
**Nguyên nhân phổ biến nhất:** Claude Desktop không được khởi động lại hoàn toàn sau khi chỉnh sửa cấu hình.
|
|
21
|
-
|
|
22
|
-
1. Nhấp chuột phải vào biểu tượng Claude trong system tray → Thoát
|
|
23
|
-
2. Mở lại Claude Desktop
|
|
24
|
-
3. Đi đến Cài đặt → Nhà phát triển và kiểm tra huy hiệu **đang chạy** màu xanh bên cạnh whisper
|
|
25
|
-
|
|
26
|
-
Nếu vẫn không hiển thị:
|
|
27
|
-
|
|
28
|
-
1. Mở `claude_desktop_config.json` và kiểm tra lỗi cú pháp JSON (thiếu dấu phẩy, dấu ngoặc không khớp)
|
|
29
|
-
2. Đảm bảo tất cả đường dẫn dùng dấu gạch chéo ngược kép
|
|
30
|
-
3. Chạy `check_config` trong Claude Desktop để nhận thông tin chẩn đoán
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## download_model bị timeout với mô hình lớn
|
|
35
|
-
|
|
36
|
-
Claude Desktop có thời gian timeout 4 phút cho các lệnh gọi công cụ MCP. Tải xuống mô hình lớn trên kết nối chậm có thể vượt quá giới hạn này.
|
|
37
|
-
|
|
38
|
-
**Kích thước tệp:**
|
|
39
|
-
- `large-v3` — 2.9 GB
|
|
40
|
-
- `large-v3-turbo` — 1.6 GB
|
|
41
|
-
- `large-v3-q5_0` — 1.1 GB
|
|
42
|
-
- `large-v3-turbo-q5_0` — 547 MB
|
|
43
|
-
- `medium.en` — 1.5 GB
|
|
44
|
-
- `medium.en-q5_0` — 514 MB
|
|
45
|
-
|
|
46
|
-
Trên kết nối nhanh (100 Mbps+), ngay cả large-v3 cũng tải trong vòng 4 phút. Trên kết nối chậm hơn, hãy dùng trình duyệt hoặc PowerShell để tải trực tiếp và đặt tệp vào thư mục mô hình thủ công:
|
|
47
|
-
|
|
48
|
-
```powershell
|
|
49
|
-
# Ví dụ — tải trực tiếp large-v3-turbo
|
|
50
|
-
Invoke-WebRequest -Uri "https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3-turbo.bin" `
|
|
51
|
-
-OutFile "C:\whisper\models\ggml-large-v3-turbo.bin"
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
Sau đó dùng `switch_model ggml-large-v3-turbo.bin` để kích hoạt.
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
## `check_config` báo không tìm thấy whisper-cli.exe
|
|
59
|
-
|
|
60
|
-
Đường dẫn trong cấu hình không khớp với vị trí thực tế của tệp.
|
|
61
|
-
|
|
62
|
-
Xác nhận tệp tồn tại:
|
|
63
|
-
```
|
|
64
|
-
dir C:\whisper\Release\whisper-cli.exe
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
Nếu ở vị trí khác, hãy cập nhật `WHISPER_CLI_PATH` trong cấu hình để khớp với đường dẫn thực tế.
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
## `check_config` báo không tìm thấy FFmpeg
|
|
72
|
-
|
|
73
|
-
FFmpeg chưa được cài đặt hoặc không có trong PATH hệ thống.
|
|
74
|
-
|
|
75
|
-
Cài đặt qua winget:
|
|
76
|
-
```
|
|
77
|
-
winget install ffmpeg
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
Hoặc tải xuống từ [ffmpeg.org](https://ffmpeg.org/download.html), giải nén và thêm thư mục `bin` vào PATH hệ thống.
|
|
81
|
-
|
|
82
|
-
Sau khi cài đặt, mở command prompt mới và xác nhận:
|
|
83
|
-
```
|
|
84
|
-
ffmpeg -version
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
Nếu bạn cài FFmpeg ở vị trí không chuẩn, hãy đặt biến môi trường `FFMPEG_PATH` trong cấu hình Claude Desktop:
|
|
88
|
-
```json
|
|
89
|
-
"env": {
|
|
90
|
-
"FFMPEG_PATH": "C:\\ffmpeg\\bin\\ffmpeg.exe"
|
|
91
|
-
}
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
---
|
|
95
|
-
|
|
96
|
-
## Kết quả phiên âm đầy thẻ `[FOREIGN]`
|
|
97
|
-
|
|
98
|
-
**Nguyên nhân:** Bạn đang dùng mô hình chỉ tiếng Anh (ví dụ: `ggml-medium.en.bin`) với âm thanh không phải tiếng Anh. Mô hình chỉ tiếng Anh không thể xử lý các ngôn ngữ khác và xuất ra `[FOREIGN]` cho mọi đoạn không thể xử lý.
|
|
99
|
-
|
|
100
|
-
**Cách sửa:** Tải xuống và sử dụng `ggml-large-v3.bin` — mô hình đa ngôn ngữ. Đây là yêu cầu bắt buộc cho bất kỳ phiên âm không phải tiếng Anh, tự động phát hiện ngôn ngữ hoặc dịch nào.
|
|
101
|
-
|
|
102
|
-
```
|
|
103
|
-
https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3.bin
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
Lưu vào `C:\whisper\models\` và cập nhật cấu hình:
|
|
107
|
-
```json
|
|
108
|
-
"WHISPER_MODEL": "C:\\whisper\\models\\ggml-large-v3.bin"
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
Hoặc ghi đè từng lần phiên âm bằng tham số `model` trong `transcribe_audio` hoặc `generate_subtitles`.
|
|
112
|
-
|
|
113
|
-
> **Lưu ý:** Mô hình chỉ tiếng Anh (`*.en.bin`) nhanh hơn và chính xác hơn cho nội dung tiếng Anh nhưng hoàn toàn không thể xử lý các ngôn ngữ khác. Nếu bạn làm việc với nội dung đa ngôn ngữ, `large-v3` là mô hình đúng bất kể phần cứng.
|
|
114
|
-
|
|
115
|
-
---
|
|
116
|
-
|
|
117
|
-
## Phiên âm không tạo ra đầu ra hoặc tệp trống
|
|
118
|
-
|
|
119
|
-
**Nguyên nhân có thể:**
|
|
120
|
-
|
|
121
|
-
1. **Mô hình sai cho ngôn ngữ** — Mô hình chỉ tiếng Anh (`*.en.bin`) không thể phiên âm các ngôn ngữ khác. Sử dụng `ggml-large-v3.bin` cho nội dung đa ngôn ngữ.
|
|
122
|
-
|
|
123
|
-
2. **Chất lượng âm thanh quá thấp** — Tệp có bitrate rất thấp (ví dụ: bản ghi điện thoại `.3gp` cũ dùng codec AMR-NB ~12kbps) có thể ở ranh giới whisper có thể xử lý. Môi trường nhiều tạp âm (tiếng ồn nền, vang, người nói xa) cũng gặp khó khăn. Hãy thử `large-v3` vì nó xử lý âm thanh kém chất lượng tốt hơn các mô hình nhỏ.
|
|
124
|
-
|
|
125
|
-
3. **Tệp im lặng hoặc bị hỏng** — Chạy `analyze_media` trên tệp để kiểm tra xem FFprobe có phát hiện luồng âm thanh hợp lệ không.
|
|
126
|
-
|
|
127
|
-
4. **Lỗi chuyển đổi** — Tệp có thể không chuyển đổi sang WAV đúng cách. Thử chuyển đổi thủ công trước:
|
|
128
|
-
```
|
|
129
|
-
ffmpeg -i yourfile.3gp -ar 16000 -ac 1 output.wav
|
|
130
|
-
```
|
|
131
|
-
Sau đó phiên âm tệp WAV trực tiếp.
|
|
132
|
-
|
|
133
|
-
---
|
|
134
|
-
|
|
135
|
-
## Tác vụ nền thất bại với tên tệp chứa ký tự đặc biệt hoặc Unicode
|
|
136
|
-
|
|
137
|
-
**Nguyên nhân:** whisper-cli.exe không thể ghi tệp đầu ra khi đường dẫn chứa ký tự Unicode (tiếng Việt, tiếng Nhật, tiếng Hàn, emoji, dấu ngoặc, v.v.) hoặc một số ký tự đặc biệt nhất định.
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
---
|
|
148
|
-
|
|
149
|
-
## Tác vụ nền hiển thị "thất bại" không có đầu ra
|
|
150
|
-
|
|
151
|
-
**Nguyên nhân có thể:**
|
|
152
|
-
|
|
153
|
-
1.
|
|
154
|
-
|
|
155
|
-
2.
|
|
156
|
-
|
|
157
|
-
3. **
|
|
158
|
-
|
|
159
|
-
4. **
|
|
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
|
-
Whisper
|
|
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
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
```
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
"whisper": {
|
|
311
|
-
"command": "npx",
|
|
312
|
-
"args": ["-y", "whisper-windows-mcp"],
|
|
313
|
-
"env": {
|
|
314
|
-
"WHISPER_CLI_PATH": "C:\\whisper\\Release\\whisper-cli.exe",
|
|
315
|
-
"WHISPER_MODEL": "C:\\whisper\\models\\ggml-medium.en.bin",
|
|
316
|
-
"FFMPEG_PATH": "ffmpeg"
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
```
|
|
322
|
-
|
|
323
|
-
`FFMPEG_PATH` mặc định là `ffmpeg` (giả sử có trong PATH). Chỉ đặt rõ ràng nếu FFmpeg được cài đặt ở vị trí không chuẩn.
|
|
1
|
+
# whisper-windows-mcp — Khắc phục sự cố
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
## Danh sách kiểm tra nhanh
|
|
6
|
+
|
|
7
|
+
Trước khi tìm hiểu sâu hơn, hãy xác nhận tất cả những điều sau:
|
|
8
|
+
|
|
9
|
+
- Đường dẫn trong `claude_desktop_config.json` dùng **dấu gạch chéo ngược kép** (`C:\\whisper\\...`)
|
|
10
|
+
- `whisper-cli.exe` tồn tại tại đường dẫn được chỉ định trong `WHISPER_CLI_PATH`
|
|
11
|
+
- Tệp mô hình `.bin` tồn tại tại đường dẫn được chỉ định trong `WHISPER_MODEL`
|
|
12
|
+
- FFmpeg đã cài đặt và có thể truy cập (`ffmpeg -version` hoạt động trong command prompt)
|
|
13
|
+
- Claude Desktop đã được **khởi động lại hoàn toàn** sau khi chỉnh sửa cấu hình (thoát từ system tray, không chỉ đóng cửa sổ)
|
|
14
|
+
- Máy chủ whisper hiển thị **đang chạy** (huy hiệu màu xanh) trong Cài đặt → Nhà phát triển
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## "whisper không được kết nối" hoặc không có công cụ nào
|
|
19
|
+
|
|
20
|
+
**Nguyên nhân phổ biến nhất:** Claude Desktop không được khởi động lại hoàn toàn sau khi chỉnh sửa cấu hình.
|
|
21
|
+
|
|
22
|
+
1. Nhấp chuột phải vào biểu tượng Claude trong system tray → Thoát
|
|
23
|
+
2. Mở lại Claude Desktop
|
|
24
|
+
3. Đi đến Cài đặt → Nhà phát triển và kiểm tra huy hiệu **đang chạy** màu xanh bên cạnh whisper
|
|
25
|
+
|
|
26
|
+
Nếu vẫn không hiển thị:
|
|
27
|
+
|
|
28
|
+
1. Mở `claude_desktop_config.json` và kiểm tra lỗi cú pháp JSON (thiếu dấu phẩy, dấu ngoặc không khớp)
|
|
29
|
+
2. Đảm bảo tất cả đường dẫn dùng dấu gạch chéo ngược kép
|
|
30
|
+
3. Chạy `check_config` trong Claude Desktop để nhận thông tin chẩn đoán
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## download_model bị timeout với mô hình lớn
|
|
35
|
+
|
|
36
|
+
Claude Desktop có thời gian timeout 4 phút cho các lệnh gọi công cụ MCP. Tải xuống mô hình lớn trên kết nối chậm có thể vượt quá giới hạn này.
|
|
37
|
+
|
|
38
|
+
**Kích thước tệp:**
|
|
39
|
+
- `large-v3` — 2.9 GB
|
|
40
|
+
- `large-v3-turbo` — 1.6 GB
|
|
41
|
+
- `large-v3-q5_0` — 1.1 GB
|
|
42
|
+
- `large-v3-turbo-q5_0` — 547 MB
|
|
43
|
+
- `medium.en` — 1.5 GB
|
|
44
|
+
- `medium.en-q5_0` — 514 MB
|
|
45
|
+
|
|
46
|
+
Trên kết nối nhanh (100 Mbps+), ngay cả large-v3 cũng tải trong vòng 4 phút. Trên kết nối chậm hơn, hãy dùng trình duyệt hoặc PowerShell để tải trực tiếp và đặt tệp vào thư mục mô hình thủ công:
|
|
47
|
+
|
|
48
|
+
```powershell
|
|
49
|
+
# Ví dụ — tải trực tiếp large-v3-turbo
|
|
50
|
+
Invoke-WebRequest -Uri "https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3-turbo.bin" `
|
|
51
|
+
-OutFile "C:\whisper\models\ggml-large-v3-turbo.bin"
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Sau đó dùng `switch_model ggml-large-v3-turbo.bin` để kích hoạt.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## `check_config` báo không tìm thấy whisper-cli.exe
|
|
59
|
+
|
|
60
|
+
Đường dẫn trong cấu hình không khớp với vị trí thực tế của tệp.
|
|
61
|
+
|
|
62
|
+
Xác nhận tệp tồn tại:
|
|
63
|
+
```
|
|
64
|
+
dir C:\whisper\Release\whisper-cli.exe
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Nếu ở vị trí khác, hãy cập nhật `WHISPER_CLI_PATH` trong cấu hình để khớp với đường dẫn thực tế.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## `check_config` báo không tìm thấy FFmpeg
|
|
72
|
+
|
|
73
|
+
FFmpeg chưa được cài đặt hoặc không có trong PATH hệ thống.
|
|
74
|
+
|
|
75
|
+
Cài đặt qua winget:
|
|
76
|
+
```
|
|
77
|
+
winget install ffmpeg
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Hoặc tải xuống từ [ffmpeg.org](https://ffmpeg.org/download.html), giải nén và thêm thư mục `bin` vào PATH hệ thống.
|
|
81
|
+
|
|
82
|
+
Sau khi cài đặt, mở command prompt mới và xác nhận:
|
|
83
|
+
```
|
|
84
|
+
ffmpeg -version
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Nếu bạn cài FFmpeg ở vị trí không chuẩn, hãy đặt biến môi trường `FFMPEG_PATH` trong cấu hình Claude Desktop:
|
|
88
|
+
```json
|
|
89
|
+
"env": {
|
|
90
|
+
"FFMPEG_PATH": "C:\\ffmpeg\\bin\\ffmpeg.exe"
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Kết quả phiên âm đầy thẻ `[FOREIGN]`
|
|
97
|
+
|
|
98
|
+
**Nguyên nhân:** Bạn đang dùng mô hình chỉ tiếng Anh (ví dụ: `ggml-medium.en.bin`) với âm thanh không phải tiếng Anh. Mô hình chỉ tiếng Anh không thể xử lý các ngôn ngữ khác và xuất ra `[FOREIGN]` cho mọi đoạn không thể xử lý.
|
|
99
|
+
|
|
100
|
+
**Cách sửa:** Tải xuống và sử dụng `ggml-large-v3.bin` — mô hình đa ngôn ngữ. Đây là yêu cầu bắt buộc cho bất kỳ phiên âm không phải tiếng Anh, tự động phát hiện ngôn ngữ hoặc dịch nào.
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3.bin
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Lưu vào `C:\whisper\models\` và cập nhật cấu hình:
|
|
107
|
+
```json
|
|
108
|
+
"WHISPER_MODEL": "C:\\whisper\\models\\ggml-large-v3.bin"
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Hoặc ghi đè từng lần phiên âm bằng tham số `model` trong `transcribe_audio` hoặc `generate_subtitles`.
|
|
112
|
+
|
|
113
|
+
> **Lưu ý:** Mô hình chỉ tiếng Anh (`*.en.bin`) nhanh hơn và chính xác hơn cho nội dung tiếng Anh nhưng hoàn toàn không thể xử lý các ngôn ngữ khác. Nếu bạn làm việc với nội dung đa ngôn ngữ, `large-v3` là mô hình đúng bất kể phần cứng.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Phiên âm không tạo ra đầu ra hoặc tệp trống
|
|
118
|
+
|
|
119
|
+
**Nguyên nhân có thể:**
|
|
120
|
+
|
|
121
|
+
1. **Mô hình sai cho ngôn ngữ** — Mô hình chỉ tiếng Anh (`*.en.bin`) không thể phiên âm các ngôn ngữ khác. Sử dụng `ggml-large-v3.bin` cho nội dung đa ngôn ngữ.
|
|
122
|
+
|
|
123
|
+
2. **Chất lượng âm thanh quá thấp** — Tệp có bitrate rất thấp (ví dụ: bản ghi điện thoại `.3gp` cũ dùng codec AMR-NB ~12kbps) có thể ở ranh giới whisper có thể xử lý. Môi trường nhiều tạp âm (tiếng ồn nền, vang, người nói xa) cũng gặp khó khăn. Hãy thử `large-v3` vì nó xử lý âm thanh kém chất lượng tốt hơn các mô hình nhỏ.
|
|
124
|
+
|
|
125
|
+
3. **Tệp im lặng hoặc bị hỏng** — Chạy `analyze_media` trên tệp để kiểm tra xem FFprobe có phát hiện luồng âm thanh hợp lệ không.
|
|
126
|
+
|
|
127
|
+
4. **Lỗi chuyển đổi** — Tệp có thể không chuyển đổi sang WAV đúng cách. Thử chuyển đổi thủ công trước:
|
|
128
|
+
```
|
|
129
|
+
ffmpeg -i yourfile.3gp -ar 16000 -ac 1 output.wav
|
|
130
|
+
```
|
|
131
|
+
Sau đó phiên âm tệp WAV trực tiếp.
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Tác vụ nền thất bại với tên tệp chứa ký tự đặc biệt hoặc Unicode
|
|
136
|
+
|
|
137
|
+
**Nguyên nhân:** whisper-cli.exe không thể ghi tệp đầu ra khi đường dẫn chứa ký tự Unicode (tiếng Việt, tiếng Nhật, tiếng Hàn, emoji, dấu ngoặc, v.v.) hoặc một số ký tự đặc biệt nhất định.
|
|
138
|
+
|
|
139
|
+
**Đã sửa trong v2.0.0.** Nếu bạn đang chạy phiên bản hiện tại, vấn đề này sẽ không xảy ra. Nếu vẫn xảy ra, hãy cập nhật bằng `npm install -g whisper-windows-mcp` và khởi động lại Claude Desktop.
|
|
140
|
+
|
|
141
|
+
Nếu bạn đang dùng phiên bản cũ, giải pháp tạm thời: đổi tên tệp để chỉ dùng ký tự ASCII trước khi phiên âm, sau đó đổi lại nếu cần.
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
ren "ten_file_tieng_viet.mp4" "temp_transcribe.mp4"
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Tác vụ nền hiển thị "thất bại" không có đầu ra
|
|
150
|
+
|
|
151
|
+
**Nguyên nhân có thể:**
|
|
152
|
+
|
|
153
|
+
1. **Đường dẫn mô hình sai** — Tiến trình tách rời không kế thừa đường dẫn đã sửa. Chạy `check_config` để xác nhận đường dẫn.
|
|
154
|
+
|
|
155
|
+
2. **Tiến trình bị tắt** — Nếu whisper-cli.exe bị tắt thủ công giữa chừng, sẽ không có tệp đầu ra. Thử lại.
|
|
156
|
+
|
|
157
|
+
3. **VRAM không đủ** — Mô hình lớn trên GPU ít VRAM có thể thất bại lặng lẽ. Thử mô hình nhỏ hơn.
|
|
158
|
+
|
|
159
|
+
4. **Lỗi chuyển đổi tệp** — Thử phiên âm tệp WAV trực tiếp để xác định vấn đề là ở chuyển đổi hay phiên âm.
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## GPU không được sử dụng (CPU cao trên 50%)
|
|
164
|
+
|
|
165
|
+
**Nguyên nhân:** Bạn đang chạy tệp nhị phân chỉ dùng CPU đi kèm với bản phát hành whisper.cpp tiêu chuẩn.
|
|
166
|
+
|
|
167
|
+
**Cách sửa:** Tải xuống bản build có Vulkan từ [trang phát hành](https://github.com/eviscerations/whisper-windows-mcp/releases/tag/v1.4.0) và giải nén vào `C:\whisper\Release\`.
|
|
168
|
+
|
|
169
|
+
Xác nhận tăng tốc GPU đang hoạt động:
|
|
170
|
+
- Yêu cầu Claude `check_system`
|
|
171
|
+
- Tìm `✅ Vulkan binary: ggml-vulkan.dll found` trong đầu ra
|
|
172
|
+
- Theo dõi Task Manager → Hiệu suất → GPU trong quá trình phiên âm — mức sử dụng GPU sẽ tăng lên 15–30%
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## `check_system` báo dung lượng VRAM sai
|
|
177
|
+
|
|
178
|
+
Đây là giới hạn đã biết của Windows. Lệnh `wmic` đọc VRAM từ registry, trên nhiều card AMD báo một nửa VRAM vật lý. Card Vega 56 có 8GB HBM2 thường hiển thị 4GB. Đây chỉ là vấn đề hiển thị — whisper sử dụng đầy đủ VRAM vật lý trong quá trình suy luận.
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Lỗi "Đang phiên âm"
|
|
183
|
+
|
|
184
|
+
Có một tiến trình `whisper-cli.exe` đang chạy từ tác vụ trước. Chờ nó hoàn thành, hoặc:
|
|
185
|
+
|
|
186
|
+
1. Mở Task Manager → tab Chi tiết
|
|
187
|
+
2. Tìm `whisper-cli.exe`
|
|
188
|
+
3. Nhấp chuột phải → Kết thúc tác vụ
|
|
189
|
+
|
|
190
|
+
Sau đó thử lại.
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## Tự động phát hiện ngôn ngữ sai
|
|
195
|
+
|
|
196
|
+
Tự động phát hiện của Whisper chạy trên 30 giây đầu tiên của âm thanh. Nếu tệp bắt đầu bằng ngôn ngữ khác với phần lớn nội dung, việc phát hiện có thể sai.
|
|
197
|
+
|
|
198
|
+
**Cách sửa:** Chỉ định ngôn ngữ rõ ràng (ví dụ: `language=vi`) thay vì dựa vào tự động phát hiện.
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Tạo phụ đề tạo ra "(đang nói bằng tiếng nước ngoài)" trong suốt
|
|
203
|
+
|
|
204
|
+
Whisper phát hiện giọng nói nhưng không thể phiên âm. Nguyên nhân phổ biến nhất:
|
|
205
|
+
|
|
206
|
+
1. **Mô hình sai** — Đang dùng mô hình chỉ tiếng Anh với âm thanh không phải tiếng Anh. Dùng `large-v3`.
|
|
207
|
+
|
|
208
|
+
2. **Chất lượng âm thanh** — Môi trường nhiều tạp âm (nhà bếp, đám đông, tiếng vang) có thể vượt quá khả năng của mô hình medium. Thử `large-v3`.
|
|
209
|
+
|
|
210
|
+
3. **Ngôn ngữ hỗn hợp** — Tệp có hai ngôn ngữ xen kẽ sẽ có ngôn ngữ thiểu số được thay thế bằng ký hiệu chỗ giữ khi dùng cài đặt một ngôn ngữ.
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## Dịch phụ đề chỉ ra tiếng Anh
|
|
215
|
+
|
|
216
|
+
Đây là hành vi có chủ ý. Flag `--translate` tích hợp của Whisper chỉ dịch **sang tiếng Anh**. Để dịch sang các ngôn ngữ đích khác, hãy xử lý nội dung tệp `.srt` riêng biệt.
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Phiên âm hàng loạt ngừng tiến triển
|
|
221
|
+
|
|
222
|
+
Gọi `check_batch_progress` lại. Nếu vẫn bị kẹt:
|
|
223
|
+
|
|
224
|
+
1. Kiểm tra Task Manager xem có tiến trình `whisper-cli.exe` đang chạy không
|
|
225
|
+
2. Kiểm tra nhật ký tác vụ trong `%TEMP%\whisper-mcp-jobs\`
|
|
226
|
+
3. Các tệp thất bại được đánh dấu trong báo cáo đợt — hãy chạy lại từng tệp riêng lẻ bằng `transcribe_audio`
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
## Dọn dẹp thư mục tệp tạm thời
|
|
231
|
+
|
|
232
|
+
whisper-windows-mcp ghi tệp trạng thái tác vụ và nhật ký vào `%TEMP%\whisper-mcp-jobs\` trong quá trình phiên âm. Máy chủ tự động dọn dẹp các tệp cũ hơn 7 ngày khi khởi động. Để dọn dẹp thủ công, sau khi đợt hoặc tác vụ hoàn thành và bạn đã xác nhận các bản phiên âm đầu ra, bạn có thể xóa an toàn mọi thứ trong thư mục này:
|
|
233
|
+
|
|
234
|
+
```powershell
|
|
235
|
+
Remove-Item "$env:TEMP\whisper-mcp-jobs\*" -Recurse -Force
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
Thư mục sẽ được tạo lại tự động vào lần phiên âm tiếp theo. Không có tệp đầu ra phiên âm nào được lưu vĩnh viễn ở đây — chúng được di chuyển đến thư mục nguồn khi hoàn thành. Chỉ có siêu dữ liệu tác vụ và nhật ký còn lại.
|
|
239
|
+
|
|
240
|
+
**Lưu ý:** Không xóa thư mục này trong khi đang phiên âm — các tệp trạng thái đợt cần thiết để `check_batch_progress` hoạt động.
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## Xử lý hàng loạt lớn không giám sát từ dòng lệnh
|
|
245
|
+
|
|
246
|
+
Với các đợt rất lớn mà bạn muốn chạy qua đêm không cần Claude, hãy sử dụng PowerShell.
|
|
247
|
+
|
|
248
|
+
**Quan trọng:** whisper-cli.exe không thể đọc trực tiếp MP4, MKV hoặc hầu hết các định dạng video. FFmpeg phải chuyển đổi từng tệp sang WAV trước. whisper cũng ghi bản phiên âm vào stdout và đầu ra chẩn đoán vào stderr — sử dụng `Start-Process -RedirectStandardOutput` để bắt bản phiên âm đúng cách. Dùng pipe `|` hoặc chuyển hướng stderr với `2>$null` sẽ không bắt được gì.
|
|
249
|
+
|
|
250
|
+
```powershell
|
|
251
|
+
$whisper = "C:\whisper\Release\whisper-cli.exe"
|
|
252
|
+
$model = "C:\whisper\models\ggml-medium.en.bin"
|
|
253
|
+
$dir = "C:\path\to\your\folder"
|
|
254
|
+
$ffmpeg = "ffmpeg"
|
|
255
|
+
$tmp = "$env:TEMP\whisper_convert.wav"
|
|
256
|
+
|
|
257
|
+
Get-ChildItem "$dir\*.mp4" | ForEach-Object {
|
|
258
|
+
$out = ($_.FullName -replace '\.mp4$', '') + ".txt"
|
|
259
|
+
if (Test-Path $out) {
|
|
260
|
+
Write-Host "SKIP (exists): $($_.Name)"
|
|
261
|
+
return
|
|
262
|
+
}
|
|
263
|
+
Write-Host "Converting: $($_.Name)"
|
|
264
|
+
& $ffmpeg -y -i $_.FullName -ar 16000 -ac 1 -c:a pcm_s16le $tmp 2>$null
|
|
265
|
+
Write-Host "Transcribing: $($_.Name)"
|
|
266
|
+
$wArgs = "-m `"$model`" -f `"$tmp`" --threads 8 --condition-on-previous-text 0 --no-speech-thold 0.6"
|
|
267
|
+
Start-Process -FilePath $whisper -ArgumentList $wArgs -RedirectStandardOutput $out -Wait -NoNewWindow
|
|
268
|
+
Write-Host "Done: $($_.BaseName).txt"
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
Remove-Item $tmp -ErrorAction SilentlyContinue
|
|
272
|
+
Write-Host "All done."
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
Thay `*.mp4` bằng `*.mkv`, `*.m4a` v.v. để khớp với loại tệp của bạn. Kiểm tra bỏ qua `Test-Path` có nghĩa là chạy lại script sau khi bị gián đoạn sẽ không xử lý lại các tệp đã hoàn thành.
|
|
276
|
+
|
|
277
|
+
Script này ghi tệp `.txt` bên cạnh mỗi tệp nguồn. Các công cụ MCP sẽ nhận ra chúng là đã được phiên âm khi bạn chạy `analyze_media` hoặc `start_batch` sau đó.
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
281
|
+
## Vị trí tệp cấu hình
|
|
282
|
+
|
|
283
|
+
```
|
|
284
|
+
C:\Users\TênNgườiDùng\AppData\Roaming\Claude\claude_desktop_config.json
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
Nếu `AppData` không hiển thị: Xem → Hiển thị → Mục ẩn trong File Explorer.
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## Ví dụ cấu hình hoàn chỉnh hoạt động
|
|
292
|
+
|
|
293
|
+
```json
|
|
294
|
+
{
|
|
295
|
+
"mcpServers": {
|
|
296
|
+
"whisper": {
|
|
297
|
+
"command": "npx",
|
|
298
|
+
"args": ["-y", "whisper-windows-mcp"],
|
|
299
|
+
"env": {
|
|
300
|
+
"WHISPER_CLI_PATH": "C:\\whisper\\Release\\whisper-cli.exe",
|
|
301
|
+
"WHISPER_MODEL": "C:\\whisper\\models\\ggml-medium.en.bin",
|
|
302
|
+
"FFMPEG_PATH": "ffmpeg"
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
`FFMPEG_PATH` mặc định là `ffmpeg` (giả sử có trong PATH). Chỉ đặt rõ ràng nếu FFmpeg được cài đặt ở vị trí không chuẩn.
|