VODアプリ

ライブ(live)ではなく、ビデオオンデマンド(VOD)方式の Red5 ストリーミングビデオのサンプルです。Red5内部にVODが組み込まれている為、サーバアプリのコード書きは不要です。フォルダの構成のみで動作します。また、クライアントアプリは、記事 2009.10.18で作成したSuonoDolce-20091018.lzhを流用します。

サーバ側

フォルダ構成

アプリ名は 「newbieVod」とします。フォルダ内に「streams」フォルダを作成し、flv を格納します。

格納した動画は、YouTube からパチったものです。

  • Max Factor -rush dyna mist waterproof mascara.flv
  • Max Factor -true veil dual effect faundation.flv

他にMax Factor 肌から、しあわせ美人ムービー ウェブ限定版が公開されていたので、パチってみました。

  • Max Factor (web limited edition).flv
red5-web.xml

記事 2009.10.20で作成したSample-20091020.lzhを流用します。
web.handler を ApplicationAdapter に修正します。これは、Red5 に組み込まれたデフォルトのアプリです。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" 
	  "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
  <bean id="web.context" class="org.red5.server.Context" autowire="byType"/>
  <bean id="web.scope" class="org.red5.server.WebScope"	init-method="register">
    <property name="server" ref="red5.server"/>
    <property name="parent" ref="global.scope"/>
    <property name="context" ref="web.context"/>
    <property name="handler" ref="web.handler"/>
    <property name="contextPath" value="/newbieVod"/>
    <property name="virtualHosts" value="localhost, 127.0.0.1"/>
  </bean>
  <bean id="web.handler" 
	class="org.red5.server.adapter.ApplicationAdapter" singleton="true"/>
</beans>
web.xml、lib/xxxxx.jar

web.xmlは不要。今回はいっそのこと使わないことにしました。記事 2009.10.20をそのまま使っても構いません(ってか、圧縮したときは含まれていたようです。削除しても構いません)。jarファイルも不要です。本来は自作のサーバアプリを置くのですが、VOD では Red5 の組み込みアプリを利用するので、lib/ フォルダは空のままです。

クライアント側

SuonoDolce-20091018.lzhを流用します。

SuonoDolce.mxml

サーバ名とファイル名を変更し、「live="true"」オプションを削除します。

<?xml version="1.0" encoding="utf-8"?>

<s:WindowedApplication
   xmlns:fx="http://ns.adobe.com/mxml/2009"
   xmlns:s="library://ns.adobe.com/flex/spark"
   xmlns:mx="library://ns.adobe.com/flex/halo">

  <s:VideoPlayer autoPlay="true">
    <s:StreamingVideoSource
       serverURI="rtmp://localhost/newbieVod">
      <s:StreamItem streamName="Max Factor -true veil dual effect faundation.flv"/>
    </s:StreamingVideoSource>
  </s:VideoPlayer>

</s:WindowedApplication>

コンパイルして出来た SuonoDolce.swf は、AIRアプリケーションなので、 adl.exe で SuonoDolce.xml を指定して起動となります。

  $ adl.exe SuonoDolce.xml

以上です。参考はVideo on-demand (Red5 Wiki)です。そこには、『何もしなくても動くよ、FMSと同様、Red5 に組み込まれてるから』とだけ書かれてるのですが、僕にはそれなりに難しかった訳で・・・(続きはlive vs. VODに書いた通りです)。