PHPに惚れました

今でも多分惚れてます。

外部プレイヤー続き#2

色々調べたメモ

外部プレイヤー処理の流れ(組曲「ニコニコ動画」[sm500873]の場合(現在Playキーは有効期限切れ))

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="external_nico_0" name="external_nico_0" width="604" height="470">
	<param name="movie" value="http://ext.nicovideo.jp/swf/thumbwatch.swf?ts=1232974801" />
	<param name="allowScriptAccess" value="always" />
	<param name="bgcolor" value="#000000" />
	<param name="quality" value="high" />
	<param name="flashvars" value="thumbWatch=1&playerTimestamp=1233595286&v=sm500873&thumbTitle=%E7%B5%84%E6%9B%B2%E3%80%8E%E3%83%8B%E3%82%B3%E3%83%8B%E3%82%B3%E5%8B%95%E7%94%BB%E3%80%8F&thumbDescription=%20%E3%83%8B%E3%82%B3%E3%83%8B%E3%82%B3%E3%83%A1%E3%83%89%E3%83%AC%E3%83%BC%E7%AC%AC5%E5%BC%BE%E3%80%81%E5%85%A8%E3%81%A6%E3%82%92%E6%87%B8%E3%81%91%E3%81%A6%E8%A3%BD%E4%BD%9C%E4%B8%AD%E3%80%82%20%20%20%E3%83%8B%E3%82%B3%E3%83%8B%E3%82%B3%E5%8B%95%E7%94%BB(%CE%B2%E3%83%BB%CE%B3)%E3%81%A7%E4%BA%BA%E6%B0%97%E3%81%AE%E3%81%82%E3%81%A3%E3%81%9F%E6%9B%B2%E3%81%AA%E3%81%A9%E3%82%92%E7%B9%8B%E3%81%84%E3%81%A7%E3%81%B2%E3%81%A8%E3%81%A4%E3%81%AE%E6%9B%B2%E3%81%AB%E3%81%97%E3%81%A6%E3%81%BF...&thumbImage=http%3A%2F%2Ftn-skr2.smilevideo.jp%2Fsmile%3Fi%3D500873&thumbWidth=604&thumbHeight=470&mylist_counter=103%2C342&movie_type=flv&wv_id=sm500873&thumbPlayKey=1233761334.0.oKzLnHLdPySP32LmeTYlYGhhKec.aHR0cDovL2RlbHRhY29sb3JzLndlYi5mYzIuY29tL25pY29tb3YuaHRtbD9zbTUwMDg3Mz82MDQ_NDcw&wv_title=%E7%B5%84%E6%9B%B2%E3%80%8E%E3%83%8B%E3%82%B3%E3%83%8B%E3%82%B3%E5%8B%95%E7%94%BB%E3%80%8F&has_owner_thread=1" />
</object>

注)上記HTMLは前回のJavaScriptをそのまま設置してHTMLタグをエスケープし、少し手を加えたもの。


[手順]

  1. 上記HTMLをJavaScriptで生成。外部プレイヤーを設置する。
  2. 再生ボタンを押したらプレイヤーにhttp://ext.nicovideo.jp/swf/player_version.xml?pv=undefinedXMLを読み込ませる。
  3. paramで設定したthumbPlayKeyを付加した特定のURLにアクセスして得た文字列(getflv)をプレイヤーに渡して各サーバーにアクセスし、動画などを取得。
  4. 取得した動画ファイルやコメントXMLファイルをプレイヤーで読み込む。
  5. 再生の準備が終わり次第動画が再生。

語弊はありそうだけど、こんな感じかな??

ただ、前回記したJavaScriptでそのまま生成されたthumbPlayKeyは不完全
HTTPのheaderでから拾ってきた正しいthumbPlayKeyの一部しか生成されていない。

ん〜残りのPlayキーはどこから湧いてきた文字列なんだろう。