Lyrics Jukebox

Playing music with synchronized lyrics display for Windows, Linux and Mac

Last changes:

The versions of Lyrics Jukebox up to the end of 2023 had the structure of the internal playlist and the creation of the cache of the cover images in the main program. As a result, the program played music after the initial startup and when changes were made to the music directory, but the text scrolling was very jerky for a while due to the file accesses, and the program responded to user actions with a delay.
From version 0.9.220, Lyrics Jukebox consists of two components, so that the playback display is no longer significantly affected. However, a major restructuring was necessary for this, and it is not yet certain whether the data exchange between the program components is working reliably in all environments. In case of communication problems, the old function is still available in the main program as an emergency variant and is activated as needed.
If something doesn't work, please let me know. Due to the many platforms and operating conditions, I occasionally miss a problem when testing.

0.9.254 (2025-02-05)
	When changing tracks manually, music and cover art are now crossfaded
	by default.
	Configuration entry CrossFadeAtControl added.
	Configuration entry DebugWindows added.
	Fix: Since 0.9.248, music files without any ID3 tags caused a runtime
	error.
0.9.253 (2025-01-22)
	Fix: Resizing the window shortly after starting the program
	did not trigger the necessary rebuilding of the display.
	Fix: Resizing the window during Jukebox selection and without
	playback started playback.
0.9.252 (2025-01-21)
	Fix: When leaving the search function in Pause mode, the
	previously displayed text lines were omitted.
0.9.251 (2025-01-19)
	Fix: Starting the program without music files caused a runtime
	error in the recent versions.
0.9.250 (2025-01-15)
	If the user interrupts the tag update by exiting the program,
	a complete rebuild is initiated at the next program start because
	cached pictures may be mapped incorrectly.
	Fixed: When reading the English language catalog, the escape
	character \ was not evaluated correctly.
0.9.249 (2025-01-10)
	Further optimization of communication, especially for slow
	devices (Raspberry Pi 3).
	Fix: When starting in pause mode, the volume control button was
	placed in the wrong position.
0.9.248 (2025-01-02)
	Playlist updates when changes are made in the music directory have
	been optimized in several places.
	The cache contents are now only rewritten for the tracks that have
	been modified.
	Communication between the main and service program on Linux is now
	more reliable.
0.9.247 (2024-11-22)
	Configuration entry SearchAbbreviations and a file with
	examples added.
	Configuration entry HyphenationList added.
	The names of the additional configuration files supplied have been
	harmonized (these file names are defined in the central
	configuration file “Lyrics_Jukebox.config”):
	"Lyrics_Jukebox-Hyphenation.txt" --> "LJ Hyphenation.config"
	"HTML_entities.txt"              --> "LJ HTMLentities.config"
	"Lyrics_Jukebox RadioURLs.txt"   --> "LJ RadioURLs.config"
	"LJ_LanguageFontList.config"     --> "LJ LanguageFonts.config"
0.9.246 (2024-11-07)
	If a modified OldPlayList is detected when the program starts,
	the playback position is now set to the beginning.
	Added configuration entry "PlayOnStart".
	Fix: In 0.9.245, some combinations of the aspect ratios of
	cover image and program window did cause a runtime error.
0.9.245 (2024-10-15)
	Displaying the cover image has been slightly accelerated.
0.9.244 (2024-10-08)
	Fix: Since 0.9.225, incorrectly written RatingList track names
	were no longer reported.
0.9.243 (2024-09-24)
	The maximum size of LRCFontSize has been increased to
	window height/6.5.
	The ratio of empty lines to text lines can now be used to decide
	whether empty lines should be interpreted as the end time of the
	previous text line.
	Configuration entries EmptyLinesThreshold and
	EmptyLinesThresholdC added.
0.9.242 (2024-09-05)
	Added configuration entry "RememberJukeboxMode".
0.9.241 (2024-09-01)
	If no music files are found at startup, the program no longer
	exits, but instead suggests drag and drop.
	Calculation of the space allocation between title and artist
	improved.
0.9.240 (2024-08-25)
	Fix: The change in 0.9.238 has led to unwanted resorting if
	there are several lines of text and empty lines at the
	beginning with a timestamp of zero.
	Fix: The search function has returned incorrect search hits
	that occurred in the concatenation of the last word of the
	artist name and the first word of the title.
0.9.239 (2024-08-18)
	Fix: If an LRC file and embedded unsynchronized lyrics were
	present, then the embedded lyrics were interpreted as LRC.
0.9.238
	Empty lines with a timestamp identical to a lyrics line are
	now always inserted before that line.
0.9.237 (2024-08-08)
	Volume levels for music playback and radio can now be
	handled separately.
	Added configuration entry "SeparateVolume".
0.9.236 (2024-07-19)
	Fix: Changing the sound card while paused could cause
	a runtime error when resuming playback.
0.9.235 (2024-07-12)
	Fix: Damaged image data in the image cache or in the
	ID3 APIC frame could cause a runtime error.
0.9.234 (2024-07-06)
	LRC lyrics that are stored in the USLT frame of an ID3
	tag are now recognized and displayed as synchronized text.
0.9.233 (2024-07-04)
	Two variants of lyrics embedded in the music file can
	now be used:
	Unsynchronized text in the form of USLT frames is read.
	Synchronized text in the form of SYLT frames is read in
	the form which it is written by MiniLyrics (one
	timestamp per line, which also marks the end of the line,
	no line breaks).
	Added configuration entry "PreferEmbeddedLyrics".
0.9.232 (2024-06-26)
	Minor corrections and improvements.
0.9.231 (2024-06-10)
	Cache cleaning is faster.
	Minor corrections.
0.9.230 (2024-06-07)
	Added configuration entry "ShowRating".
	Minor improvements to program startup.
	Fix: When using the search function with the keyboard
	and the ticker was activated, artists or titles with brackets
	caused a runtime error.
0.9.229 (2024-05-28)
	When resizing the window, the border of the font is now
	adjusted too.
	Search function further optimized.
	Fix: Another small memory leak fixed.
0.9.228 (2024-05-25)
	Fix:
	If the program was started in full-screen mode, resizing
	to a new window size and drag & drop were disabled. Since
	the W key function is available, this no longer makes sense.
0.9.227 (2024-05-23)
	Search function optimized, is now a bit faster.
	Fix:
	In version 0.9.226, there was a	memory leak.
0.9.226 (2024-05-20)
	Fix: If a track was selected in the Jukebox search function
	within a few seconds of the end of the last track, it was
	possible that playback would not start.
0.9.225 (2024-05-19)
	Added button function W to switch between window modes during
	playback and radio operation.
	Import of rating list accelerated.
0.9.224 (2024-05-16)
	Improved response to communication problems with the service
	program under Linux and MacOS. (To make it easier to monitor
	this, a few technical status messages will be output occasionally
	for a while after the program starts. These will be removed in
	a later program version.)
0.9.223 (2024-05-05)
	Removed remaining debug output, added missing language catalog
	entries
0.9.222 (2024-05-04)
	If an LRC file contains spaces at the beginning of all lines,
	they are no longer displayed.
	Improved scrolling behavior for LRC files with an empty text
	line at the end.
0.9.221 (2024-04-29)
	Added a message about the quarantine status of downloaded files,
	especially for Mac.
	The instructions on this commissioning page have been updated
	to include information on how to deal with this quarantine.
0.9.220 (2024-04-24)
	Service component (Lyrics_Jukebox_Service) created for
	rebuilding the playlist and for randomization.
	Added configuration entry "LogFile" for writing diagnostic
	messages to a log file.
	First version of the translation help program
	LJ_TranslationViewer added.
	Interprocess communication between Lyrics Jukebox and the
	service component for Linux and Mac via UDP or file system
	established.
	ESC now also deletes the search input field.
	Added a cancel function for the jukebox display so that the
	handling is more like a real jukebox.
	Added configuration entry "LanguageFonts".
	Locale catalogs added and corrected.
0.9.215 (2023-12-30)
	Fix: Additional playback positions for tracks in the RatingList
	were also placed in the range of an imported OldPlayList.
	The path/name of the configuration file can be passed as 
	argument when the program is started (the name must end with
	the extension .config).
0.9.214 (2023-12-15)
	Added button function for C in playback mode (copies
	path/filename of current track to clipboard).
	Added missing catalog string.
	Translated the program messages into English, added the Catalogs
	directory.