Die Medientabelle spricht durchgehend dieselbe Sprache

Die Tonzeile nahm bereits die Formulierung vom Server, die Videozeile baute
ihren Text weiter selbst — "240p (H264)" neben "AAC · Mono", zwei
Schreibweisen in derselben Tabelle untereinander. Die gemessene Auflösung
wandert in den Tooltip, wo sie hingehört: 1040 ist keine Stufe, sondern ein
beschnittenes Bild.

Dazu: ein Spurtitel, der nur die Sprache wiederholt, fällt weg. "Deutsch ·
AAC · Mono · ‚Deutsch'" sagt dasselbe zweimal.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-10-04 13:19:21 +02:00
co-authored by Claude Opus 5
parent 632d3efa35
commit 228c318ad2
3 changed files with 41 additions and 6 deletions
+11 -4
View File
@@ -108,10 +108,17 @@ public static class Benennung
if (Codec(codec) is { } c) teile.Add(c);
if (Kanaele(kanaele) is { } k) teile.Add(k);
// Der Titel aus der Datei nur, wenn er etwas hinzufügt — „SoundHandler"
// ist kein Name, sondern ein Rest aus dem Umpacken.
if (titel is { Length: > 0 } && !Nichtssagend.Contains(titel.Trim()))
teile.Add($"„{titel.Trim()}“");
// **Der Titel nur, wenn er etwas hinzufügt.** „SoundHandler" ist kein
// Name, sondern ein Rest aus dem Umpacken. Und ein Titel, der bloss
// die Sprache wiederholt, ergibt „Deutsch · AAC · Mono · ‚Deutsch'".
var blank = titel?.Trim();
if (blank is { Length: > 0 }
&& !Nichtssagend.Contains(blank)
&& !string.Equals(blank, Sprache(sprache), StringComparison.OrdinalIgnoreCase)
&& !string.Equals(blank, sprache?.Trim(), StringComparison.OrdinalIgnoreCase))
{
teile.Add($"„{blank}“");
}
return teile.Count > 0 ? string.Join(" · ", teile) : "Tonspur";
}
@@ -83,3 +83,22 @@ public class BenennungTests
public void Die_ganze_Bildspur() =>
Assert.That(Benennung.Bildspur("h264", 1040), Is.EqualTo("1080p · H.264"));
}
/// <summary>Nachtrag: Titel, die nichts hinzufügen.</summary>
public class SpurtitelTests
{
/// <summary>„Deutsch · AAC · Mono · ‚Deutsch'" sagt dasselbe zweimal.</summary>
[Test]
public void Ein_Titel_der_nur_die_Sprache_wiederholt_faellt_weg()
{
Assert.That(Benennung.Tonspur("deu", "aac", 1, "Deutsch"),
Is.EqualTo("Deutsch · AAC · Mono"));
Assert.That(Benennung.Tonspur("deu", "aac", 1, "deu"),
Is.EqualTo("Deutsch · AAC · Mono"));
}
[Test]
public void Ein_Titel_der_etwas_sagt_bleibt() =>
Assert.That(Benennung.Tonspur("deu", "aac", 1, "Audiodeskription"),
Is.EqualTo("Deutsch · AAC · Mono · „Audiodeskription“"));
}