録画サーバ構築 recpt1+PX-Q3PE 検証編

いよいよ録画サーバの構築を進める。Linuxで録画機能を動かすにはPX-Q3PEを認識させて、スマートカードリーダーでB-CASカードを読み込み、録画用のrecpt1というコマンドで録画を行う。もし、録画に失敗した場合は障害ポイントがそこかしこに存在するために切り分けが非常に難しい。そこでまずはwin10で動作確認を行い、次にfoltiaでも動作確認を行い、環境面での問題はないはずという状態を作り上げてから自作の録画サーバに取り組む。既に実績のあるfoltiaのPX-Q3PEドライバ(kernel module)とrecpt1があれば、自分で作ったCentOS6でも録画機能が動作するはずだ。

地上波デジタル・BS・CS 8チャンネル同時録画テレビチューナボード PX-Q3PE
価格 : 21,581円(税込、送料無料)
by Yahoo! ショッピング

先日構築したfoltia用の仮想サーバrec1はそのままにして、もう1つ素のCentOS6.7仮想サーバrec2を作る。foltia構築の時と同様にvirt-installの–hostdeviceオプションを使って、仮想サーバにチューナーボードとスマートカードリーダーのデバイスを引き渡す。rec1にデバイスを持ったままだとエラーになってしまうので、rec1の定義ファイルを修正してデバイスを外しておく。virsh edit rec1で<hostdev …> … </hostdev>の辺りを削除するだけ。修正したら再起動してデバイスを手放す。PX-Q3PEドライバと録画用コマンドrecpt1を渡したいので、rec1から該当ファイルをrec2にコピーする。

lsmod | grep -i px
pxq3pe_dtv            286545  2
modinfo pxq3pe_dtv
filename:       /lib/modules/2.6.32-573.18.1.el6.x86_64/kernel/drivers/video/pxq3pe_dtv.ko
license:        GPL
author:
description:    PX-Q3PE driver module
srcversion:     A6E2A26B94BF482246AB236
alias:          pci:v0000188Bd00005220sv00000B06sd00000002bc*sc*i*
depends:
vermagic:       2.6.32-279.el6.x86_64 SMP mod_unload modversions
parm:           irq_debug:enable debug messages [IRQ handler] (int)
parm:           vid_limit:capture memory limit in megabytes (int)

ls -l /lib/modules/2.6.32-573.18.1.el6.x86_64/kernel/drivers/video/pxq3pe_dtv.ko
-rw-r--r-- 1 root root 4993716  3月 22 10:12 2016 /lib/modules/2.6.32-573.18.1.el6.x86_64/kernel/drivers/video/pxq3pe_dtv.ko

scp /lib/modules/2.6.32-573.18.1.el6.x86_64/kernel/drivers/video/pxq3pe_dtv.ko rec2:/usr/local/src
scp /usr/local/bin/recpt1 rec2:/usr/local/bin

rec2はbaseリポジトリで作ったので微妙にfoltiaよりkernelが古かったが問題ないレベル。コピーしたカーネルモジュールをrec2で読み込んでみる。PX-Q3PEのデバイスが認識されれば成功。

insmod /usr/local/src/pxq3pe_dtv.ko
lsmod | grep px
pxq3pe_dtv            286545  0
ls -l /dev/pxq3pe*
crw-rw---- 1 root root 248, 0  6月 30 20:15 2016 /dev/pxq3pe0
crw-rw---- 1 root root 248, 1  6月 30 20:15 2016 /dev/pxq3pe1
crw-rw---- 1 root root 248, 2  6月 30 20:15 2016 /dev/pxq3pe2
crw-rw---- 1 root root 248, 3  6月 30 20:15 2016 /dev/pxq3pe3
crw-rw---- 1 root root 248, 4  6月 30 20:15 2016 /dev/pxq3pe4
crw-rw---- 1 root root 248, 5  6月 30 20:15 2016 /dev/pxq3pe5
crw-rw---- 1 root root 248, 6  6月 30 20:15 2016 /dev/pxq3pe6
crw-rw---- 1 root root 248, 7  6月 30 20:15 2016 /dev/pxq3pe7

どうやらうまくいったようだ。録画のためにはB-CASカードも認識させる必要がある。以下のように必要なパッケージをインストールしてpcsc_scanを使って動作確認をする。インストールをした後にrebootさせないとうまく動作しないかもしれない。

yum install pcsc-lite pcsc-lite-devel pcsc-lite-libs ccid
wget ftp://ftp.pbone.net/mirror/archive.fedoraproject.org/fedora/linux/releases/13/Everything/x86_64/os/Packages/pcsc-tools-1.4.16-1.fc13.x86_64.rpm
wget ftp://ftp.pbone.net/mirror/archive.fedoraproject.org/fedora/linux/releases/13/Everything/x86_64/os/Packages/pcsc-perl-1.4.8-2.fc13.x86_64.rpm
yum install --enablerepo=rpmforge perl-Glib perl-Gtk2 perl-Pango pcsc-perl-1.4.8-2.fc13.x86_64.rpm pcsc-tools-1.4.16-1.fc13.x86_64.rpm
reboot

起動後にログインして、
pcsc_scan
PC/SC device scanner
V 1.4.16 (c) 2001-2009, Ludovic Rousseau <ludovic.rousseau@free.fr>
Compiled with PC/SC lite version: 1.5.5
Scanning present readers...
0: MSI StarReader SMART (20070818000000000) 00 00
    :

うちの環境は内部USB2.0ピンに接続された3.5インチドライブPF-001CRでB-CASを読ませているが、これも特に問題なかった。復号化に必要なライブラリもインストールする。

cd /usr/local/src
wget http://hg.honeyplanet.jp/pt1/archive/c44e16dbb0e2.zip
unzip c44e16dbb0e2.zip
cd /usr/local/src/pt1-c44e16dbb0e2/arib25
make
make install
echo '/usr/local/lib' >> /etc/ld.so.conf
ldconfig

以上で録画のための準備は整った。早速、recpt1コマンドを使って録画処理を試してみる。–b25オプション、–stripオプションのあとにチャンネル、記録秒数、ファイル名、–deviceオプションで録画に使うチューナーデバイスを指定する。地上波用のチューナーデバイスは/dev/pxq3pe2と3と6と7になる。残りがBS用。指定したチャンネルに相当するデバイスを選ばないと正しく記録されないので注意。

recpt1 --b25 --strip 22 5 /tmp/test.ts --device /dev/pxq3pe2
using B25...
enable B25 strip
pid = 2205
C/N = 19.838373dB
Recording...
Available sid = 1048 1049 1432 1183
Chosen sid    =
Available PMT = 0x101 0x102 0x1fc8 0x7f0
Recorded 6sec

やった、録画出来た!録画サーバに向けた基本的な環境は準備できそう。Linuxで動作する録画サーバは幾つかあるが、foltiaはアニメ特化かつ有償だし、Chinachuはバイナリ同梱なのでPX-Q3PEで動かすには向いてなさそう。epgrecが1番自由度高そうなので、これを最初に動かしてみるつもり。epgrecにはフォークした派生版が幾つかあって、中でも評判の良さそうなepgrec UNAにトライしてみたい。まだ、幾つか課題があるんだけどね。

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)