水珈琲に深い意味は無いです

ChinachuをやめてCentOSにEPGStationを導入した話

こんにちは。水珈琲です。

突然ですが、この度Chinachuをやめました!

結構前から再生画面を開くとエラーが出るようになってしまい、実害がなかったので放置していたんですが気持ち悪いので思い切ってEPGStationに乗り換えました。

概要

EPGStationはChinachuのプロジェクトの一部であるmirakurunを用いたDVRソフトウェアです。(プロジェクトページ

node.js製でクロスプラットフォームなのでWindowsでも動作します。

 

大きな特徴として、以下の3つが挙げられます。

  • モバイルフレンドリー
  • 自動エンコード機能
  • 新しいプロジェクト

個人的には、細かいところに手が届くChinachuという印象です。

モバイルフレンドリー

なんと、EPGStationではアプリを入れずに、スマートフォンから簡単に管理することが出来ます。Material Design Liteというライブラリを使用している為、Webページがアプリを使用しているのと変わらない感覚で使えます。番組表も快適ですし、ライブ視聴も非常に安定しています。

ライブ

番組表

自動エンコード機能

EPGStationは自動エンコードがとても優秀です。予約時にエンコードプロファイルを指定でき、そのエンコードしたものをストリーミングすることができます!

エンコード後のTS自動削除や、フォルダ分けの指定など、細かい設定も可能です。

もちろん、エンコードのプロファイルは自分で作れます。

予約ボタン画面

新しい(後発)プロジェクト

17年9月に生まれたプロジェクトながら、既にChinachuを超えるコミット数になっています。ソフトウェアをコミット数で比べるのはあまり良くありませんが、しっかりと開発されている事が分かると思います。また、プロジェクトも現在進行系で開発されており、今から導入するならEPGStation一択だな。という印象です。

導入 – ドライバ編

コマンドは環境によって異なります。参考程度に使ってください。

依存パッケージなど

sudo yum -y install git kernel-headers kernel-devel make gcc wget curl ccid pcsc-lite pcsc-lite-devel pcsc-lite-libs bzip2 perl-ExtUtils-MakeMaker zip unzip yasm autoconf automake cmake gcc-c++ kernel-devel-`uname -r` nano mariadb mariadb-server python
sudo sh -c "curl -sL https://rpm.nodesource.com/setup_6.x | bash -"
sudo yum -y install nodejs
sudo npm install pm2 -g
sudo npm install mirakurun -g --unsafe --production
sudo npm install arib-b25-stream-test -g --unsafe

チューナードライバ

各自で導入してください。私の場合はPT3なので、

git clone https://github.com/m-tsudo/pt3.git
cd pt3
make
sudo make install

という感じです。

カードリーダドライバ

各自で導入してください。私の場合はASC39-NTTComなので、

wget https://www.acs.com.hk/download-driver-unified/9232/ACS-Unified-PKG-Lnx-115-P.zip
unzip ACS-Unified-PKG-Lnx-115-P.zip
cd acsccid_linux_bin-1.1.5/epel/7
sudo rpm -i pcsc-lite-acsccid-1.1.5-1.el7.centos.x86_64.rpm

という感じです。

カードリーダライブラリ

ライブラリのリンクはバージョンアップするとリンクが切れます。
http://ludovic.rousseau.free.fr/softwares/pcsc-perl/
http://ludovic.rousseau.free.fr/softwares/pcsc-tools/
からリンクを見つけてください。

wget http://ludovic.rousseau.free.fr/softwares/pcsc-perl/pcsc-perl-1.4.14.tar.bz2
wget http://ludovic.rousseau.free.fr/softwares/pcsc-tools/pcsc-tools-1.5.3.tar.bz2
tar xvf pcsc-perl-*
cd pcsc-perl-*
perl Makefile.PL
make
sudo make install
tar xvf pcsc-tools-*
cd pcsc-tools-*
./configure
make
sudo make install
sudo systemctl enable pcscd
sudo systemctl start pcscd

インストールが出来たら

pcsc_scan

を実行してカードを認識するかテストしましょう。確認出来たらCtrl+Cで終了します。

recpt1

“–prefix=”が大切です。これを入れる事によりrootからrecpt1コマンドを使用出来るようになります。

wget http://hg.honeyplanet.jp/pt1/archive/tip.tar.bz2
tar xvf tip.tar.bz2
cd pt1-*/recpt1/
sed -i".org" 's/pt1video/pt3video/g' pt1_dev.h 
./autogen.sh
./configure --prefix= --enable-b25
make
sudo make install

mirakurunの設定

sudo mirakurun config tuners

を実行して、チューナーの設定をします。PT3の場合は無効化フラグを消すだけでOKです。

チェックポイント

さて、ここまで出来たら一度サーバーを再起動して、テストをしておきましょう。

チューナーを認識しているか

ls /dev/pt*video* # PTシリーズ以外は各自デバイス名

電波を受信出来ているか

curl -X PUT "http://localhost:40772/api/config/channels/scan"

もし、チャンネル名が表示されない時は、チューナー設定やカードリーダが正常に動作しているかチェックしましょう。

導入 – ソフトウェア編

FFmpeg

Chinachuとは違いFFmpegを自分で導入する必要があります。公式ガイドを参考に導入しましょう。また、実際にFFmpegをビルドする時に–bindirを”/usr/local/bin”にしておくと後々楽になります。

MySQL(MariaDB)

まず、文字コードの設定とサービスの開始をします。

sudo sh -c "echo character-set-server=utf8 >> /etc/my.cnf"
sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service

その後、

mysql_secure_installation

を実行して初期設定をします。パスワードを設定した後は全てEnterで大丈夫です。

そして、

mysql -u root -p

を実行した後パスワード入力し対話モードに入ったら

create database epgstation;
grant all on epgstation.* to epgstation@localhost identified by 'mirakurun'

を実行します。DB名・ユーザー名がepgstation、パスワードがmirakurunになるように設定しています。

EPGStation

公式マニュアル通りで大丈夫です。

まとめ

まだ、一週間程度しか使用していませんが、かなり快適です。
Chinachuの開発が停滞している今、新規で導入するのはもちろん、わざわざ引っ越しても十分な価値があると思います。

新しいDVRソフトウェアの選択肢として「EPGStation」はいかがでしょうか?