chinachuからEPGStationに乗り換え

スポンサーリンク
EPGStation CentOS
アンドロイドでEPGStation
スポンサーリンク

Chinachuは衝撃的だった

初めて録画環境をLinuxに乗り換えようと奮起させてくれたのはChinachuのおかげでした。

ネットで情報を集めていくと結構なインストール例があって、導入もスムーズに行えたのもテンションが上がって楽しかったです。

設定を煮詰めて行くと。。。

しかし設定を煮詰めて行けば行くほど、痒い所に手が届かなくなり、「ここでエンコード設定変えられたらなぁ」とか「この放送はきっちり最後まで録画してほしいけど、こっちは頭削られても構わない」など欲しい機能が増えていきました。

すると最近開発が活発だとの噂を聞き調査をしたらEPGStationでした。

EPGStationはChinachuと似たような環境で作られているようですがUIがスマホ等から操作しやすいよう工夫されていたり、細かな所がなかなか良くできています。

でもまた環境を一からインストールしなおすのもちょっと・・・と思っていたので腰が重かったです。

今日試しに使ってみたいなという軽い気持ちでインストールしたら意外と簡単に乗り換えられたので紹介したいと思います。

元の環境はCentOS7、Node.jsが6(バージョン控えておくの忘れた)、Chinachu,Mirakurun,PT2という構成で話を進めて行きます。

Chinachuの停止

停止する前に今までルールを積み上げた人はどこか別にテキスト化して保存しておきましょう。jsonでよければrule.jsonを取っておくのもいいかもしれません。また録画中でない事を確認しましょう。(私録画1本飛ばしてしまいました。トホホ)

その後、私の環境はpm2による自動起動で動いていたのでpm2から停止させます。

pm2 status
pm2 stop chinachu-wui chinachu-operator
pm2 del chinachu-wui
pm2 del chinachu-operator
pm2 save

そしてNode.jsもアップグレードするので今動いているmirakurun,pm2-logrotateも停止します。

pm2 stop mirakurun
pm2 stop pm2-logrotate
pm2 save

Node.jsのアップグレード

stable版をインストールします。

curl -sL https://rpm.nodesource.com/setup_10.x | bash -
yum clean all
yum -y install nodejs

私の環境では一時node.jsがバージョンアップしてくれませんでした。再起動とか何度かしてから気が付いたのですがyumではキャッシュが残っている時があってrepoを追加しただけでは無理でした。ですのでyum clean allを実行しています。

# node -v
v10.15.3

pm2他を最新のものにします。

npm install pm2 -g
npm install mirakurun -g --unsafe --production
npm install rivarun -g
npm install arib-b25-stream-test -g --unsafe
pm2 install pm2-logrotate

現在のステータスを表示します。

pm2 status

mirakurunとpm2-logrotateだけ動いていれば成功です。

チューナー設定等はChinachuで設定完了しているはずなのでそのまま続けます。

EPGStationにはffmpegが無い

Chinachuでvaapiを利用するためにコンパイルされた方なら問題ないのですがそれ以外の方は手動でインストールする必要があります。Centos7リポジトリのffmpegは古いのでこれを機会にインストールしてしまいましょう。インストールの仕方は

自分に負けないラボラトリー様

を読ませていただきました。

ffmpeg -version

で/usr/local/binに入っているものと仮定します。

私のvaapi対応ffmpegの設定とかほしい方いますかな・・・。

mariadb(mysql)をインストール

Chinachuでは使われてない一つにmariadb(mysql)が必要になります。

sqlite等も使えるようですが、ここは例に従ってインストールしたいと思います。

yum install mariadb mariadb-server
vi /etc/my.cnf

書き換える内容としてはcharacter-set-server=utf8を追加します。

[mysqld]
  :
character-set-server=utf8

その後

systemctl enable mariadb
systemctl start mariadb
mysql_secure_installation

mysql_secure_installationの受け答えはなるべく「消せるものは消す」ということを概念に入れておいてください。

mariadbに入りDBとユーザを作っておきます。

# mysql -u root -p
> create database epgstation;
> grant all on epgstation.* to epgstation@localhost identified by 'パスワードを入力';

EPGStationのインストール

私はEPGStationをインストールするためにユーザーepgstationを作成しました。Chinachuと同じです。

useradd epgstation
passwd epgstation
su - epgstation

そしてEPGStationをgit cloneしコンフィグファイルの例をコピーします。

$ git clone https://github.com/l3tnun/EPGStation.git
$ cd EPGStation
$ sudo npm install
$ sudo npm run build
$ cp config/config.sample.json config/config.json
$ cp config/operatorLogConfig.sample.json config/operatorLogConfig.json
$ cp config/serviceLogConfig.sample.json config/serviceLogConfig.json
$ vi config/config.json

config.jsonがviで開きますので以下の箇所を変更します。

"dbType": "sqlite3",
        ↓変更
"dbType": "mysql",

以下追加
    "streamFilePath": "/tmp",
    "recorded": "/home/samba/video(録画ファイルを保存する場所に変える)",
    "mysql": {
        "host": "localhost",
        "port": 3306,
        "user": "epgstation",
        "password": "mariadbでユーザー追加した際に設定したパスワード",
        "database": "epgstation",
        "connectTimeout": 20000,
        "connectionLimit": 10
    },

EPGStationをpm2から起動します。

$ exit
# pm2 startup
# pm2 status
# pm2 start /home/epgstation/EPGstation/dist/server/index.js --name "epgstation"
# pm2 save
# pm2 status

これでepgstation、mirakurun-server、pm2-logrotateがonlineになっていれば起動されています。

http://(サーバーIP):8888/

で開けば動作完了しています。何か適当な番組を手動で録画してみて下さい。エラーが出ていなければ完成です。

あとは使ってみて「ここは何ができるんだろう」とか設定をしていく形になるのでどんどん使っていきましょう。

推奨から外れますがこの方法ならChinachuにも戻る事もできなくはなさそうです。

 

 

 

 

 

 

コメント

タイトルとURLをコピーしました