Download images from an authenticated Flickr account (or local filesystem) and push them wirelessly to a Toshiba FlashAir Wifi SD card mounted in a digital photo frame.
- Free software: ASL2 license
- Documentation: http://virantha.github.io/airframe/html
- Source: http://github.com/virantha/airframe
- Authenticates to Flickr to get your private photos
- Only downloads photos with specified tags
- Alternativly, can sync files from a local directory
- Caches and syncs the photos to the Wifi SD card
$ pip install airframe
First, go to Flickr and get a private key at http://www.flickr.com/services/api/misc.api_keys.html
Then, create a directory from where you will start airframe, and create a file called flickr_api.yaml:
key: "YOUR_API_KEY" secret: "YOUR_API_SECRET"
Then, setup your FlashAir card as described in this post's "Enabling the FlashAir" section.
Now, you're ready to sync some photos! Just run:
$ airframe -n 100 -t photoframe YOUR_AIRFRAME_IP
This will download and sync the 100 most recent photos tagged with "photoframe" to your AirFrame.
Any other image files in the FlashAir upload directory will be deleted, so make sure you backup anything you want to keep from your SD card.
The image files from Flickr will be cached in a sub-directory called .airframe in the location you invoked airframe from, so as long as you rerun from the same directory, the script will only download new files from Flickr. If you want to redownload all the files from scratch, just rm .airframe these files.
The script will also only upload new images to the FlashAir card, and ignore any files that are already present on the card. If you want to force a clean upload, do the following:
$ airframe -n 100 -t photoframe -f YOUR_AIRFRAME_IP
This will delete all images already on the card, and upload every image again.
Alternatively, you can sync files directly from your local computer by pointing the script at a directory of .jpg files:
$ airframe -l /path/to/photos YOUR_AIRFRAME_IP
Note: other flags are ignored in this mode.
Images can also be resized using the --resize WxH option if your photoframe has trouble interpolating resolutions. Set W and H to your frame's native width and height numbers. This option does require either the Python Imaging Library (PIL) or Pillow installed.