TV-Tuner-Serverの作成 その1

PT3とPLEX PX-Q3PE4を使用したTV録画サーバーを作成します。

カードリーダ

カードリーダの動作に必要なパッケージをインストールし、動作確認まで行います。

$ sudo apt-get -y install pcscd pcsc-tools libpcsclite-dev
$ pcsc_scan
  B-CASカードを挿した状態で以下が表示されれば成功
  Japanese Chijou Digital B-CAS Card (pay TV)
Ctrl+C で抜けます。

開発環境構築

ツールやドライバのビルドに必要なパッケージをインストールします。

$ sudo apt-get -y install autoconf build-essential cmake curl git libssl-dev libtool libboost-all-dev pkg-config yasm

録画機能設定

arib25ライブラリ

放送データの復号を行うarib25ライブラリをインストールします。

$ mkdir ~/git
$ cd ~/git
$ git clone https://github.com/stz2012/libarib25.git
$ cd libarib25/
$ cmake .
$ make
$ sudo make install
$ sudo /sbin/ldconfig

PT3ドライバ

Gitでソースコードをダウンロードするので、専用のgitディレクトリを作成し、そこで作業します。
ドライバのビルドはdkmsコマンドを使用します。

$ cd ~/git
$ git clone https://github.com/m-tsudo/pt3.git
$ cd pt3
$ sudo apt install dkms
$ sudo bash ./dkms.install

デフォルトのearth-pt3ドライバと競合するため、/etc/modprobe.d/blacklist.confファイル末尾に下記を追記します。

$ sudo nano /etc/modprobe.d/blacklist.conf
 blacklist earth-pt3

再起動します。

$ sudo reboot

再起動後、ドライバモジュールがロードされているかを確認します。

$ lsmod | grep pt3
    pt3_drv                42151  0

PT3のデバイスファイルが作成されていることを確認します。

$ ls -l /dev/pt3*
    crw-rw-rw- 1 root video 249, 0  8月 30 18:45 /dev/pt3video0
    crw-rw-rw- 1 root video 249, 1  8月 30 18:45 /dev/pt3video1
    crw-rw-rw- 1 root video 249, 2  8月 30 18:45 /dev/pt3video2
    crw-rw-rw- 1 root video 249, 3  8月 30 18:45 /dev/pt3video3

recpt1コマンド

録画コマンドのrecpt1コマンドをインストールします。
ホームディレクトリにsrcディレクトリを作成し、その下で作業します。

$ mkdir ~/src
$ cd ~/src
$ wget http://hg.honeyplanet.jp/pt1/archive/tip.tar.bz2
$ tar xvjf tip.tar.bz2
$ cd pt1-17b4f7b5dccb/recpt1/
$ sed -i".org" 's/pt1video/pt3video/g' pt1_dev.h
$ ./autogen.sh
$ ./configure --enable-b25
$ make
$ sudo make install

録画テスト

recpt1コマンドで実際に録画出来る事を確認します。

$ recpt1 --b25 --strip 24 10 ~/pt3ch24.ts

PLEX社製TVチューナーの非公式Linuxドライバインストール

$ sudo apt-get install unzip dkms

ドライバインストール

ドライバのソースコードを取得します。

$ cd ~/git
$ git clone https://github.com/nns779/px4_drv

Windows用ファームウェアをLinux用に変換します。変換ツールがソースコードに含まれているので、ツールをビルドして実行します。

$ cd px4_drv/fwtool/
$ make
$ wget http://plex-net.co.jp/plex/pxw3u4/pxw3u4_BDA_ver1x64.zip
$ unzip pxw3u4_BDA_ver1x64.zip
$ sudo ./fwtool pxw3u4_BDA_ver1x64/PXW3U4.sys it930x-firmware.bin
$ sudo cp -p it930x-firmware.bin /lib/firmware/
$ cd ..

dkms用のスクリプト、”dkms.install”を作成して実行します。

$ nano dkms.install

スクリプトの内容は以下の通りです。

. ./dkms.conf
cp -a `pwd` /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
dkms add -m $PACKAGE_NAME -v $PACKAGE_VERSION
dkms build -m $PACKAGE_NAME -v $PACKAGE_VERSION
dkms install -m $PACKAGE_NAME -v $PACKAGE_VERSION

スクリプトを実行してドライバをインストールします。

$ sudo bash dkms.install

再起動します。

$ sudo reboot

再起動後、PX-Q3PE4のデバイスファイルが作成されていることを確認します。

$ ls -l /dev/px4*
    crw-rw-r-- 1 root video 248, 0 1月 23 21:32 /dev/px4video0
    crw-rw-r-- 1 root video 248, 1 1月 23 21:32 /dev/px4video1
    crw-rw-r-- 1 root video 248, 2 1月 23 21:32 /dev/px4video2
    crw-rw-r-- 1 root video 248, 3 1月 23 21:32 /dev/px4video3
    crw-rw-r-- 1 root video 248, 0 1月 23 21:32 /dev/px4video4
    crw-rw-r-- 1 root video 248, 1 1月 23 21:32 /dev/px4video5
    crw-rw-r-- 1 root video 248, 2 1月 23 21:32 /dev/px4video6
    crw-rw-r-- 1 root video 248, 3 1月 23 21:32 /dev/px4video7

録画コマンドインストール

録画コマンドとしてSTZ版のrecpt1をインストールします。

$ cd ~/git
$ git clone https://github.com/stz2012/recpt1.git
$ cd recpt1/recpt1

Makefile.inファイルを編集してPX-Q3PE4用に変更します。

$ nano Makefile.in

コマンド名の後ろに”_px4”を付けます。

変更前) ※7行目以降
TARGET = recpt1
TARGET2 = recpt1ctl
TARGET3 = checksignal

変更後)
TARGET = recpt1_px4
TARGET2 = recpt1ctl_px4
TARGET3 = checksignal_px4

makeを実行してインストールします。

$ aclocal -I .
$ autoheader
$ autoconf
$ ./configure --enable-b25
$ make
$ sudo make install

録画テスト

recpt1_px4コマンドで実際に録画出来る事を確認します。

$ recpt1_px4 --b25 --strip 24 10 ~/pxch24.ts

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です