The monitor screen in the kitchenThe monitor screens show the track currently playing (track title, artist name, and album name) in big letters that can be read from anywhere in the room. When nothing is playing, the screen is blank.
There's one monitor screen in the kitchen, one in the lounge, and one in my study.
When the server PC starts up, the Mozilla Firefox browser is started automatically. I have configured Firefox so that when started it displays a page "monitor.html", which I wrote for the purpose, and resides in the jukebox root directory. I use the free Firefox plug-in Full Fullscreen, which is necessary in order to produce a 100% full screen display in Firefox. Full Fullscreen also automatically puts Firefox in full screen mode when started. The last hurdle to overcome in getting a clean-looking display is to hide the mouse cursor. For that I use Cursor Hider.
The page "monitor.html" contains JavaScript code which, with the assistance of a CGI program and a "push" iframe, creates an accurate, readable, and flicker-free display.
Here's an illustration of several of the features described above:
Monitor screen
layout example (image reduced to 70% of full size)The image produced by monitor.html appears as a VGA (800x600) signal at the monitor socket on the back of the server PC. I use two different methods to get that signal to the rooms where the display is needed.
In each of the main listening rooms (the kitchen and the lounge) I use an LCD VGA monitor with an eight-inch screen, as shown in the illustration at the top of this page. VGA cable is bulky and expensive, and doesn't work well over long distances. So I have category 5 cable running in parallel with the audio cables from the server to the amplifiers, with VGA extenders.
My study is slightly different, because there's no convenient way to run an additional cable there. So I run a browser that fetches monitor.html from the server over the LAN. I use Google Chrome for this purpose so as to give separation from my normal browsing activities. My PC has a dual-monitor video board, so I've written a Perl script to move the Google Chrome window to the second monitor area, and incidentally to remove its button from the taskbar. So now the jukebox monitor doesn't appear on my main PC screen, but emerges as a VGA signal on the "monitor 2" socket on the back of my PC. On my desk I have another eight-inch LCD VGA monitor.