【RaspberryPi】PX-S1UDを使用する - uepon日々の備忘録を参考に
ruspberry pie へのEPG station の導入
(-1) ssh を通しておくと便利。sudo raspi-config
(0) sudo apt-get update
(1)Card reader のインストール
sudo apt install -y pcscd libpcsclite-dev libccid pcsc-tools
チェック
pcsc_scan
Japanese Chijou Digital B-CAS Card (pay TV) とかでたらOK
(2)チューナーのドライバのインストール 使っているのは、ebetter社の DTV02A-1T1S-U PC用チューナー - e-better 特定の場所に移動させる。 以下も参考に RaspberryPi 3B+ + PX-Q3U4 + EPGStation - Qiita
cd /home/pi #sudo gpasswd -a $USER video wget http://katsunoki.kilo.jp/e-better/download_file/201905-DTV02-1T1S-U.zip unzip 201905-DTV02-1T1S-U.zip
``` git clone https://github.com/nns779/px4_drv.git cd px4_drv/fwtool make cp /home/pi/DTV02-1T1S-U/Driver/x64/ISDB2056.sys . ./fwtool ISDB2056.sys it930x-firmware.bin sudo cp it930x-firmware.bin /lib/firmware/ cd ../
sudo apt-get install dkms
sudo cp -a ./ /usr/src/px4_drv-0.2.1
sudo dkms add px4_drv/0.2.1
sudo dkms install px4_drv/0.2.1
カーネルモジュールロードの確認
modprobe px4_drv lsmod | grep -e ^px4_drv
px4_drv 81920 0
となればOK. デバイスノチェック
ls /dev/isdb6*
となればOK (3)arib25ライブラリのインストール [https://www.digital-den.jp/simplelife/archives/5062:title]
sudo apt-get install cmake git clone https://github.com/stz2012/libarib25.git cd libarib25/ cmake . make sudo make install sudo sh -c "echo /usr/local/lib64 > /etc/ld.so.conf.d/usr-local-lib.conf" sudo ldconfig
(3)recpt1のインストール [https://trap.jp/post/1089/:title] [https://github.com/stz2012/recpt1:title]
sudo apt-get install automake cd recpt1/recpt1 git clone https://github.com/stz2012/recpt1.git cd recpt1/recpt1 ./autogen.sh ./configure --enable-b25 make sudo make install
チェック 以下でBS3をとれる。
recpt1 --b25 --strip BS03_1 5 ch18.ts --device /dev/isdb2056video0
--b25 --strip は暗号解除, チャンネル名 出力ファイル名 --device デバイス名 (4')外付け ハードディスクの自動マウント *これは必ずしもやる必要はない PARTUUIDの確認。外付HDをusbポートにさして [https://note.com/hitoshiarakawa/n/nac4a012e1b61] (a)partuuidの確認
pi@raspberrypi:/media $ sudo blkid /dev/mmcblk0p1: LABEL_FATBOOT="boot" LABEL="boot" UUID="AE82-4BC1" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="64bc185d-02" /dev/mmcblk0p2: LABEL="rootfs" UUID="6d2ff93e-eacd-415c-96d5-4611ad21e05f" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="64bc185d-03" /dev/sda1: LABEL="HD-ADU3" BLOCK_SIZE="512" UUID="24CA644DCA641D74" TYPE="ntfs" PARTUUID="c22a43c9-b05f-4d67-8828-a6fdf13eb43a"
(b) /etc/fstab に追記 PARTUUID(上で調べたもの)とファイルシステム(ntfs)とmountポイントは適当にかえる
PARTUUID=bae903cc-01 /media/ext_hdd ntfs defaults,nofail 0 0
(c)mount ポイントの確保 sudo mkdir /media/ext_hdd (d) 確認 df コマンドで、ハードディスクとマウントポイントの関係がでればOK.
df
/dev/sda1: LABEL="HD-ADU3" BLOCK_SIZE="512" UUID="24CA644DCA641D74" TYPE="ntfs" PARTUUID="f21d43c9-b05f-4267-8828-a6fdf13eb42b"
(4)mirakurun のインストール 4-1)Node.js のインストール mirakurun はNode.jsを使う [https://qiita.com/ww24/items/0adc36c013511524da80:title] node というパtケージをインストールしてはまった…
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs npm
sudo npm install pm2 -g sudo npm install mirakurun -g --unsafe --production
(5)EPG station のインストール バージョンが古いと怒られたならnコマンドをいれて調整する。 ffmpeg もインストールしておく
sudo apt-get install ffmpeg
[https://www.web-dev-qa-db-ja.com/ja/node.js/nodejs%E3%82%92%E6%9C%80%E6%96%B0%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E3%81%AB%E3%82%A2%E3%83%83%E3%83%97%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%89%E3%81%99%E3%82%8B/1065714518/:title]
sudo npm install n -g
sudo n stable
sudo n 14.17.0
sudo n
nでEPG station 用の14.17.10 を選ぶ。 npm -v でバージョンがでる 途中でsqlite3でつまるので、先にいいれる。バージョンも調整。 suをすると怒られる。
npm install sqlite3@5.0.2
vueで怒られた場合は手動でいれる sudo しないとこっちはダメ…
sudo npm install -g @vue/cli
heap が足りない場合 1024Bでフリーズ、512MBでヒープ不足なので、 微妙なところを選んだ。
export NODE_OPTIONS="--max-old-space-size=752"
git clone https://github.com/l3tnun/EPGStation.git cd EPGStation npm run all-install npm run build
suをしないのがポイント。 設定ファイルのコピー
cp config/config.yml.template config/config.yml cp config/operatorLogConfig.sample.yml config/operatorLogConfig.yml cp config/epgUpdaterLogConfig.sample.yml config/epgUpdaterLogConfig.yml cp config/serviceLogConfig.sample.yml config/serviceLogConfig.yml cp config/enc.js.template config/enc.js
うまくいけば、
(5)ネットワーク周りの設定 とりあえずアップデート
sudo apt update sudo apt upgrade
ubutu の ファイアーウォールをいれる
sudo apt install ufw sudo vi /etc/default/ufw
ip6=noに変更
sshの許可
sudo ufw allow from 192.168.0.0/24 to any port 22 proto tcp
EPGstationのポートの許可
Mirakurunのポートの許可
sudo ufw allow 40772/tcp sudo ufw enable sudo utw status
#ディスク関連 ディスクの確認 [https://www.neko6.info/archives/481:title]
sudo fdisk -l
マウントの例
sudo mount /dev/sdb1 /media/pi/HD-ADU3
ファイルシステムをみるには
mount
とかでてファイルシステムfuseblkを確認 /dev/sdb1 on /media/pi/HD-ADU3 type fuseblk (rw,relatime,user_id=0,group_id=0,allow_other,blksize=4096) マウントをログアウトしても継続されるのためには /etc/fstab に sdb5 や /mnt/ やext4は直す。
/dev/sdb5 /mnt/diskA ext4 defaults 0 0
等を書いておく。 https://www.neko6.info/archives/481 設定ファイル
/EPGStation/configの config.yml のあれでOK. recorded: - name: recorded #path: '%ROOT%/recorded' path: '/media/pi/HD-ADU3 '
と変更 (10)起動 #手動起動。 mirakurun の起動
sudo mirakurun start
http://xxx.xxx.xxx.xxx:40772/ 設定ファイル: /usr/local/mirakurun/tuners.yml に
- name: ISDBT2056
types:
- BS
- CS
- GR
command: recpt1 --b25 --strip --device /dev/isdb2056video0
- - isDisabled: false
する。 また、channels.yml とかく。
- name: TOKYO MX type: GR channel: '16'
- name: NHK総合 type: GR channel: '27'
- name: フジテレビ type: GR channel: '21'
- name: テレビ東京 type: GR channel: '23'
- name: テレビ東京携帯 type: GR channel: '23' serviceID: '1456'
確認
npm start
http://xxx.xxx.xxx.xxx:8888 でアクセスできる。 v1からの移行 [https://github.com/l3tnun/EPGStation/blob/master/doc/v1migrate.md:title] 色々めんどい。 とりあえず、SDcard からEPGStationを ハードディスクにコピーして実行。 EPGStation v1 の最新化。 バックアップ
$ git pull $ git checkout v1 $ npm install --no-save $ npm run build
データベース更新のため再起動
$ npm start
この辺でバグがでてもとりあえず、以下のコマンドでバックアップとれた
npm run backup FILENAME
そして、conf/conf.xxx の ffmpeg と ffprob と recorded とthumbnail の項目のパスを適切に治す。 そして、バックアップをver2にもってきて以下のコマンドで移行。
$ rm -rf data $ git checkout data $ rm -f config/*.json
けしとかないと、check DB が無限につづくことがあるので注意。 そして、
npm run v1migrate FILENAME
でビデオの録画記録が移行できる。 (7)su のパスワードを付与 ruspberry pie では、suのパスワードがついてないので、付けといたほうが良い。 バグがあると直せなくなって詰む。 (8)ハードディスクの自動マウント 外付けハードディスクの自動マウントするとsda とsdb とかが 自動的に変更になって、ubutunが緊急モードでしか再起動できなくなるので注意。 (9)ポートを変更した時に、ファイアーウォールを開け忘れないと見れないので注意。 (10)恒久化
$ sudo npm install pm2 -g $ sudo pm2 startup ubuntu $ pm2 start dist/index.js --name "epgstation" $ pm2 save
pm2 list で確認できる。