RedBlue

Open-Source Hypervideo Framework

Visit Website
August 20, 2018 Added YouTube Embed Support

Video hosting is expensive, so I wanted to allow cash-strapped indie filmmakers to use RedBlue in conjunction with the free video hosts they already use, like YouTube and Vimeo. While the YouTube Iframe API does not emit the timeupdate event I was relying on in the original HTML5 version, I was able to work around it using requestAnimationFrame.

Additionally, YouTube removed native annotations from their platform, seeing them as an underused legacy feature with high maintenance costs. The replacement, End Cards, are more limited in what they allow users to do. In the process the company ended up retroactively preventing the ability to host branching narratives on YouTube—as well as offer supplemental/corrective text to a video after uploading. This RedBlue feature provides a partial solution to that problem: the units of media behind hypervideos can be hosted on YouTube, but the interactive experience moves to your own website. Not be the worst idea from a branding perspective!

Comment

July 25, 2017 Added Firefox Support

Firefox did not fully support the MSE API that the RedBlue prototype relied on. So I needed to develop fallback functionality; otherwise I would be limiting my framework’s utility and potential user base. I theorized that I could dynamically swap out <video> sources rather than appending to a buffer. While I had started the relevant Git branch in 2015, I hit a wall and put the project on the back burner. In 2017 I tried again and landed on a working solution!

Comment

May 18, 2016 Launched Hugh’s Startup Vlog

Inspired by Gimlet’s “Startup” podcast and Casey Neistat, I embarked on a daily vlog series on YouTube and Facebook to document the ins and outs of starting a startup. I found that most business success stories were told after the success had already been achieved, which led to glossed-over details and mythologized half-truths. As a founder looking for inspiration and guidance, I wanted those nitty-gritty details that few seemed willing to share. So I endeavored to be as transparent as possible with my series, so others could learn from my unfiltered mistakes as well as my victories. I also wanted to keep myself accountable by working in public.

After releasing a few episodes and realizing that progress on the startup was too slow to have a substantive update every single day, but wanting to keep up content frequency, I broadened the scope of the show to my daily life in general. The name became “Hugh’s [Startup] Vlog” and then just “Hugh’s Vlog”, but I kept a separate playlist of startup-only episodes for those that might not care about what I do for fun.

Unfortunately I could not keep up with the output demands of a daily vlog, and have since fallen behind on the series, with many episodes shot but not edited. But I have received positive feedback on it from multiple people so I have every intention of resurrecting it.

3 Comments

  1. 2

    Do you think doing the vlog daily is worth it? Seems like that would take so much time that you couldn't focus much on your business. Would a weekly vlog video be something that could work better? Is the main goal a kind of marketing for your business?

    1. 2

      Thanks for your comment Noah. This is a question I’ve wrestled with a bit. The vlog did start out as content marketing, and it still is, but it’s also become this artistic outlet for me on a personal level. The prospect of making a movie every day became a reason to get out of bed in the morning. I agree that weekly would be easier to manage, but I also enjoy the challenge of daily and think that level of consistency is ultimately better for audience-building. Once I catch up on my backlog I’ll probably start off with weekly to get back into the swing of things, and then transition to daily if and when I nail down a reliable workflow.

      Waking up earlier could be a component of that; if I were up at 5 every day I could edit in the morning before jumping into startup stuff around 9 or 10. Another strategy might be to pare down the amount I’m shooting each day, or the overall production value (I currently spend a lot of time looking for free, non-generic background music). In fact when I first started out I would just do each episode in one shot on my phone or laptop camera—a process that quickly morphed into shooting my entire day as I tried to emulate successful YouTubers. Maybe a combined approach, where I’m giving bite-sized updates every day and doing a more in-depth, day-in-the-life shoot every week? There could be a happy medium somewhere.

      1. 1

        I definitely understand wanting to do the vlog for a creative outlet. I used to have a youtube channel when I was younger. Wasn't real big but got up to 4,000 subs which was decent for that time.

        One thing I learned is that every video needs to be bringing value to the audience in some way. In my opinion its pretty hard to start a daily vlog if there isn't a reason people want to know what your doing. So starting out with more practical advice or something like that seems to be a good way to start instead of showing the different details of your day that people may not care about.

        People will begin to care about those details once you are more popular.

July 7, 2014 Developed Prototype

Dropping out of college after only two semesters, I started my adult life as an aspiring actor/director. But after working on a handful of no-budget projects and realizing pretty quickly that it would be difficult to support myself that way, I pivoted to web development. I had taught myself HTML and CSS and had some experience working for SMBs via a part-time gig in high school. I landed a design/development internship at a nonprofit and leveraged that into more work.

By 2014 I had worked at or with a handful of organizations, from startups to established companies, and while the pay was unbelievable for someone without a degree, I wasn’t feeling fulfilled at work. So I thought about how I could combine my dual passions of filmmaking and programming. I came up with choose-your-own-story films—dynamic narratives that would prompt the viewer to choose between two options at predefined times, just like the red pill/blue pill choice Neo makes in “The Matrix”. Each choice would influence how the rest of the story unfolded.

This idea dovetailed nicely with OVML, my existing idea for a general-purpose metadata syntax for films. So I decided to add nonlinear playback instructions to the specification.

Using the developing MSE (Media Source Extensions) API for HTML5, I built a proof-of-concept that fetched OVML data via AJAX, then crawled it for media files that would be appended to a <video> source after the user clicked a choice.

Comment

November 21, 2013 First Commit to OVML Repository

The precursor to RedBlue was OVML (Open Video Markup Language; later renamed to Hypervideo Markup Language), a general-purpose XML format to codify metadata pertaining to audiovisual media.

I came up with OVML after noticing that video containers like MOV, AVI, and MKV all had competing ways of storing a very limited set of metadata, which would oftentimes be incomplete or incorrect due to bad encoding practices. This forced tools like ffmpeg to rely on heuristics to analyze video in many cases. I wanted a standardized way to associate a comprehensive set of technical data with a video file, as well as artistic/historical data about the film itself such as release date, running time, director, actors, etc. without relying on walled-garden or user-entered info from the likes of IMDb and Wikipedia.

The idea was that the filmmaker or post-production house could enter information using a to-be-developed GUI app, which would generate an OVML sidecar file that could then be read by compliant tools to facilitate better ingestion, encoding, remixing, and discovery of video content. The aim was to make it as granular as possible, so that individual scenes or even frames could be tagged with what appears in them: actors, props, locations, etc. This would open up the possibility of building a search engine for video. While copyright-heavy Hollywood might be resistant to it, I thought this would be a boon to a future wave of open-source indie filmmakers.

Comment

About

Arming filmmakers and media hackers with affordable, open tools for the development of interactive video content.