- 2008/03/05 -

玄箱で自動ネットdeダビング

DLNAを利用するので、厳密にはネットdeダビングではないですが、、VARDIA内の録画番組を玄箱へ自動転送することに成功。
利用環境として、ハードは玄箱(Debian 2.6), VARDIA(RD-E300)。ソフトはApache 2.0.63+mod_dlna, etherwake, curlです。
etherwakeはVARDIAを起動するため、curlはVARDIAへ電源Offコマンドを送るためだけに使っています。
その他はwgetなのですが、wgetでネットdeナビのDigest認証がどうしてもうまくいかず、curlを使いました。ただ、wgetは2GB以上のダウンロードはできないかもしれない(未テスト)ので、全部curlに変えた方がいいですね。。curlをコンパイルするのがめんどくさいという場合は、コメントアウトすれば電源Offコマンド送信以外は動くので、とりあえずシェルスクリプトを置いておきます。
その他の組み合わせでも少し書き換えれば動くと思いますが、VARDIA以外のDLNAサーバの場合は1から書き直さないとだめかも。
2台以上の同機種のDLNAサーバがある場合は動きません。なぜか、Samba経由で転送ファイルを見るとファイル名が文字化けしています。wizd経由(LinkTheater)やApache経由では問題ないのですが。。
etherwakeはapt-getでインストールできます。curlについてはここが参考になります。
あと、VARDIA操作中はDLNA転送できないようなので注意。
定期的に走らせる場合は、
# chmod 755 dlna-de-dubbing.sh
# crontab -e
  0 4 * * * ~/dlna-de-dubbing.sh

とかしておくと毎朝4時に自動転送されるようになります。
>>dlna-de-dubbing_01.sh

追記(3/5):
wgetのバージョンを確認したところ1.9.1で、これは2GBの壁があるらしい。。
ということでcurlを使うように書き直しました。
>>dlna-de-dubbing_02.sh

追記(3/9):
cronで走らせる場合は、etherwakeがroot権限でないので動けないよとごねるので、VARDIAを自動電源onできません。なのでwakeonlanというPerlスクリプトを使った方が良いみたいです。このスクリプトをmake installして、dlna-de-dubbing_02.shの"etherwake"の部分(15行目)を"wakeonlan"に書き換えればokです。

追記(3/21):
2台以上の同名のDLNAサーバがある場合の応急処置として、20行目を以下のように変更する。
uri=`sed -n -e 's/^.*href="//' -e "s/\">\${dlnaserver}.*$//p" temp.html | head -n 1`

複数台のDLNAサーバから転送したい場合は、このシェルスクリプトをサーバ毎に用意すればokかな?^^;

追記(3/31): 修正項目が多くなったので玄箱でDLNAdeダビング 0.3を公開。
Posted at 00:20 | Comment(0) | TB(0) | Server
List of Comments
Sending Comment
Name: (required)

Mail:

URL:

Comment: (required)

Code: (required)


※画像の中の文字を半角で入力してください。

List of TrackBacks
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。