Newest approach to photo frames: Raspberry Pi. There's also an excellent wallpaper changer called Variety, by Peter Levi. I wrote directions originally at Peter Levi's blog:

I have recently purchased a Raspberry Pi B+, which might be more updated than the RPi I originally used (a model B from last year sometime.) For my reference, here are directions from installing on the B+.

Complete directions for posterity's sake:

1. Install dependencies:
sudo apt-get install gir1.2-notify-0.7 python-configobj python-pyexiv2 python-pycurl gir1.2-gtk-3.0 python-dbus gir1.2-pango-1.0 gir1.2-glib-2.0 python-imaging python-cairo gir1.2-gdkpixbuf-2.0 python-bs4 gir1.2-webkit-3.0 yelp imagemagick python-lxml gir1.2-appindicator3-0.1

2. Install bzr:
sudo apt-get install bzr

3. Checkout from the repository:
bzr branch lp:variety

4. Run

5. Edit Variety preferences to enable start when RPi starts up

6. Edit .config/autostart/variety.desktop to fix path (Exec=sh -c "/home/pi/variety/bin/variety")

7. Install unclutter to hide the mouse cursor:
sudo apt-get install unclutter

8. Run unclutter at startup and disable screen blanking:

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
- delete line that starts xscreensaver
- Add 4 lines:

@xset s off
@xset -dpms
@xset s noblank

9. Reboot and enjoy