This is a project where we need to create a live status display of images on flat screen monitors that will work on the many small Android based "all in one PC's" with HDMI/VGA/DVI port. It basically needs to fetch images from a remote website, store them locally, display them based on specification contained in a play list, check for fresh image content and update it locally, and run the playlist defining what is to be displayed in a repeating loop all with unattended operation.
This app playback of image fullscreen would be driven by interpreting a text file list of image events stored locally on the device generated by the GUI or fetched from a URL then updated locally for interpretation and playback. Each line in the playlist (an ASCII text file) would be an "image event" that would carry attributes, such as how long to display it, what schedule to display the image event, and whether it is a still image or a “flipbook style” animation of a series of sequential images and how many times to repeat that flipbook event, plus any image transition effects between image events selected by the user.
Some images will be subsets of "flipbook style" animations that will need to be cycled quickly as possible; others will be static images that need to have a dwell time. The "flipbook style" animations will simply be a sequentially numbered set of images, such as [url removed, login to view], [url removed, login to view] ... [url removed, login to view] that would be fetched from the URL specified for the complete set of up to 32 images. The "flipbook style" animations would be considered to be like a single image display event, where it would be run through each image quickly to make the flipbook animation display, perhaps repeated up to 10 times (set in play list text file for that event), and then on to the next image event in the play list.
The GUI should be able to make the play list from images at URL's as well as images that may be stored locally on the internal or external SD card for the device. The app is required to have automated refresh of content images as they are updated on webserver and menu driven GUI configuration to allow inputting the URL, test the URL for display/validity during editing, and save the entire display list as playback list text file (plain ASCII) for interpreting and playback full screen.
The playback list should be a line in the text file for each display event, and be viewable in any text editor. The app should allow a choice of using a locally created playback list text file, or one fetched from a URL on startup. In that instance, the app should check for new versions of the playback list text file at the URL, just as it does for new image content. If a new playback list is found, it is stored locally, and the playback onscreen is restarted with the new list. Some basic image transitions between images (dissolve, wipes etc. a dozen or less) should be able to be assigned by the GUI. Scheduling of image events based on days of week and valid display hours is needed also in the user interface.
The app should be able to run at startup of the device, and play the current slide show defined, or be started manually like any other app, do editing of the play list and then run the show by pressing a play or go button.
The app should self-manage, handling errors for missing images, retries for bad network connections, and should automatically update fresh images from the server and discard old ones, including flipbook images sets that have been fetched and stored locally using a first in/last out que.
For an example of the kind of display device that might be used, see this product: [url removed, login to view]
Video clips as a display event, while not required at this time, may be a future requirement. +1 to any programmer if can be done on first pass.