1 Title: Sharing images with friends and family using RSS and EXIF/XMP metadata
5 <p>For a while now, I have looked for a sensible way to share images
6 with my family using a self hosted solution, as it is unacceptable to
7 place images from my personal life under the control of strangers
8 working for data hoarders like Google or Dropbox. The last few days I
9 have drafted an approach that might work out, and I would like to
10 share it with you. I would like to publish images on a server under
11 my control, and point some Internet connected display units using some
12 free and open standard to the images I published. Many years ago, I
13 hoped to find a digital photo frame capable of reading a RSS feed with
14 image references (aka using the <enclosure> RSS tag), but was
15 unable to find a sensible supplier of such frames. In the end I gave
18 <p>Some months ago, I discovered that
19 <a href="https://www.jwz.org/xscreensaver/">XScreensaver</a> is able to
20 read images from a RSS feed, and used it to set up a screen saver on
21 my home info screen, showing images from the Daily images feed from
22 NASA. This proved to work well. More recently I discovered that
23 <a href="https://kodi.tv">Kodi</a> (both using
24 <a href="https://www.openelec.tv/">OpenELEC</a> and
25 <a href="https://libreelec.tv">LibreELEC</a>) provide the
26 <a href="https://github.com/grinsted/script.screensaver.feedreader">Feedreader</a>
27 screen saver capable of reading a RSS feed with images and news. For
28 fun, I used it this summer to test Kodi on my parents TV by hooking up
29 a Raspberry PI unit with LibreELEC, and wanted to provide them with a
30 screen saver showing selected pictures from my selection.</p>
32 <p>Armed with motivation and a test photo frame, I set out to generate
33 a RSS feed for the Kodi instance. I adjusted my
34 <a href="https://freedombox.org/">Freedombox</a> instance, created
35 /var/www/html/privatepictures/, wrote a small Perl script to extract
36 title and description metadata from the photo files and generate the
37 RSS file. I ended up using Perl instead of python, as the
38 libimage-exiftool-perl Debian package seemed to handle the EXIF/XMP
39 tags I ended up using, while python3-exif did not.</p>
41 <p>I am a bit unsure which EXIF/XMP tags to use, as I would like to
42 use tags that can be easily added/updated using normal free software
43 photo managing software. I ended up using the tags set using this
44 exiftool command, as these tags can also be set using digiKam:</p>
47 exiftool -headline='The RSS image title' \
48 -description='The RSS image description.' \
49 -subject+=for-family photo.jpeg
52 <p>I initially tried the "-title" and "keyword" tags, but they were
53 invisible in digiKam, so I changed to "-headline" and "-subject". I
54 use the keyword/subject 'for-family' to flag that the photo should be
55 shared with my family. Images with this keyword set are located and
56 copied into my Freedombox for the RSS generating script to find.</p>
58 <p>Are there better ways to do this? Get in touch if you have better
61 <p>As usual, if you use Bitcoin and want to show your support of my
62 activities, please send Bitcoin donations to my address
63 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>