fix(ui): Sprachnamen auf Deutsch - "Undetermined" versteht niemand
Ampel / ampel (push) Successful in 29s

An der echten Akira-Blu-ray gemessen, nachdem die Sprachauswahl live lief:

  Ton:        deu 4x, jpn 2x, und 4x
  Untertitel: deu 4x, und 8x

MakeMKV liefert die Namen englisch ("German", "Japanese") und fuer Spuren ohne
Sprach-Kennzeichnung "Undetermined" - das sind typischerweise Audiokommentare.
Der Commander liest alles auf Deutsch (AGENTS Grundregel 4), und
"Undetermined" ist fuer einen Nicht-Entwickler schlicht keine Auskunft. Jetzt
steht dort "Ohne Sprachangabe", und die zwei Dutzend haeufigsten Codes haben
deutsche Namen. Unbekannte Codes behalten MakeMKVs Namen - geraten wird nichts.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-07-26 15:22:13 +02:00
co-authored by Claude Opus 5
parent 9230d0dd7a
commit 848deb1c24
2 changed files with 42 additions and 2 deletions
+40
View File
@@ -33,6 +33,46 @@ interface WorkerFuerBewertung {
info?: { cpu_simd?: string }
}
// --- Sprachnamen für die Auswahl vor dem Rip ---------------------------------
//
// MakeMKV liefert die Namen auf ENGLISCH („German", „Japanese") und für Spuren
// ohne Sprach-Kennzeichnung „Undetermined". Beides an der Akira-Blu-ray gemessen
// (26.07.2026): Ton deu 4×, jpn 2×, und 4× — die „und"-Spuren sind typischerweise
// Audiokommentare, die kein Sprachfeld tragen.
//
// „Undetermined" versteht ein Nicht-Entwickler nicht, und der Commander liest
// alles auf Deutsch (AGENTS Grundregel 4). Unbekannte Codes behalten MakeMKVs
// Namen — geraten wird nichts.
const SPRACHNAMEN: Record<string, string> = {
und: 'Ohne Sprachangabe',
deu: 'Deutsch', ger: 'Deutsch',
eng: 'Englisch',
jpn: 'Japanisch',
fra: 'Französisch', fre: 'Französisch',
spa: 'Spanisch',
ita: 'Italienisch',
nld: 'Niederländisch', dut: 'Niederländisch',
rus: 'Russisch',
kor: 'Koreanisch',
zho: 'Chinesisch', chi: 'Chinesisch',
pol: 'Polnisch',
tur: 'Türkisch',
ces: 'Tschechisch', cze: 'Tschechisch',
por: 'Portugiesisch',
swe: 'Schwedisch',
dan: 'Dänisch',
nor: 'Norwegisch',
fin: 'Finnisch',
hun: 'Ungarisch',
ara: 'Arabisch',
mul: 'Mehrsprachig',
}
/** Sprachname auf Deutsch — sonst der Name, den MakeMKV geliefert hat. */
export function sprachName(lang: string, makemkvName?: string): string {
return SPRACHNAMEN[(lang || '').toLowerCase()] || makemkvName || lang || '?'
}
// --- Erreicht ein EXTERNER Worker die Pfade? ---------------------------------
//
// Befund 26.07.2026, live am Job 95afdc89: Das Routing an den Windows-PC des