video codecs, orthogonality, and distributed extensibility

There's quite a bit of hubub lately about the question of whether there is chosen video codec for the <video> tag in HTML5, and the idea that if there isn't a single chosen one, how this variability might affect the user experience, partition the web, etc.

However, let's imagine a situation where there *was* a preferred codec and everyone chose to implement it: The W codec! Wonderful. We put "Every HTML agent must implement the W codec." and then we'd all be happy. But of course, the world of video codecs is evolving, and it would be possible, even likely, that a few years would pass and someone would come up with the X codec! And X is so much better than W! Some - but not all - vendors really felt that X was so much better they would switch. Oh, and heavens, let's also suppose there was a Y codec, and Y was ALSO much better than W, but there was a disagreement about whether X or Y were better.

How would we be in a different situation? Would we have to have a standards meeting and debate endlessly the (unresolvable) question about whether X or Y was better?

There would be there  codecs, W, X, Y and vendors would disagree - some would want to stick with W, others would prefer X and others Y.

But what will users who want to make video content available do? How can they start to deploy X-encoded or Y-encoded content when half of the world only implements W?


What are the general mechanisms for evolving the preferred choice for image, video, audio formats that *aren't* part of W3C specs, so that these can evolve independently? Are the mechanisms the same or different for the independent evolution of URI schemes, web protocols named by those schemes, JavaScript, Device APIs,  and so on.  Is there some general architectural principle of extensibility - of designing languages to allow extensibility - that could also give guidance in the video codec case? How have independent evolutions of external technology been managed? Is there a design pattern of fallback technology? A way of deploying alternative content in multiple formats that doesn't "split the web" into different camps of "best viewed by"?

Perhaps if there is a general answer that would apply in the specific case of <video> it would help in at least understanding the current situation.

Larry
--
http://larry.masinter.net

Received on Tuesday, 14 July 2009 15:57:30 UTC