2014.01.09
ストリーミング動画を配信してみよう ~nginxとC++ RTMP Server(crtmpserver)の構築~
C++ RTMP Server(crtmpserver)のインストールと設定
「C++ RTMP Server(crtmpserver)」のインストールといっても、解凍したフォルダを配置するだけです。
mv crtmpserver-1.1_beta-i686-CentOS_6.2 /usr/local/lib/crtmpserver-1.1 chown -R root.root /usr/local/lib/crtmpserver-1.1
最後に、「C++ RTMP Server(crtmpserver)」のストリーミング配信のための必要最小限の設定を行います。
「flvplayback.lua」を変更していきます。
cd /usr/local/lib/crtmpserver-1.1 cp -p configs/flvplayback.lua configs/flvplayback.lua.org vi configs/flvplayback.lua
「flvplayback.lua」ファイルの変更箇所は次の通りです。
・変更前
validateHandshake=false, keyframeSeek=true, seekGranularity=1.5, --in seconds, between 0.1 and 600 clientSideBuffer=12, --in seconds, between 5 and 30 --generateMetaFiles=true, --this will generate seek/meta files on application startup --renameBadFiles=false, mediaFolder="./media", --[[authentication=
・変更後
validateHandshake=false, keyframeSeek=true, seekGranularity=1.5, --in seconds, between 0.1 and 600 clientSideBuffer=12, --in seconds, between 5 and 30 --generateMetaFiles=true, --this will generate seek/meta files on application startup --renameBadFiles=false, --mediaFolder="./media", mediaFolder="/usr/local/nginx/html/rtmp", --[[authentication=
※「–」は、コメントを意味します。
最後に、起動の確認を行います。
C++ RTMP Server(crtmpserver)の起動
「C++ RTMP Server(crtmpserver)」を起動してみます。
cd /usr/local/lib/crtmpserver-1.1 ./run_flvplayback.sh
デーモンプロセスで起動する場合には、次のコマンドとなります。
./run_flvplayback_daemon.sh
「run_flvplayback.sh」で起動すると次のようなメッセージが表示されます。
# ./run_flvplayback.sh /crtmpserver/src/crtmpserver.cpp:210 C++ RTMP Media Server (www.rtmpd.com) version 1.1_beta build 784 - Gladiator - (built for CentOS-6.2-i686 on 2013-01-20T13:27:40.000) /crtmpserver/src/crtmpserver.cpp:212 Initialize I/O handlers manager: epoll without timerfd_XXXX support /crtmpserver/src/crtmpserver.cpp:215 Configure modules /crtmpserver/src/crtmpserver.cpp:221 Plug in the default protocol factory /crtmpserver/src/crtmpserver.cpp:228 Configure factories /crtmpserver/src/crtmpserver.cpp:234 Configure acceptors /thelib/src/netio/epoll/iohandlermanager.cpp:120 Handlers count changed: 0->1 IOHT_ACCEPTOR /thelib/src/netio/epoll/iohandlermanager.cpp:120 Handlers count changed: 1->2 IOHT_ACCEPTOR /thelib/src/netio/epoll/iohandlermanager.cpp:120 Handlers count changed: 2->3 IOHT_ACCEPTOR /crtmpserver/src/crtmpserver.cpp:240 Configure instances /crtmpserver/src/crtmpserver.cpp:246 Start I/O handlers manager: epoll without timerfd_XXXX support /crtmpserver/src/crtmpserver.cpp:249 Configure applications /thelib/src/configuration/module.cpp:177 Application flvplayback instantiated /thelib/src/application/baseclientapplication.cpp:95 mediaFolder is obsolete. Please use mediaStorage /thelib/src/mediaformats/readers/streammetadataresolver.cpp:95 meta folder for storage __obsolete__mediaFolder not specified. seek/meta files will be created inside the media folder /crtmpserver/src/crtmpserver.cpp:255 Install the quit signal /crtmpserver/src/crtmpserver.cpp:266 +-----------------------------------------------------------------------------+ | Services| +---+---------------+-----+-------------------------+-------------------------+ | c | ip | port| protocol stack name | application name | +---+---------------+-----+-------------------------+-------------------------+ |tcp| 0.0.0.0| 1935| inboundRtmp| flvplayback| +---+---------------+-----+-------------------------+-------------------------+ |tcp| 0.0.0.0| 6666| inboundLiveFlv| flvplayback| +---+---------------+-----+-------------------------+-------------------------+ |tcp| 0.0.0.0| 9999| inboundTcpTs| flvplayback| +---+---------------+-----+-------------------------+-------------------------+ /crtmpserver/src/crtmpserver.cpp:267 GO! GO! GO! (3733)
次回は、「動画プレイヤーのインストールと動画の確認」について説明していきたいと思います。