whisper-windows-mcp 2.2.1 → 2.2.2
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 +20 -1
- package/LICENSE-COMMERCIAL.md +58 -0
- package/PRIVACY.pl.md +135 -0
- package/PRIVACY.ro.md +135 -0
- package/README.es.md +393 -393
- package/README.id.md +393 -393
- package/README.ja.md +402 -402
- package/README.ko.md +393 -393
- package/README.md +393 -393
- package/README.pl.md +393 -0
- package/README.pt-BR.md +393 -393
- package/README.ro.md +393 -0
- package/README.uk.md +393 -393
- package/README.vi.md +393 -393
- package/ROADMAP.es.md +200 -192
- package/ROADMAP.id.md +289 -290
- package/ROADMAP.ja.md +301 -302
- package/ROADMAP.ko.md +286 -287
- package/ROADMAP.pl.md +198 -0
- package/ROADMAP.pt-BR.md +286 -287
- package/ROADMAP.ro.md +200 -0
- package/ROADMAP.uk.md +290 -291
- package/ROADMAP.vi.md +286 -287
- package/SECURITY.pl.md +47 -0
- package/SECURITY.ro.md +47 -0
- package/TROUBLESHOOTING.pl.md +323 -0
- package/TROUBLESHOOTING.ro.md +323 -0
- package/package.json +2 -2
- package/patch_roadmaps.py +72 -0
package/SECURITY.pl.md
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Polityka bezpieczeństwa
|
|
2
|
+
|
|
3
|
+
## Zakres
|
|
4
|
+
|
|
5
|
+
whisper-windows-mcp jest narzędziem priorytetyzującym lokalność. Całe przetwarzanie audio odbywa się na twoim komputerze — żadne audio, pliki wideo ani dane osobowe nie są przesyłane na żaden serwer. Powierzchnia ataku jest ograniczona do:
|
|
6
|
+
|
|
7
|
+
- Lokalnego systemu plików (ścieżki plików przekazywane do narzędzi)
|
|
8
|
+
- Binarnego pliku whisper-cli.exe i jego zależności
|
|
9
|
+
- Połączenia MCP Claude Desktop (tylko lokalny IPC)
|
|
10
|
+
- Tekstu transkrypcji zwracanego w odpowiedziach narzędzi (patrz Architektura prywatności poniżej)
|
|
11
|
+
|
|
12
|
+
## Architektura prywatności
|
|
13
|
+
|
|
14
|
+
**Pliki audio nigdy nie opuszczają twojego komputera.** Ta gwarancja jest bezwarunkowa.
|
|
15
|
+
|
|
16
|
+
**Tekst transkrypcji może opuścić twój komputer.** Gdy odpowiedź narzędzia zawiera tekst transkrypcji, tekst ten jest przetwarzany przez API Claude. Jest to standardowe zachowanie MCP, ale tworzy lukę między filozofią projektowania "priorytet lokalny" narzędzia a rzeczywistym przepływem danych dla użytkowników obsługujących treści regulowane lub poufne.
|
|
17
|
+
|
|
18
|
+
Planowana jest zmienna środowiskowa `WHISPER_PRIVACY_MODE`, która ograniczy wszystkie odpowiedzi narzędzi tylko do metadanych — żaden tekst transkrypcji nie jest zwracany do API Claude. Jest to planowane rozwiązanie dla wdrożeń medycznych, prawnych, finansowych i korporacyjnych.
|
|
19
|
+
|
|
20
|
+
Zobacz [PRIVACY.md](PRIVACY.md) dla pełnego opisu architektury prywatności, wskazówek dotyczących ram zgodności (HIPAA, RODO, tajemnica adwokacka, FERPA, SOX, PCI-DSS) i instrukcji konfiguracji.
|
|
21
|
+
|
|
22
|
+
## Obsługiwane wersje
|
|
23
|
+
|
|
24
|
+
Poprawki bezpieczeństwa są stosowane tylko do najnowszej opublikowanej wersji.
|
|
25
|
+
|
|
26
|
+
| Wersja | Obsługiwana |
|
|
27
|
+
|---|---|
|
|
28
|
+
| 2.x (najnowsza) | ✅ |
|
|
29
|
+
| 1.x | ❌ |
|
|
30
|
+
|
|
31
|
+
## Zgłaszanie podatności
|
|
32
|
+
|
|
33
|
+
**Nie otwieraj publicznych zgłoszeń dla podatności bezpieczeństwa.**
|
|
34
|
+
|
|
35
|
+
Użyj prywatnego raportowania podatności GitHub:
|
|
36
|
+
1. Przejdź do [zakładki Security](https://github.com/eviscerations/whisper-windows-mcp/security)
|
|
37
|
+
2. Kliknij "Report a vulnerability"
|
|
38
|
+
3. Opisz problem z wystarczającymi szczegółami do odtworzenia
|
|
39
|
+
|
|
40
|
+
Otrzymasz odpowiedź w ciągu 7 dni. Jeśli podatność zostanie potwierdzona, poprawka zostanie wydana tak szybko, jak to możliwe, a ty zostaniesz wymieniony w notatkach wydania, jeśli sobie życzysz.
|
|
41
|
+
|
|
42
|
+
## Znane decyzje projektowe
|
|
43
|
+
|
|
44
|
+
- **Iniekcja ścieżki pliku:** Narzędzia akceptują bezwzględne ścieżki plików od Claude. Jest to celowy projekt — narzędzie jest przeznaczone do użytku z Claude Desktop przez właściciela komputera. Nie wystawiaj tego serwera MCP na niezaufany dostęp sieciowy.
|
|
45
|
+
- **Brak piaskownicy:** whisper-cli.exe działa z tymi samymi uprawnieniami co Claude Desktop. Jest to standardowe dla lokalnych narzędzi MCP.
|
|
46
|
+
- **Pliki tymczasowe:** Pośrednie pliki WAV są zapisywane w `%TEMP%\whisper_tmp_*.wav` i usuwane po transkrypcji. Pliki stanu zadań są zapisywane w `%TEMP%\whisper-mcp-jobs\` i pozostają do ręcznego wyczyszczenia lub do wydania planowanej funkcji automatycznego czyszczenia.
|
|
47
|
+
- **Treść transkrypcji:** Tekst transkrypcji zwracany w odpowiedziach narzędzi jest przetwarzany przez API Claude. Jest to udokumentowane i będzie możliwe do rozwiązania przez `WHISPER_PRIVACY_MODE` w przyszłym wydaniu. Zobacz [PRIVACY.md](PRIVACY.md).
|
package/SECURITY.ro.md
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Politică de securitate
|
|
2
|
+
|
|
3
|
+
## Domeniu de aplicare
|
|
4
|
+
|
|
5
|
+
whisper-windows-mcp este un instrument care prioritizează localul. Toată procesarea audio are loc pe calculatorul tău — niciun audio, fișier video sau date personale nu sunt transmise vreunui server. Suprafața de atac este limitată la:
|
|
6
|
+
|
|
7
|
+
- Sistemul de fișiere local (căi de fișiere transmise instrumentelor)
|
|
8
|
+
- Binarul whisper-cli.exe și dependențele sale
|
|
9
|
+
- Conexiunea MCP Claude Desktop (doar IPC local)
|
|
10
|
+
- Textul de transcriere returnat în răspunsurile instrumentelor (vezi Arhitectura de confidențialitate mai jos)
|
|
11
|
+
|
|
12
|
+
## Arhitectura de confidențialitate
|
|
13
|
+
|
|
14
|
+
**Fișierele audio nu părăsesc niciodată calculatorul tău.** Această garanție este necondiționată.
|
|
15
|
+
|
|
16
|
+
**Textul de transcriere poate părăsi calculatorul tău.** Când un răspuns al instrumentului include text de transcriere, acel text este procesat de API-ul Claude. Acesta este comportamentul standard MCP, dar creează un decalaj între filosofia de proiectare "local prioritar" a instrumentului și fluxul real de date pentru utilizatorii care gestionează conținut reglementat sau confidențial.
|
|
17
|
+
|
|
18
|
+
O variabilă de mediu `WHISPER_PRIVACY_MODE` este planificată care va restricționa toate răspunsurile instrumentelor doar la metadate — niciun text de transcriere nu este returnat la API-ul Claude. Aceasta este soluția prevăzută pentru implementările medicale, juridice, financiare și corporative.
|
|
19
|
+
|
|
20
|
+
Vezi [PRIVACY.md](PRIVACY.md) pentru descrierea completă a arhitecturii de confidențialitate, îndrumări privind cadrele de conformitate (HIPAA, GDPR, privilegiu avocat-client, FERPA, SOX, PCI-DSS) și instrucțiuni de configurare.
|
|
21
|
+
|
|
22
|
+
## Versiuni suportate
|
|
23
|
+
|
|
24
|
+
Corecțiile de securitate sunt aplicate doar celei mai recente versiuni publicate.
|
|
25
|
+
|
|
26
|
+
| Versiune | Suportată |
|
|
27
|
+
|---|---|
|
|
28
|
+
| 2.x (cea mai recentă) | ✅ |
|
|
29
|
+
| 1.x | ❌ |
|
|
30
|
+
|
|
31
|
+
## Raportarea unei vulnerabilități
|
|
32
|
+
|
|
33
|
+
**Nu deschide un issue public pentru vulnerabilități de securitate.**
|
|
34
|
+
|
|
35
|
+
Folosește raportarea privată a vulnerabilităților GitHub:
|
|
36
|
+
1. Mergi la [fila Security](https://github.com/eviscerations/whisper-windows-mcp/security)
|
|
37
|
+
2. Fă clic pe "Report a vulnerability"
|
|
38
|
+
3. Descrie problema cu suficiente detalii pentru a o reproduce
|
|
39
|
+
|
|
40
|
+
Vei primi un răspuns în 7 zile. Dacă vulnerabilitatea este confirmată, o corecție va fi lansată cât mai curând posibil și vei fi creditat în notele de lansare dacă dorești.
|
|
41
|
+
|
|
42
|
+
## Decizii de proiectare cunoscute
|
|
43
|
+
|
|
44
|
+
- **Injecție de cale de fișier:** Instrumentele acceptă căi absolute de fișiere de la Claude. Acesta este un design intenționat — instrumentul este destinat utilizării cu Claude Desktop de către proprietarul calculatorului. Nu expune acest server MCP la acces de rețea neautorizat.
|
|
45
|
+
- **Fără sandbox:** whisper-cli.exe rulează cu aceleași permisiuni ca Claude Desktop. Acesta este standard pentru instrumentele MCP locale.
|
|
46
|
+
- **Fișiere temporare:** Fișierele WAV intermediare sunt scrise în `%TEMP%\whisper_tmp_*.wav` și șterse după transcriere. Fișierele de stare a sarcinilor sunt scrise în `%TEMP%\whisper-mcp-jobs\` și persistă până la ștergerea manuală sau până la lansarea funcției de curățare automată planificate.
|
|
47
|
+
- **Conținut de transcriere:** Textul de transcriere returnat în răspunsurile instrumentelor este procesat de API-ul Claude. Acesta este documentat și va putea fi adresat prin `WHISPER_PRIVACY_MODE` într-o versiune viitoare. Vezi [PRIVACY.md](PRIVACY.md).
|
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
# whisper-windows-mcp — Rozwiązywanie problemów
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
## Szybka lista kontrolna
|
|
6
|
+
|
|
7
|
+
Przed głębszym śledztwem zweryfikuj wszystkie poniższe punkty:
|
|
8
|
+
|
|
9
|
+
- Ścieżki w `claude_desktop_config.json` używają **podwójnych ukośników odwrotnych** (`C:\\whisper\\...`)
|
|
10
|
+
- `whisper-cli.exe` istnieje pod ścieżką podaną w `WHISPER_CLI_PATH`
|
|
11
|
+
- Plik modelu `.bin` istnieje pod ścieżką podaną w `WHISPER_MODEL`
|
|
12
|
+
- FFmpeg jest zainstalowany i dostępny (`ffmpeg -version` działa w wierszu poleceń)
|
|
13
|
+
- Claude Desktop został **w pełni uruchomiony ponownie** po edycji konfiguracji (wyjście z zasobnika systemowego, a nie tylko zamknięcie okna)
|
|
14
|
+
- Serwer whisper wyświetla się jako **uruchomiony** (zielony znaczek) w Ustawieniach → Deweloper
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## "whisper nie jest połączony" lub brak dostępnych narzędzi
|
|
19
|
+
|
|
20
|
+
**Najczęstsza przyczyna:** Claude Desktop nie został w pełni uruchomiony ponownie po edycji konfiguracji.
|
|
21
|
+
|
|
22
|
+
1. Kliknij prawym przyciskiem myszy ikonę Claude w zasobniku systemowym → Wyjdź
|
|
23
|
+
2. Ponownie otwórz Claude Desktop
|
|
24
|
+
3. Przejdź do Ustawień → Deweloper i sprawdź zielony znaczek **uruchomiony** obok whisper
|
|
25
|
+
|
|
26
|
+
Jeśli nadal nie wyświetla się:
|
|
27
|
+
|
|
28
|
+
1. Otwórz `claude_desktop_config.json` i sprawdź błędy składni JSON (brakujące przecinki, niezgodne nawiasy klamrowe)
|
|
29
|
+
2. Upewnij się, że wszystkie ścieżki używają podwójnych ukośników odwrotnych
|
|
30
|
+
3. Uruchom `check_config` w Claude Desktop, aby uzyskać diagnostykę
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## download_model przekracza limit czasu dla dużych modeli
|
|
35
|
+
|
|
36
|
+
Claude Desktop ma 4-minutowy limit czasu dla wywołań narzędzi MCP. Pobieranie dużych modeli przy wolnym połączeniu może go przekroczyć.
|
|
37
|
+
|
|
38
|
+
**Rozmiary plików:**
|
|
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
|
+
Przy szybkim połączeniu (100 Mbps+) nawet large-v3 pobiera się w mniej niż 4 minuty. Przy wolniejszych połączeniach użyj przeglądarki lub PowerShell do bezpośredniego pobierania i umieść plik w katalogu modeli ręcznie:
|
|
47
|
+
|
|
48
|
+
```powershell
|
|
49
|
+
# Przykład — bezpośrednie pobieranie 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
|
+
Następnie użyj `switch_model ggml-large-v3-turbo.bin` do aktywacji.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## `check_config` raportuje brak whisper-cli.exe
|
|
59
|
+
|
|
60
|
+
Ścieżka w konfiguracji nie odpowiada rzeczywistej lokalizacji pliku.
|
|
61
|
+
|
|
62
|
+
Zweryfikuj istnienie pliku:
|
|
63
|
+
```
|
|
64
|
+
dir C:\whisper\Release\whisper-cli.exe
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Jeśli jest gdzie indziej, zaktualizuj `WHISPER_CLI_PATH` w konfiguracji, aby odpowiadał rzeczywistej ścieżce.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## `check_config` raportuje brak FFmpeg
|
|
72
|
+
|
|
73
|
+
FFmpeg nie jest zainstalowany lub nie ma go w systemowym PATH.
|
|
74
|
+
|
|
75
|
+
Instalacja przez winget:
|
|
76
|
+
```
|
|
77
|
+
winget install ffmpeg
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Lub pobierz z [ffmpeg.org](https://ffmpeg.org/download.html), wypakuj i dodaj folder `bin` do systemowego PATH.
|
|
81
|
+
|
|
82
|
+
Po instalacji otwórz nowy wiersz poleceń i zweryfikuj:
|
|
83
|
+
```
|
|
84
|
+
ffmpeg -version
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Jeśli zainstalowałeś FFmpeg w niestandardowej lokalizacji, ustaw zmienną środowiskową `FFMPEG_PATH` w konfiguracji Claude Desktop:
|
|
88
|
+
```json
|
|
89
|
+
"env": {
|
|
90
|
+
"FFMPEG_PATH": "C:\\ffmpeg\\bin\\ffmpeg.exe"
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Wynik transkrypcji jest pełen tagów `[FOREIGN]`
|
|
97
|
+
|
|
98
|
+
**Przyczyna:** Używasz modelu tylko angielskiego (np. `ggml-medium.en.bin`) na audio w innym języku niż angielski. Modele tylko angielskie nie mogą przetwarzać innych języków i wypisują `[FOREIGN]` jako placeholder dla każdego segmentu, którego nie mogą obsłużyć.
|
|
99
|
+
|
|
100
|
+
**Rozwiązanie:** Pobierz i użyj `ggml-large-v3.bin` — modelu wielojęzycznego. Jest to wymagane do jakiejkolwiek transkrypcji innej niż angielska, automatycznego wykrywania języka lub tłumaczenia.
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3.bin
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Zapisz w `C:\whisper\models\` i zaktualizuj konfigurację:
|
|
107
|
+
```json
|
|
108
|
+
"WHISPER_MODEL": "C:\\whisper\\models\\ggml-large-v3.bin"
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Lub zastąp dla każdej transkrypcji używając parametru `model` w `transcribe_audio` lub `generate_subtitles`.
|
|
112
|
+
|
|
113
|
+
> **Uwaga:** Modele tylko angielskie (`*.en.bin`) są szybsze i dokładniejsze dla treści angielskich, ale całkowicie nie radzą sobie z innymi językami. Jeśli pracujesz z treściami wielojęzycznymi, `large-v3` jest właściwym modelem niezależnie od sprzętu.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Transkrypcja nie produkuje wyników lub pusty plik
|
|
118
|
+
|
|
119
|
+
**Możliwe przyczyny:**
|
|
120
|
+
|
|
121
|
+
1. **Zły model dla języka** — Modele tylko angielskie (`*.en.bin`) nie mogą transkrybować innych języków. Używaj `ggml-large-v3.bin` dla treści wielojęzycznych.
|
|
122
|
+
|
|
123
|
+
2. **Zbyt niska jakość audio** — Pliki o bardzo niskiej przepływności (np. stare nagrania telefoniczne `.3gp` używające kodeka AMR-NB ~12kbps) mogą być na granicy możliwości whispera. Hałaśliwe środowiska (hałas w tle, echo, odlegli mówcy) są również trudne. Spróbuj `large-v3`, który lepiej radzi sobie z degradowanym audio.
|
|
124
|
+
|
|
125
|
+
3. **Plik jest cichy lub uszkodzony** — Uruchom `analyze_media` na pliku, aby sprawdzić czy FFprobe wykrywa prawidłowy strumień audio.
|
|
126
|
+
|
|
127
|
+
4. **Błąd konwersji** — Plik może nie konwertować się do WAV poprawnie. Spróbuj najpierw ręcznie przekonwertować:
|
|
128
|
+
```
|
|
129
|
+
ffmpeg -i yourfile.3gp -ar 16000 -ac 1 output.wav
|
|
130
|
+
```
|
|
131
|
+
Następnie transkrybuj WAV bezpośrednio.
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Zadanie w tle nie działa dla plików ze znakami specjalnymi lub Unicode w nazwie
|
|
136
|
+
|
|
137
|
+
**Przyczyna:** whisper-cli.exe nie może zapisać pliku wyjściowego gdy ścieżka zawiera znaki Unicode (polskie, japońskie, chińskie, emoji, nawiasy itp.) lub niektóre znaki specjalne.
|
|
138
|
+
|
|
139
|
+
**Aktualne obejście:** Zmień nazwę pliku, aby używał tylko znaków ASCII przed transkrypcją, a następnie zmień nazwę z powrotem jeśli to konieczne.
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
ren "plik_po_polsku.mp4" "temp_transcribe.mp4"
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
**Status:** Jest to znany błąd. Planowana jest poprawka, która będzie kierować wyjście przez oczyszczoną tymczasową ścieżkę i przenosić wynik do właściwego miejsca docelowego po zakończeniu.
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Zadanie w tle pokazuje "błąd" bez wyników
|
|
150
|
+
|
|
151
|
+
**Możliwe przyczyny:**
|
|
152
|
+
|
|
153
|
+
1. **Nazwa pliku Unicode** — Patrz wyżej.
|
|
154
|
+
|
|
155
|
+
2. **Zła ścieżka modelu** — Odłączony proces nie dziedziczy poprawionych ścieżek. Uruchom `check_config`, aby zweryfikować ścieżki.
|
|
156
|
+
|
|
157
|
+
3. **Proces został zakończony** — Jeśli whisper-cli.exe został ręcznie zakończony w trakcie zadania, plik wyjściowy nie będzie istniał. Spróbuj ponownie.
|
|
158
|
+
|
|
159
|
+
4. **Niewystarczająca VRAM** — Duże modele na GPU z małą VRAM mogą po cichu kończyć się błędem. Spróbuj mniejszego modelu.
|
|
160
|
+
|
|
161
|
+
5. **Błąd konwersji pliku** — Spróbuj transkrybować plik WAV bezpośrednio, aby ustalić czy problem leży w konwersji czy transkrypcji.
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
## Transkrypcja w tle nie produkuje wyników SRT
|
|
166
|
+
|
|
167
|
+
**Przyczyna:** Tryb w tle (`background=true` w `transcribe_audio`) obecnie produkuje tylko wyjście `.txt`. Format SRT w trybie w tle nie jest jeszcze zaimplementowany.
|
|
168
|
+
|
|
169
|
+
**Obejście:** Dla plików poniżej ~4 minut użyj `generate_subtitles` w trybie blokującym. Dla dłuższych plików najpierw transkrybuj w trybie w tle, aby uzyskać `.txt`, następnie jeśli potrzebujesz SRT użyj `generate_subtitles` na tym samym pliku (będzie transkrybować ponownie).
|
|
170
|
+
|
|
171
|
+
**Status:** Obsługa SRT w trybie w tle jest planowana na przyszłe wydanie.
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
## GPU nie jest używany (CPU zablokowany powyżej 50%)
|
|
176
|
+
|
|
177
|
+
**Przyczyna:** Uruchamiasz binarium tylko CPU, które jest dostarczane ze standardowym wydaniem whisper.cpp.
|
|
178
|
+
|
|
179
|
+
**Rozwiązanie:** Pobierz kompilację z włączonym Vulkan ze [strony wydań](https://github.com/eviscerations/whisper-windows-mcp/releases/tag/v1.4.0) i wypakuj do `C:\whisper\Release\`.
|
|
180
|
+
|
|
181
|
+
Zweryfikuj, czy akceleracja GPU jest aktywna:
|
|
182
|
+
- Poproś Claude o uruchomienie `check_system`
|
|
183
|
+
- Szukaj `✅ Vulkan binary: ggml-vulkan.dll found` w wynikach
|
|
184
|
+
- Obserwuj Menedżer zadań → Wydajność → GPU podczas transkrypcji — wykorzystanie GPU powinno wzrosnąć do 15–30%
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## `check_system` raportuje błędną ilość VRAM
|
|
189
|
+
|
|
190
|
+
Jest to znane ograniczenie Windows. Polecenie `wmic` odczytuje VRAM z rejestru, który na wielu kartach AMD raportuje połowę fizycznej VRAM. Vega 56 z 8GB HBM2 zazwyczaj będzie pokazywać 4GB. Jest to tylko problem wyświetlania — whisper używa pełnej fizycznej VRAM podczas wnioskowania.
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## Błąd "Transkrypcja już w toku"
|
|
195
|
+
|
|
196
|
+
Proces `whisper-cli.exe` działa z poprzedniego zadania. Poczekaj na jego zakończenie lub:
|
|
197
|
+
|
|
198
|
+
1. Otwórz Menedżer zadań → zakładka Szczegóły
|
|
199
|
+
2. Znajdź `whisper-cli.exe`
|
|
200
|
+
3. Kliknij prawym przyciskiem myszy → Zakończ zadanie
|
|
201
|
+
|
|
202
|
+
Następnie spróbuj ponownie.
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## Automatyczne wykrywanie języka jest błędne
|
|
207
|
+
|
|
208
|
+
Automatyczne wykrywanie Whisper działa na pierwszych 30 sekundach audio. Jeśli plik zaczyna się w innym języku niż większość jego zawartości, wykrywanie może być błędne.
|
|
209
|
+
|
|
210
|
+
**Rozwiązanie:** Podaj język jawnie (np. `language=pl`) zamiast polegać na automatycznym wykrywaniu.
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## Generowanie napisów produkuje "(mówi w obcym języku)" przez cały film
|
|
215
|
+
|
|
216
|
+
Whisper wykrył mowę, ale nie mógł transkrybować. Najczęstsze przyczyny:
|
|
217
|
+
|
|
218
|
+
1. **Zły model** — Używanie modelu tylko angielskiego na audio w innym języku. Użyj `large-v3`.
|
|
219
|
+
|
|
220
|
+
2. **Jakość audio** — Hałaśliwe środowiska (kuchnie, tłumy, echo) mogą pokonać model medium. Spróbuj `large-v3`.
|
|
221
|
+
|
|
222
|
+
3. **Mieszane języki** — Pliki z dwoma językami naprzemiennie będą miały mniejszościowy język zastąpiony placeholderami przy ustawieniu jednego języka.
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## Tłumaczenie napisów produkuje tylko angielski
|
|
227
|
+
|
|
228
|
+
Jest to zamierzone zachowanie. Wbudowana flaga `--translate` Whisper tłumaczy tylko **na angielski**. Dla tłumaczenia na inne języki docelowe przetwórz zawartość pliku `.srt` osobno.
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
## Wsadowa transkrypcja przestała się posuwać
|
|
233
|
+
|
|
234
|
+
Wywołaj ponownie `check_batch_progress`. Jeśli nadal utknęła:
|
|
235
|
+
|
|
236
|
+
1. Sprawdź Menedżer zadań pod kątem działającego procesu `whisper-cli.exe`
|
|
237
|
+
2. Sprawdź logi zadań w `%TEMP%\whisper-mcp-jobs\`
|
|
238
|
+
3. Pliki z błędami są oznaczone w raporcie partii — uruchom je indywidualnie przez `transcribe_audio`
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## Czyszczenie tymczasowego katalogu zadań
|
|
243
|
+
|
|
244
|
+
whisper-windows-mcp zapisuje pliki stanu zadań i logi w `%TEMP%\whisper-mcp-jobs\` podczas transkrypcji. Gromadzą się one z czasem i mogą zużywać miejsce na dysku, szczególnie pliki `.log` z długich zadań transkrypcji.
|
|
245
|
+
|
|
246
|
+
Po zakończeniu partii lub zadania i zweryfikowaniu transkrypcji wyjściowych możesz bezpiecznie usunąć wszystko w tym katalogu:
|
|
247
|
+
|
|
248
|
+
```powershell
|
|
249
|
+
Remove-Item "$env:TEMP\whisper-mcp-jobs\*" -Recurse -Force
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
Katalog zostanie automatycznie odtworzony przy następnej transkrypcji. Żadne pliki wyjściowe transkrypcji nie są tu przechowywane na stałe — są przenoszone do katalogu źródłowego po zakończeniu. Pozostają tylko metadane zadań i logi.
|
|
253
|
+
|
|
254
|
+
**Uwaga:** Nie usuwaj tego katalogu podczas trwającej transkrypcji — pliki stanu partii są potrzebne do działania `check_batch_progress`.
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
## Duża nienadzorowana partia z wiersza poleceń
|
|
259
|
+
|
|
260
|
+
Dla bardzo dużych partii, gdzie chcesz uruchomić przez noc bez Claude, użyj PowerShell.
|
|
261
|
+
|
|
262
|
+
**Ważne:** whisper-cli.exe nie może bezpośrednio odczytywać MP4, MKV ani większości formatów wideo. FFmpeg musi wcześniej przekonwertować każdy plik do WAV. Whisper zapisuje również transkrypcję do stdout, a dane diagnostyczne do stderr — użyj `Start-Process -RedirectStandardOutput`, aby poprawnie przechwycić transkrypcję. Używanie pipe `|` lub przekierowywanie stderr przez `2>$null` nic nie przechwytuje.
|
|
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
|
+
Zmień `*.mp4` na `*.mkv`, `*.m4a` itp., aby dopasować do typów plików. Sprawdzenie pominięcia `Test-Path` oznacza, że ponowne uruchomienie skryptu po przerwaniu nie będzie ponownie przetwarzać już ukończonych plików.
|
|
290
|
+
|
|
291
|
+
Skrypt zapisuje pliki `.txt` obok każdego źródła. Narzędzia MCP rozpoznają je jako już transkrybowane po uruchomieniu `analyze_media` lub `start_batch`.
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
## Lokalizacja pliku konfiguracyjnego
|
|
296
|
+
|
|
297
|
+
```
|
|
298
|
+
C:\Users\NazwaUżytkownika\AppData\Roaming\Claude\claude_desktop_config.json
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
Jeśli `AppData` nie jest widoczne: Widok → Pokaż → Ukryte elementy w Eksploratorze plików.
|
|
302
|
+
|
|
303
|
+
---
|
|
304
|
+
|
|
305
|
+
## Pełny przykład działającej konfiguracji
|
|
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` domyślnie przyjmuje wartość `ffmpeg` (zakłada obecność w PATH). Ustaw jawnie tylko jeśli FFmpeg jest zainstalowany w niestandardowej lokalizacji.
|