|
The Interactive Video
Kiosk is based on a computer that runs a software program called the dcViewer.
The software runs on Microsoft XP and plays video clips, digital music and
displays digital images. It is
written in C and C++.
Video clips can be grouped in a play
list. The software automatically advances through the play
list.
Pictures can be grouped in a slide show
with an audio background. The software automatically advances to the
next slide after a particular time interval.
A scripting language (called the Kiosk
Scripting Language or KSL) was developed to design content layout. It is
similar in concept to the way HTML is used to design Web pages. KSL
is a parameter-value language.
All recognized statements have the
form parameter = value where the parameter is one of
several recognized keywords. Statements are provided to:
- Describe screen backgrounds
- Locate hot spots on the screen that respond
to user input
- Describe a response for each hot spot
- Determine the appearance of the hot spots
- Position video thumbnails on the screen
- Define play lists and slide shows
We use the term 'metadata' to describe
the files written in KSL. These files can be written with a text
editor or they can be generated by a software tool into Microsoft Excel
“csv” files.
We have networking software that
supports kiosk networks. Client software runs on the kiosk and uses
the Internet periodically to connect to our server software. Each
time it connects it checks for updates and downloads any new media or
metadata files. It then uploads log files to the server. The
server generates an alarm if the kiosk fails to check in.
Our software consists of the following
seven programs:
- dcViewer - a program that provides the kiosk's
graphical user interface. It is a multi-threaded program that
uses Internet protocols to communicate with the Monitor and the
kioskClient.
- Monitor - a program that runs on the kiosk
computer. The kiosk is started by running the Monitor which
launches dcViewer and kioskClient and receives messages from them
using internet protocols. The Monitor expects "heartbeat"
messages and will restart programs if they fail to send heartbeats.
- kioskClient - a program that runs on the kiosk computer
and is launched by the Monitor. The program interacts with
networkServer using custom communications software. All Internet
communications use 128-bit encryption.
- networkServer - a program that runs on a server and
communicates with kioskClient. It collects log files and
downloads updated media files to the kiosk.
- ManifestGenerator - a program that is used to publish a
kiosk. It starts from the Initial.layout file which is required
for all kiosks, and follows all links to other KSL files. It
then lists all referenced files including media and produces a file
called the 'Manifest'.
- ManifestChecker - a program that runs on the kiosk.
It goes through the Manifest and checks to see if all the files
referenced are actually on the hard drive.
- mdTranslator - a program used to create metadata
files. It reads information from Excel spreadsheets and writes
metadata files.
|