PhJuke - Music Jukebox for Photon
Changes in Recent PhJuke Versions
Version 1.1 (2003/02/18)
You may now specify a comma-delimited list of album cover filenames on the Settings dialog. This is to support Windows XP users, who need to call their cover images "folder.jpg" to get them to show up as thumbnails.
PhJuke will now play ".mp2" files using madplay.
Added support for Media Jukebox's ReplayGain tagging. Only works on MP3 files, not Ogg Vorbis. The Settings dialog has an option to turn ReplayGain on and off and to add a constant to the volume adjustment.
Sped up the "Listing" phase of loading/restarting a playlist.
Version 1.0.1 (2002/02/10)
Fixed a bug with repeat mode; turning it off and letting the last track finish playing would start the list over as if repeat were turned on.
If a track is listed in the playlist but its file can't be found, PhJuke now skips over it correctly if you land on it using the Next button.
If madplay or ogg123 fails to launch, PhJuke will now print a much more detailed error message.
Added a debounce timer to the browser pane. This should prevent accidental double-tapping (e.g. when you select a directory button and after the directory is displayed, the button in the same position on the new directory is selected by accident.)
The Back button wasn't being enabled and disabled properly when cached directories were revisited.
Pressing the channel knob when PhJuke is stopped now does the same thing as hitting the Play button. While a song is playing the knob continues to act like the Pause button as before.
Version 1.0 (2002/02/01)
Added support for loading Media Jukebox playlists. Export your list as an ASCII file with a ".txt" suffix on the filename (the default suffix for ASCII exports). This is handy because MJ doesn't output WinAmp-style artist/title info when you export to M3U format; PhJuke can construct nice-looking names in the playlist given a .txt file. (Media Jukebox is by far my favorite Windows jukebox app; its playlist management features leave everything else in the dust. Highly recommended if you have a big music collection.)
The main window is now positioned using absolute screen coordinates, rather than relative to the center. This should fix the off-center positioning problem for people running "shelf" on their Audreys.
The standard Photon window size and position arguments (-x, -y, -w, and -h) may be used if you don't want PhJuke to start full-screen.
Added a settings dialog, accessible via the new "Settings..." menu item. The settings dialog exposes several options that previously required editing the .phjuke preferences file. See the User Interface page for details.
Added the ability to remember the current playlist on restart. The behavior of this feature is controlled via the new settings dialog.
Searching for album covers while scanning directories is now optional, controlled by a checkbox in the settings dialog. The option is on by default. If you turn it off, navigating into a large directory (that isn't cached already) is much faster.
Added new network commands:
The last 4 directories or PHJ files are now kept in memory for fast access. This is most noticeable if you have a big top-level directory, say with a subdirectory for each artist; now when you hit the Back button after descending into one of the artist subdirectories, you should get your big directory instantly.
Playback controls are greyed out on the Audrey when they can't be used. Previously the greying-out only worked on PC QNX.
If you run PhJuke while another instance is already running, the old instance is brought to the foreground. Thanks to Jim Mazrimas for ACID, from which the code for this is lifted.
Hitting stop while paused no longer freezes PhJuke.
Hitting play while paused resumes playback.
Version 1.0beta3 (2001/12/29)
The decoder apps are executed in a more memory-efficient way, which should allow PhJuke to support larger playlists. This required a change to madplay so be sure to update that along with PhJuke if upgrading from an earlier release.
Playlist loading optimized (using a faster memory management scheme). Large playlists should load faster now.
Added directory mapping capability for pathnames in M3U (playlist) files. This allows you to use M3Us that contain absolute paths. See the FAQ for details.
Changed the default color scheme. Black on a light background seems to be readable on the Audrey's backlit LCD from wider angles than white on black.
Moved the "Save," "Clear," and "Add All Tracks" buttons to a menu activated by the new "Command" button to reduce UI clutter. Replaced the "Add M3U" button with a more intuitive toggle on the new menu.
Playlist saving is supported. There are some problems saving playlists with non-ASCII (accented) characters.
The main window is now sized and positioned such that PhJuke is a full-screen app on the Audrey (or any other 640x480 QNX system). There is a "Quit" command in the Command menu since you can't get at the window close button any more. Added some space between controls and made the font of the album name the same size as the track and artist names.
A status popup appears when processing large playlists or directories, so the app won't appear to have frozen solid.
Browser buttons now have icons indicating what they're for, since the color and font scheme for differentiating buttons wasn't very clear to users who hadn't read the documentation. For now the color/font scheme is still there as well, but it may go away at some point.
Version 1.0beta2 (2001/12/04)
Made main window resizable. Not that you'd want to resize it on an Audrey, but on PC QNX you might.
Added time slider. The MAD and OGG123 decoders don't allow seeking so right now it's read-only.
At exit, shuffle and repeat settings are saved in $HOME/.phjuke, and they're loaded from there at startup. The preferences file may be specified using the -f command-line option. Other options are stored there too.
Added some simple character set management. Windows systems use the DOS "codepage 437" character set for file and directory names, but (in the US and Western Europe) they use ISO-8859-1 for everything else. Photon, meanwhile, uses Unicode for display. The defaults are now set up for Windows fileservers; if you're mounting your MP3s from a UNIX system and any of your MP3 filenames have accented characters, use the "fs-charset latin1" option in your preferences file to use ISO-8859-1 for the filesystem character set. (There's also a "data-charset" option to control the character set used elsewhere; no doubt I've missed a few spots, so if you use an alternate character set and notice anything funny, send me mail.)
Added support for Ogg Vorbis files using a hacked version of the ogg123 decoder. (Hacked to add multithreaded double-buffering of audio file, to make the ALSA sound device the default, and to allow more ALSA chunks in the output buffer.)
The browse pane now shows "Loading..." and the playback controls are active while PhJuke is loading a large directory. Previously it would just sit there unresponsive, appearing to crash.
The Audrey's channel wheel may be turned left and right to go to the previous and next tracks. Pressing it pauses or resumes playback.
Added a simple network protocol for remote control.
Tweaked the UI to give more acknowledgement of button presses. Also changed the playback buttons so the unavailable ones grey out at the right times, but the Audrey's Photon libraries don't seem to like greying out image buttons (works fine on PC QNX). Will revisit this in a future release.
Version 1.0beta1 (2001/11/29)
Initial public release.