Cinera: Video Indexing & Publishing

The timestamps of an indexed video, at their heart, are very similar to chapter points in the DVD / Blu-ray releases of feature films. They give viewers a way to easily navigate to set points in a video.

Cinera, my video indexing system, extends on this notion of ease of navigation by allowing additional information – e.g. references (externally linked, where possible), quotes, topic / medium categorisation – to be encoded in timestamps, which viewers may use to navigate directly to websites referenced in the video, or even to filter out categories in which they are not interested or don't have time to watch.

Navigation is further eased across multiple videos through Cinera's search functionality, originally written by Asaf Gartner.

In essence, we capitalise on the fact that we are viewing the videos on a general purpose device connected to the internet – a fact on which DVD / Blu-ray authors cannot rely – coupled with the notion that the kinds of videos currently enjoying indexing treatment are not necessarily intended to be consumed in their entirety from beginning to end, but rather treated as reference material to dip in and out of, to create a context appropriate viewing experience.

Rather than read about it, however, you may prefer to watch Neo Ar's video How to Watch RISCY BUSINESS - The Annotated Episode Guide showcasing the system, and even try it all out for yourself since that very same video is itself indexed! How to Watch RISCY BUSINESS -
                        The Annotated Episode Guide

Cinera is written in C99, runs on Linux servers and depends on libcurl and stb_image. Its source is open and available here, although note that it is currently unlicensed and not yet packaged up for easy deployment (although, if we're honest, those installation and build instructions aren't much longer than this parenthetical remark).

What we have:

  • for publishers
    • configuration file parsing, with per-setting permission-based inclusion (see more below)
    • multiple (and nested) sets of videos (dubbed "projects" in Cinera parlance)
    • templating, for static website generation
    • project themes
    • asset hashing, for cache-busting purposes
    • project and video art (incl. sprites)
    • VoD platform support
      • direct (e.g. a .webm file sitting on a server)
      • Vimeo
      • YouTube
    • resource efficiency (a single server may run many instances of Cinera with ease)
    • runs on
      • Linux
  • for indexers
    • user-friendly markup language, hmml
    • .hmml file monitoring, for on-save notice of warnings / errors while indexing
    • config file inclusion, to augment the main config (with, e.g. media, credentials)
  • for viewers
    • timestamps
    • categorisation
    • inline references and quotes
    • searching, project-wide and globally
    • mobile-friendly layout
    • desktop keyboard shortcuts
  • more…

In progress:

  • database v6 upgrade, to contain all metadata to help it flow better through the system
  • client–server architecture, for dynamic websites and other interactive purposes

Still to come:

  • new, scoped markup language, to support nested timestamps and other goodies
  • references collation: per-project bookshelf; global library
  • filterable search
  • preview clips
  • more use of project and video art
  • frame-by-frame annotations (i.e. in-frame metadata)
  • more VoD platforms
  • FreeBSD port
  • more…


Huge thanks to Asaf Gartner for the original player design and programming; Alex Baines for writing the HMML parser and hosting the quotes; Casey Muratori for his constant inspiration through Handmade Hero and being the first person to receive the "indexing treatment"; Sean T. Barrett for writing the original HMML → YouTube converter, the first program to deal with a markup language of my creation, and for doing OBBG, the first project to receive Cinera-style indexing (still to go live, I'm thinking once the search and player are full-featured enough for Sean to only need run the generator once and have the final version of everything!); Neo Ar for the video showcasing Cinera; Abner Coimbre for running the first instance of Cinera in production, handling the videos at; Dustin Specht for encouraging me to annotate (as we then knew it) in the first place; and everyone who supports me, both financially and morally, in this extended play session of The Annotation Game.


Video Indexing

£14.00£31.60 per hour (of work and video)

Ordered separately here

Publishing: Guide Management

£32 per month

  • Server administration (fully secured, including SSL / TLS certificate management)
  • Cinera installation, setup and ongoing update maintenance
  • Always up-to-date episode guide
  • (Sub)domain name of your choice (domain registered by yourself, with which I can advise)
  • Website style personalisation
Order Service at £32 / month


Pledging, now powered by SendOwl, is available again!

// NOTE(matt): Payment by card via Stripe incurs lower fees

// NOTE(matt): If you'd like to use a PayPal balance in a currency other than GBP, please contact me and I'll set it up for you

£1 / month £12 / year £2 / month £24 / year £4 / month £8 / month £16 / month £32 / month

Lost your pledge email? Have it resent

Powered by SendOwl

Most videos currently receiving the indexing treatment are completely free to view. There's no need to sign up to a ("free" or otherwise) service, subscribe to a paid one, or attain membership of an academic institution. Video indexing, however, is a professional service, similar to the work of indexers, proofreaders, copy editors, etc. in the world of book publishing. As such, my services tend to be paid for by my clients, possibly out of funds received from their viewers.

So why pledge, if it's a paid service?

  • Indexing is but half the battle. The other half is writing the software to publish it all! I came to software development quite late in life and, although I have completed some select commissions, I tend to consider myself not yet cost-effective enough to be employed doing it. (You could probably gauge this for yourself by watching a minute or two of my programming streams.) However, knowing the time and effort involved, you may like to pledge to help development along.
  • Perhaps you find indexing of videos extra helpful and feel like defying market forces to essentially subscribe to something that may otherwise be free and, in the process, strive to bring about a world in which the way you watch these videos becomes the standard.

Until December 2017 we used a popular patronage platform to handle pledges. This worked well for us until a proposed change to their fee structure made it prohibitively expensive for some folks to continue to pledge, and in the process lost the trust of creators and supporters alike.

Switching to SendOwl negates those proposed fees – it's a paid service, so I pay a flat monthly fee for it – and also, if I don't offer any "rewards" for pledging, as I'm not, there is no need for me to collect VAT (more on this here). So this seems like it should provide what we'd like from a pledge platform in the most cost effective way. // NOTE(matt): A side effect of it being a paid service with a flat monthly fee is that, the more pledges I receive, the more cost effective it gets.

Thank you in advance if you enjoy what I do and are able to pledge!