TOPAREAQ&ATOOL

JWplayerでストリーミング動画配信をやってみよう

手元のMPG動画やMovieMakerで作ったWMV動画などをFLVに変換して、簡単にストリーミング配信する方法を書いてみたいと思います。今回はYoutubeのFLVファイルの使い方で説明します。必要なツールは便利なツールで紹介した、AREA61ビデオダウンローダーK-LITE CODECPACK、それとJW Player(こちらは広告が表示しない古いバージョンを使います)。
Loading...

K-LITE CODECPACKのダウンロード&インストール

K-LITE CODECPACKはベーシック、スタンダード、FULL、MEGAと異なるバージョンがありますが、ようは「再生できるコーデックの豊富さ」ですので、メディアプレイヤーでどんな形式の動画でも見れるようにする場合は、MEGAバージョンをお勧めします。(どのバージョンもフリーです)

こちらのページでインストールのしかたを見てください。

AREA61ビデオダウンローダーのダウンロード&インストール

AREA61ビデオダウンローダーはニコニコやYoutubeから動画をダウンロードするだけでなく、手元にある動画(WMVやAVIやMP4など)を変換することができます。動画変換ソフトとしてニコニコやYoutubeからFLV動画をダウンロードするだけのソフト、FLV動画を他の形式へ変換するだけのソフトがありますが、これ1本で両方ができるので勝手がよいという意味でお勧めです。ストリーミング配信のためこれを使って動画をFLV形式に変換します。

AREA61ビデオダウンローダーのダウンロード。

JW Playerのダウンロード

今回はこちらのバージョンをダウンロードします。zipで圧縮しています。解凍するとmovieフォルダが出来ます。

Youtubeから何か動画をダウンロードしてみる

今回は、動画をFLV形式へ変換するという作業が要ですので、ひとまずYoutubeから動画をダウンロードしてFLV形式でGETする方法も一緒にやってみましょう。(お手持ちのビデオで取った映像などを変換する場合は、下記のFLVへの変換作業のみでOK)

Youtubeへアクセスして何か動画を探してみてください。

ブラウザ上の動画が再生されてる画面で、AREA61ビデオダウンローダーを立ち上げてください。

(1)の部分の動画URLはブラウザに表示されているURLを、ブラウザからコピー&ペーストしてもいいんですが、右横のYoutube連動にチェックを入れておけば勝手にURLは切り替わりますので便利です。
(2)の出力フォルダのところはデスクトップにしておきましょう。
(3)の出力形式はダウンロードのみを選択、ちなみにここを他の形式(WMVやAVI携帯用の動画)に変換したいときはそれを選択しておけば、デスクトップに変換後のファイルが出来上がります。(横のFLV/MP4保存にチェックしてると一緒にFLVも作られます)

なお既に持ってる動画をFLVにしたいときは、その動画を出力フォルダ(2のところ)にドラッグ&ドロップするとすぐに変換開始します。(同様にWMV形式やipodや携帯用の動画にも変換もできますので、変換だけのツールとしても活用できますね)
ダウンロードしたい動画、出力先、出力ファイル名を確認したら(4)の赤いボタンをクリックしてください。これでデスクトップにFLVファイルがダウンロードされます。

FLVへのエンコード方法を変えてみる

ちなみにAREA61ビデオダウンローダーで、お持ちの動画をFLVにエンコードしたいだけの時に、FLV高画質を選ぶと元の動画と同じクオリティでエンコードされ、標準画質では画質を落としてエンコードしてくれますが、もっと細かく設定したい場合は
Program Files→Area61→Downloader→cores→Transcoding.iniの設定で変更できます。
たとえばサイズを320x240にして、動画ビットレートは512k、音声は96kのモノラル、ついでにサムネイルも動画ファイルと同じ320x240のjpgを書き出すという場合、
[Item11]
Title=FLVエンコード 標準画質320x240
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -s 320x240 -vcodec flv -b 512k -acodec libmp3lame -ab 96k -ar 44100 -ac 1 -f flv "<%OutputFile%>.flv""
Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%OutputFile%>.flv" -s 320x240 -f image2 -vframes 1 -ss 4 "<%OutputFile%>.jpg""
とすると、エンコード終了時にflvのファイル名と同じファイル名.jpgというサムネイルも作られますので、わざわざ動画スタート時のサムネールを作る必要もなく便利です。

JW Playerでストリーミングしてみる

では、ダウンロードしたFLVをストリーミングさせましょう。
デスクトップのFLVファイルは後でわかりやすいようにファイル名を変えて、movie.flvとしておきます。
さきほどのJW Playerを解凍したフォルダ(movieフォルダ)にFLVファイル(movie.flv)を入れます。movieフォルダにあるindex.html、swfobject.js、movie.js、movie.flv、player.flvの5つのファイルのうち変更するのはmovie.jsindex.htmlだけです。

まずmovie.jsをメモ帳で開いてみてください
var file='movie.flv';のところを確認してください。これはダウンロードしたFLVファイル(movie.flv)までのパスを記入します。(現在は同じフォルダに入ってるのでそのままmovie.flvでOK)

var id='movie';のところを確認してください。ここはHTML内で表示させるための動画のIDをつけます。確認のためindex.htmlを開いて以下の3行をみてください。(この3行が動画を表示させる部分です)

<script type='text/javascript' src='swfobject.js'></script>
<div id='movie'>Loading...</div>
<script type='text/javascript' src='movie.js'></script>

2行目の<div id='movie'>Loading...</div>
のIDがmovieという名前になっています。これはこの場所にmovieというIDをつけておき、movie.jsで指定したIDのFLVを張り込むというタグになります。(異なる動画を同じページに貼るときはIDごとに指定できるので便利ですね)

var pre='movie.jpg';のところを確認してください。これは動画がスタートする前の静止画を指定する部分です。上記のAREA61のFLVエンコードのサムネイルの作成で自動で書き出す設定にするか、適当にキャプチャしてjpgにしておきましょう。(静止画は無くても動作します)

var vol='70';の数字は再生されたときのボリュームです。適時変更できますがこのままでOKです。

以上設定が終わったら、movieフォルダごとサーバーへアップしてindex.htmlを見てみましょう。うまく再生されましたか?

番外編(曜日ごとに動画を差し替える)

動画の設定ファイルのmovie.jsはJavascriptですので、複数のmovieファイルの配信方法を設定できます。たとえば日替わり配信やランダム配信などもスクリプトの記載で簡単にできます。
右の動画は曜日ごとに変わります。(日曜特売とか火曜市とか、曜日別のセールCMとかに使えますね)
サンプルファイルの一式ダウンロード(zip)
ちなみに日本モーターボート協会の「一日一善」のCMですが、金曜日だけ見つけられなかったので金曜日は「博多ぶらぶら」になっています。。
Loading...

(c) n e t s u p p o r t .