Chinachuのrecpt1をMirakurunとRivarunに入れ替える

2017年12月13日DTVDTV, Linux

mirakurun

今までChinachu用にはrecpt1を使っていたが、MirakurunとRivarunがリリースされたので今更ながらmirakurunを噛ます設定に変更。Chinachu Ganma待機とも言える。そのときのメモ書き。

Mirakurunとは

recpt1をハックして使用されるチューナー制御用のミドルウェア、と言えば良いのだろうか。
rivarunというクライアントも用意されていて、TVTestをクライアントとして使用することにも対応しているそう(当方Windows環境がないので未確認)
詳細は公式サイトから。

Mirakurun をリリースしました。
※2017年1月追記: この記事はだいぶ内容が古くなっています。ご注意ください。 ※ロゴは仮 というわけで Mirakurun (npm) をリリースしました。と言っても npm に最初のバージョンを publish したのは3月中旬頃だったと記憶しているので、今更なお知らせかなって感じで...

それでは、インストールしてみる。Ubuntu 14.04 LTS環境。

最新のnode.jsのインストール

Ubuntuでデフォルトで入っているnode.jsのバージョンを調べたところ、下記の通りだった。あ、ちなみに当方の環境はUbuntu 14.04 LTSです。

v6.5以上なので問題なし。そのままMirakurunをインストールするのに必要なパッケージをインストールする。

Mirakurunはサービスとして既に動いているはずなので、動作を確認。

問題なし。

Mirakurunの設定

下記で設定に入る。

デフォルトではこんな感じだった。

特段変更する場所なし。

チューナーの設定

当方の環境はPT2を二枚差しなので、その設定をする。
設定はどうやらChinachuの書き方とはちょっと違うっぽい。

デフォルトでPT3用の設定が入っているので、こいつをコピペして適当に作った。

isDisabledをtrueからfalseにするのを忘れないように。

チャンネル設定

一番めんどいやつ。先人のものを参考に、というかまるまる使用して書いた。正直この記事を読むより下記の記事を読んだ方が100倍ためになる。

Mirakurunのインストール手順(Ubuntu・Debian・CentOS)
 Chinachu Airのチューナー制御部であるMirakurunのインストール手順と録画方法について説明し…

ただし、旅チャンネルが終了しMONDO TVが始まったので、その点のみ書き換えた。

そしてmirakurunを再起動。

きちんと動いているかどうかテスト

mirakurunは再起動するとepgの再取得に入る。このときにrecpt1を使用するので、まずはrecpt1が動いているかどうか確認。

動いてる。epgの取得が終わると/usr/local/var/db/mirakurun/配下にprograms.jsonとservices.jsonが出来る。前者はEPG、後者はチャンネルリスト。
ちなみに、当方環境では結構時間がかかった。また、取得できないチャンネルがあるとrecpt1を離さなくなることがある(その場合はプロセスをkillするしかない)ため、うつらないチャンネルは極力外すべき。

チャンネルリストのほうを見ると正式な名称が入ってきているので、mirakurun config channelsで設定する内容はND単位(mirakurunの設定でいうところのchannel単位)で良かったのかもしれない。

Chinachuの書き換え

下記の公式通り。

一応補足しておくと、config.jsonの冒頭にmirakurunと連動するために下記を追記。

チャンネルは先ほど設定したMirakurunに合わせる形で、チューナー部分に記載したを定義。

ちなみに、chinachuはmaster以外のブランチにしているとうまくいかないっぽい。なので、devel-betaなどを使用している場合はmasterに切り替えておく必要がある。
上記設定をおこなったのちにchinachu-wuiとchinachu-operatorを再起動して./chinachu update -fをすると、mirakurunを使用する形に変わっていることが確認できる(epgは先ほどのとおりmirakurun側で一度取得しているので、chinachu側でmirakurun経由で再取得することはないっぽい)

なお、mirakurunはデーモンにはなっていないため、再起動時に自動的に起動してくれない。rc.localに書いたりすればなんとかなるだろうが、そんなに再起動するものでもないので、rootのcrontabに下記を追記。

@reboot mirakurun start

こんな感じでChinachu環境をmirakurunにすり替えた。