*

PLEX社製TVチューナーをLinuxで使用する方法(Ubuntu・Debian・CentOS)

  最終更新日:2018/02/28

Pocket

PLEXテレビチューナー PX-W3PE4

PLEXテレビチューナー PX-W3PE4

 PLEX社製TVチューナーのPX-W3PE4、PX-Q3PE4、PX-W3U4、PX-Q3U4をLinuxで使用する方法をまとめました。Ubuntu、Debian、CentOSのそれぞれについて説明します。

スポンサーリンク

PLEX社提供Linuxドライバ




 2017年12月にPX-W3PE4、PX-Q3PE4、PX-W3U4、PX-Q3U4の主要Linuxディストリビューションのドライバが公開されました(ドライバダウンロードページ)。

 ただし、公開されたドライバは、ソースコードではなくバイナリファイルであるため、使用可能なLinuxディストリビューションが限定されます。

 Linuxのドライバは、基本的にはそのドライバをコンパイルしたカーネルのバージョンでしか動かないようになっています。そのため、使用可能な環境が限定されるのです(厳密にはチェックサムが一致すれば良いのですが、本筋ではないので説明は割愛します)。

 2017年12月に公開されたドライバは以下のディストリビューションのものです。

  • CentOS 7.4.1708
  • Debian 8.0.0
  • Ubuntu 14.04 長期サポート版
  • Ubuntu 17.10 通常版

 CentOSはその時点で最新のため問題ありませんが、その他が疑問が残る顔ぶれです。Debianは9.0が最新、Ubuntuの長期サポート版は16.04が最新なためです。Ubuntu 17.10は通常版のため2018年7月でサポートが切れます。

 Debian 9.0でドライバを動かせないか試した所、無理やり動かすことは可能でしたが、カーネルなどの依存関係の解消が難しく断念しました。

 Ubuntu 16.04では幸い対応するカーネルパッケージを簡単にインストールすることが出来たので、問題なくドライバも使用すること出来ました。サポートが2018年7月で切れるため、Ubuntu 17.10では確認しませんでした。

 なお、ドライバは4つのTVチューナー共通のものです。当ブログではPX-W3PE4で検証しました。

 PX-Q3PE4、PX-W3U4、PX-Q3U4では検証していませんが、ドライバのインストールと設定手順に違いは無いはずなので、共通手順として本記事をまとめています。紹介している手順に問題が見つかれば、コメント欄にて報告して頂けると助かります。

動作確認したLinuxディストリビューション

 実際に動作確認した環境は以下の3つです。リンク先は各ディストリビューションの最小構成のISOイメージファイルです。CD-RやUSBメモリに書き込んで使用して下さい。

 以降では、基本的には上記のバージョンで動かした結果をまとめています。

事前準備

 ドライバのインストールの前に準備が必要です。

 当ブログではPT3向けに「録画サーバ構築の前準備」の記事を書いています。

 PLEXのTVチューナーも途中までは全く同じ作業内容になります。上記の「arib25ライブラリのインストール」の箇所まで進めた後(PT3ドライバとrecpt1のインストールは不要)、ここに再び戻ってきて下さい。

 Linuxのディストリビューションは、先程紹介した「動作確認したLinuxディストリビューション」の一覧にまとめたものをインストールして下さい。

ドライバインストール

 それでは、事前準備が終わったものとして以降の説明を始めます。

 Ubuntu 16.04の場合のみ、ドライバのインストールの前に特定のカーネルをインストールする必要があります。インストール後、すぐ再起動します。

Ubuntu 16.04限定)
$ sudo apt-get install linux-image-extra-4.13.0-19-generic linux-headers-4.13.0-19
$ sudo reboot

 ここでひとつ注意点があります。Ubuntuでは上記バージョンのカーネルから変更しないで下さい。変更するとドライバが使用できなくなります。

 また、CentOSとDebianではカーネルのバージョンアップは行っても大丈夫ですが、ディストリビューション本体のバージョンアップ、例えばCentOS 7.4から7.5へのバージョンアップは行わないで下さい(記事投稿時にCentOS 7.5は存在しませんが……)。

 それでは、ドライバをPLEXのページからダウンロードします(この記事は2018年2月26日時点のものなので、もしドライバの更新があれば以降の文章は適宜読み替えて下さい)。

 ブラウザからダウンロードしても良いのですが、以降でwgetコマンドでダウンロードする手順を説明します。ディストリビューションごとにダウンロードするファイルが異なるので注意して下さい。

CentOS 7.4の場合)
$ wget http://plex-net.co.jp/plex/linux/CentOS7-1708_64bit_kernel3.10.0-693.zip
$ unzip CentOS7-1708_64bit_kernel3.10.0-693.zip
$ cd CentOS7-1708_64bit_kernel3.10.0-693

Ubuntu 16.04の場合)
$ wget http://plex-net.co.jp/plex/linux/Ubuntu17.10_64bit_Kernel4.13.0-19.zip
$ unzip Ubuntu17.10_64bit_Kernel4.13.0-19.zip
$ cd Ubuntu17.10_64bit_Kernel4.13.0-19

Debian 8.0の場合)
$ wget http://plex-net.co.jp/plex/linux/Debian8.0.0_64bit_kernel3.16.0-4.zip
$ unzip Debian8.0.0_64bit_kernel3.16.0-4.zip
$ cd Debian8.0.0_64bit_kernel3.16.0-4

 続いてドライバをロードします。

CentOS 7.4、Debian 8.0の場合)
$ su
# insmod tty_Virtual.ko
# insmod usb-px4.ko

Ubuntu 16.04の場合)
# sudo insmod tty_Virtual.ko
# sudo insmod usb-px4.ko

 正常にドライバがロードできているか確認します。以下の様に”usb_px4”と”tty_Virtual”が表示されれば大丈夫です。

# lsmod | grep px4

表示結果例)
  usb_px4               426584  0 
  tty_Virtual            21318  1 usb_px4

 続いてTVチューナーのデバイスファイルが作成されているか確認します。”/dev/px4-DTV*”が複数表示されれば問題ありません。

# ls /dev/px4*

表示結果例)
  /dev/px4-DTV0  /dev/px4-DTV1  /dev/px4-DTV2  /dev/px4-DTV3

 上記の表示結果例はPX-W3PE4のものですが、チューナーが合計8つあるPX-Q3PE4とPX-Q3U4では”/dev/px4-DTV7”まで表示されるはずです。

 ドライバのロード確認が正常に終わったので、ドライバディレクトリにインストールします。以降はUbuntuの手順に合わせてあるため、CentOSとDebianでは”sudo”を外して実行して下さい。

# sudo cp -p *.ko /lib/modules/`uname -r`/kernel/drivers/video
# sudo depmod

 このままだとTVチューナーのデバイスファイルにrootユーザーしかアクセス出来ないため、一般ユーザーでもアクセス可能にするための設定ファイル”99-px4.rules”を作成します。

# sudo vi /etc/udev/rules.d/99-px4.rules

 下記の内容を設定ファイルに書き込みます。

KERNEL=="px4*" GROUP="video", MODE="0666"

 PC再起動後、デバイスファイルのパーミッションを確認します。

# sudo reboot

$ ls -l /dev/px4*

表示結果例)
crw-rw-rw- 1 root video 180, 192  2月 25 00:17 /dev/px4-DTV0
crw-rw-rw- 1 root video 180, 193  2月 25 00:17 /dev/px4-DTV1
crw-rw-rw- 1 root video 180, 194  2月 25 00:17 /dev/px4-DTV2
crw-rw-rw- 1 root video 180, 195  2月 25 00:17 /dev/px4-DTV3

 所有権がユーザーroot、グループvideoで誰でも読み書き出来るようになっていればOKです。

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

 録画用コマンドのソースコードをダウンロードします。紛らわしいですが、ファイル名はLinux_Driver.zipです。

$ wget http://plex-net.co.jp/download/linux/Linux_Driver.zip
$ unzip Linux_Driver.zip
$ cd Linux_Driver/MyRecpt1/MyRecpt1/recpt1

 このままmakeすれば録画コマンドのrecpt1が生成されるのですが、PT3などと併用する場合にコマンド名が同じになってしまうため困ります(単純に実行するとPT3用のコマンドが上書きされてしまう)。

 そのため、当ブログではコマンド名を変更することをおすすめします。PLEXのチューナーだけ使用する場合は変更しなくても良いのですが、コマンド名が同じだとPT3用の設定と混同してしまう恐れがあるため、いずれにしろ変更しておいたほうが分かりやすくなるはずです。

 Makefile.inファイルを部分的に変更します(Makefileではないので注意!!)。コマンド名の後ろに”_px4”を付けます。好みの問題なので、判別しやすい名前であれば問題ありません。

$ vi Makefile.in

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

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

 古いデータを`make clean`で消去した後、makeを実行してインストールします。

$ make clean
$ sh ./configure --enable-b25
$ make

CentOS 7.4、Debian 8.0の場合)
$ su
$ make install

Ubuntu 16.04の場合)
$ sudo make install

 録画コマンドが正常に動作するか確認します。一般ユーザーで実行して下さい。

 以下は、関東で東京スカイツリーから地デジを受信している場合のNHK総合(27ch)を10秒間録画したコマンド例です。

$ recpt1_px4 --b25 --strip 27 10 ~/test.ts

 チャンネル番号はマスプロの地上デジタル放送 チャンネル一覧表で確認して下さい。

 録画したtest.tsファイルの再生確認はVLC media playerを使用します。Windows PCにコピーするか、Samba経由で行って下さい。

 ファイルが正常に再生できない場合、以下を確認して下さい。

  • arib25ライブラリをインストールせずに録画コマンドをmakeしてないか
  • アンテナ線が正常につながっているか
  • B-CASカードが正しくカードリーダーに挿さっているか

Mirakurun

 Chinachu γ(ガンマ)を使うには、Mirakurunのインストールが必要になります。

 Mirakurunのインストール手順は以下の記事にまとめてあります。PT3用としてまとめた記事ですが、実行内容はほぼ同じです。

 以下のチューナー設定の設定内容が異なるだけです。

$ sudo mirakurun config tuners

 設定内容を以下の様に変更して下さい。以下はPX-W3PE4の設定例です。

- name: PX4-S1
  types:
    - BS
    - CS
  command: recpt1_px4 --device /dev/px4-DTV0 --lnb 15 <channel> - -
  decoder: arib-b25-stream-test
  isDisabled: false

- name: PX4-S2
  types:
    - BS
    - CS
  command: recpt1_px4 --device /dev/px4-DTV1 --lnb 15 <channel> - -
  decoder: arib-b25-stream-test
  isDisabled: false

- name: PX4-T1
  types:
    - GR
  command: recpt1_px4 --device /dev/px4-DTV2 <channel> - -
  decoder: arib-b25-stream-test
  isDisabled: false

- name: PX4-T2
  types:
    - GR
  command: recpt1_px4 --device /dev/px4-DTV3 <channel> - -
  decoder: arib-b25-stream-test
  isDisabled: false

 ”/dev/px4-DTV0”などのデバイスファイルの番号は以下の規則に従います。

  • /dev/px4-DTV0,1,4,5,8,9…がBS/CS用
  • /dev/px4-DTV2,3,6,7,10,11…が地デジ用

Chinachu γ

 Chinachu γのインストール手順は以下の記事にまとめてあります。

 Mirakurunがチューナーの差異を吸収しているため、Chinachu γでPLEXチューナー固有の設定は必要ありません。記事通りの手順を実行して下さい。

epgrec UNA

 epgrec UNAでは専用のパッチを録画コマンド(recpt1)に当てないと使用できないようになっています。しかし、PLEX用コマンドのソースコードを見るとそのパッチが当たっているように見えます。

 実際にオリジナルのコマンドには存在しないはずのhttpオプションが存在します。そのため、何もしなくてもepgrec UNAで動かせるかもしれません。

 epgrec UNAのインストール方法は以下の記事にまとめています。

 後日検証してみて動くようであれば、本記事の内容を更新する予定です。