LoginSignup
22
32

More than 5 years have passed since last update.

RasPi 3で録画サーバー構築(Chinachu)

Last updated at Posted at 2018-01-01

まえがき

最近、TV番組をリアルタイム視聴するのが苦になってきたので、番組録画ができるものを探していました。
しかし、既製品を買うのはなんだか面白くないので、ラズパイで宅内用に録画サーバー構築に挑戦することにしました。
色々試行錯誤したので、忘れないためにも投稿。

注意書き

  • 個人的に利用することを目的として構築しています。録画データをWEBにアップロードしたりすると、著作権に触れると思われるのでご注意ください。
  • ド素人が書いていますので、手順に謝り等がある可能性がございます。もしご自身でサーバ構築される際は、自己責任でお願い致します。

用意したもの

ラズパイ本体

Raspberry Pi3 Model B ボード&ケースセット 3ple Decker対応 (Element14版, Pink)
¥4,571

ICカードリーダー

SCM ICカードリーダー/ライター B-CAS・住基カード対応 SCR3310/v2.0
¥1,899

ドングル

PLEX USB接続ドングル型地上デジタルTVチューナー PX-S1UD V2.0
¥4,571

SDカード

家にあった16GBを使用。8GBあれば良いようです。

コード類

USB式のキーボード、HDMIケーブル、LANケーブル

外付けHDD

I-O DATA HDD 外付けハードディスク 2TB PC/テレビ録画/日本製/土日サポート EX-HD2CZ
¥6,708
2TBじゃ少ないかも。。。(知人曰く5TBは必要らしい)

ラズパイの設定

RaspbianをSDカードに焼くまで

RaspbianのDL

公式サイトRASPBIAN STRETCH LITEのZIPファイルをDLする。
スクリーンショット 2018-01-01 10.12.32.png

SDカードをフォーマット(Mac)

SDカードのフォーマット を参照ください。

RaspbianをSDカードに焼く(Mac)

MACでOSイメージを焼く を参照ください。

ラズパイを起動

キーボードとモニターに接続して、電源ON。
raspberry login: と表示されれば起動OK!

画面右上にイナズママークがチラチラ表示される(トラブルシューティング)

こんな表示が右上に表示される場合は、電源供給不足です。
参考:Raspberry Pi 3 Model B で遊んでみる - 電力不足になったら

私もUSBポートから電源供給していたので、このマークが出ていてOSが起動しませんでした(これで1時間くらい足止め・・・)

ログイン

初期は、以下の通り。

項目
login ID pi
Password raspberry

SSH接続設定

raspi-configでSSHを設定

sudo raspi-config

その後以下選択
5 Interfacing Options >> P2 SSH >> Yes

ロケーション設定

SSH設定から続き、raspberry-configでロケーションを設定
4 Localisation Options >> I2 Change Timezone >> Asia >> Tokyo

録画サーバーの設定

同軸ケーブルとB-CASの認識確認

$ lsusb | grep VidzMedia
Bus 001 Device 004: ID 3275:0080 VidzMedia Pte Ltd

$ ls /dev/dvb
adapter0

$ sudo apt -y install build-essential automake pkg-config
~~(中略)~~
utomake (automake) in auto mode

何を見ているかは不明。
とりあえず出てくればOK?

PX-S1UD firmware のインストール

ドライバは kernel に組み込まれていますが、別途 firmware が必要なので配置します。

sudo apt -y install unzip
wget http://plex-net.co.jp/plex/px-s1ud/PX-S1UD_driver_Ver.1.0.1.zip
unzip PX-S1UD_driver_Ver.1.0.1.zip
sudo cp PX-S1UD_driver_Ver.1.0.1/x64/amd64/isdbt_rio.inp /lib/firmware
sudo reboot now

再起動が終わったら、以下続き。

カードリーダーの設定

aptのupdate

sudo apt-get update

ドライバのインストール

sudo apt -y install pcscd libpcsclite-dev pcsc-tools
#少し時間かかる。

読み込み確認

pcsc_scan

以下のように表示されれば、OK

Japanese Chijou Digital B-CAS Card (pay TV)

なお、このコマンドの結果が
Card state: Card inserted, Unresponsive card,
などと表示されて止まってしまう場合は、B-CASカードの挿入の裏表が逆になっていないか確認してください。
通常白地に注意事項がたくさん書かれている側が、LEDランプ側に来るように挿します。また正常に挿されている場合は緑のLEDランプが点滅します。LEDランプが点灯(ついたまま)になっている場合は読めていません。
http://linux-memo.net/kaden/chidejiserver_ubuntu9-10_4configure.html

インストール

cd /usr/local/src
curl -sL https://github.com/stz2012/libarib25/archive/09770e3.tar.gz | sudo tar zxv
cd libarib25-09770e334837f6c67268c41c1c15784373d35e5b
sudo chown -R $(whoami) .
make
sudo make install
cd /usr/local/src
curl -sL http://www13.plala.or.jp/sat/recdvb/recdvb-1.3.1.tgz | sudo tar zxv
cd recdvb-1.3.1
sudo chown -R $(whoami) .
./autogen.sh
./configure --enable-b25
make
sudo make install

VLC等でストリーミング再生可能

ホワイトリスト登録

再生可能するには、再生する端末のIPアドレスを、ホワイトリストに入れる必要ある。

#Viで/etc/hostsを開く。
sudo vi /etc/hosts

#以下表示内容
127.0.0.1       localhost
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

127.0.1.1       raspberrypi
192.168.1.4     win7         #この行追加

viコマンド

動作 コマンド
カーソルの右側に挿入 a
カーソルの左側に挿入 i
入力モードから抜ける [esc]
保存して閉じる :wq
保存せずに閉じる :q!

再生開始

$ recdvb --b25 --strip --http 8080

VLCで再生

VLC > ファイル > ネットワークストリームを開く

スクリーンショット 2017-12-29 16.41.25.png

http://192.168.1.10:8080/25と入力し、再生を押す。
再生できれば、成功。
スクリーンショット 2017-12-29 16.39.10.png

うまくいかない場合

当たり前ですが、USBの抜き差しとraspiの再起動。

Node.jsインストール

MirakurunはNode.jsのver8には非対応とのこと

スクリーンショット 2017-12-29 16.48.01.png
https://github.com/Chinachu/Mirakurun

#ver6をインストール
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs

Mirakurunをインストール

公式参照 https://github.com/Chinachu/Mirakurun

sudo npm install pm2 -g
sudo npm install mirakurun -g --unsafe --production

Rivarunもインストール

sudo npm install rivarun -g

これはなんだろう?

チューナーの設定

Mirakurunがインストールされると、/usr/local/etc/mirakurunに3つの設定ファイルが生成される。
設定が必要なのは、tuners.ymlとchannels.ymlの2つ。
tuners.ymlでは、チューナーの設定を行う。

とのことですので、viで設定追記。

$Vi /usr/local/etc/mirakurun/tuners.yml

#以下追加内容
- name: PX-S1UD-1
  types:
    - GR
  command: recdvb --b25 --strip <channel> - -

追記が終わったら、再起動

sudo mirakurun restart

チャンネル情報の取得

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

うまくいけば、こんな感じで表示されます。
スクリーンショット 2017-12-29 17.30.29.png

Chinachuのインストール

まずはGitのインストール

sudo apt-get install git

公式参照 https://github.com/Chinachu/Chinachu/wiki/Gamma-Installation-V2

git clone git://github.com/kanreisa/Chinachu.git ~/chinachu
cd ~/chinachu/
./chinachu installer
# Auto を選択

このAutoのインストールが長い長い。
実際測ったことがないのですが、数十分では終わりません^^;
Autoを実行したら、放置が得策。

設定

cp config.sample.json config.json
vi config.json

とりあえず以下だけ設定すれば、動きました。

"uid" には通常 1000 または "実行ユーザー名" を指定します。

後は必要に応じて設定ください。

空ファイルの作成。

echo [] > rules.json

動作チェック

./chinachu service wui execute
# 問題なく起動できたらCtrl+\で終了

./chinachu update
# EPG取得テスト(エラーが出た場合は恐らく Mirakurun に接続できていません)

サービス開始・スタートアップ登録

sudo pm2 start processes.json
sudo pm2 save

#最後に再起動。
sudo reboot now

ブラウザでChinachu起動

http://192.168.1.10:20772/ にアクセスして表示されればOK!
スクリーンショット 2017-12-30 15.35.39.png

実際に使ってみての感想

なぜか、ライブ視聴ができない?

私だけかもしれませんが、ライブ視聴(ストリーミング視聴も)ができませんでした。
まあ録画用のため、ライブ視聴はできなくても問題はありませんが、気持ち悪い。。。
ラズパイのスペック不足かな??

案外容量を食う

だいたい30分アニメで2.6GB、紅白だと30GBくらい食いそう。
mp4にエンコードすれば、多少小さくできるようですが、ラズパイにそれをやらせるとヒートアップしそうなのでやめた。
まあDLしてWinで XMedia Recode 使ってエンコードでもしようか と考え中。

これだけ出来れば、十分

ルール設定で、歌手やグループの名前から予約せってもできる。
あまりテレビを見ない私にとっては、これだけできれば十分。

参考

以下サイトを参考にさせていただきました。
ありがとうございます。

22
32
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
32