Lyrics Juke­box

Musik­wieder­gabe mit syn­chroner Text­anzeige für Windows, Linux und Mac

Konfiguration

Die Konfigurationsdatei Lyrics_Jukebox.config wird im Programmverzeichnis erwartet; alternativ können Sie eine andere Datei als Startargument angeben (deren Name muß aber auch mit .config enden).
Lyrics_Jukebox.config ist eine Textdatei, die Sie mit einem beliebigen Editor bearbeiten können. Windows-Benutzern empfehle ich dafür Notepad++ mit der zusätzlich installierten UserDefinedLanguage Config (.cfg and .ini files), die Sie auf GitHub finden.

Die Konfigurationsdatei besteht aus Einträgen des Aufbaus
Schlüsselwort=Wert
Das Schlüsselwort ist der Parameter für Lyrics Jukebox, hinter dem Gleichheitszeichen steht der Wert.
Wenn Schlüsselwörter mehrfach vorhanden sind, wird der letzte (unterste) Eintrag benutzt.
Mit einem Semikolon wird ein Kommentar eingeleitet.
Beispiele finden Sie in der mitgelieferten Konfigurationsdatei.

SchlüsselwortWertFunktion
MusicDir Pfad Der Pfad zu den Musikdateien (darf auch Leerzeichen enthalten, relative Pfade sind möglich)
Beispiel: MusicDir=Music
MusicSpareDir Pfad Der Pfad zu Musikdateien, die nicht automatisch wiedergegeben werden, aber in der Jukebox und der Suchfunktion zur Verfügung stehen
ReadSubDirs on oder off Mit ReadSubDirs=on werden die Unterverzeichnisse von MusicDir und MusicSpareDir gelesen.
PlayList Pfad/Dateiname Anstelle des MusicDir kann auch eine Wiedergabeliste im m3u-Format angegeben werden. Der Eintrag bei MusicDir wird in diesem Fall ignoriert.
OldPlayList Pfad/Dateiname Bei Bedarf kann eine Wiedergabeliste mit falschen Pfaden oder ohne Pfade importiert werden, die Stücke müssen sich dabei aber irgendwo im angegebenen MusicDir oder MusicSpareDir befinden.
Diese Funktion ist auch dafür geeignet, eine Wiedergabeliste abzuspielen und nach derem Ende mit der internen Zufallsliste (dem Inhalt von „MusicDir“) fortzufahren.
(Diese Funktion ist nur in Verbindung mit SmartShuffle oder ohne Zufallswiedergabe sinnvoll, bei der einfachen Zufallswiedergabe hat sie keine Wirkung.)
ExportPlayList Pfad/Dateiname Wenn hier ein Dateiname angegeben ist, wird nach dem Neuaufbau der internen Wiedergabeliste deren Inhalt in eine Datei dieses Namens im M3U-Format exportiert. Diese Liste enthält dann also die aktuelle Zufallsreihenfolge einschließlich einer ggf. importierten „OldPlayList“ am Anfang.
LyricDir Pfad der Pfad zu den Textdateien
PreferEmbeddedLyrics on oder off Bei der Einstellung PreferEmbeddedLyrics=on wird ein in der Musikdatei (in den ID3-Frames USLT oder SYLT) eingebetteter Text bevorzugt verwendet.
Standardmäßig werden Textdateien aus dem Verzeichnis bevorzugt, in dem sich die Musikdatei befindet, oder aus dem bei LyricDir angegebenen Verzeichnis.
SimplePlayer on oder off Einfacher Player ohne Jukebox, ohne Suche in Tags, ohne SmartShuffle und ohne das Speichern der Lautstärke und des zuletzt gespielten Stücks.
Shuffle on oder off Einfache Zufallswiedergabe (Shuffle=on)
SmartShuffle on oder off Vorausschauende Zufallswiedergabe (SmartShuffle=on). Wenn eingeschaltet, wird eine interne Zufallswiedergabeliste erzeugt, die in der bei „PlayListFile=“ angegebenen Datei gespeichert wird und solange gültig ist, bis sich entweder der Inhalt des Musikverzeichnisses ändert oder das Ende der Liste erreicht worden ist. Dann wird die Reihenfolge neu festgelegt.
Es gibt also keine Wiederholungen, bevor nicht alle Stücke gespielt wurden (mit Ausnahme der Stücke, die Sie mittels der RatingList öfter spielen lassen).
JukeboxOnly on oder off Nur Musikboxmodus. JukeboxOnly=on bewirkt, daß beim Ende des letzten gewählten Stücks grundsätzlich die Wiedergabe beendet und zur Titelstreifen-Auswahl der Musikboxbetriebsart gewechselt wird. Das X-Symbol (das ansonsten die Musikboxbetriebsart ausschaltet) dient dann nur zum Beenden einer laufenden Wiedergabe.
Für die Musikboxbetriebsart werden alle Tags der Musikstücke eingelesen, die Titelstreifen werden erst angezeigt, nachdem das abgeschlossen ist.
JukeboxTemporary on oder off JukeboxTemporary=on bewirkt, daß nach dem Ende des letzten manuell gewählten Stücks immer mit der automatischen Wiedergabe fortgefahren wird. Die Wiedergabe wird also nur noch unterbrochen, wenn man den Pause-Knopf benutzt.
JukeboxTimeout Timeout in Sekunden Nach der hier angegebenen Zeit in der Jukeboxdarstellung wird aus der Jukebox in die automatische Wiedergabe gewechselt. Das ist also ähnlich der Option JukeboxTemporary, nur daß es hier diese zusätzliche Wartezeit gibt. Wenn außerdem JukeboxOnly aktiviert ist, dann wird nach dem Ablauf der Wartezeit jeweils nur ein Stück gespielt.
Die Zeit wird entweder in Sekunden angegeben oder in der Form Minuten:Sekunden. Beispiele (mit derselben Zeitdauer):
JukeboxTimeout=90
JukeboxTimeout=1:30
Der Wert 0 bedeutet, daß JukeboxTimeout inaktiv ist.
RememberJukeboxMode on oder off Bei RememberJukeboxMode=on startet das Programm in der Musikboxbetriebsart, wenn sie beim Beenden aktiv war. Andernfalls wird der Wiedergabemodus aufgerufen.
(Standard: off)
PlayOnStart on oder off PlayOnStart=on: Beim Programmstart im Wiedergabemodus beginnt die Wiedergabe selbständig, andernfalls startet Lyrics Jukebox im Pause-Zustand.
PauseBeforeTrack on oder off PauseBeforeTrack=on bewirkt, daß vor jedem neuen Stück der Pausemodus aktiviert wird.
Die Wiedergabe des Stücks wird erst nach der Betätigung der Leertaste oder der virtuellen Pausetaste begonnen, damit kann das Programm „on stage“ für das Abspielen von Hintergrundtracks bei Bühnenauftritten benutzt werden.
VolumeCountdown on oder off Temporäre Lautstärkeänderung anbieten (VolumeCountdown=on).
Bei VolumeCountdown=off wird das Symbol nicht angezeigt.
LockVolume on oder off Bei LockVolume=on werden nur temporäre Lautstärkeänderungen zugelassen. Die vor dem Aktivieren von LockVolume eingestellte Lautstärke ist ab dann der Standard, sie kann in der bei StateFile angegebenen Datei im Eintrag „Volume=“ geändert werden.
Dort zulässige Werte sind 0 bis 64.
VolumeMax Zahl (von 1 bis 64) Begrenzung der Höchstlautstärke (Standard 64).
Werden die VolumeLines angezeigt, wird der Maximalwert durch eine schwarze Linie dargestellt.
RadioVolumeFactor Zahl (von 0.1 bis 10.0) Lautstärkeanpassung zwischen Musikwiedergabe und Radiofunktion, kann bei Verwendung von VolumeMax nützlich sein, um etwa gleiche Höchstlautstärke zu erreichen. Bei kleineren Werten ist das Radio leiser. Als Dezimaltrenner einen Punkt benutzen, kein Komma.
SeparateVolume on oder off SeparateVolume=on bewirkt, daß die Lautstärkewerte für Musikwiedergabe und Radio getrennt gespeichert werden.
VLCshutdown on oder off VLCshutdown=on: Beim Beenden der Internetradiofunktion wird der VLC-Server heruntergefahren.
VLCExecutable Pfad/Dateiname Installationsort des Programms VLC. Wird für die Radiofunktion gebraucht und muß dann hier angegeben werden, wenn VLC nicht im Standardpfad installiert wurde, oder im Betriebssystem kein Standardpfad für Programme vorgesehen ist.
Die Standardpfade sind
  • Windows: C:\Program Files\VideoLAN\VLC\vlc.exe
  • Mac: /Applications/VLC.app/Contents/MacOS/VLC
  • Linux: /usr/bin/vlc
VLCPassword Paßwort Das Paßwort, mit dem der VLC-Telnetserver gestartet werden soll. Das braucht nur eingetragen zu werden, wenn andere Software VLC ebenfalls im Telnetmodus benutzt. Normalerweise benutzt Lyrics Jukebox das Paßwort secret.
RadioStations Pfad/Dateiname URL-Liste für Internetradio
(für das Internetradio muß VLC installiert sein)
SearchAbbreviationsPfad/Dateiname Liste abgekürzter Namen für die Suche
HyphenationList Pfad/Dateiname Liste der Trennvorschläge für Taginhalte
LanguageFonts Pfad/Dateiname Liste von sprachspezifischen Schriften, die einem Kürzel aus dem la:-Tag zugeordnet sind.
Wenn die bei LRCFont gewählte Schrift Zeichen einer bestimmten Sprache nicht enthält, kann man hiermit für eine einzelne Sprache, die im la-Tag der LRC-Dateien dieser Sprache eingetragen ist, eine andere Schrift wählen. Ein Eintrag der Liste ist so aufgebaut:
Sprachkürzel (zwei Zeichen nach ISO-639-1), Doppelpunkt, Leerzeichen, Name der Schrift
Die Schrift wird dann bei allen LRC-Texten benutzt, die das entsprechende la-Tag enthalten.
Beispiel für Griechisch:
el: Segoe UI Black
HTMLEntitiesTable Pfad/Dateiname Für aus asiatischen Quellen stammende Texte mit Umlauten, die als benannte HTML-Entitäten kodiert sind (also ä beispielsweise als ä), kann hier eine Datei mit der Liste zu ersetzender Kodierungen angegeben werden. In dieser Datei enthält jede Zeile eine Zuordnung in Form des folgenden Beispiels: auml=ä
RatingList Pfad/Dateiname Wenn bei aktiver SmartShuffle-Funktion manche Stücke seltener oder öfter gespielt werden sollen, kann in der hier angegebenen Datei die gewünschte Häufigkeit eingetragen werden. Bei positivem Vorzeichen wird öfter gespielt, bei negativem seltener.
Aufbau einer Zeile der Liste:
Dateiname des Stücks (mit oder ohne Dateierweiterung), Leerzeichen, Vorzeichen, Zahl
(Beim Dateinamen wird zwischen Groß- und Kleinschreibung unterschieden.)
Beispiele:
Trallala.mp3 +3
The Yodeling Cowboy - Yodelayeeoo -9
ShowRating on oder off Bewertung anzeigen. ShowRating=on aktiviert das Anzeigen des Wertes aus der Ratinglist kurz nach dem Beginn der Wiedergabe.
(Standard: off)
Align Center oder Left Die Ausrichtung der Textzeilen (Standard: Align=Center)
MarginLeft Zahl Bei linksbündigem Text (Align=Left) der Abstand zum linken Rand in Pixeln
Frequency Zahl Die Frequenz in Hz, mit der das Bild beim Scrollen aktualisiert wird. Funktioniert je nach Hardware von ca. 5 bis 100.
Möglichst einen Wert wählen, der keine Interferenzen mit der Bildfrequenz bewirkt, bei 60 Hz also weder 30, 45 oder 60 Hz.
StateFile Pfad/Dateiname Statusdatei für Lautstärke und zuletzt gespielten Titel
PlayListFile Pfad/Dateiname interne PlayList (für die Betriebsart SmartShuffle und die Jukebox)
Wird geschrieben, nachdem eine neue Zufallsreihenfolge berechnet wurde.
CacheDir Pfad/Dateiname Verzeichnis des Caches für Coverbilder. Wenn hier nichts angegeben ist, wird im Verzeichnis, in dem StateFile liegt, ein Unterverzeichnis „LJ_Cache“ angelegt.
LRCFont Name der Schrift die Schrift für synchronisierte Texte (LRC-Dateien)
LRCFontSize Zahl Schriftgröße
LRCFontColor1 Hexadezimalzahl sechsstellig die Farbe für neue Textzeilen (RGB hexadezimal)
LRCFontColor2 Hexadezimalzahl sechsstellig die Farbe für die aktive Textzeile
LRCFontColor3 Hexadezimalzahl sechsstellig die Farbe für alte Textzeilen
TxtFont Name der Schrift die Schrift für unsynchronisierte Texte (TXT-Dateien)
TxtFontSize Zahl Schriftgröße
TxtFontColor Hexadezimalzahl sechsstellig Farbe
FontBorderSizePlain Zahl Stärke des Rahmens um die Schrift sowohl für LRC und TXT, wenn kein Coverbild angezeigt wird
FontBorderColorPlain Hexadezimalzahl achtstellig Transparenz (ein Byte) und Farbe (drei Byte RGB)
FontBorderSizePic Zahl mit Coverbild
FontBorderColorPic Hexadezimalzahl achtstellig Farbe
TagFont Name der Schrift die Schrift für die Status-Anzeigen (Interpret, Titel, Jahr und die Spielzeit)
TagFontSize Zahl Schriftgröße
TagFontColor Hexadezimalzahl sechsstellig Farbe (Standard: TagFontColor=$FFFFFF)
FontPath Pfad Falls (unter Linux) das Einstellen einer Schriftart nicht funktioniert, kann es helfen, den vollständigen Pfad zum Verzeichnis, das die Schrift enthält, hier anzugeben. Außerdem kann ein Pfad zu zusätzlichen Schriftarten auch für portable Installationen unter anderen Betriebssystemen nützlich sein. Beispiel:
FontPath=/usr/share/fonts/truetype/ubuntu
HideStatus on oder off HideStatus=on verbirgt die Status-Anzeigen (nur das Aufhellen am Anfang eines Stücks wird noch gemacht, wenn es eingeschaltet ist)
LightenStatus on oder off Aufhellen der Status-Anzeigen am Anfang eines Stücks
Fullscreen on oder off Fenster oder gesamter Bildschirm (Fullscreen=off oder on).
Bei Fullscreen=on kann das Programm nur mit Strg-C beendet werden. Der Fenstermodus kann mit der Taste W umgeschaltet werden, wenn das nicht mit LockWindowMode verhindert wird. Im Fenstermodus läßt sich das Fenster mit Alt-Enter auf Vollbild skalieren.
LockWindowMode on oder off LockWindowMode=on verhindert das Umschalten zwischen Fenster- und Vollbilddarstellung mit der Taste W (das Programm läuft dann im bei Fullscreen angegebenen Modus)
DisplayBorderless on oder off DisplayBorderless=on bewirkt, daß im Fenstermodus (Fullscreen=off) ein randloses Fenster erzeugt wird.
DisplayWidth Zahl Fensterbreite
DisplayHeight Zahl Fensterhöhe
HidePointer on oder off HidePointer=on: Mauszeiger nie anzeigen. Das ist sinnvoll, wenn im Vollbildmodus ausschließlich mit Touchscreen bedient wird.
VolumeStretch Zahl (von -10 bis 10) asymmetrische Spreizung des Lautstärkereglers. 0 ist linear, Positive Werte dehnen die leisen Bereiche und stauchen die lauten. Zugelassener Bereich -10 ... 10
VolumeLines on oder off VolumeLines=on: Hilfslinien der Lautstärkestufen darstellen (damit sieht man die Wirkung von VolumeStretch direkt)
LargeIntro on oder off LargeIntro=on: für die Anwendung auf kleinen Displays Jahr/Interpret/Titel am Anfang jeden Stücks als sehr großen Lauftext anzeigen
IntroFont Name der Schrift die Schrift für den Lauftext
IntroFontColor Hexadezimalzahl sechsstellig Farbe für LargeIntro (Standard: IntroFontColor=0xFFFFFF)
EmptyLinesThresholdZahl (von 0.0 bis 1.0)Schwellwert für das Verhältnis leerer Zeilen mit Zeitstempel zu Textzeilen, ab dem diese leeren Zeilen als Zeilenendzeiten betrachtet werden. Standardwert 0.31.
0.31 bedeutet also, daß alle leeren Zeilen nicht angezeigt werden, wenn mehr als 31% aller Zeilen mit Zeitstempel keinen Text enthalten.
EmptyLinesThresholdCZahl (von 0.0 bis 1.0)Derselbe Schwellwert für LRC-Dateien, die eine kombinierte Zeile mit leeren Zeilen enthalten. Standardwert 0.28.
HideSpaceLines on oder off Ausblenden von leeren Zeilen, die (außer dem Zeitstempel) genau ein Leerzeichen enthalten
PreLoadMusic on oder off Wenn die Musikdateien von sehr langsamen Speichermedien gelesen werden, z.B. älteren USB-Sticks, kann es zu Fehlern bei der Wiedergabe kommen (es werden dann einzelne Frames der Musikdatei wiederholt). PreLoadMusic=on bewirkt, daß das gesamte Musikstück in den Speicher kopiert wird, bevor die Wiedergabe beginnt. Außerdem wird in dieser Betriebsart das Lesen des ID-Tag-Bereichs bei der Musikwiedergabe verhindert, welcher sich am Anfang der Musikdatei befindet. Dadurch werden ansonsten mögliche kurze Störgeräusche beim Trackwechsel durch Fehlsynchronisation bei mangelhaft kodierten ID3v2-Tags unterbunden.
PreLoadWhileScan on oder off Besonders zeitkritisch ist es für die Wiedergabe, wenn aufgrund von Änderungen im Musikverzeichnis die Tags neu gelesen werden, und dabei der Cache der Coverbilder neu aufgebaut wird, weil dabei Daten geschrieben werden. PreLoadWhileScan=on bewirkt, daß das PreLoad-Puffern während des Taglesens gemacht wird, danach gilt die durch PreLoadMusic gewählte Einstellung.
ShowMessages on oder off Diagnosemeldungen anzeigen
(Standard: off)
MsgFont Name der Schrift die Schrift für die Diagnosemeldungen
MsgFontSize Zahl Schriftgröße
MsgFontColor Hexadezimalzahl sechsstellig Farbe
LogFile Pfad/Dateiname Ist hier ein Dateiname angegeben, werden alle Meldungen der aktuellen Programmsitzung in diese Protokolldatei geschrieben, auch diejenigen, die sonst nur bei ShowMessages=on angezeigt werden.
CheckForUpdate on oder off CheckForUpdate=on: Beim Programmstart hier auf der Downloadseite nach einem Update suchen, und wenn eines vorhanden ist, eine Meldung ausgeben.
(Standard: off)
ScanMode on oder off Spezialfunktion: den Titel nur eine festgelegte Zeitdauer anspielen
(Standard: off)
ScanTime Zahl die Anspieldauer in Sekunden für den ScanMode (Standard ist 7)
ScanModeLines on oder off Spezialfunktion: Titel nur anspielen, bis eine bestimmte Anzahl von Textzeilen angezeigt worden sind (ScanModeLines=on oder off).
Gilt nur für LRC-Texte, bei unsynchronisierten Texten (TXT) wird die Zeit von ScanTime benutzt.
ScanLinesToShow Zahl die Anzahl Zeilen (ab der Spielzeit von 2s), die bei ScanModeLines angezeigt werden
WriteMissing on oder off Spezialfunktion: WriteMissing=on bewirkt, daß eine Textdatei namens MissingLyrics.txt geschrieben wird, in der alle Stücke aufgelistet werden, zu denen keine Lyricsdatei vorhanden ist. Außerdem werden alle Musikdateien kurz zum Spielen geöffnet und wieder geschlossen, falls es dabei Probleme gibt, werden die betreffenden Dateinamen in eine Textdatei namens BrokenMusic.txt geschrieben.

Die zusätzlichen Konfigurationsdateien, deren Dateinamen in Lyrics_Jukebox.config festgelegt sind, werden teilweise automatisch erzeugt, und teilweise sind sie zur Bearbeitung durch den Anwender vorgesehen.
Folgende Dateien werden automatisch angelegt und normalerweise vom Anwender nicht verändert:
StateFile
PlayListFile
Vom Anwender können diese Dateien bearbeitet werden:
RadioStations
RatingList
SearchAbbreviations
LanguageFonts
HyphenationList
HTMLEntitiesTable

Anmerkung: Die mitgelieferte Datei LJ LanguageFonts.config ist nur als Beispiel gedacht, im Auslieferungszustand ist ihr Konfigurationseintrag (LanguageFonts) auskommentiert.