This document is http://videdot.com/v2

At: /v2

v2 - Rewriting videdot

The plan of action for a shiny, new system, built on the lessons learnt during my final year project.

Overview

Many of the old design decisions hold, but a new explanation is still needed, in particular to examine what existing projects we can glue together to provide some of the functionality we require.

This is all still being built in C++ on top of BeOS, because as old as it is, it is still sleek, fast and very good at handling just this kind of problem. Although BeOS is closed source, it is available as a free download. In the future, will also work on any other BeOS compatible system. This will include the free and open-source offerings being co-ordinated through BeUnited, most notably OpenBeOS. It ought to work with YellowTab's Zeta too. While these new systems will offer new and funky features, they typically won't affect the core code of . They will, however, allow extra functionality through the judicious use of plugins.

See also - more detailed status information.

Scope

Currently tackling:

Listings delivery
Switched to the XML TV format, delivered over simple HTTP, since feeds are available (or calculable) for a number of territories.
This should be seen as a choice of format not of listings source. I still believe that screen-scraping is far less than ideal and although the XMLTV grabbers do a pretty good job, they are quite fragile. My hope is still to ultimately use a semantically rich data source for any serious applications.
Listings display
Reasonably comprehensive listings manager, choosing the channels you can receive.
Choosing what to record
Either directly one show at a time in the listings, or by building rules of what you like (e.g. anything with the word 'buffy' in the title, anything with an actor called 'allison mack' listed). Includes prioritisation of which to record in a clash, but with a richer rule-set than last time, allowing for demoting the priority of repeats or based on when and where they are shown (e.g. post watershed) &c.
Basic recording
Using a similar harness to before, controlling a separate application with BeOS system scripting.
The previous scripts are being rewritten to provide an example of a simple recording interface which responds to a suite of messages, which can easily be replaced by another application as desired.
Simple serving
A Web interface to the whole kaboodle, including (semantically rich) fetching of the recordings and their metadata in a structured form.
This will be supplied as an example plug-in, demonstrating that you can offer rich functionality through the plug-in interface.

Next

In the immediate future - who knows - will be pulling tasks out of the list below. (Will get prioritised here eventually).

Future Goals

To be done, at some point:

Complex recording / Live pause
A la TiVO. An input filter for KTV is one possible approach, experiments will confirm viability. This would couple recording and viewing more closely, which may make for a better interface
Sharing plug-ins
To allow a installation to service arbitrary file sharing networks, offering as rich a query in the metadata as the underlying sharing architecture allows.
The reverse: finding results in arbitrary file sharing networks. Other installations will be particularly useful, since they will support rich queries to find particular shows, but there's no reason we should care what the computer on the other end of the line is running, as long as we can understand each other.
Long running queries, to gather - for example - whole series of shows. May need smart handling of episode lists, or some layer of rationalisation of meta-data from different sources.
Home entertainment
DVD and CD playing
Rip DVDs and CDs to store locally, and allow fast access to any track without fiddling around with discs

No comments yet. Add one.