Sriram -
On Feb 24, 2009, at 1:28 AM, Sriram Neelakandan wrote:
Is there an NPAPI plugin extension available to say that the plugin
supports <video> tag
For example a set of methods / properties, which map directly to
<video> tag.
i.e play(), pause(), etc..map to a direct NPAPI method on the plugin
with the same JS name
I am not sure if this is what is called as proxy plugin for <video>
tag.
PLUGIN_PROXY_FOR_VIDEO
From the code in RenderPartObject.cpp
serviceType = "application/x-media-element-proxy-plugin";
it is clear that the plugin should support this new mime-type..
1. Please correct me if the above observation is incorrect
2. Is there any other requirements that the plugin needs to meet ?
3. Is there a sample NPAPI proxy plugin .. probably based on
gstreamer or mplayer .
4. Is there some documentation related to NPAPI extension for <video>
tag handling ?
Yes, the PLUGIN_PROXY_FOR_VIDEO switch is intended to allow a port
to use a plug-in to implement the <video>/<audio> back-end. It is not
currently plumbed through WebKit for NPAPI plug-ins, only for Mac
WebKit plug-ins.
There isn't a sample plug-in but the concept is fairly simple: an
object that implements MediaPlayerPrivateInterface ("media engine"
implementation) calls an interface exposed by a plug-in to set up and
control a media file, and the plug-in calls an interface on the
HTMLMediaElement to inform the implementation of media state changes.
It should be fairly easy to figure out by looking at the code
inside of PLUGIN_PROXY_FOR_VIDEO.
To implement it for NPAPI plug-ins, you will need to:
+ define the media control interface an NPAPI plug-in will
implement (see MediaPlayerProxy.h for the ObjC interface used by a
WebKit plug-in).
+ write an object that implements MediaPlayerPrivateInterface that
knows how to deal with the plug-in interface and notifications.
+ define a mechanism for an NPAPI plug-in to pass an object that
implements this interface back to the HTMLMediaElement (see
WebPluginContainerPrivate.h for the WebKit plug-in version), which
will pass it to your engine implementation.
eric
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev