IT関連のサポートに携わる変人が微弱な電波を発してます。
ビビビビビッ!
URL変更のお知らせとお願い
当サイトのドメインが変更となりました
http://zxvf.homeip.net から http://zxvf.stzo.net に変更となりました。
当サイトにリンクしていただいている方々にはご面倒ですが変更をお願いいたします。(2014/4/7)
Linux(debian Etch)でfriioLinux(debian Etch)でfriio せっかくなんでやってみた。 せっかくなんでやってみた。 いつもアナログLCDでテレビちょこっと見るくらいしかfriioを使ってないんだけど、 先日買ったサーバでも録画できるようにしてみた。 HDDからCFカードに変えて、サーバのHDDをnfsでマウントすれば録画サーバとしても立派に使えるね。 録画時の負荷も全然ない。 使ったファイル up0465.zip recfriio r2 up0404.zip arib25v021 tsselectv014r2 適当なとこに解凍しとく。 準備 # aptitude install g++ libboost-filesystem-dev libboost-thread-dev libglib2.0-dev libpcsclite-dev libccid libglib2.0-dev libpcsclite-dev libccid pcscd libboost-regex-dev pcsc-tools 念のため /etc/libccid_Info.plist のオリジナルを/etc/libccid_Info.plist.org とかして保存しておく。 arib25v021/libccid_Info.plist を /etc/libccid_Info.plist に置き換える。 さらにこのファイルはライブラリのバージョンが違うので修正。 arib25v021付属が1.3.1でdebian Etch でインストールされるのが1.1.0 # vi /etc/libccid_Info.plist して開いた状態で :1,$s/1.3.1/1.1.0/g と入力して置き換える。 まあ別の方法としてファイルはそのままにして pushd /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Linux xxxx:/usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Linux# ln -s libccid.so.1.1.0 libccid.so.1.3.1 とかしてやってもいいかも 同じような手順で marumolinuxr3/arib25v021/smartcard_list.txt と /usr/share/pcsc/smartcard_list.txt を入れ替える。 最新のドライバをそのまま使いたい場合はdebianのパッケージは使わずに http://pcsclite.alioth.debian.org/から CCID driver PCSC-Lite を入れて動かしてやる。そうすれば上のファイル入れ替えの手順は必要ない。 さて、それではmakeしよう。 arib25/ に降りて make すると src に b25 ができている。 同じように tsselectv014r2/tsselect/ に降りてmakeしておけば src に tsselect が出来てるからいつか使うかも。 次に recfriio だ。 ちょっとやっかい。そのままだと make できない。 recfriio.cpp:29:29: error: linux/usb/ch9.h: ばーかそのようなファイルやディレクトリはねー とか言って怒られる。 なので $ vi recfriio.cpp 29行目の #include <linux/usb/ch9.h> これを #include <linux/usb_ch9.h> に修正 次に 649行目の std::cout << "Search friios from dir: " << base_dir << std::endl; の先頭を // してコメントアウト。 // std::cout << "Search friios from dir: " << base_dir << std::endl; 次に Makefile の9行目の -lboost_thread-mt というところを -lboost_thread に変えてやる。 それで make するとやっと recfriio ができあがる。 udevの修正をしてやる readme.txtに書いてあるように /etc/udev/permissions.rules にfriioの項目を追加してやる。 これで準備は整った。 /etc/init.d/pcscd restart してから tail -f /var/log/messages しながら friio をUSBに挿入しよう。 カードとfriioが認識されていればOK。 それではあとは録画するだけ。 # ./recfriio 25 10 test1.ts (recfriio チャンネル 録画秒数 録画ファイル名) devices file: /proc/bus/usb/devices 1 friios found: /dev/bus/usb/004/007: use this friio. device: /dev/bus/usb/004/007 Signal level: 5.395410 Signal level: 1.901780 Signal level: 26.498058 Output ts file. done. Rec time: 9.034874 sec. Signal level: 27.157158 このままだとまだ暗号化されてるので # ./b25 test1.ts test.ts processing: finish no EMM receiving request これでできたtest.ts はvlcなどでそのまま見れるし、regzaだとそのままさらに綺麗に見れるのだ。 あとは使い方次第だけど、デバイスファイルのパーミッションの問題があるから 実行ユーザーがusbデバイスを使えるようにしておいてあげないといけない。 rootなら大丈夫だけどね。 とりあえず # cp recfriio /usr/local/bin/ # cp b25 /usr/local/bin/ してコピーしておいてsuidをセットしちまおう # chmod u+s /usr/local/bin/recfriio これで /usr/local/bin/ から利用出来る。 追記: 困ったことに recfriio は白と黒の判定をカードリーダーでしている。 それが最近のロットは黒と同じリーダーになったらしく、普通にビルドすると白が黒と判定されてしまう。 そこでrecfriio.cppの修正がさらに必要になった。 そんな僕も追加でもう一個買ったんだけどそのままでは新しい方が使えない。 使えなくてはどうしょもないので、その対策を追加しておこう。 新しいロットで黒と判定されて困っている人は (ただし黒を持っていない人のみ) これを見てくださいね。friiocard.txt |
< 過去の記事 | [ 2月の 全てのトピック リスト ] | 新しい記事 > |
新しいトピック
最新:05/08 18:22
![]() ![]() ![]() |