[ダウンロード(.tar.gz)] [ダウンロード(.zip)]

[旧バージョンダウンロード(.tar.gz)] [旧バージョンダウンロード(.zip)]



playvideo plugin

playvideo.inc.pl
Copyright(c) 2012 Nanami.
for PyukiWiki(http://pyukiwiki.sourceforge.jp/)

Usage

&playvideo(filename [, option youtube video ID]...);
#playvideo(filename [, option youtube video ID]...)

拡張子はいれないでください!
Windows Media Video 及び、変換してあれば、HTML5ビデオ、または、Flashビデオが再生できます。

最低でも、WMV形式があれば、Windows Media Playerをサポートしている ブラウザー(一部のみ)、最低でもMP4形式にエンコードしておけば 多くのブラウザーをサポートできます。

変更する場所・・・

* plugin/playvideo.inc.pl を参考にして

info/setup.cgi を

$::playvideo_plugin_usedownload=0; 		# ダウンロード機能を使わない場合
$::playvideo_plugin_ziptmp="/tmp"; 		# テンポラリディスクスペースに
										# 別HDDが割り当てられていると
										# 速くなります。
$::playvideo_plugin_videopath="video";	# ビデオの配置してある./ からのパス
										# または絶対パス
$::playvideo_plugin_playsite="http://$ENV{HTTP_HOST}/v.cgi"
										# デフォルトプレイサイト
$::playvideo_plugin_videourl="http://$ENV{HTTP_HOST}/$videopath"
										# 実際に配信したいビデオのホスト名
										# 〜パス
$::playvideo_plugin_videourl{flv}="http://...";
$::playvideo_plugin_videourl{mp4}="http://...";
$::playvideo_plugin_videourl{ogv}="http://...";
$::playvideo_plugin_videourl{webm}="http://...";
										# 各拡張子を、PyukiWikiを設置してある
										# サーバー以外に置く場合に指定する。
										# (PyukiWiki 0.2.0-alpha15以降対応)
										# また、設置するサーバーは、HEAD
										# リクエストでファイルの存在を確認
										# できる必要がある。

$::playvideo_plugin_downloadfilename_inwmv=0
										# wmvのタイトルをzipに埋め込む
$::playvideo_plugin_downloadfilename_inwmv_withauthor=0
										# wmvの作者をzipに埋め込む

$::playvideo_plugin_usedownload=1		# 使わない時は0にする。
$::playvideo_plugin_plain_download=0	# 生のwmvをダウンロードできるようにする
$::playvideo_plugin_zipflags="-0";		# zipのオプション
$::playvideo_plugin_ziptmp="/tmp"		# zipファイルのテンポラリの位置
$::playvideo_plugin_videopath="video"
$::playvideo_plugin_playsite="http://$ENV{HTTP_HOST}/v.cgi"
$::playvideo_plugin_videourl="http://$ENV{HTTP_HOST}/$::playvideo_plugin_videopath"
# wmv または、MP4以外の再生サイトを設定する。
# 注:wmvまたはMP4は必ずマスタサイトに設置して下さい。
$::playvideo_plugin_videourl{flv}="http://...";
$::playvideo_plugin_videourl{mp4}="http://...";
$::playvideo_plugin_videourl{ogv}="http://...";
$::playvideo_plugin_videourl{webm}="http://...";

$::playvideo_plugin_downloadfilename_inwmv=0	# wmvのタイトルをzipに埋め込む
$::playvideo_plugin_downloadfilename_inwmv_withauthor=0
												# wmvの作者をzipに埋め込む
$playvideo::usefakeyoutubeurl=0	# Youtubeの偽物(ニコニコ動画)を使用する

に書き込んで下さい。

サンプルイメージ・・・

&playvideo(2pctest);
[Windows Media Player] [ダウンロード] (15.46 s) 
TOTAL: 6 TODAY: 0 YESTERDAY:1 

&playvideo(hisui3,1bQrBC-lpao,sm???????);
[Windows Media Player] [ブラウザーで再生] [Youtube] [ニコニコ動画] [ダウンロード] (06:46) 
TOTAL: 18 TODAY: 2 YESTERDAY:2
(注:上記のIDは、http://www.youtube.com/watch?v=1bQrBC-lpao のものです)
(注:ニコニコ動画のものはダミーです)

まぁ、ぶっちゃけいえば、時間取得をして、wvxを自動的に生成するか HTML5を生成してプログレッシブ再生するためのものです。

主な使い方

&playvideo(name, [options...]);
#playvideo(name, [options...])

 name : ビデオファイル名
   拡張子を指定しないと、リンクとして新しいウィンドウで開きます。
   拡張子を指定すると(wmv、または html)その画面で開きます。
  インナープレイヤーで、拡張子にYouTube?かニコニコ動画のIDを指定すると   そのサイトの動画を表示します。

 オプション :
   image=filename.jpg または gif または png
     動画のサムネイル画像(一部のみ指定可能)添付でもURLでも可
   inline, inline=yes
     拡張子を指定しなくても、その画面にプレイヤーを開く
   autoplay, autoplay=yes, autostart, autostart=yes
     その画面にプレイヤーを開いた時に、自動再生をする
   loop, loop=yes
     繰り返し再生をする
    (新しいウィンドウのWMV/HTML5か、インナーウィンドウのHTML5のみ)
   notime, notime=yes
     時間を表示しない(プレイヤーでは時間が表示されます)
   nodownload, nodownload=yes
     ダウンロードリンクを設置しない
   size=(http://www.pyukiwiki.info/spacer.gif)%
     インナープレイヤーのサイズを指定する。
   width=xxx height=xxx or 640x480
     インナープレイヤーのサイズを指定する。
   youtube=ID
     YouTubeのIDを指定する。
   niconico=ID
     ニコニコ動画のIDを指定する。

なお、Windows Media エンコーダーにおいて、以下のものを設定すれば 自動的に反映されます。

題名: 作成者: 著作権:

MP4エンコード時に、タイトルと作成者が設定できます。

Windows Media エンコーダー

Windows Media エンコーダーは以下からダウンロードできます。
(Windows Vista までのサポート、4スレッド同時までの動作ですが、
Windows 7 でも動作します)

32bit版
http://www.microsoft.com/downloads/ja-jp/resultsForCategory.aspx?displaylang=ja&categoryid=4
64bit版
http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=cc41218d-7e37-4546-bf0b-1276959ee3ef

Microsoft Expression Encoderシリーズ

また、新しいバージョンとして、Microsoft Expression Encoder シリーズがサポートされています。

http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=75402BE0-C603-4998-A79C-BECDD197AA79

主に、Windows Media エンコーダーで固定サイズであったのが、自由なサイズで 作成できるようになっていたり、より多くのスレッドで高速にエンコードをすることが できます。

(注:Windows XP以前のWindows Media 9プレイヤー以前では、VC-1 シンプル以外  再生できません)

また、HTML5ビデオ、及び、フラッシュビデオは Windows Media形式 ファイルがないと再生できませんが、変換することにより 再生することができます。 HTML5ビデオ、及び、フラッシュビデオ(FLV)の変換は、以下のソフトを利用すると 良いでしょう。

※ HTML5ビデオファイル形式は3種類ありますが、最低限、現在 噂となっている、IE10のMetroスタイル版に最低限対応するために、 MPEG4-AVC/H.264だけ対応しておけば良いと思います。

(同じ動画複数本をサーバーに設置するにも、負担がかかると思います)

ただし、IE9 では、下記のbug?の項目にあるように、あえて動作しないように してありますが、スクリプトをいじれば動作するようになります。

XMedia Recode (日本語対応)

http://www.xmedia-recode.de/

※ 注意点:フレームレートをそのままである「オリジナルを保持」を選択すると、
  非常に巨大なファイルが出来る事があります。
  適時、29.97もしくは 30 あたりを選択してみて下さい。

現在、FLVだけではなく、HTML5ビデオに必要な、 MPEG4-AVC/H.264、OGV、WebMにも変換できます。

※ 注:MPEG4等の作成方法は、プロフィールからカスタムを選択して、 形式、MP4、コーディック、MPEG4 AVC / H.264 その他、OGVは、カスタムのまま、OGV、及び、WebMも同様に、WebM で 変換できます。

また、添付してある、flowplayerにおいて、MPEG4-AVC/H.264に対応していますので FLVに変換しなくても、そのまま閲覧することができますが、flowplayerでの再生は 多少遅延が生じるため、容量に余裕があれば、FLVも変換しておくとよいでしょう。

ffmpeg

http://ja.wikipedia.org/wiki/FFmpeg

色々なOSに移植されているビデオコンバータです。

無難な設定として、以下の物が利用できます。(入力元:wmv)

ビットレートには、500k や 1.5M 5M 等を指定してみて下さい。

.flv

ffmpeg -y -i "入力ファイル名" -acodec libfaac -ar 44100 -ab 128k -vcodec libx264 -level 41 -b ビットレート -bufsize 20000k -maxrate 25000k -g 250 -r 29.97 -coder 1 -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -me_method umh -subq 7 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -rc_eq 'blurCplx^(1-qComp)' -bf 16 -b_strategy 1 -bidir_refine 1 -refs 6 -deblockalpha 0 -deblockbeta 0 -threads 2 "出力ファイル名.flv"

.mp4

ffmpeg -y -i "入力ファイル名" -acodec libfaac -ar 44100 -ab 128k -vcodec libx264 -level 41 -b ビットレート -bufsize 20000k -maxrate 25000k -g 250 -r 29.97 -coder 1 -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -me_method umh -subq 7 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -rc_eq 'blurCplx^(1-qComp)' -bf 16 -b_strategy 1 -bidir_refine 1 -refs 6 -deblockalpha 0 -deblockbeta 0 -threads 2 "出力ファイル名.mp4"

.webm

ffmpeg -y -i "入力ファイル名" -f webm -vcodec libvpx -acodec libvorbis -ab 128k -r 29.97 -aq 90 -b ビットレート -threads 2 "出力ファイル名.webm"

.ogv

ffmpeg -y -i "入力ファイル名" -acodec libvorbis -ab 128k -r 29.97 -aq 90 -b ビットレート -threads 2 "出力ファイル名.ogv"

iWisoft Free Video Converter (英語のみ)

http://www.easy-video-converter.com/

以前、紹介していましたが、現在お勧めできません。

注意点:

アップデート時、及び、フラッシュビデオを使用するには、 一度 deletecacheプラグインでplayvideoを全て削除する必要があります。

修正履歴

  • 2012/02/18 change:
    WMVがなくてもMP4があれば一応動くようにした。その為、アップロード時に MP4::Infoが必要になります。(なくても動きます)
    IEでのポップアップを開くのが遅いのを修正した。
  • 2012/02/14 change:
    別ウィンドウを開かなくても出るモードを設置した。(β版)
  • 2012/02/13 change
    JavaScriptポップアップでウィンドウサイズを変更するようにした。
    video.jsを2.0.2から3.0.7にバージョンアップした。
  • 2011/10/07 change:
    複数のサイトに動画が分散していても対応できるようにした。
    ただし、wmvだけはPyukiWikiと同じサイトに設置しなければいけませんが、mp4やflvも別サイトに設置することができるようになった。
    このバージョンにするには、deletecache をする必要があり、かつ、FLV、MP4ファイルを消去した場合、もう一度 deletecacheをする必要があります。
    無圧縮zip以外にも、生のWMVファイルをダウンロードできるようにした。(デフォルトは無圧縮zip)
  • 2011/10/05 change
    HEADリクエストを用いて、WMV以外の拡張子の動画をPyukiWikiが設置してあるサーバー以外に設定できるようにした。また、IE 9 において、video.jsを無効化した。
  • 2011/10/02 change:
    HTML5プレイヤーに対応、その為、HTML5ブラウザーでなくFlashで再生する場合に、別途MP4ファイルが必要になる。
    その時の変換フォーマットは、FlowPlayer?が認識するようにMPEG4 AVC/H.264形式で変換しなければならない。
    旧来のFlashでの再生もサポートしていますが、IE10のデスクトップ版以外でサポートされなくなるため、互換性の為に準備だけはしてあります。
    IE9の不具合で、IE9においては、HTML5プレイヤーは使用できないようになっています。
  • 2011/09/11 change:
    デフォルトのスキンを読み込めるようにした。
    FireFox?でキー操作により動画のリロードするのを阻止した。
    設定してある漢字コードで出力できるようにした。
  • 2011/06/12 change:
    flv動画にも対応した。ただし、wmvも必要です。
  • 2011/05/26 change:
    wmvにタグが付けられている場合、zipファイルのダウンロードファイル名をその名前に指定できるようにした。
  • 2011/05/26 change:
    info/setup.cgiに対応した
  • 2011/03/14 change:
    Content-disposition: attachment; filename="$file.wvx"を出力すると問題がある可能性があるため、出力を抑制した。
  • 2011/03/01 change:
    拡張子をwvxに変更した。
    Content-Type: video/x-ms-wvx を出力した。
    Content-disposition: attachment; filename="$file.wvx" を出力した。
  • 2010/12/10 change:
    ニコニコ動画に対応した
  • 2010/11/13 change:
    無圧縮zipでダウンロードできるようにした。
    大量の動画があるときキャッシュから取得するようにした。ただし、有効期限は1時間です。
  • 2010/10/27 change:
    MSIE とOpera以外はWindwos Mediaプレイヤー再生時に_blank(実質別タブ)になるようにした。Safariでは本当に別窓になります。
  • 2010/10/24 change:
    use sub make_link_target
  • 2006/??/?? First Alpha Using...(not release)

Bug ?

このバージョンにアップデートする場合、必ず、 deletecacheで、playvideo 拡張子を全て一度削除して下さい。

iPad、iPhone、Androidについて

HTML5ビデオの、Android、iPad、iPhoneでは動作確認できていませんが、以前のバージョンより動作しやすいようになっています。
しかし、未サポート状態になっています。

対応PyukiWiki、カウンターについて

カウンターがV2でないとうまく昨日のが取得できないかもしれない。汗
多分ですが、PyukiWiki Classic では動作しません。

アクセス制御について

また、あえてやってないのですが、 v.cgi の外部からのアクセスの制限は行っていません。 そのため、他の人のyoutube IDやニコニコ動画のIDの ビデオが再生される可能性があります。

謝辞

なお、このプラグイン作成において、 Image::ExifTool? ver 8.50 及び、flowplayer 3.2.7、video.js 3.0.7を 使用しています。

その為、ライセンスは、LGPLとなります。


(c) 2012 nanami.

このサーバーは、CloudCore VPS 新プランのFreeBSDで、virtioで動作しています。

Sitemap