Web Kitのサンプルコード、 NetscapeMoviePlugIn を動かしてみる。
ビルドとインストール
NetscapeMoviePlugInのプロジェクトをビルドして作成したNetscapeMoviePlugIn.pluginを
/Library/Internet Plug-ins にコピーする。
NetscapeMoviePlugIn.pluginをインストールすると、SafariでNetscapeMoviePlugIn.pluginが使用可能となる。
NetscapeMoviePlugIn.pluginがインストールされているか確認してみる。
Safariのメニュー Help -> Installed Plug-ins を選択する。
一覧にNetscape Movie Plug-Inが表示されている。
movie.htmlのソース
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd"> <html> <head> <title>Sample Netscape Plug-In</title> <script LANGUAGE="JavaScript"> function playMovie() { var plugin = document.embeds[0]; plugin.movie.play(); } function pauseMovie() { var plugin = document.embeds["moviePlugin"]; plugin.movie.pause(); } function toggleMovieMute() { var plugin = document.embeds["moviePlugin"]; plugin.movie.muted = !plugin.muted; } function playMovieDefaultFunction() { var plugin = document.embeds[0]; plugin.movie("play"); } function pauseMovieDefaultFunction() { var plugin = document.embeds["moviePlugin"]; plugin.movie("pause"); } </script> </head> <body> <center> <embed name="moviePlugin" width="200" height="240" src="sample.mov" type="video/x-netscapemovie"></embed> <BR> <form action="" method="post"> <input type=button value="Play" onClick="playMovie()"> <input type=button value="Pause" onClick="pauseMovie()"> <input type=checkbox onclick="toggleMovieMute()"> <span style="font-family:arial;font-size:12px;">Muted</span> <input type=button value="Play(Default)" onClick="playMovieDefaultFunction()"> <input type=button value="Pause(Default)" onClick="pauseMovieDefaultFunction()"> </form> </center> </body> </html>
各ボタン毎にプラグインの処理が実行されている。
NetscapeMoviePlugInプロジェクトのファイル
drwxrwxr-x 4 root admin 136 1 28 16:51 English.lproj -rw-rw-r-- 1 root admin 1645 1 11 2006 Info.plist -rw-rw-r-- 1 root admin 10805 3 19 2006 MovieObject.c -rw-rw-r-- 1 root admin 3037 3 19 2006 MovieObject.h drwxrwxr-x 5 root admin 170 4 17 16:33 NetscapeMoviePlugIn.xcodeproj -rw-rw-r-- 1 root admin 6279 3 19 2006 PluginObject.c -rw-rw-r-- 1 root admin 2542 3 19 2006 PluginObject.h drwxr-xr-x 3 kuru admin 102 4 17 16:32 build -rw-rw-r-- 1 root admin 18091 8 29 2006 main.c -rw-rw-r-- 1 root admin 2470 1 11 2006 movie.h -rw-rw-r-- 1 root admin 1318 1 11 2006 movie.html -rw-rw-r-- 1 root admin 72490 3 7 2007 sample.mov -rw-rw-r-- 1 root admin 410 1 11 2006 version.plist