Perl-script to adapt photos to Philips Photoframe 9FF2
Some time ago I bought a Philips Photoframe 9FF2. I decided it was the best one currently out there, and sure, it's a excellent viewer. The controls are a bit sluggish and I find it hard to maneuverate with many pictures. But since it is firmware upgradeable I still have hopes :-)
However, the program that is used to downsize and copy photos to the device is a pain. I don't like it at all. Since the main thing that program do is to downsize and rename the pictures I quickly began working on a script that does that, and includes some bells and whistles.
I might be a little troublesome to get working, but when done, I'm confident it will please you.
Features:
Takes a directory and performs a series of operations on the photos:
Note that the resolution of the lcd is 640x480, but Philips' own program scales to 720x540, and slideshow effects looks better at this resolution than 640x480.
Usage:
perl convert_to_photoframe.pl <directory> <directory> ...
Run the script from the directory where you want the converted photos to be saved.
The resulting directories will named like ALBUM001 as required by the device. A file called curr_id.dat will be created to keep track of the last created album. The name of each directory will be used as the default description of that ALBUM, and used by frame (name is saved in the file LONGNAME).
The first time a directory is processed a file called album_info.txt will be created in it. It contains some info needed to be preserved for this directory, together with the description. So the next time you process the same directory the same ALBUM will be updated. No need to clear the content of ALBUM first. Left-over photos will be removed.
The text will end up in the bottom of the photo. As seen in the example, the frame uses quite some overscan: Example of converted photo, with the default settings
Since I find it slow to maneuver between different albums in the frame the script by default starts at 400 and steps downward for each new directory handled. This will mean that newly added albums will appear at the top when browsing and not in the bottom. This behavior can ieasily be changed.
If you wants to completely reconstruct the ALBUMs use the argument 'all':
perl convert_to_photoframe.pl all <base directory>
Every directory in the given base directory will be processed, and the enumeration of ALBUMs will be reset to 400. Please manually delete all current ALBUMs.
Read the comments in the script for more info.
Requirements:
A unix-box to run it on, should work in Windows (untested).
Some perl-modules: Image::Magick, Image::MetaData::JPEG.
Releases and history:
Future:
Figure out what the slideshow-files created by the Philips program contain.
Please let me know if it works for you.
/Joakim Andersson, joakim at iqcc dot se