I had the distinct pleasure of attending Lawrence Lessig’s talk at Harvard Law School on behalf of the Open Video Alliance. It was a terrific event, simulcast worldwide to dozens of screening locations using entirely open technologies; in particular, HTML5 and the Ogg Theora video codec.
Interesting side note that the session was funded in part by iCommons, the open standards/knowledge/software advocate; while I work at iCommons, Harvard University’s academic computing team. I kept hearing “iCommons” mentioned, and it took a moment to recognize that it was another iCommons. But I digress….
Lessig’s talk was great. The parts about open software, open standards, and the architecture (both legal and technical) of the read/write culture mirror closely the points in his books, and are eye-opening. If you’ve not read Remix: Making Art and Commerce Thrive in the Hybrid Economy, you ought to.
But what I was really wondering about most during this talk was the open video concept and mention of the “Flash problem”. Seems the Ogg Theora codec and HTML5 are seen as potential resolutions of a huge problem — the problem of proprietary video codecs and players. But as someone who builds, buys, deploys, and manages streaming video platforms and content, I couldn’t quite come to terms with all that I’d have to give up if I replaced the Flash Player in my solutions with HTML5 and Ogg. Flash’s universality has been a tremendous boon to online video. Those of us who remember the format wars — Real vs Windows Media vs Quicktime, platform-specific plugins, single-platform codecs, browser incompatibilities — Flash is a breath of fresh air compared to that. Being able to support a single set of APIs and codecs for all my users has been huge. And, using a mature player such as the JW FLV Player, being able to do stuff like:
- support for rtmp or http streaming
- callback event-based client-side scripting
- playlist support (RSS, ATOM, XSPF)
- bandwidth switching/adaptive streaming
- plugins for screengrabs or stats collection
- control over buffering
I can create an outstanding user experience using these tools, and do it for more than the degenerate case of simply putting a video in the page. All sorts of interactive behavior can be easily layered into my video apps, and with no browser dependencies to worry about.
Contrast that with my first experience showing HTML5 video to a non-techie, my wife. At the end of Lessig talk, the Open Video Alliance announced the winners of the Open Video in 60 Seconds contest, which gave contributors 60 seconds to explain open video using video. One of the entries, (not the winner, although IMHO it should have been) was by Rafaella, a teacher from Italy who did an outstanding job showing that all creativity is but a link in a long chain of the creative contributions of others. I came home eager to show my wife, who I thought would really appreciate it.
At the conference, it was played in Quicktime with English subtitles. At home, I quickly found it on the Web, in the HTML5 player….with no subtitles. Huh? You gotta be kidding me! Helpfully, a download link is provided to the .srt file containing the subtitles. That’s helpful. After all, of course I’d want to read this in an open texteditor alongside my video:
00:00:00,883 –> 00:00:02,485
Nice to meet you.
00:00:02,585 –> 00:00:04,982
I’m a teacher.
I make animations with kids.
Thankfully, a link was also provided to the original source site for the video, which offered a subtitled version, in…..you guessed it…Flash.
So….the Flash-based video world is seen as proprietary, which it is. But as an applications guy, what makes a platform proprietary to me? Vendor lock-in. Platform lock-in. Client-server dependencies. I don’t really see this as a huge problem in Flash video. I can deliver videos in Sorenson, On2, or MPEG4 codecs. I can use players by numerous vendors, or roll my own for free with the Flex SDK. I can serve video from any server, from FMS 3.5 to Apache to Wowza. I can switch from rtmp to http, or from Akamai to a free server under my desk. Or I can dump Flash and play the same MP4 content in Quicktime, RealPlayer, or Silverlight. I’m not getting that proprietary locked-in feeling, really.
But as a real working technologist solving problems on the ground every day, I don’t entirely understand the “Flash problem”. I don’t want to employ closed technologies that narrow my options and lock me in, but I’m not seeing Flash as being that way very much when it comes to video. But I’m eager to be educated.