Site Tools


it:rpi:rec_server

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
it:rpi:rec_server [2020/03/09 01:51] – [mirakurunのインストール] fuit:rpi:rec_server [2020/05/17 18:58] (current) – [エラー] fu
Line 6: Line 6:
  
 === software === === software ===
-フロントエンド(GUI,WEBUI,予約管理) 
-  *  EPGStation 
-Chinachuというのもあるが,EPGStationの方が開発が活発のようなので,こちらを選ぶ 
  
-バックエンド(APIサーバ,チューナー,チャンネル管理)  
-  *  mirakurun 
-これにより,RESTで外部からアクセスできるようになる 
  
-録画コマンド +^ ^使用ソフト^機能^ 
-  *  recfsusb2n +|フロントエンド|EPGStation|GUI,WEBUI,予約管理| 
-チューナ機器からデータを読み出すプログラム+|バックエンド|mirakurun|APIサーバ(RESTインターフェース),チューナー,チャンネル管理| 
 +|録画プログラム|recfsusb2n|チューナ機器からデータを読み出すコマンド|
  
 +フロントエンドには,Chinachuというのもあるが,EPGStationの方が開発が活発のようなのでEPGstationを選んだ
  
 +mirakurunはrecfsusb2nを呼び出して,テレビのデータを取り出す。EPGStationはmirakurunのAPIを用いて,データを取得する。テレビのストリーミングのデータすら,APIで取得し,フロントエンドのEPGStationはrecfsusb2nを呼び出すことはないようだ。
 ==== OS のインストール ==== ==== OS のインストール ====
-NOOBSで入れたが,HDMIのポートが正しいほうでないと表示されないので,注意。 
  
 + [[it:rpi:raspbian|Raspbianのインストール]] を参照して,インストールする
 +
 +その後,
 +   sudo apt update
 +   sudo apt upgrade
 +を実行しておく
  
 ==== recfsusb2n のインストール ==== ==== recfsusb2n のインストール ====
Line 73: Line 75:
   command: /usr/local/bin/recfsusb2n --b25 <channel> - -   command: /usr/local/bin/recfsusb2n --b25 <channel> - -
   isDisabled: false   isDisabled: false
 +
 +
 +- name: KTV-FSUSB2N
 +  types:
 +    - GR
 +  command: /usr/local/bin/recfsusb2n --b25 <channel> - -
 +  isDisabled: false 
 </code> </code>
 +(この記述で,二台のチューナーを同時に使える)
 +
 +さらに
 +<code>
 +sudo mirakurun config channels
 +</code>
 +で,以下を記述する
 +<code>
 +- name: NHKEテレ
 +  type: GR
 +  channel: '22'
 +- name: TVQ九州放送
 +  type: GR
 +  channel: '26'
 +- name: NHK総合
 +  type: GR
 +  channel: '27'
 +- name: RKB毎日放送
 +  type: GR
 +  channel: '30'
 +- name: KBCテレビ
 +  type: GR
 +  channel: '31'
 +- name: FBS福岡放送
 +  type: GR
 +  channel: '32'
 +- name: テレビ西日本
 +  type: GR
 +  channel: '34'
 +</code>
 +
  
 上記の処理で /usr/local/etc/mirakurun/* に設定ファイルが書き込まれる。 上記の処理で /usr/local/etc/mirakurun/* に設定ファイルが書き込まれる。
  
 <code> <code>
-mirakurun restart+sudo mirakurun restart
 </code> </code>
 で起動する。起動しない場合には /usr/local/var/log/ 以下の mirakurun.* にログがでているので確認する。 で起動する。起動しない場合には /usr/local/var/log/ 以下の mirakurun.* にログがでているので確認する。
Line 96: Line 136:
  
 で確認できる で確認できる
 +
 +
 +==== EPGStation ===
 +
 +<code>
 +sudo gpasswd -a $USER video
 +</code>
 +
 +<code>
 +git clone https://github.com/l3tnun/EPGStation.git
 +cd EPGStation
 +npm install --unsafe-perm sqlite3
 +npm install diskusage
 +npm install
 +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
 +</code>
 +
 +<code>
 +vi ~/EPGStation/config/config.json
 +    "ffmpeg": "/usr/bin/ffmpeg",
 +    "ffprobe": "/usr/bin/ffprobe",
 +    "recorded": "/path/to/",
 +    "recordedTmp": "/path/to/",
 +</code>
 +
 +<code>
 +pm2 startup
 +pm2 start dist/server/index.js --name "epgstation"
 +pm2 save
 +</code>
 +
 +以上で設定が済んだら,
 +    http://192.168.1.140:8888/
 +でアクセスして動作するか確認する。
 +
 +
 +==== エラー ===
 +
 +/usr/local/var/log/mirakurun.stderr.log に以下のエラーが出ていた
 +
 +    2020-03-10T12:49:11.779+09:00 warn: TSFilter is overflowing the buffer...
 +
 +それで,
 +    npm update -g core-js set-value npm
 +を実行した
 +
 +さらに、この問題は、バッファのオーバーフローなので、
 +
 +/usr/local/etc/mirakurun/server.yml を編集して
 +以下を追加して、バッファサイズを512Mにした
 +
 +    highWaterMark: 536870912
 +
 +さらに、
 +/usr/lib/node_modules/mirakurun/processes.json
 +を編集して、プロセスサイズの最大値を2048Mに変えてみた。
 +
 +    "node_args" : "--max_old_space_size=2048",
 +
 +==== エラー ===
 +再起動時にスタートしない問題
 +
 +    pm2 startup
 +を実行すると,
 +<code>
 +[PM2] To setup the Startup Script, copy/paste the following command:
 +sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp /home/pi
 +</code>
 +と出たので,
 +
 +    sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp /home/pi
 +    
 +を実行した    
 +    
 +==== アップデート ===
 +
 +mirakurunのアップデート
 +<code>
 +# npm install mirakurun@latest -g --production
 +</code>
 +
 +EPGStationのアップデート
 +
 +<code>
 +# su pi
 +$ cd EPGStation
 +$ git pull
 +</code>
  
it/rpi/rec_server.1583686317.txt.gz · Last modified: by fu