2012年9月15日土曜日

recpt1コンパイル

CentOS 6.3(x86_64)でPT3を使用するためドライバをインストールしましたが、今回は録画用のrecpt1をインストールします。

recpt1のソースは、Mercurialで管理されているのでパッケージをインストールしておきます。
# yum install mercurial
スマートカード関連のパッケージもインストールしておきます。
# yum install ccid pcsc-lite*

まず、libarib25をインストールします。
最新版には登録されていないので、リビジョンを指定してcloneします。
$ hg clone http://hg.honeyplanet.jp/pt1/ pt1_r73 -r 73
$ cd pt1_r73/arib25
$ make
# make install
/usr/local/libにインストールされるのでリンカの検索対象に登録しておきます。
次の例では、local.confを新規作成しています。
# echo "/usr/local/lib" > /etc/ld.so.conf.d/local.conf
# ldconfig
次は、recpt1の最新版をcloneしてコンパイルします。
$ hg clone http://hg.honeyplanet.jp/pt1/ pt1
$ cd pt1/recpt1
$ ./autogen.sh
$ ./configure --enable-b25
$ make
# make install
問題なくコンパイルできたので、PT3用にデバイス名を修正しました。
--device /dev/pt3video2のようにオプション指定すれば、ソース修正をしなくても使用できますが、PT3しか持っていないため修正してしまいました。
--- pt1_dev.h.original  2012-09-15 12:48:52.196329963 +0900
+++ pt1_dev.h   2012-09-15 13:14:59.360566755 +0900
@@ -3,24 +3,24 @@
 #define _PT1_DEV_H_

 char *bsdev[NUM_BSDEV] = {
-    "/dev/pt1video1",
-    "/dev/pt1video0",
-    "/dev/pt1video5",
-    "/dev/pt1video4",
-    "/dev/pt1video9",
-    "/dev/pt1video8",
-    "/dev/pt1video13",
-    "/dev/pt1video12"
+    "/dev/pt3video1",
+    "/dev/pt3video0",
+    "/dev/pt3video5",
+    "/dev/pt3video4",
+    "/dev/pt3video9",
+    "/dev/pt3video8",
+    "/dev/pt3video13",
+    "/dev/pt3video12"
 };
 char *isdb_t_dev[NUM_ISDB_T_DEV] = {
-    "/dev/pt1video2",
-    "/dev/pt1video3",
-    "/dev/pt1video6",
-    "/dev/pt1video7",
-    "/dev/pt1video10",
-    "/dev/pt1video11",
-    "/dev/pt1video14",
-    "/dev/pt1video15"
+    "/dev/pt3video2",
+    "/dev/pt3video3",
+    "/dev/pt3video6",
+    "/dev/pt3video7",
+    "/dev/pt3video10",
+    "/dev/pt3video11",
+    "/dev/pt3video14",
+    "/dev/pt3video15"
 };

 // 変換テーブル(ISDB-T用)
分波器を準備していないので、地デジしか試していませんが無事TSも出力されるようです。

2012年9月1日土曜日

PT3ドライバ

Express5800/GT110dのCentOS 6.3(x86_64)でPT3を使用するためドライバをインストールします。
カーネルのバージョンは、次になります。
$ uname -mrv
2.6.32-279.5.2.el6.x86_64 #1 SMP Fri Aug 24 01:07:11 UTC 2012 x86_64

まずは、ソースの展開から。
PT3のドライバは、GitHubで公開されているので、次のようにしてソースを展開します。
$ git clone https://github.com/m-tsubo/pt3.git
コンパイルとインストールは、次のように行います。
$ cd pt3
$ make
# make install
# modprobe pt3_drv
コンパイル時にwarningが出ますが、問題なさそうな内容ですので無視します。
$ ls /dev/pt3*
/dev/pt3video0  /dev/pt3video2  /dev/pt3video4  /dev/pt3video6
/dev/pt3video1  /dev/pt3video3  /dev/pt3video5  /dev/pt3video7
2枚挿しなので8つデバイスが出来ていますが、1枚の場合はpt3video0~pt3video3の4つ出来ていれば成功です。

PT3の発売から2ヶ月強で完成度の高いドライバが出来てるなんて、凄いなぁと思います。

recfsusb2nコンパイル

オリジナルのhttp://tri.dw.land.to/fsusb2n/での配布は終了してしまったようですが、ググるとまだ入手できるようです。よかった。

recfsusb2n-0.9.2.tar.gzを入手することが出来ました。
コンパイルは、Boostを使用しているためboost-develをインストールしておく必要がある位で、特に問題なく完了。 TSも無事出力されるようで、ハード改造も成功していたようです。
2つの同時利用も問題ないようです。

あと、Express5800/GT110dのCPUがCeleron G530なので、最適化オプションとして、-O -mfpmath=sse -msse4.2を指定してみました。
録画時に気持ち程度CPU使用率が下がったような気がします。