2011/02/12(土)DN-UVC252C@Win7(64bit)

2011/02/12 21:57 PC(全般)
OSを替えてしまったので、ドライバがすぐに見つからないものがちらほら。ゲーム画面をPCモニタに出すために購入したキャプチャユニット DN-UVC252CがWindows7 64bitで動くかどうか調査。

ここら辺が詳しい。
iTブログ DN-UVC252C USBコンポーネントキャプチャ 購入レビュー
USBキャプチャーユニット「上海問屋DN-UVC252C」で【MHP3体験版初心者向け解説】狩りに生きる。ロアルドロスvs片手剣編アップしてみました: Log_南信便り(SeesaaBlog)

ここのドライバでいけるようだ。
VideoHome Technology Corp.

今のところ、PeCaTV2で快適に動いている。

2011/02/12(土)lenny->squeeze入れ替え

2011/02/12 21:22 PC(Linux)
debianがメジャーアップデートして、squeezeがstableにきた。とりあえずアップデートしよう。

squeezeはCONFIG_SYSFS_DEPRECATED=nでないといけないというので、一応kernel作り直した。

色々悩んだけど、お任せでいいや。
aptitude update
aptitude install aptitude
aptitude dist-upgrade
ApacheがApache2になったので設定を移してちょっとおかしいところだけいじって対応。

うーん、ほんとはこんなことじゃないけないんだけどちょっと今時間がないのでこれでいこう。

以下のパッケージが削除されたのでメモ。
1)      dvipdfmx
2)      iceape-gnome-support
3)      initrd-tools
4)      irb1.8
5)      libdatrie0
6)      libdevmapper1.02
7)      libgnomekbd2
8)      libgnomekbdui2
9)      libmetacity0
10)     libreadline-ruby1.8
11)     libslab0
12)     libvorbis0
13)     libxcb-xlib0
14)     libxcb-xlib0-dev
15)     mysql-client
16)     mysql-server
17)     proftpd
18)     python-numeric
19)     racoon
20)     rdoc1.8
21)     rpm
22)     texlive-base-bin
23)     xserver-xorg-video-cyrix
24)     xserver-xorg-video-imstt

2011/02/06(日)NASの255文字問題

2011/02/06 24:38 PC(全般)
現在運用中の録画システム(WinXP)は、エンコード後にNAS(Linux)へmp4ファイルを自動コピーする仕組みになっている。このコピーが時々失敗する問題について。

理由はWindowsXPとNAS(Linux, samba, VFS, ext3)のファイル名制限の違い。この制限とは以下のようなもの。

・WindowsXPは、Unicode255"文字"まで
・Linuxは(VFS制限が厳しく)、255"bytes"まで。

sambaの設定がunicode(UTF-8だったかな?)になっているとき、日本語ファイル名をそのままコピーするとLinux上では1文字3bytes扱いとなる。

そのため、比較的容易にWindowsで命名可能かつLinux上で255bytes制限を越えるファイルが作れてしまう(日本語のみであれば86文字以上~255文字以内)。このファイルがコピーに失敗することになる。

本録画システムでこのようなファイル名が生成される条件は、EPGでサブタイトルに番組のあらすじが入ってきた場合。今のところこれ以外の条件では発生していない。

しかし、こういうEPGが結構あるのでとりあえず何とかする必要がある。

さて、できればNAS側のファイルシステム側で吸収させたいのだが、どうも芳しい情報が得られなかった。fuse+NTFS-3gなら255bytes壁を越えられる可能性が0ではなさそうだがはっきりしない。VFS自体をどうにかしたいのだが、こちらは全く情報がない。うーん?

しかたないので今回はこのような長いファイル名は余計な情報が入っているものとして、拡張子前を切り捨てることにした。末尾に録画日付・日時が入ってるものは残して、その前を切る。

それをエンコード用のスクリプトに実装してとりあえず暫定対応。

Windowsのこの255文字ファイル名にはいろいろ悩まされる。UDFでもオーバーするから、DVD/BDにやけないとかもしょっちゅう。UDFはまあしかたないにしてもNASではなんとかしたい。解決方法はあるだろうか。

1案としては、Linux上にVMWareを走らせてその上でWindows+NASを立てる。しかし大仰すぎるし、そもそもHDDがホストOS透過して見えるのかどうかわからないし、このためだけにライセンスを消費するのはいやすぎる。

次案としては、Linux側の対応を待つ。VFSの対応が今まで行われていない以上、2.6のうちはかなり薄い気がするけど、いくつか255bytes overを許容するファイルシステムが出てきてるからある程度の時期にExperimentalなオプションとして提供されそうな気はする。

3案としては、Windows NASを立てる。低消費電力じゃないときついけど、ARMでよければすでに5W程度の端末はあるし、次代のWindowsはARMに対応するという。x86でもATOM, Fusionの次とか、nVidia APUあたりはかなり低消費電力になることが期待される。それでNASにする。

なんか大変なとこに触っちゃったなあ。

2011/02/06(日)リモートデスクトップ後、B-CASカードを認識しなくなる

2011/02/06 23:04 PC(全般)
サブPC(PT2+tvrock)の録画がよく失敗する問題。B-CASカード認識の問題のようなのでカードリーダ替えてみたりしたのだが、どうもうまくいかない。

調べてみたら以下のようなことらしい。

「あったまいいねTVROCK」 - PT1 pt2仕様+FAQ

要するに、リモートデスクトップでつなぐと(仮に同じユーザでのログオンし直しであろうが)カードリーダを切断してしまうらしい。ホスト側ユーザの権限などには依存しない。また、クライアント側にも同じカードが刺さっていればこの問題は起こらない。自宅環境では今まで親機と子機両方にカードが刺さっていたので気づかなかった。

ノートPCにB-CASカード刺すのも厳しいので、とりあえずしばらくはUltraVNCで代用する。リモートデスクトップでつないでしまった場合は再起動で対応。

ローカルLANだとリモートデスクトップの方が圧倒的に快適だが、遠隔制御だとそこまで差はつかない。

他の方法だと、リモートデスクトップにパッチを当てるという裏技もあるようだ(複数ユーザが同時にログオンできるようになる)。ただし、ライセンス的にどうなのって話とtvrock自体が予約リストなどをユーザレベルで管理しているので、別ユーザログインもちょっともめんどくさい。

同一ユーザでログオンするのはさすがに難しいらしく、serverを使わないのであればかなりのハックが必要になるらしい(logon.exeをいじる?)。それこそライセンス的にどうなのって話になるのでこれは基本除外。

あとはうちの場合だとBonCasLinkでB-CAS配信サーバをLinux上に立てるあたり。これもライセンス的にどうなんだろう…… まあ検討はしておこう。時間かかりそうなので、実験的にやるにしてもかなり先の話とする。

2011/01/06(木)カーネル再構築メモ

2011/01/06 23:22 PC(Linux)
debianもsqueezeとなったこの時代、自分の鯖もwoodyからいい加減な管理で使ってる所為かカーネルの再構築手順がちょっとややこしくなってきた。再構築の度にkernel panicするので、これなら成功するという手順をメモっておきたい。
#make menuconfig
#make bzImage
#make modules
#make modules_install
#installkernel ##VER## arch/i386/boot/bzImage System.map
#mkinitrd -o /boot/initrd-##VER##.img ##VER##
#grub-update
sudoとかは適当に読み替えで。

でここからが肝心。これだけではうまくいかない。grub-updateは/boot/grub/menu.lstを更新するが/dev/sda1(SATAであるため)が正であるのに/dev/hda1と記述される。しかもご丁寧に既存の物まで書き換えて…… おそろしい。ということでmenu.lst内のデバイス指定を正しい物に修正する。grub-updateは何となく挙動が変なので、使わない方がいいのかも知れない。そのうち研究。

私の環境のinstallkernelはinitrdを作らないため、initrdは別途作る必要がある。initrd作成についてはこの直後にinitramfs-toolsを入れたので、今後はupdate-initramfsかmkinitramfsが使えると思う。それは次回。

2010/12/23(木)Reflex USB v2 -> SCR33XX

2010/12/23 15:35 PC(全般)
録画時に変なファイルができるなど\100カードリーダがなんか不安定なので、ファームウェアの書き換えをやって様子を見ることにした。

Webに情報がたくさんあるので、下記通りにやればよい。
人の褌(仮): Reflex v2購入->SCR331に書き換えてみるテスト
[etc] Reflex USB v2を64bit Windows対応にしてみた 主にねとげにっき(・ω・)/ウェブリブログ

特にコメント無し。

2010/11/27(土)AFTのHDDをインストール

2010/11/27 4:30 PC(Linux)
かんたんメモだけ。

WDのWD10TPVTをLinuxマシンに繋ぎたいのだが、これがいわゆる4096kbytesのAFT。パフォーマンス低下を防ぐために、fdiskに考慮が要ることが知られている。

WD20EARS買った。 _ GALACTIC FUNK

今回はとりあえず上記サイトのやり方でやってみた。
パフォーマンス低下の仕組みは簡単なのだが、このオプションで副作用がないのかどうかが分かっていない。

とりあえず様子見。

2010/10/15(金)DMR-E85H -> PC(*.MPG化)

2010/10/15 21:12 PC(全般)
DMR-E85Hを廃棄することにした。その過程で、録画してあったデータはPC側に取り込んで管理したい。そのメモ。

DMR-E85Hは1層のDVD-R/RAMしか焼けない。したがって、VROかVOBかを取り込む必要がある。手元にRAMがあったのと、VROが比較的素直そう(実績有り。->.MPGリネームで再生問題を生じたことがない)なのでRAM経由で。

[DMR-E85H側]
  • DVD-RAM1枚のサイズに収まらないものは分割をかける。
  • 全ファイルをDVD-RAMに焼き、ファイルコピーでPCに移す。(VR_MOVIE.VRO, VR_MANGR.IFO, VR_MANGR.BUPで1セット)
  • 焼いたファイルは消す。
[PC側]
  • 複数のファイルをまとめた.VROはvro2split+vro2feで、自動的に->.MPGへ。
  • 単独ファイルの.VROはvro2splitの結果を見ながら、手動で.MPGにリネーム。
  • 分割後の.VROは手動で.MPGにリネーム後、TMPGEnc MPEG Editorで結合し、vro2splitの結果を元にリネーム。
  • 作業後、VR_MOVIE.VRO, VR_MANGR.IFO, VR_MANGR.BUPのセットを消す。
以上の工程の結果、得られたMPGに特に問題なし。録画時情報として、タイトル・録画日時は救える。録画チャンネル名は救えない。

vro2split, vro2feはこちらから。注意点として、vro2feはこの記事の作成時点でvro2split ver0.4の出力結果には対応していない。また、フロントエンドとしてはかなりしょっぱい動きなので、量があるなら自作する、少量なら手動でリネームを考えてもいいと思う。

2010/07/21(水)ICMPの設定見直し

2010/07/21 20:54 PC(Linux)
Kernel入れ替え時に気がついたのだが、自分へのpingが通らない。
$ ping 127.0.0.1
はOKだが、
$ ping 192.168.xxx.xxx
$ ping <<WAN側IPアドレス>>
が通らない。
エラーメッセージはこう。
ping: sendmsg: Operation not permitted
今回の入れ替えで通らなくなったのか、以前から通ってなかったのかは不明。

原因としてはiptablesの設定にicmpのtype指定が入ってなかったことによる。type指定をしてやらないと、-p icmpで全通しにしてるつもりでもpingが通らない。オプションが追加されたのか、policyが変わったのか、コンパイルオプションの問題か…

したがって、--icmp-typeを追加してやる。
/sbin/iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
/sbin/iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
/sbin/iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
/sbin/iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
ICMPのセクションを上記に差し替えた。これで、pingは問題なし。
echo-replyは0、echo-requestは8と書いても良い。
うーん、もうちょっと固められるけどこれでもいいよなあ。

外部からのpingをドロップしたいときはまた設定を変える必要がある。

2009/08/03(月)Linux→Windowsリモートコマンド操作

2009/08/03 25:48 PC(Linux)
LinuxからLAN内のWindowsのコマンドをリモート実行したい。
telnetやsshでもいいっちゃいいのだが、ちょっと大仰かなと。

ということでWin32->Win32のpsexecに該当する機能を探していたところ、winexeというのがあるらしい。

samba4の機能なの? ちょっとわからなかったのだが、悪いものではなさそうなのでとりあえず単独でインストールすることにした。リポジトリになかったので、本家サイトからダウンロードして入れる。debian的にはリポジトリにないものを入れるのはどうなのだっけ? まあいいや。

参考こちら
fujishinko 雑記帳 : LinuxからWindowsをリモート制御する

本家サイト
winexe homepage:)

GLIBCのバージョン違いでさすがにバイナリそのままでは起動せず。ソースからコンパイルした。完全に本家サイトの"Compile from sources"そのまんま。

autoconfなかったので、インストール。
# aptitude install autoconf
コンパイルはこれだけ。結構時間かかる。色々やってるなあ。
# wget http://eol.ovh.org/winexe/winexe-source-081123.tar.bz2
# bunzip2 winexe-source-081123.tar.bz2
# tar -xvf winexe-source-081123.tar
# cd winexe-source-081123
# ./autogen.sh
# ./configure
# make proto bin/winexe
テスト。
# ./bin/winexe -U User_Name%PassWord //192.168.YYY.XXX "ipconfig"
結果の記載は割愛するけど成功。すごい、あっさり表示した。

これはちょっと感動だなあ。いや、代替手段はいくらでもあるとは思うんだけどね。でも一手の省略がちょっと凄い。

[2009/08/06追記]
GUIアプリを動かすときは --system --interactive=1とするといいらしい。

Ultr@VNCなんかはそれでいけた。
OK キャンセル 確認 その他