今日は映像系のお仕事中。
Webで公開するための作業。
諸事情により編集した映像をDVテープに書き戻したので、改めてそれを取り込んでflvにして公開する。
予算0で。
DVからキャプチャしてエンコードしてサーバに載せればおわり・・・かと思ったのにそうは問屋が卸さず、地味に難航。
1.DVからのキャプチャ
FinalCutで一発。
ちょっと探してみたらキャプチャするだけのFreesoftがいくつかあり。
iRecordでやっても簡単だが、テープが止まったところでキャプチャを止めてくれずに手動で止めるまで画面固まったままタイムコードだけ打っちゃうのが難点。
いろいろ試してみたところ、シンプルにキャプチャするならArea61 DVビデオキャプチャが便利。
2.flvにエンコード
これが難航。
1でキャプチャしたファイルをffmpegXが食えない。
なんでもない生のDVなのに。
QuickTimeでH.264にしたりMpeg4にしてみたけど食えない。
ffmpeg、イケてない。
ちなみにこのffmpegX、フリーのエンジン(ffmpeg)のガワを作っただけなのにシェアウエアなのね。こういうビジネスもあるのか。
紆余曲折あり、けっきょくFlash8についてるFlash8 Video Encoderでエンコードすることに。
と思ったらFlash8がUniversalBinaryではないからか、死ぬほどエンコードが遅い。
30分の映像を標準品質(400Kbps)でエンコードするのにMacBookで17時間とか言ってる。(Core2Duo 2.33G/2G ram)
WindowsにのりかえてFlash8 Video Encoderでやったら35分くらいで出来た。(CoreDuo1.83G/1G ram)
UniversalBinaryなFlash、マダー?
3.flvにメタデータをつける
このままだとプログレスバーが動かない場合があるのでflvtool2でメタデータをつける
3.1 flvtool2のインストール
上のページからアーカイブダウンロードして解凍
あとはrubyな定石通り
$ ruby setup.rb config
$ ruby setup.rb setup
$ sudo ruby setup.rb install
でインストール完了。
3.2メタデータ追加
$ flvtool2 -UP movie_file.flv
でメタデータをつけられる
4. streaming serverの用意
貧乏bm、もちろんFlash Media Serverなんて買えないのでlighttpdで。
ここを参考に
$ wget http://www.lighttpd.net/assets/2007/1/29/lighttpd-1.4.13.tar.gz
$ tar xvzf lighttpd-1.4.13.tar.gz
$ cd lighttpd-1.4.13
$ ./configure
$ make
$ sudo make install
$ sudo cp doc/lighttpd.conf /etc/lighttpd/lighttpd.conf
$ sudo vi /etc/lighttpd/lighttpd.conf
server.modules = (
"mod_flv_streaming"
)
flv-streaming.extensions = ( ".flv" )
$ sudo /user/local/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf
これでストリーミングサーバ完成
5. プレイヤをHTMLに埋め込む
FLVのプレイヤは自分で作ってもすぐ出来るけどここはもっとお手軽にあり物で。
FLASH VIDEO PLAYER 3.6がシンプルで設置も簡単。
アーカイブ内にコード見本があるのでそれを参考にJavascriptコードを埋め込む。
以上で完了。
ffmpegがQuickTimeなファイルを全然読めなかったくだり以外は特にトラブルなく。
映像はTry&Errorに毎度毎度(手間はそんなにかからないけど)時間がかかるののが難点。
早いPC欲すぃ。
今日のBGM
SUEMITSU AND THE SUEMITHのデビューアルバム。
最近日本になかったテイストかも。
映像映えしそうな音楽。
次回作ではもっとピアノの強い、音の隙間をあるプレイも聴いてみたいかも。
かもかも。