cpan恐怖症の僕がPerlの環境構築してからTetoをいれるまで
貴重なマシンパワーの一部をニコ動の作業用BGMに割いてるみなさんおはようございます
もともとFlashというかAdobeが嫌いなので、しかしニコ厨としてはなんとかしてStremaing環境を構築したくて id:motemen さんのTetoをいれたかった
うちのMBAにはFlashいれてない。自宅で鯖化した旧MBがニコ動再生機と化していた
ニコニコ動画の音声だけを流し聴きするストリームサーバを書きました - NaN days - subtech]
音声が入れば最低でも作業用BGMきけるよ!ってこと頑張ってみた
PerlといえばCPAN。名前を聞くだけで魅力的だとわかるモジュールが目白押し。WWW::Mechanize::AutoPagerとか超羨ましい
しかしPerl、というかCPANには嫌な思い出があって
まあ cpanminus という 使いやすいモジュールができたらしいのでそっちで頑張ってみようと思った
ちなみに Plaggerもremedieもcpanminusもmiyagawaさん製
perlbrew
homebrew + perlbrew + cpanm + local::lib + etc.な開発環境を作る - antipop]
$ cd ~/ $ curl -LO http://xrl.us/perlbrew $ cd ~/perl5 $ perl perlbrew install $ ~/perl5/perlbrew/bin/perlbrew init $ vim ~/.zshrc # source ~/perl5/perlbrew/etc/bashrcを追加 $ source ~/perl5/perlbrew/etc/bashrc $ perlbrew install perl-5.10.1 # 自分の環境だと失敗したので --force オプションをつけました $ perlbrew swicth perl-5.10.1
cpanminus
perlbrew + cpanminus + local::lib で環境構築 - Webtech Walker]
$ mkdir ~/bin #pathを通しておく $ cd ~/bin $ wget --no-check-certificate http://xrl.us/cpanm $ chmod +x cpanm
ここまでは特に問題ない
Teto
ffmpegが必要
最近homebrew にうつったので homebrew でいれる。MacPortsでも入れられるけど確かオプションが大量にあったような 要 port variants ffmpeg
sudo brew install ffmpeg
Tetoのソースのダウンロード
$ git clone git://github.com/motemen/Teto.git $ cd Teto $ perl Makefile.pm
とすると大量にwarningが出る
Module::Install::Any::Mooseがあれば足りないモジュールを指摘されるのでまずは突っ込む
$ cpanm Module::Install::Any::Moose
再度 perl Makefile.pm し、足りないモジュールをとにかくcpnam hogehoge していく
モジュールが糞多いけど、たぶん他のモジュールを使う際もよく使われてるライブラリが多い(と思われる)ので我慢しよう
終わったら make & sudo make install
Config::Pit について
pit といってソースにコードを書かなくて済むように~/.pit 以下にパスワードを預けるモジュールがあるのだけど
自分の環境でワンライナー飛ばしたんだけど、ちゃんと動かなかった
$ perl -MConfig::Pit -e'Config::Pit::set("nicovideo.jp", data=>{ username => "miz404@gmail.com", password =>"somethingpassword"})'
~/.pit/default.yaml をのぞくとなぜか miz404gmailになってたので直接編集して対応。
ここで二時間ぐらいハマっていた。encodingの設定が甘いんだろうか
Teto実行
まだ環境構築終わってません
サンプル通り./teto.pl --port 9090 http://www.nicovideo.jp/mylist/3271200 とすると依存がおかしいとの警告が出る
これはperl Makefile.pm に書かれてなくてもとにかくまだ足りないモジュールがあるらしいので、たいていは cpanm hogehoge していけば解決する
多分そのうち実行できるので、ログを確認する
[error] ~ ダウンロードできない云々は多分~/.pit/default.yaml がおかしいので見直す
無事にうごけば http://localhost:9090/ でインターフェースが確認できる
iTunesを起動して Cmd+U http://localhost:9090/stream でストリームが流れてくる
お疲れさまでした