Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Experimental Google TV channel for prelinger archives
JavaScript Ruby
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
public
views
.buildpath
.project
Gemfile
Gemfile.lock
README.md
config.ru

README.md

PRELINGER TV

This is an experiment at creating a Google TV channel based on data stored in Kasabi.

The code is based on an experiment originally carried out by Liam Green-Hughes who adapted one of the off-the-shelf Google TV templates to load data using a SPARQL query. For more background on that see Liam's blog post:

An HTML5 Leanback TV webapp that brings SPARQL to your living room

Starting from the same template, this application builds a similar channel but using the Prelinger Archives data stored in Kasabi, rather than from the Open University.

The code performs a single SPARQL query to extract the basic metadata about each of the films described in the dataset, grouping them into categories for each decade.

The actual media files are stored on the Internet Archive servers and are streamed directly to the browser from there.

The code could easily be adapted to use additional, similarly constructed datasets. The code to crawl the Prelinger Archives collection on on the Internet Archives can be found at:

http://github.com/ldodds/prelinger-archives

AUTHOR

Leigh Dodds (ld@kasabi.com)

INSTALLATION

The application is a very simple Sinatra application. It's dependent on the Kasabi.rb ruby gem.

You need to configure your Kasabi API key in the KASABI_API_KEY environment variable before it will run. You should then be able to just:

rackup

You should also subscribe to the Prelinger Archives SPARQL endpoint on Kasabi, to ensure your API key is authorised to use the API.

BROWSER COMPATIBILITY

This is currently known to run on:

  • Google Chrome
  • Chromium (need to install chromium-codecs-ffmpeg-extra package for video playback)
Something went wrong with that request. Please try again.