Self-service Multimedia Jukebox
Back to Projects
This project seeks to replace the defunct Apple Macintosh that has been installed in the Granary for many years providing a continuous play of a mill video selected by whoever switches on the system at the start of an open day.
The replacement is leveraging cheap, disposable Raspberry Pi computers.
Goals
- Produce a portable, touch sensitive system where a visitor can select one of the following:
- a video to watch,
- an audio clip or programme to listen to, or,
- a photograph gallery to view.
- Once a prototype has been chosen, build multiple units to be mounted in different places.
- Use a build system to compile the multimedia and configure the software.
- Deploy to copyable, disposable SD cards to configure each unit.
Done
- Created tiny prototype using HyperPixel touch screen.
- Created prototype using Raspberry touch screen.
- Created prototype using Inelco Hunter touch screen.
- Created static HTML software prototype to use with Chrome in "kiosk" mode.
- Created Kodi-based software prototype.
- Tested software prototypes with large standard HDMI display.
All prototypes were developed with a Raspberry Pi4 Model B although many of them could have worked with a lower spec Pi. The Pi4 Model B can be sourced from the following locations with the indicated price, excluding delivery charges. We have chosen to use the highest price in the Bill of Materials costings for each prototype to allow some scope for price variation.
Raspberry Pi4 Model B 8GB | SB Components
OKDO CPC Pimoroni The Pi Hut |
74.00
69.72 69.77 73.50 73.50 |
Prototype 1 – Pi + Hyperpixel Display + USB Audio
Bill of Materials
Component | Supplier | Price |
Raspberry Pi4 Model B 8GB | See above. | 74.00 |
Power Supply | OKDO | 7.81 |
USB Speakers | Amazon | 9.99 Speakers
2.24 Shipping |
Samsung EVO Plus 256 GB microSDXC UHS-I U3 Memory Card with Adapter | Amazon | 39.16 |
Hyperpixel Touch Display | Pimoroni | 45.00 |
Case | To make. Needs to enclose Pi+Hyperpixel and USB speakers | 20.00 estimate |
Delivery | Allowance for unrecorded shipping costs for Pi + PSU | 20.00 |
TOTAL | £218.20 |
Prototype 2 – Pi + Inelco Hunter 10” PCAP Touch Display + USB Audio
Bill of Materials
Component | Supplier | Price |
Raspberry Pi4 Model B 8GB | See above. | 74.00 |
Arduino Power Supply - 12V 2A - High Voltage (Universal) | The Pi Hut | 10.00 |
USB Speakers | Amazon | 9.99 Speakers
2.24 Shipping |
Samsung EVO Plus 256 GB microSDXC UHS-I U3 Memory Card with Adapter | Amazon | 39.16 |
Inelco Hunter 10” PCAP Touch Display | The Pi Hut | 150.00 |
Case | To make. Needs to enclose Pi+Hyperpixel and USB speakers | 20.00 estimate |
Delivery | Allowance for unrecorded shipping costs for Pi + PSU | 20.00 |
TOTAL | £325.39 |
Software Option #1 – Kodi
Kodi provides an all-in-one media centre option. The administrator can remove menu items that are not required, such as “TV Shows”, “TV”, “Music Videos”, “Weather”, “Add-ons”, etc. A range of “skins” are available to provide different look and feel. Kodi can be configured to find content of each type in specific directories. Touch screen navigation works well.
The down-side to using Kodi is locking it down sufficiently so that a knowledgeable miscreant cannot exit the software and meddle with the underlying system. One mitigation for this risk, adopted for all of the software prototypes, is to use a build system to configure the software and then write the result to several disposable SD cards. Two boxes or tins will be provided, one for known-to-be-good SD cards and another for suspected-to-be-corrupted SD cards. To reset the system after an attempt at meddling, the following procedure should suffice:
- Power down unit.
- Slide out suspect SD card.
- Put in box/tin for corrupted cards.
- Select good SD card from other box/tin.
- Install into unit.
- Power up unit.
The box/tin of bad SD cards can be returned to the administrator after an open day to be re-recorded, or replaced with a fresh SD card if the bad one is irreparably damaged. There is a cost to this approach, but as of June 2021, a 5-pack of 32GB SD cards costs around £30.
Software Option #2 – Hand Scripted HTML
A simple index.html is written for each folder in the following directory structure.
- Kiosk
- Music
- Pictures
- Video
The sub-directory names are chosen for their similarity to Kodi expectations. Content is copied into these sub-directories and the index.html file tailored to provide icons with links to the relevant items. The Pictures sub-directory is an exception. When we copy the content into this we have a hierarchy of directories which at the top level correspond to all the photographs contributed by a single contributor. Below these nodes are separate “albums” as defined by the contribution. To present this content via a web browser we use an “album” or “gallery” generator to build the necessary HTML. A variety of tools were investigated.
- Album (Ubuntu "album" man page)Generates a hierarchy of albums corresponding to hierarchy of directories.
- Fgallery (FGallery web page)Generates a flat list of images with a scrollable panel of thumbnails at the side of the screen.
- Photoswipe (PhotoSwipe web page)Generates a flat list of images which can be swiped between using a touch screen.
The current version of this prototype uses Album as it preserves the album hierarchy. There remains a problem of navigation into thumbnails, then medium images and finally full size images leads to a full-sized image that can be larger than the screen. Navigation back to a parent item requires enabling touch screen controls in Chrome and is not visually obvious.