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.
Files changed (53) hide show
  1. package/{LICENSE-COMMERCIAL.md → COMMERCIAL-LICENSE.md} +58 -58
  2. package/LICENSE +40 -40
  3. package/PRIVACY.es.md +192 -135
  4. package/PRIVACY.id.md +192 -135
  5. package/PRIVACY.ja.md +192 -135
  6. package/PRIVACY.ko.md +192 -135
  7. package/PRIVACY.md +192 -135
  8. package/PRIVACY.pl.md +192 -135
  9. package/PRIVACY.pt-BR.md +192 -135
  10. package/PRIVACY.ro.md +192 -135
  11. package/PRIVACY.uk.md +192 -135
  12. package/PRIVACY.vi.md +192 -135
  13. package/README.es.md +74 -48
  14. package/README.id.md +77 -40
  15. package/README.ja.md +100 -72
  16. package/README.ko.md +63 -37
  17. package/README.md +76 -39
  18. package/README.pl.md +77 -40
  19. package/README.pt-BR.md +71 -45
  20. package/README.ro.md +78 -41
  21. package/README.uk.md +77 -40
  22. package/README.vi.md +67 -41
  23. package/ROADMAP.es.md +110 -48
  24. package/ROADMAP.id.md +77 -104
  25. package/ROADMAP.ja.md +84 -123
  26. package/ROADMAP.ko.md +73 -97
  27. package/ROADMAP.pl.md +104 -44
  28. package/ROADMAP.pt-BR.md +78 -102
  29. package/ROADMAP.ro.md +102 -44
  30. package/ROADMAP.uk.md +65 -97
  31. package/ROADMAP.vi.md +78 -102
  32. package/SECURITY.es.md +64 -47
  33. package/SECURITY.id.md +64 -47
  34. package/SECURITY.ja.md +64 -47
  35. package/SECURITY.ko.md +64 -47
  36. package/SECURITY.md +21 -4
  37. package/SECURITY.pl.md +64 -47
  38. package/SECURITY.pt-BR.md +64 -47
  39. package/SECURITY.ro.md +64 -47
  40. package/SECURITY.uk.md +64 -47
  41. package/SECURITY.vi.md +64 -47
  42. package/TROUBLESHOOTING.es.md +309 -323
  43. package/TROUBLESHOOTING.id.md +333 -323
  44. package/TROUBLESHOOTING.ja.md +399 -286
  45. package/TROUBLESHOOTING.ko.md +309 -323
  46. package/TROUBLESHOOTING.pl.md +355 -323
  47. package/TROUBLESHOOTING.pt-BR.md +309 -323
  48. package/TROUBLESHOOTING.ro.md +355 -323
  49. package/TROUBLESHOOTING.uk.md +369 -323
  50. package/TROUBLESHOOTING.vi.md +309 -323
  51. package/dist/index.js +591 -216
  52. package/package.json +45 -45
  53. package/patch_roadmaps.py +0 -72
@@ -1,323 +1,333 @@
1
- # whisper-windows-mcp — Pemecahan Masalah
2
-
3
- ---
4
-
5
- ## Daftar Periksa Cepat
6
-
7
- Sebelum menyelidiki lebih dalam, verifikasi semua hal berikut:
8
-
9
- - Jalur di `claude_desktop_config.json` menggunakan **dua backslash** (`C:\\whisper\\...`)
10
- - `whisper-cli.exe` ada di jalur yang ditentukan dalam `WHISPER_CLI_PATH`
11
- - File model `.bin` ada di jalur yang ditentukan dalam `WHISPER_MODEL`
12
- - FFmpeg terpasang dan dapat diakses (`ffmpeg -version` berfungsi di command prompt)
13
- - Claude Desktop sudah **di-restart penuh** setelah mengedit konfigurasi (keluar dari system tray, bukan sekadar menutup jendela)
14
- - Server whisper menampilkan **berjalan** (lencana hijau) di Pengaturan → Pengembang
15
-
16
- ---
17
-
18
- ## "whisper tidak terhubung" atau tidak ada alat yang tersedia
19
-
20
- **Penyebab paling umum:** Claude Desktop tidak di-restart penuh setelah mengedit konfigurasi.
21
-
22
- 1. Klik kanan ikon Claude di system tray → Keluar
23
- 2. Buka kembali Claude Desktop
24
- 3. Buka Pengaturan → Pengembang dan periksa lencana **berjalan** berwarna hijau di sebelah whisper
25
-
26
- Jika masih tidak muncul:
27
-
28
- 1. Buka `claude_desktop_config.json` dan periksa kesalahan sintaks JSON (koma yang hilang, kurung kurawal yang tidak cocok)
29
- 2. Pastikan semua jalur menggunakan dua backslash
30
- 3. Jalankan `check_config` di Claude Desktop untuk mendapatkan diagnostik
31
-
32
- ---
33
-
34
- ## download_model timeout pada model besar
35
-
36
- Claude Desktop memiliki timeout 4 menit untuk panggilan alat MCP. Unduhan model besar pada koneksi lambat mungkin melebihi batas ini.
37
-
38
- **Ukuran file:**
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
- Pada koneksi cepat (100 Mbps+), bahkan large-v3 selesai diunduh dalam waktu kurang dari 4 menit. Pada koneksi lebih lambat, gunakan browser atau PowerShell untuk mengunduh langsung dan tempatkan file di direktori model secara manual:
47
-
48
- ```powershell
49
- # Contoh — unduh large-v3-turbo secara langsung
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
- Kemudian gunakan `switch_model ggml-large-v3-turbo.bin` untuk mengaktifkannya.
55
-
56
- ---
57
-
58
- ## `check_config` melaporkan whisper-cli.exe tidak ditemukan
59
-
60
- Jalur di konfigurasi tidak cocok dengan lokasi file yang sebenarnya.
61
-
62
- Verifikasi file ada:
63
- ```
64
- dir C:\whisper\Release\whisper-cli.exe
65
- ```
66
-
67
- Jika ada di tempat lain, perbarui `WHISPER_CLI_PATH` di konfigurasi Anda agar sesuai dengan jalur yang sebenarnya.
68
-
69
- ---
70
-
71
- ## `check_config` melaporkan FFmpeg tidak ditemukan
72
-
73
- FFmpeg tidak terpasang atau tidak ada di PATH sistem Anda.
74
-
75
- Pasang via winget:
76
- ```
77
- winget install ffmpeg
78
- ```
79
-
80
- Atau unduh dari [ffmpeg.org](https://ffmpeg.org/download.html), ekstrak, dan tambahkan folder `bin` ke PATH sistem Anda.
81
-
82
- Setelah memasang, buka command prompt baru dan verifikasi:
83
- ```
84
- ffmpeg -version
85
- ```
86
-
87
- Jika Anda memasang FFmpeg ke lokasi non-standar, atur variabel lingkungan `FFMPEG_PATH` di konfigurasi Claude Desktop:
88
- ```json
89
- "env": {
90
- "FFMPEG_PATH": "C:\\ffmpeg\\bin\\ffmpeg.exe"
91
- }
92
- ```
93
-
94
- ---
95
-
96
- ## Output transkripsi penuh dengan tag `[FOREIGN]`
97
-
98
- **Penyebab:** Anda menggunakan model khusus bahasa Inggris (misalnya `ggml-medium.en.bin`) pada audio non-Inggris. Model khusus bahasa Inggris tidak dapat memproses bahasa lain dan menghasilkan `[FOREIGN]` sebagai placeholder untuk setiap segmen yang tidak dapat ditangani.
99
-
100
- **Solusi:** Unduh dan gunakan `ggml-large-v3.bin` — model multibahasa. Ini diperlukan untuk transkripsi non-Inggris, deteksi bahasa otomatis, atau terjemahan.
101
-
102
- ```
103
- https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3.bin
104
- ```
105
-
106
- Simpan ke `C:\whisper\models\` dan perbarui konfigurasi:
107
- ```json
108
- "WHISPER_MODEL": "C:\\whisper\\models\\ggml-large-v3.bin"
109
- ```
110
-
111
- Atau ganti per-transkripsi menggunakan parameter `model` di `transcribe_audio` atau `generate_subtitles`.
112
-
113
- > **Catatan:** Model khusus bahasa Inggris (`*.en.bin`) lebih cepat dan akurat untuk konten bahasa Inggris tetapi sama sekali tidak dapat menangani bahasa lain. Jika Anda bekerja dengan konten multibahasa, `large-v3` adalah model yang tepat terlepas dari hardware.
114
-
115
- ---
116
-
117
- ## Transkripsi tidak menghasilkan output atau file kosong
118
-
119
- **Kemungkinan penyebab:**
120
-
121
- 1. **Model salah untuk bahasa** — Model khusus bahasa Inggris (`*.en.bin`) tidak dapat mentranskrip bahasa lain. Gunakan `ggml-large-v3.bin` untuk konten multibahasa.
122
-
123
- 2. **Kualitas audio terlalu rendah** — File dengan bitrate sangat rendah (misalnya rekaman ponsel `.3gp` lama menggunakan codec AMR-NB ~12kbps) mungkin berada di batas kemampuan whisper. Lingkungan yang bising (kebisingan latar belakang, gema, pembicara jauh) juga menantang. Coba `large-v3` yang lebih baik menangani audio yang terdegradasi.
124
-
125
- 3. **File diam atau rusak** — Jalankan `analyze_media` pada file untuk memeriksa apakah FFprobe mendeteksi aliran audio yang valid.
126
-
127
- 4. **Kegagalan konversi** — File mungkin tidak dikonversi ke WAV dengan benar. Coba konversi secara manual terlebih dahulu:
128
- ```
129
- ffmpeg -i yourfile.3gp -ar 16000 -ac 1 output.wav
130
- ```
131
- Kemudian transkripsi WAV secara langsung.
132
-
133
- ---
134
-
135
- ## Tugas latar belakang gagal pada file dengan karakter khusus atau Unicode di nama file
136
-
137
- **Penyebab:** whisper-cli.exe tidak dapat menulis file output saat jalur mengandung karakter Unicode (bahasa Indonesia, Jepang, Korea, emoji, tanda kurung, dll.) atau karakter khusus tertentu.
138
-
139
- **Solusi sementara saat ini:** Ubah nama file agar hanya menggunakan karakter ASCII sebelum transkripsi, lalu ubah nama kembali jika diperlukan.
140
-
141
- ```
142
- ren "nama_file_indonesia.mp4" "temp_transcribe.mp4"
143
- ```
144
-
145
- **Status:** Ini adalah bug yang diketahui. Perbaikan direncanakan yang akan merutekan output melalui jalur temp yang disanitasi dan memindahkan hasilnya ke tujuan yang benar setelah selesai.
146
-
147
- ---
148
-
149
- ## Tugas latar belakang menampilkan "gagal" tanpa output
150
-
151
- **Kemungkinan penyebab:**
152
-
153
- 1. **Nama file Unicode** — Lihat di atas.
154
-
155
- 2. **Jalur model salah** — Proses terpisah tidak mewarisi jalur yang telah dikoreksi. Jalankan `check_config` untuk memverifikasi jalur.
156
-
157
- 3. **Proses dihentikan** — Jika whisper-cli.exe dihentikan secara manual di tengah tugas, tidak ada file output yang akan ada. Coba lagi.
158
-
159
- 4. **VRAM tidak cukup** — Model besar pada GPU dengan VRAM rendah mungkin gagal secara diam-diam. Coba model yang lebih kecil.
160
-
161
- 5. **Konversi file gagal** — Coba transkripsi file WAV langsung untuk mengisolasi apakah masalahnya ada di konversi atau transkripsi.
162
-
163
- ---
164
-
165
- ## Transkripsi latar belakang tidak menghasilkan output SRT
166
-
167
- **Penyebab:** Mode latar belakang (`background=true` di `transcribe_audio`) saat ini hanya menghasilkan output `.txt`. Format SRT dalam mode latar belakang belum diimplementasikan.
168
-
169
- **Solusi:** Untuk file di bawah ~4 menit, gunakan `generate_subtitles` dalam mode pemblokiran. Untuk file yang lebih panjang, transkripsi dalam mode latar belakang terlebih dahulu untuk mendapatkan `.txt`, kemudian jika SRT diperlukan, gunakan `generate_subtitles` pada file yang sama (akan mentranskrip ulang).
170
-
171
- **Status:** Dukungan SRT dalam mode latar belakang direncanakan untuk rilis mendatang.
172
-
173
- ---
174
-
175
- ## GPU tidak digunakan (CPU macet di atas 50%)
176
-
177
- **Penyebab:** Anda menjalankan binary khusus CPU yang disertakan dengan rilis whisper.cpp standar.
178
-
179
- **Solusi:** Unduh build yang mengaktifkan Vulkan dari [halaman rilis](https://github.com/eviscerations/whisper-windows-mcp/releases/tag/v1.4.0) dan ekstrak ke `C:\whisper\Release\`.
180
-
181
- Verifikasi akselerasi GPU aktif:
182
- - Minta Claude `check_system`
183
- - Cari `✅ Vulkan binary: ggml-vulkan.dll found` dalam output
184
- - Pantau Task Manager → Performa → GPU selama transkripsi — utilisasi GPU seharusnya naik ke 15–30%
185
-
186
- ---
187
-
188
- ## `check_system` melaporkan jumlah VRAM yang salah
189
-
190
- Ini adalah keterbatasan Windows yang diketahui. Perintah `wmic` membaca VRAM dari registry, yang pada banyak kartu AMD melaporkan setengah VRAM fisik. Vega 56 dengan 8GB HBM2 biasanya menampilkan 4GB. Ini hanya masalah tampilan — whisper menggunakan VRAM fisik penuh selama inferensi.
191
-
192
- ---
193
-
194
- ## Error "Transkripsi sudah berlangsung"
195
-
196
- Ada proses `whisper-cli.exe` yang berjalan dari tugas sebelumnya. Tunggu hingga selesai, atau:
197
-
198
- 1. Buka Task Manager → tab Detail
199
- 2. Temukan `whisper-cli.exe`
200
- 3. Klik kanan → Akhiri tugas
201
-
202
- Kemudian coba lagi.
203
-
204
- ---
205
-
206
- ## Deteksi bahasa otomatis salah
207
-
208
- Deteksi otomatis Whisper berjalan pada 30 detik pertama audio. Jika file dimulai dalam bahasa yang berbeda dari sebagian besar kontennya, deteksi mungkin salah.
209
-
210
- **Solusi:** Tentukan bahasa secara eksplisit (misalnya `language=id`) daripada mengandalkan deteksi otomatis.
211
-
212
- ---
213
-
214
- ## Pembuatan subtitle menghasilkan "(berbicara dalam bahasa asing)" di seluruh bagian
215
-
216
- Whisper mendeteksi ucapan tetapi tidak dapat mentranskrip. Penyebab paling umum:
217
-
218
- 1. **Model salah** — Menggunakan model khusus bahasa Inggris pada audio non-Inggris. Gunakan `large-v3`.
219
-
220
- 2. **Kualitas audio** — Lingkungan yang bising (dapur, kerumunan, gema) mungkin mengalahkan model medium. Coba `large-v3`.
221
-
222
- 3. **Bahasa campuran** — File dengan dua bahasa yang bergantian akan membuat bahasa minoritas diisi placeholder dengan pengaturan satu bahasa.
223
-
224
- ---
225
-
226
- ## Terjemahan subtitle hanya menghasilkan bahasa Inggris
227
-
228
- Ini adalah desain yang disengaja. Flag `--translate` bawaan Whisper hanya menerjemahkan **ke bahasa Inggris**. Untuk terjemahan ke bahasa target lain, terjemahkan konten file `.srt` secara terpisah.
229
-
230
- ---
231
-
232
- ## Transkripsi batch berhenti maju
233
-
234
- Panggil `check_batch_progress` lagi. Jika masih macet:
235
-
236
- 1. Periksa Task Manager untuk proses `whisper-cli.exe` yang berjalan
237
- 2. Periksa log tugas di `%TEMP%\whisper-mcp-jobs\`
238
- 3. File yang gagal ditandai dalam laporan batch — jalankan ulang secara individual dengan `transcribe_audio`
239
-
240
- ---
241
-
242
- ## Membersihkan direktori tugas sementara
243
-
244
- whisper-windows-mcp menulis file status tugas dan log ke `%TEMP%\whisper-mcp-jobs\` selama transkripsi. File-file ini terakumulasi dari waktu ke waktu dan dapat menghabiskan ruang disk, terutama file `.log` dari tugas transkripsi yang panjang.
245
-
246
- Setelah batch atau tugas selesai dan Anda telah memverifikasi transkrip output, Anda dapat dengan aman menghapus semua yang ada di direktori ini:
247
-
248
- ```powershell
249
- Remove-Item "$env:TEMP\whisper-mcp-jobs\*" -Recurse -Force
250
- ```
251
-
252
- Direktori akan dibuat ulang secara otomatis pada transkripsi berikutnya. Tidak ada file output transkrip yang disimpan secara permanen di sini — file dipindahkan ke direktori sumber saat selesai. Hanya metadata tugas dan log yang tersisa.
253
-
254
- **Catatan:** Jangan hapus direktori ini saat transkripsi sedang berlangsung — file status batch diperlukan agar `check_batch_progress` berfungsi.
255
-
256
- ---
257
-
258
- ## Batch besar tanpa pengawasan dari command line
259
-
260
- Untuk batch yang sangat besar di mana Anda ingin menjalankan semalaman tanpa Claude, gunakan PowerShell.
261
-
262
- **Penting:** whisper-cli.exe tidak dapat membaca MP4, MKV, atau sebagian besar format video secara langsung. FFmpeg harus mengkonversi setiap file ke WAV terlebih dahulu. whisper juga menulis transkrip ke stdout dan output diagnostik ke stderr — gunakan `Start-Process -RedirectStandardOutput` untuk menangkap transkrip dengan benar. Menggunakan pipe `|` atau mengalihkan stderr dengan `2>$null` tidak menangkap apa pun.
263
-
264
- ```powershell
265
- $whisper = "C:\whisper\Release\whisper-cli.exe"
266
- $model = "C:\whisper\models\ggml-medium.en.bin"
267
- $dir = "C:\path\to\your\folder"
268
- $ffmpeg = "ffmpeg"
269
- $tmp = "$env:TEMP\whisper_convert.wav"
270
-
271
- Get-ChildItem "$dir\*.mp4" | ForEach-Object {
272
- $out = ($_.FullName -replace '\.mp4$', '') + ".txt"
273
- if (Test-Path $out) {
274
- Write-Host "SKIP (exists): $($_.Name)"
275
- return
276
- }
277
- Write-Host "Converting: $($_.Name)"
278
- & $ffmpeg -y -i $_.FullName -ar 16000 -ac 1 -c:a pcm_s16le $tmp 2>$null
279
- Write-Host "Transcribing: $($_.Name)"
280
- $wArgs = "-m `"$model`" -f `"$tmp`" --threads 8 --condition-on-previous-text 0 --no-speech-thold 0.6"
281
- Start-Process -FilePath $whisper -ArgumentList $wArgs -RedirectStandardOutput $out -Wait -NoNewWindow
282
- Write-Host "Done: $($_.BaseName).txt"
283
- }
284
-
285
- Remove-Item $tmp -ErrorAction SilentlyContinue
286
- Write-Host "All done."
287
- ```
288
-
289
- Ganti `*.mp4` dengan `*.mkv`, `*.m4a`, dll. sesuai jenis file Anda. Pemeriksaan lewati `Test-Path` berarti menjalankan ulang skrip setelah gangguan tidak akan memproses ulang file yang sudah selesai.
290
-
291
- Script ini menulis file `.txt` di sebelah setiap sumber. Alat MCP akan mengenali file-file ini sebagai sudah ditranskripsi saat Anda menjalankan `analyze_media` atau `start_batch` setelahnya.
292
-
293
- ---
294
-
295
- ## Lokasi file konfigurasi
296
-
297
- ```
298
- C:\Users\NamaPengguna\AppData\Roaming\Claude\claude_desktop_config.json
299
- ```
300
-
301
- Jika `AppData` tidak terlihat: Tampilan → Tampilkan → Item tersembunyi di File Explorer.
302
-
303
- ---
304
-
305
- ## Contoh konfigurasi lengkap yang berfungsi
306
-
307
- ```json
308
- {
309
- "mcpServers": {
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` default ke `ffmpeg` (mengasumsikan ada di PATH). Atur secara eksplisit hanya jika FFmpeg dipasang di lokasi non-standar.
1
+ # Pemecahan Masalah — whisper-windows-mcp
2
+
3
+ ---
4
+
5
+ ## Daftar Periksa Cepat
6
+
7
+ Sebelum menyelidiki masalah tertentu, verifikasi hal-hal dasar berikut:
8
+
9
+ - Jalur di `claude_desktop_config.json` menggunakan **dua backslash** (`C:\\whisper\\Release\\whisper-cli.exe`)
10
+ - `whisper-cli.exe` ada di jalur yang dikonfigurasi dalam `WHISPER_CLI_PATH`
11
+ - File model `.bin` ada di jalur yang dikonfigurasi dalam `WHISPER_MODEL`
12
+ - FFmpeg terpasang dan ada di PATH — jalankan `ffmpeg -version` di terminal untuk mengkonfirmasi
13
+ - Claude Desktop sudah **di-restart penuh** setelah mengedit konfigurasi (keluar dari system tray, bukan sekadar menutup jendela)
14
+ - Whisper menampilkan **lencana berjalan berwarna hijau** di Claude Desktop → Pengaturan → Pengembang
15
+
16
+ ---
17
+
18
+ ## Instalasi dan Startup
19
+
20
+ ### Whisper tidak muncul di Claude Desktop → Pengaturan → Pengembang
21
+
22
+ 1. Buka Claude Desktop → Pengaturan → Pengembang → Edit Konfigurasi
23
+ 2. Konfirmasi JSON valid — tempelkan ke [jsonlint.com](https://jsonlint.com) jika tidak yakin
24
+ 3. Konfirmasi `WHISPER_CLI_PATH` dan `WHISPER_MODEL` menunjuk ke file yang benar-benar ada
25
+ 4. Keluar dari Claude Desktop dari system tray (klik kanan ikon tray → Keluar)
26
+ 5. Luncurkan kembali Claude Desktop dan periksa lagi
27
+
28
+ Jika whisper muncul tetapi menampilkan lencana error bukan hijau:
29
+ - Tanya Claude: *"Periksa konfigurasi whisper"* — alat `check_config` mengembalikan pesan error yang spesifik
30
+ - Buka Claude Desktop → Pengaturan → Pengembang → klik nama server untuk melihat log error
31
+
32
+ ### Error "whisper-cli.exe tidak ditemukan"
33
+
34
+ Jalur di `WHISPER_CLI_PATH` tidak sesuai dengan lokasi binary yang diekstrak.
35
+
36
+ Jalur default yang diharapkan: `C:\whisper\Release\whisper-cli.exe`
37
+
38
+ Konfirmasi file ada:
39
+ ```powershell
40
+ Test-Path "C:\whisper\Release\whisper-cli.exe"
41
+ ```
42
+
43
+ Seharusnya mengembalikan `True`. Jika mengembalikan `False`, ekstrak zip rilis ke `C:\whisper\Release\` atau perbarui `WHISPER_CLI_PATH` di konfigurasi Anda agar sesuai dengan lokasi sebenarnya.
44
+
45
+ ### Error "Model tidak ditemukan"
46
+
47
+ Jalur di `WHISPER_MODEL` tidak sesuai dengan lokasi atau nama file model yang sebenarnya.
48
+
49
+ Periksa direktori model:
50
+ ```powershell
51
+ Get-ChildItem "C:\whisper\models\"
52
+ ```
53
+
54
+ Nama file harus menyertakan nama lengkap termasuk sufiks kuantisasi, misalnya `ggml-large-v3-turbo-q5_0.bin` bukan `ggml-large-v3-turbo.bin`. Jika tidak ada model yang terpasang, gunakan `download_model` di Claude Desktop.
55
+
56
+ ---
57
+
58
+ ## Akselerasi GPU
59
+
60
+ ### Transkripsi lambat — hanya CPU, tidak ada GPU
61
+
62
+ Tanya Claude: *"Periksa hardware sistem"*
63
+
64
+ Alat `check_system` mengkonfirmasi apakah `ggml-vulkan.dll` ada di direktori binary whisper. Jika DLL tidak ada, Anda menjalankan CPU-only terlepas dari GPU Anda.
65
+
66
+ **Perbaikan:** Unduh `whisper-vulkan-win-x64.zip` dari [halaman rilis](https://github.com/eviscerations/whisper-windows-mcp/releases/tag/v1.4.0) dan ekstrak ke `C:\whisper\Release\`. Zip menyertakan DLL — harus berada di direktori yang sama dengan `whisper-cli.exe`.
67
+
68
+ ### GPU terdeteksi tetapi utilisasi 0% selama transkripsi
69
+
70
+ Binary berjalan tetapi tidak mendispatch ke GPU. Ini biasanya berarti:
71
+ - Vulkan SDK tidak terpasang atau driver GPU tidak mengekspos antarmuka Vulkan
72
+ - GPU lebih tua dari Vulkan 1.0 (jarang — sebagian besar GPU sejak 2016 mendukungnya)
73
+
74
+ Periksa dukungan Vulkan:
75
+ ```powershell
76
+ # Pasang vulkaninfo via Vulkan SDK jika diperlukan, kemudian:
77
+ vulkaninfo
78
+ ```
79
+
80
+ Output apa pun mengkonfirmasi Vulkan tersedia. Jika `vulkaninfo` gagal, pasang driver GPU terbaru dari situs vendor GPU Anda.
81
+
82
+ ### VRAM dilaporkan setengah ukuran sebenarnya (AMD)
83
+
84
+ Ini adalah keanehan pelaporan Windows yang diketahui untuk GPU AMD dengan memori terpadu/berbagi. VRAM yang sebenarnya tersedia untuk pemrosesan biasanya dua kali lipat dari yang dilaporkan `wmic`. Rekomendasi model mungkin terlalu konservatif akibatnya — Anda bisa mencoba model yang lebih besar dari yang direkomendasikan dan mengamati apakah transkripsi berhasil diselesaikan.
85
+
86
+ ---
87
+
88
+ ## Kualitas Transkripsi
89
+
90
+ ### Output mengandung teks halusinasi atau frasa berulang
91
+
92
+ Whisper terkadang berhalusinasi pada segmen audio yang senyap atau berkualitas rendah. Alat menerapkan `--max-context 0` dan `--no-speech-thold 0.6` secara default untuk meminimalkan hal ini.
93
+
94
+ Pendekatan tambahan:
95
+ - Gunakan `temperature=0.2` — sedikit keacakan membantu memutus loop halusinasi pada audio yang bising
96
+ - Gunakan model VAD (Voice Activity Detection): unduh file `.bin` model Silero VAD dan teruskan jalurnya sebagai `vad_model`. Ini menghapus keheningan sebelum transkripsi, yang merupakan perbaikan paling efektif untuk halusinasi pada rekaman dengan jeda.
97
+ - Gunakan model yang lebih besar (`large-v3` atau `large-v3-turbo`) — model yang lebih kecil lebih sering berhalusinasi pada audio yang sulit
98
+ - Gunakan `prompt` untuk mengatur konteks: *"Ini adalah wawancara podcast tentang rekayasa perangkat lunak."*
99
+
100
+ ### Output transkripsi kosong atau sangat pendek
101
+
102
+ Tanya Claude: *"Analisis file ini"* (`analyze_media`) untuk mengkonfirmasi file memiliki konten audio dan merupakan format yang dikenali.
103
+
104
+ Jika FFprobe melaporkan audio tetapi transkripsi tidak menghasilkan apa-apa:
105
+ - File mungkin dalam bahasa yang tidak sesuai dengan parameter `language` yang dikonfigurasi
106
+ - Coba `language=auto` untuk membiarkan Whisper mendeteksi bahasa
107
+ - Audio mungkin terlalu pelan atau telah diproses secara berlebihan — transkripsi memerlukan ucapan yang dapat dipahami
108
+
109
+ ### Output mode timestamps berbeda dari SRT
110
+
111
+ Dalam mode `timestamps`, output dicetak ke stdout whisper sebagai baris `[HH:MM:SS.mmm --> HH:MM:SS.mmm] teks` biasa. Dalam mode `srt`, whisper memformat output dalam blok SRT bernomor. Batas segmen mungkin sedikit berbeda karena kedua jalur menggunakan flag output yang berbeda. Keduanya valid — gunakan `srt` atau `vtt` saat Anda membutuhkan format file subtitle, dan `timestamps` saat Anda menginginkan teks bertimestamp mentah.
112
+
113
+ ---
114
+
115
+ ## Mode Privasi dan Gerbang Persetujuan
116
+
117
+ ### Saya tidak melihat prompt persetujuan sebelum transkripsi
118
+
119
+ Gerbang persetujuan aktif **sekali per sesi** dalam mode standar. Jika Anda sudah mengkonfirmasi transkripsi dalam sesi ini (sejak restart Claude Desktop terakhir), gerbang tidak akan aktif lagi.
120
+
121
+ Alasan lain gerbang mungkin tidak muncul:
122
+ - `WHISPER_CONSENT_ACKNOWLEDGED=true` diatur di konfigurasi Anda — ini melewati gerbang sepenuhnya
123
+ - `WHISPER_PRIVACY_MODE=true` diatur — mode privasi menggunakan gerbang per-operasi terpisahnya sendiri, bukan gerbang persetujuan
124
+ - Anda memeriksa kemajuan transkripsi pemblokiran yang sudah selesai — gerbang dikonsumsi di awal tugas
125
+
126
+ **Untuk mereset dan melihat gerbang lagi:** restart penuh Claude Desktop (keluar dari system tray, luncurkan kembali).
127
+
128
+ ### Claude memproses file saya tanpa bertanya terlebih dahulu
129
+
130
+ Jika `WHISPER_CONSENT_ACKNOWLEDGED=true` ada di konfigurasi Anda, gerbang dilewati berdasarkan desain. Ini adalah perilaku yang dimaksudkan untuk pengguna yang telah meninjau implikasi privasi dan tidak lagi membutuhkan pengingat.
131
+
132
+ Jika tidak diatur dan Claude melanjutkan tanpa bertanya, gerbang sesi sudah dikonsumsi oleh transkripsi sebelumnya dalam sesi yang sama. Gerbang aktif sekali per sesi.
133
+
134
+ Untuk konfirmasi per-operasi pada setiap transkripsi terlepas dari status sesi, aktifkan mode privasi: teruskan `privacy_mode=true` atau atur `WHISPER_PRIVACY_MODE=true` di konfigurasi Anda.
135
+
136
+ ### Mode privasi aktif tetapi saya ingin membaca satu transkrip
137
+
138
+ Teruskan `privacy_mode=false` langsung ke alat transkripsi untuk panggilan spesifik tersebut. Ini menggantikan pengaturan global `WHISPER_PRIVACY_MODE=true` hanya untuk satu panggilan itu:
139
+
140
+ - *"Transkripsi file ini, privacy_mode=false"*
141
+
142
+ Tidak perlu restart. Override hanya berlaku untuk panggilan alat tunggal tersebut.
143
+
144
+ ### Mode privasi meminta konfirmasi sebelum setiap file
145
+
146
+ Ini adalah perilaku yang benar dan disengaja. Mode privasi memerlukan persetujuan per-operasi — gerbang aktif sebelum setiap transkripsi dan tidak dapat dilewati saat mode privasi aktif.
147
+
148
+ Jika Anda perlu mentranskrip banyak file tanpa konfirmasi per-file dan kontennya tidak sensitif, nonaktifkan mode privasi:
149
+ - Hapus `WHISPER_PRIVACY_MODE=true` dari konfigurasi Anda dan restart Claude Desktop
150
+ - Atau teruskan `privacy_mode=false` per-panggilan untuk file yang tidak sensitif
151
+
152
+ ### Mengapa mode privasi bertanya setiap saat, tetapi gerbang persetujuan hanya bertanya sekali?
153
+
154
+ Kedua gerbang melayani pengguna yang berbeda dengan kebutuhan yang berbeda.
155
+
156
+ **Gerbang persetujuan** (mode standar) adalah pengungkapan informasi satu kali. Setelah Anda memahami bahwa teks transkrip dikirimkan ke API Claude, Anda tidak perlu diberitahu lagi dalam sesi ini.
157
+
158
+ **Gerbang mode privasi** aktif setiap saat karena orang yang membutuhkannya — penyedia layanan kesehatan, pengacara, profesional keuangan — memerlukan konfirmasi per-operasi yang afirmatif sebagai bagian dari alur kerja kepatuhan mereka. Melewatinya akan mengalahkan tujuannya.
159
+
160
+ ### Tugas latar belakang dan gerbang persetujuan
161
+
162
+ Untuk transkripsi latar belakang (`background=true`) dalam mode standar, gerbang persetujuan aktif di `check_progress` saat transkrip dikembalikan — **bukan** di `transcribe_audio` saat tugas dimulai. Pada saat tugas dimulai, belum ada transkrip yang ada. Membatasi sebelum tugas dimulai akan memblokir pemrosesan audio secara tidak perlu. Gerbang aktif begitu teks transkrip pertama kali akan dikembalikan ke API.
163
+
164
+ Untuk tugas latar belakang mode privasi, gerbang aktif **sebelum spawning** — sebelum pemrosesan audio apa pun dimulai.
165
+
166
+ ### Bagaimana cara melewati gerbang persetujuan secara permanen?
167
+
168
+ Atur `WHISPER_CONSENT_ACKNOWLEDGED=true` di bagian env `claude_desktop_config.json` Anda. Ini melewati pengungkapan sesi satu kali dalam mode standar.
169
+
170
+ Catatan: ini tidak berpengaruh saat mode privasi aktif.
171
+
172
+ ---
173
+
174
+ ## Transkripsi Latar Belakang dan Batch
175
+
176
+ ### Tugas latar belakang tidak pernah menampilkan selesai
177
+
178
+ Status tugas dilacak oleh exit proses whisper-cli.exe. Periksa:
179
+
180
+ 1. Tanya Claude: *"Periksa kemajuan job_id"* — jika proses masih berjalan, alat mengembalikan "Sedang berlangsung" dengan waktu yang telah berlalu dan timestamp segmen terakhir
181
+ 2. Jika file sangat panjang (2+ jam), tunggu lebih lama — transkripsi GPU file 2 jam membutuhkan sekitar 15–20 menit pada GPU kelas menengah
182
+ 3. Jika waktu yang telah berlalu tampak salah, buka Task Manager → Detail dan periksa apakah `whisper-cli.exe` ada dalam daftar
183
+
184
+ Jika `whisper-cli.exe` tidak berjalan tetapi `check_progress` masih menampilkan "Sedang berlangsung":
185
+ - Proses keluar dengan error dan tidak meninggalkan file output
186
+ - Tanya Claude: *"Periksa kemajuan job_id"* — alat akan mendeteksi tidak ada PID dan tidak ada file output dan melaporkan error dengan baris log terakhir
187
+
188
+ ### Tugas latar belakang selesai tetapi file output hilang atau di lokasi yang salah
189
+
190
+ Tugas latar belakang menulis output ke jalur temp di `%TEMP%\whisper-mcp-jobs\` selama pemrosesan, kemudian memindahkan file ke direktori sumber saat selesai. Jika pemindahan gagal (disk penuh, masalah izin, atau panjang jalur), `check_progress` mengembalikan error spesifik:
191
+
192
+ > "Penulisan file output gagal. Transkripsi selesai tetapi tidak dapat ditulis ke: [jalur]"
193
+
194
+ Periksa:
195
+ - Direktori sumber ada dan dapat ditulis
196
+ - Ada cukup ruang disk
197
+ - Jalur target tidak terlalu panjang (Windows memiliki batas jalur 260 karakter secara default)
198
+
199
+ Output mentah mungkin masih ada di `%TEMP%\whisper-mcp-jobs\` dengan nama file berbasis ID tugas.
200
+
201
+ ### Batch macet atau tidak maju ke file berikutnya
202
+
203
+ `start_batch` menggunakan exit callback untuk maju sendiri tanpa polling. Jika batch tampak macet:
204
+
205
+ 1. Panggil `check_batch_progress` — ini memaksa pemeriksaan kemajuan dan mengevaluasi ulang status saat ini
206
+ 2. Jika file saat ini masih berjalan, tunggu hingga selesai — periksa Task Manager untuk `whisper-cli.exe`
207
+ 3. Jika `check_batch_progress` menampilkan file saat ini sebagai gagal, ia akan mencoba maju ke file berikutnya
208
+
209
+ Catatan: di v2.3.0 dan lebih baru, batch maju sendiri melalui exit callback saat setiap file selesai. Anda tidak perlu melakukan polling berulang kali — memanggil `check_batch_progress` sekali setelah beberapa waktu berlalu sudah cukup untuk mendapatkan pembaruan status.
210
+
211
+ ### Batch melaporkan file sebagai "gagal" meskipun terlihat lengkap
212
+
213
+ Validator memeriksa bahwa file output tidak kosong dan memiliki setidaknya satu baris per 30 detik audio. File pendek atau rekaman dengan bagian senyap yang panjang mungkin menghasilkan output yang dianggap validator terlalu pendek.
214
+
215
+ Jika transkrip terlihat benar saat Anda membukanya:
216
+ - Validasi terlalu konservatif untuk file ini
217
+ - Jalankan ulang dengan `transcribe_audio` secara individual dan periksa hasilnya secara manual
218
+
219
+ Jika output memang salah:
220
+ - Coba `language=auto` jika bahasa mungkin tidak sesuai dengan pengaturan yang dikonfigurasi
221
+ - Coba model yang lebih besar untuk akurasi yang lebih baik
222
+
223
+ ### Banyak file gagal segera di awal batch
224
+
225
+ Ini biasanya berarti whisper-cli.exe sama sekali tidak berfungsi. Jalankan `check_config` untuk memverifikasi semua jalur, kemudian coba satu file dengan `transcribe_audio` untuk melihat error yang spesifik.
226
+
227
+ ---
228
+
229
+ ## Pembuatan Subtitle
230
+
231
+ ### File SRT disimpan tetapi memiliki nama yang salah atau di lokasi yang salah
232
+
233
+ File SRT dan VTT disimpan di sebelah file sumber dengan kode bahasa yang ditambahkan saat bahasa sumber bukan bahasa Inggris:
234
+ - Sumber bahasa Inggris: `namafile.srt`
235
+ - Sumber bahasa Indonesia: `namafile.id.srt`
236
+ - Dengan terjemahan bahasa Inggris: `namafile.id.srt` + `namafile.en.srt`
237
+
238
+ Jika file muncul di sebelah WAV temp bukan sumber asli, periksa apakah file sumber memerlukan konversi format (format apa pun selain mp3/wav melalui FFmpeg). Logika tujuan output menggunakan `file_path` asli, bukan jalur file temp.
239
+
240
+ ### Output VTT untuk penggunaan web — bagaimana cara memuatnya di pemutar desktop?
241
+
242
+ VLC mendukung VTT melalui Subtitle → Tambahkan File Subtitle → pilih file `.vtt`. Sebagian besar pemutar desktop lainnya mendukung SRT lebih baik dari VTT. Gunakan `output_format=srt` untuk kompatibilitas pemutar desktop maksimum.
243
+
244
+ VTT paling cocok untuk elemen `<video>` HTML5 dan pemutar video berbasis web.
245
+
246
+ ### File LRC tidak ditampilkan di pemutar media saya
247
+
248
+ File LRC (`.lrc`) diperuntukkan bagi pemutar dengan fitur tampilan lirik/karaoke: foobar2000, Winamp, AIMP, dan berbagai pemutar mobile. Pemutar video standar tidak menampilkan LRC. Jika Anda membutuhkan subtitle tersinkronisasi untuk video, gunakan `srt` atau `vtt`.
249
+
250
+ ### Output CSV — apa formatnya?
251
+
252
+ Output CSV menyertakan waktu mulai segmen, waktu selesai, dan teks per baris. Dirancang untuk diimpor ke alat spreadsheet atau skrip analisis downstream. Format kolom yang tepat sesuai dengan output `-ocsv` whisper.cpp. Gunakan `srt` atau `vtt` untuk tampilan subtitle yang sebenarnya.
253
+
254
+ ### Pembuatan subtitle timeout dengan error 4 menit
255
+
256
+ `generate_subtitles` berjalan secara sinkron secara default dan dapat mencapai timeout MCP 4 menit Claude Desktop pada file yang panjang. Gunakan `background=true` untuk file di atas 10 menit:
257
+
258
+ - *"Buat subtitle untuk file ini, background=true"*
259
+
260
+ Kemudian periksa kemajuan dengan `check_progress`. Catatan: `translate_to_english=true` tidak tersedia dalam mode latar belakang. Jalankan pass kedua setelah tugas latar belakang selesai untuk menghasilkan terjemahan.
261
+
262
+ ---
263
+
264
+ ## Manajemen Model
265
+
266
+ ### `download_model` gagal dengan error jaringan
267
+
268
+ Alat mengunduh dari Hugging Face. Konfirmasi mesin Anda memiliki akses internet dan `huggingface.co` tidak diblokir oleh firewall atau proxy.
269
+
270
+ Jika unduhan dimulai tetapi gagal di tengah jalan, file `.part` dihapus secara otomatis. Jalankan ulang `download_model` untuk mencoba lagi.
271
+
272
+ ### `switch_model` mengatakan model tidak ada di direktori model
273
+
274
+ Alat `switch_model` hanya menerima file dalam direktori yang dikonfigurasi dalam `WHISPER_MODEL` (khususnya, direktori yang berisi file tersebut).
275
+
276
+ Jika model Anda berada di lokasi yang berbeda, pindahkan ke direktori model atau perbarui `WHISPER_MODEL` di konfigurasi Anda agar menunjuk ke file di direktori yang sama dengan model Anda.
277
+
278
+ ### Model aktif kembali ke model konfigurasi setelah restart Claude Desktop
279
+
280
+ `switch_model` bersifat session-scoped berdasarkan desain. Untuk membuat pergantian model permanen, perbarui `WHISPER_MODEL` di `claude_desktop_config.json` dan restart Claude Desktop.
281
+
282
+ ---
283
+
284
+ ## Jalur File dan Format
285
+
286
+ ### Nama file Unicode menyebabkan transkripsi gagal secara diam-diam
287
+
288
+ Transkripsi latar belakang merutekan semua output melalui jalur temp berbasis ID tugas ASCII yang disanitasi, yang menangani nama file Unicode dengan benar. Jika Anda melihat kegagalan dengan nama file Unicode dalam mode pemblokiran, periksa bahwa file itu sendiri dapat diakses:
289
+
290
+ ```powershell
291
+ Test-Path "C:\Users\NamaPengguna\Documents\Rekaman_Rapat.mp4"
292
+ ```
293
+
294
+ Seharusnya mengembalikan `True`. Jika jalur tidak dapat diakses oleh PowerShell, jalur tersebut juga tidak dapat diakses oleh server MCP.
295
+
296
+ ### File video tidak menghasilkan output atau error segera
297
+
298
+ FFmpeg diperlukan untuk semua format video. Konfirmasi FFmpeg terpasang:
299
+ ```
300
+ ffmpeg -version
301
+ ```
302
+
303
+ Jika FFmpeg tidak ada di PATH, atur `FFMPEG_PATH` di konfigurasi Anda ke jalur lengkap `ffmpeg.exe`.
304
+
305
+ Jika FFmpeg terpasang tetapi video tertentu gagal, mungkin file rusak atau varian codec yang tidak biasa. Coba konversi secara manual:
306
+ ```
307
+ ffmpeg -i input.mp4 -ar 16000 -ac 1 output.wav
308
+ ```
309
+ Kemudian transkripsi file WAV secara langsung.
310
+
311
+ ### Error "File terlalu besar"
312
+
313
+ Alat menolak file di atas 10 GB. Ini adalah batas keamanan untuk mencegah penggunaan memori yang berlebihan. File yang mendekati ukuran ini harus dipecah sebelum transkripsi.
314
+
315
+ ### Penolakan jalur UNC
316
+
317
+ Jalur yang dimulai dengan `\\server\share` (jalur UNC ke berbagi jaringan) ditolak oleh validator input. Pasang berbagi jaringan sebagai huruf drive (misalnya `Z:\`) dan gunakan jalur tersebut.
318
+
319
+ ---
320
+
321
+ ## Pembersihan File Sementara
322
+
323
+ File status tugas (`.json` dan `.log`) di `%TEMP%\whisper-mcp-jobs\` dibersihkan secara otomatis saat startup untuk file yang lebih dari 7 hari. Pembersihan manual tetap dimungkinkan jika diperlukan:
324
+
325
+ ```powershell
326
+ Remove-Item "$env:TEMP\whisper-mcp-jobs\*" -Force
327
+ ```
328
+
329
+ File WAV konversi sementara (`whisper_tmp_*.wav` di `%TEMP%`) dihapus segera setelah setiap transkripsi selesai. Jika transkripsi crash di tengah jalan, file-file ini mungkin tertinggal. Hapus secara manual:
330
+
331
+ ```powershell
332
+ Remove-Item "$env:TEMP\whisper_tmp_*.wav" -Force
333
+ ```