Chromium是支持Video对象的,这个是HTML5的新特性,如今为了在JavaScript中能够调用到底层的一些特性,需要给其添加一个新的方法,即: 如何使JavaScript能够调用到Chromium底层的一些特性。
首先看一下Video Play方法的调用堆栈,
通过调用堆栈我们可以看到,Play方法最初是应该属于HTMLMediaElement,这个也是HTML5的一个元素,Video继承至它。
我们再来看看相关一些类的关系,
这样就更清晰了,通过调查可以得知,我们只有在HTMLMediaElement中定义相应的接口,然后一路调用下去,最后就可以调用到WebMediaPlayerImpl,这个类具体实现Player的相应功能,这个类中可以调用到PipeLine,这样我们就可以调用我们任意想调用的东西了,例如: demux,decoder,render等。要想把相应的接口Export到JavaScript层,在HTMLMediaElement.idl中定义是关键,其他的事情框架就给我做了。下面讲一个小例子。
----------------------------------------------------Sample--------------------------------------------