Infusion Onward Video Processor Example
This example application accompanies our paper submitted for Onward '18.
The application demonstrates two major structural points -
- That the code performing the three adaptations is isolated from the main application, as well as mutually isolated (see the implementation files colourblind.js,
australian.js
and antarctic.js). These are combined using the program addition operator
(see paper section 5.3)
- That the application runs at framerate with small demands on everyday equipment, with communication between the separated processes (JavaScript and a WebGL shader) mediated by a state transfer idiom (see paper section 7.2)
Note that the adaptations provided in the "Australian" context are a subset of those provided in the "Antarctic" context. This is by design as described in the model for this sample, taken from Korz: Simple, Symmetric, Subjective, Context-Oriented Programming by Ungar, Ossher and Kimelman.
This sample runs well in a browser with full support for the WebGL API (current versions of Firefox and Chrome). Support for WebGL in Safari and Internet Explorer is not currently adequate.
Adapted stream:
Original stream: