Compare commits

..
6 Commits
Author SHA1 Message Date
Timba 8eb13a4e15 SHUFTN 0.3.1 2026-09-04 15:12:39 +00:00
Timba a5fa153de3 SHUFTN 0.3.0 2026-09-04 14:38:10 +00:00
Timba 8d90df34e9 SHUFTN 0.2.9 2026-09-04 09:30:24 +00:00
Timba ddeebbb7ca SHUFTN 0.2.8 2026-09-04 09:03:38 +00:00
Timba 158b30b634 SHUFTN 0.2.7 2026-09-04 06:11:10 +00:00
Timba 95b2ac4003 SHUFTN 0.2.7 2026-09-04 06:10:35 +00:00
+5 -5
View File
@@ -1,11 +1,11 @@
{ {
"version": "0.2.6", "version": "0.3.1",
"notes": "Vier Zeichen im Programm waren unsichtbar. Die Phosphor-Schrift hat mehrere Stärken, geladen sind aber nur zwei — `ph` und `ph-fill`. Wer eine dritte anfordert, bekommt keinen Fehler und kein Kästchen, sondern ein Element von null Punkt Breite: nichts. Genau das stand an vier Stellen, darunter die Pfeilspitzen an mehrtägigen Terminen — das einzige Zeichen dafür, dass ein Balken über die Woche hinausläuft. Der Hinweis in 0.2.4, sie stünden am Rand, war damit falsch; jetzt stimmt er. Ebenso betroffen: das Häkchen an einem angehakten Kalender.\n\nAufgefallen ist es beim Einbau des Update-Zeichens, und zwar erst, als eine Messung im laufenden Programm eine Breite von null ergab — angesehen hatte ich die Stelle vorher auch.\n\nDie Aktualisierung meldet sich, statt sich finden zu lassen. Sie stand unter Einstellungen → Ansicht, wo niemand nachsieht — und wer nie nachsah, erfuhr nie von einer neuen Fassung.\n\nJetzt: Liegt etwas bereit, erscheint ein kleiner Punkt am Zahnrad unten links und in den Einstellungen am Fuss der Spalte der Knopf „Update verfügbar\". Gibt es nichts, steht dort auch nichts — weg statt ausgegraut. Ein Eintrag, der die meiste Zeit „Alles aktuell\" sagt, wird nach der dritten Woche nicht mehr gesehen, und dann auch nicht, wenn er einmal etwas anderes sagt.\n\nNachgesehen wird beim Start und danach stündlich. Ein Fehlschlag ist kein „nein\": Wer offline ist, bekommt keine Antwort, und dann bleibt der zuletzt bekannte Stand stehen, statt dass der Punkt verschwindet. Punkt und Knopf hängen an derselben Auskunft — zwei Abfragen wären zwei Antworten, die auseinanderlaufen können.", "notes": "Diktieren braucht keinen Endpunkt mehr — Whisper rechnet auf diesem Rechner. Das Modell dazu kommt als eigenes Paket, das man einspielt oder eben nicht.\n\nDiktieren geht jetzt ohne Endpunkt — auf diesem Rechner. Bisher brauchte das Diktat einen Dienst, der `POST /audio/transcriptions` annimmt. Am eigenen Endpunkt gemessen: `GET /v1/ki/models` antwortete 401 (die Route gibt es), `/audio/transcriptions` antwortete 404. Dort lief das Textmodell, aber keine Spracherkennung — und damit ging Diktieren gar nicht, ohne dass jemand am Server etwas nachrüstet.\n\nJetzt rechnet Whisper hier: Die Aufnahme verlässt den Rechner nicht, nicht einmal ins eigene Rechenzentrum. Wer ein Modell eingespielt hat, bekommt diesen Weg; wer keines hat, weiter den Endpunkt. Der Mikrofonknopf sagt im Zeigerfähnchen, welcher gerade gilt.\n\nAn einer gesprochenen Probe nachgemessen (die Sprachausgabe von Windows las einen Satz vor, 4,9 Sekunden):\n\ngeladen in 232 ms erkannt in 453 ms „Bitte senden Sie mir das Angebot für die Halle süd bis Freitag.\"\n\nGesprochen war „… Halle Süd …\" — bis auf die Grosschreibung Wort für Wort.\n\nDas Modell kommt als Plugin. `whisper-base` wiegt 277 MB, der Installer von SHUFTN 272 MB; beides zusammen hiesse ein halbes Gigabyte für jeden, auch für den, der nie diktiert. Es wird deshalb eingespielt wie der Editor — unter *Einstellungen → Erweiterungen*, mit Prüfsummen und der Möglichkeit, es wieder loszuwerden. Ohne Neustart: Ein Modell meldet kein Schema an, der Kern liest seine Dateien beim nächsten Diktat.\n\nDamit gibt es zwei Arten Plugin. Ein Modell nennt weder `schema` noch `einstieg`, und beides wird abgewiesen: Stünde dort ein Schema, lieferte SHUFTN die 277 MB Gewichte als Webseite aus. Was für Paketbauer gilt, steht in `PLUGINS.md` unter „Modelle\".\n\nGerechnet wird in reinem Rust. `whisper.cpp` wäre der verbreitetere Weg und hätte eine C++-Werkzeugkette in den Bau von SHUFTN gebracht — cmake, ein Compiler, plattformabhängige Schalter. Dann liesse sich SHUFTN nicht mehr mit `cargo build` allein übersetzen. Der Preis steht offen: auf der CPU langsamer als handoptimiertes C. Bei einem Diktat von zwanzig Sekunden ist das eine Frage von Sekunden.\n\nDas Umrechnen der Aufnahme (Opus → 16 kHz Mono) macht die Webansicht, nicht der Kern: Sie hat den Dekodierer eingebaut, und ihn in Rust nachzubauen hiesse wieder eine C-Bibliothek. Was der Kern bekommt, ist ein WAV — und was nicht 16 kHz Mono ist, weist er ab, statt es falsch zu deuten. Eine falsch gedeutete Abtastrate klingt für Whisper wie jemand, der zu schnell spricht, und liefert Text, den niemand als falsch erkennt.",
"pub_date": "2026-09-03T10:27:52Z", "pub_date": "2026-09-04T15:12:36Z",
"platforms": { "platforms": {
"windows-x86_64": { "windows-x86_64": {
"signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVRbENEalUzQ3RFRDh6NWtGdklVNkFNVkg4aS9XNGV4azA1SnVRbmVPYnlVQ2JHZitacVpkd0RXM25TdTB4SGhLWmRHbHdJbDFoYTBXUGU2MXJrQm02ZjhHcHdqSzNFUUF3PQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNzg4NDMxMjU3CWZpbGU6U0hVRlROXzAuMi42X3g2NC1zZXR1cC5leGUKKzg1ZU1ta3dManNxNEhUbHQxQ3ZNTTZBOTdUNkNENFhmL0NKbEpPWUlDOXFsWGhUUUovWDN2OGRvMWEyL1NFNElsdmh1M0VxZkMzclU0dWorWisrRHc9PQo=", "signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVRbENEalUzQ3RFRHhzUjE0VEd6WDJDK3FCazRieExqMzdQWmQ4T1B3SzNzZERDUUlkTGViNGxET1JlYmxVT0s2V3htNW1BYmxrMjZURkhIbVc4a0phNkdFOVEveHI5T0FNPQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNzg4NTM0NzU1CWZpbGU6U0hVRlROXzAuMy4xX3g2NC1zZXR1cC5leGUKaVVaTjRTSGxwc3pyNGRSODdMWWc4bVgxaFRhMWVhVE5CcWRja0hhaGpla0NIRGEwb0Q1aExJUmxkelZZaUQ4RngwK0FVTXJtWDZ6TDBxNDZORDJnQnc9PQo=",
"url": "https://gitea.itm-technologies.de/ITM-GmbH/shuftn-releases/releases/download/v0.2.6/SHUFTN_0.2.6_x64-setup.exe" "url": "https://gitea.itm-technologies.de/ITM-GmbH/shuftn-releases/releases/download/v0.3.1/SHUFTN_0.3.1_x64-setup.exe"
} }
} }
} }