Chinachu β(ベータ)インストール手順(Ubuntu・Debian編)
最終更新日:2017/02/01
Ubuntu・DebianにChinachu β(ベータ)をインストールする手順を説明します。
最新のChinachu γ(ガンマ)については、本ブログ記事の『Chinachu γ(ガンマ) インストール手順(Ubuntu・Debian編)』をご参照下さい。
本記事で取り扱うTVチューナーボードはPT3 Rev.Aです。
なお、本記事はUbuntuを基準にして作成しているため、rootで実行するコマンドではsudoを使用しています。sudo実行箇所は、Debianではrootになって先頭のsudoを省略して入力してください。Debianでsudoコマンドをインストールしたい場合、前準備の記事にsudoのインストール方法をまとめているので、そちらをご参照下さい。
スポンサーリンク
目次 [hide]
Chinachu
Chinachu専用のユーザーchinachuを作成して作業します。普段使用しているユーザーでそのまま作業しても特に問題ありません。ただし、rootでインストール作業しないで下さい。
Chinachuインストール
ユーザーchinachuを追加します。
# sudo adduser chinachu パスワード入力以外はEnterキー押下のみでOKです。 |
以降はユーザーchinachuになって作業を進めます。
Ubuntuの場合) # sudo -i -u chinachu Debianの場合) # su - chinachu $ git clone git: //github .com /kanreisa/Chinachu .git ~ /chinachu $ cd ~ /chinachu $ . /chinachu installer [!] These are installed under all /home/chinachu/chinachu/ ... [!] Recommend the Auto installation. 1) Auto (full) 5) Node.js Modules 9) libfdk-aac 2) Auto (fast) 6) epgdump 10) libogg 3) submodule 7) libx264 11) libvorbis 4) Node.js Environment 8) libvpx 12) ffmpeg what do you install ? > 1 ← "Auto (full)" を選択 多少時間がかかりますが、10分未満で終わります。 |
設定ファイル作成
インストール完了後、録画予約用の空ファイルを生成しておきます。
$ echo "[]" > rules.json |
続いてChinachuの設定ファイルを作成します。
$ cp config.sample.json config.json $ vi config.json |
下記は東京スカイツリー及び東京タワーから地デジを受信している場合の設定例です。本記事はPT3 Rev.A向けの内容のため、KEIAN KTV-FSUSB2の設定は削除しています(tunersのFSUSB2の設定箇所)。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 | { "recordedDir" : "./recorded/" , ← 録画用ディレクトリ、必要なら変更 "temporaryDir" : "/tmp/" , "schedulerEpgRecordTime" : 180, ← 追記必須、EPG取得時間、単位:秒(番組表歯抜け対策) "wuiUsers" : [ "akari:bakuhatsu" ← "ユーザー名:パスワード" 、変更必須 ], "wuiPort" : 10772, ← 接続ポート番号、出来れば変更 "wuiHost" : "::" , "wuiTlsKeyPath" : null , "wuiTlsCertPath" : null , "wuiOpenServer" : false , "wuiOpenPort" : 20772, "wuiPreviewer" : true , "wuiStreamer" : true , "wuiFiler" : true , "wuiConfigurator" : true , "recordedFormat" : "[<date:yymmdd-HHMM>][<type><channel>][<tuner>]<title>.ts" , "tuners" : [ { "name" : "PT3-S1" , "isScrambling" : false , "types" : [ "BS" , "CS" ], "command" : "recpt1 --device /dev/pt3video0 --b25 --strip --sid <sid> <channel> - -" }, { "name" : "PT3-S2" , "isScrambling" : false , "types" : [ "BS" , "CS" ], "command" : "recpt1 --device /dev/pt3video1 --b25 --strip --sid <sid> <channel> - -" }, { "name" : "PT3-T1" , "isScrambling" : false , "types" : [ "GR" ], "command" : "recpt1 --device /dev/pt3video2 --b25 --strip --sid <sid> <channel> - -" }, { "name" : "PT3-T2" , "isScrambling" : false , "types" : [ "GR" ], "command" : "recpt1 --device /dev/pt3video3 --b25 --strip --sid <sid> <channel> - -" } ], "channels" : [ { "type" : "GR" , "channel" : "27" }, { "type" : "GR" , "channel" : "26" }, { "type" : "GR" , "channel" : "25" }, { "type" : "GR" , "channel" : "24" }, { "type" : "GR" , "channel" : "22" }, { "type" : "GR" , "channel" : "23" }, { "type" : "GR" , "channel" : "21" }, { "type" : "GR" , "channel" : "16" }, { "type" : "GR" , "channel" : "28" }, { "type" : "BS" , "channel" : "101" }, { "type" : "BS" , "channel" : "102" }, { "type" : "BS" , "channel" : "103" }, { "type" : "BS" , "channel" : "141" }, { "type" : "BS" , "channel" : "151" }, { "type" : "BS" , "channel" : "161" }, { "type" : "BS" , "channel" : "171" }, { "type" : "BS" , "channel" : "181" }, { "type" : "BS" , "channel" : "191" }, { "type" : "BS" , "channel" : "192" }, { "type" : "BS" , "channel" : "193" }, { "type" : "BS" , "channel" : "200" }, { "type" : "BS" , "channel" : "201" }, { "type" : "BS" , "channel" : "202" }, { "type" : "BS" , "channel" : "211" }, { "type" : "BS" , "channel" : "222" }, { "type" : "BS" , "channel" : "231" }, { "type" : "BS" , "channel" : "232" }, { "type" : "BS" , "channel" : "233" }, { "type" : "BS" , "channel" : "234" }, { "type" : "BS" , "channel" : "236" }, { "type" : "BS" , "channel" : "238" }, { "type" : "BS" , "channel" : "241" }, { "type" : "BS" , "channel" : "242" }, { "type" : "BS" , "channel" : "243" }, { "type" : "BS" , "channel" : "244" }, { "type" : "BS" , "channel" : "245" }, { "type" : "BS" , "channel" : "251" }, { "type" : "BS" , "channel" : "252" }, { "type" : "BS" , "channel" : "255" }, { "type" : "BS" , "channel" : "256" }, { "type" : "BS" , "channel" : "258" }, { "type" : "CS" , "channel" : "CS8" , "sid" : "055" }, { "type" : "CS" , "channel" : "CS4" , "sid" : "100" }, { "type" : "CS" , "channel" : "CS22" , "sid" : "161" }, { "type" : "CS" , "channel" : "CS8" , "sid" : "218" }, { "type" : "CS" , "channel" : "CS8" , "sid" : "219" }, { "type" : "CS" , "channel" : "CS4" , "sid" : "223" }, { "type" : "CS" , "channel" : "CS4" , "sid" : "227" }, { "type" : "CS" , "channel" : "CS24" , "sid" : "229" }, { "type" : "CS" , "channel" : "CS18" , "sid" : "240" }, { "type" : "CS" , "channel" : "CS4" , "sid" : "250" }, { "type" : "CS" , "channel" : "CS12" , "sid" : "254" }, { "type" : "CS" , "channel" : "CS24" , "sid" : "257" }, { "type" : "CS" , "channel" : "CS18" , "sid" : "262" }, { "type" : "CS" , "channel" : "CS16" , "sid" : "290" }, { "type" : "CS" , "channel" : "CS14" , "sid" : "292" }, { "type" : "CS" , "channel" : "CS14" , "sid" : "293" }, { "type" : "CS" , "channel" : "CS6" , "sid" : "294" }, { "type" : "CS" , "channel" : "CS2" , "sid" : "296" }, { "type" : "CS" , "channel" : "CS22" , "sid" : "297" }, { "type" : "CS" , "channel" : "CS2" , "sid" : "298" }, { "type" : "CS" , "channel" : "CS2" , "sid" : "299" }, { "type" : "CS" , "channel" : "CS24" , "sid" : "300" }, { "type" : "CS" , "channel" : "CS16" , "sid" : "305" }, { "type" : "CS" , "channel" : "CS20" , "sid" : "307" }, { "type" : "CS" , "channel" : "CS20" , "sid" : "308" }, { "type" : "CS" , "channel" : "CS20" , "sid" : "309" }, { "type" : "CS" , "channel" : "CS14" , "sid" : "310" }, { "type" : "CS" , "channel" : "CS16" , "sid" : "311" }, { "type" : "CS" , "channel" : "CS22" , "sid" : "312" }, { "type" : "CS" , "channel" : "CS18" , "sid" : "314" }, { "type" : "CS" , "channel" : "CS24" , "sid" : "321" }, { "type" : "CS" , "channel" : "CS22" , "sid" : "322" }, { "type" : "CS" , "channel" : "CS6" , "sid" : "323" }, { "type" : "CS" , "channel" : "CS12" , "sid" : "325" }, { "type" : "CS" , "channel" : "CS8" , "sid" : "326" }, { "type" : "CS" , "channel" : "CS6" , "sid" : "329" }, { "type" : "CS" , "channel" : "CS12" , "sid" : "330" }, { "type" : "CS" , "channel" : "CS22" , "sid" : "331" }, { "type" : "CS" , "channel" : "CS16" , "sid" : "333" }, { "type" : "CS" , "channel" : "CS8" , "sid" : "339" }, { "type" : "CS" , "channel" : "CS6" , "sid" : "340" }, { "type" : "CS" , "channel" : "CS6" , "sid" : "341" }, { "type" : "CS" , "channel" : "CS4" , "sid" : "342" }, { "type" : "CS" , "channel" : "CS16" , "sid" : "343" }, { "type" : "CS" , "channel" : "CS8" , "sid" : "349" }, { "type" : "CS" , "channel" : "CS22" , "sid" : "351" }, { "type" : "CS" , "channel" : "CS16" , "sid" : "353" }, { "type" : "CS" , "channel" : "CS6" , "sid" : "354" }, { "type" : "CS" , "channel" : "CS24" , "sid" : "362" }, { "type" : "CS" , "channel" : "CS4" , "sid" : "363" }, { "type" : "CS" , "channel" : "CS10" , "sid" : "800" }, { "type" : "CS" , "channel" : "CS10" , "sid" : "801" }, { "type" : "CS" , "channel" : "CS10" , "sid" : "802" }, { "type" : "CS" , "channel" : "CS10" , "sid" : "805" } ] } |
51行目から59行目のGRの地デジ設定は現在住んでいる地域に合わせて変更して下さい(参考:マスプロの地上デジタル放送 チャンネル一覧表)。また、61行目以降のBS、CSの設定は契約しているチャンネルに合わせて間引いて下さい。チャンネル番号とチャンネル名の関係が分からないと思うので、下記にチャンネル一覧の表を作成しました。
EPG取得時間延長の追加、ユーザー名、パスワード、接続ポート番号は適宜変更して下さい。
作成したconfig.jsonのフォーマットチェックはこちらで行うことができます。config.jsonファイルの内容をコピペして”Validate”ボタンをクリックすれば確認できます。
・BSチャンネル一覧
種別 | チャンネル番号 | チャンネル名 |
---|---|---|
公共 | 101 | NHK BS1 |
公共 | 102 | NHK BS1(サブ) |
公共 | 103 | NHK BSプレミアム |
無料 | 141 | BS日テレ |
無料 | 151 | BS朝日 |
無料 | 161 | BS-TBS |
無料 | 171 | BSジャパン |
無料 | 181 | BSフジ |
有料 | 191 | WOWOWプライム |
有料 | 192 | WOWOWライブ |
有料 | 193 | WOWOWシネマ |
有料 | 200 | スターチャンネル1 |
有料 | 201 | スターチャンネル2 |
有料 | 202 | スターチャンネル3 |
無料 | 211 | BS11 |
無料 | 222 | TwellV |
無料 | 231 | 放送大学 |
無料 | 232 | 放送大学 |
無料 | 233 | 放送大学 |
有料 | 234 | グリーンチャンネル |
有料 | 236 | BSアニマックス |
有料 | 238 | FOXスポーツ&エンターテイメント |
有料 | 241 | BSスカパー! |
有料 | 242 | J SPORTS 1 |
有料 | 243 | J SPORTS 2 |
有料 | 244 | J SPORTS 3 |
有料 | 245 | J SPORTS 4 |
有料 | 251 | BS釣りビジョン |
有料 | 252 | イマジカBS・映画 |
有料 | 255 | 日本映画専門チャンネル |
有料 | 256 | ディズニー・チャンネル |
無料 | 258 | Dlife |
・東経110度CSチャンネル一覧
Slot | SID | チャンネル名 |
---|---|---|
CS8 | 055 | ショップチャンネル |
CS4 | 100 | スカパー!プロモ |
CS2 | 161 | QVC |
CS8 | 218 | 東映チャンネル |
CS8 | 219 | 衛星劇場 |
CS4 | 223 | チャンネルNECO |
CS4 | 227 | ザ・シネマ |
CS24 | 229 | FOXムービー |
CS18 | 240 | ムービープラスHD |
CS4 | 250 | sky・Aスポーツ+ |
CS12 | 254 | GAORA |
CS24 | 257 | 日テレG+ HD |
CS18 | 262 | ゴルフネットHD |
CS16 | 290 | SKY STAGE |
CS14 | 292 | 時代劇専門chHD |
CS14 | 293 | ファミリー劇場HD |
CS6 | 294 | ホームドラマCH |
CS2 | 296 | TBSチャンネル1 |
CS22 | 297 | TBSチャンネル2 |
CS2 | 298 | テレ朝チャンネル1 |
CS2 | 299 | テレ朝チャンネル2 |
CS24 | 300 | 日テレプラス |
CS16 | 305 | チャンネル銀河 |
CS20 | 307 | フジテレビONE |
CS20 | 308 | フジテレビTWO |
CS20 | 309 | フジテレビNEXT |
CS14 | 310 | スーパー!ドラマHD |
CS16 | 311 | AXN |
CS22 | 312 | FOX |
CS18 | 314 | 女性ch/LaLa |
CS24 | 321 | スペシャプラス |
CS22 | 322 | スペースシャワーTV |
CS6 | 323 | MTV HD |
CS12 | 325 | エムオン!HD |
CS8 | 326 | ミュージック・エア |
CS6 | 329 | 歌謡ポップス |
CS12 | 330 | キッズステーション |
CS22 | 331 | カートゥーン |
CS16 | 333 | AT-X |
CS8 | 339 | ディズニージュニア |
CS6 | 340 | ディスカバリー |
CS6 | 341 | アニマルプラネット |
CS4 | 342 | ヒストリーチャンネル |
CS16 | 343 | ナショジオチャンネル |
CS8 | 349 | 日テレNEWS24 |
CS22 | 351 | TBSニュースバード |
CS16 | 353 | BBCワールド |
CS6 | 354 | CNNj |
CS24 | 362 | 旅チャンネル |
CS4 | 363 | 囲碁・将棋チャンネル |
CS10 | 800 | スカチャン0 |
CS10 | 801 | スカチャン1 |
CS10 | 802 | スカチャン2 |
CS10 | 805 | スカチャン3 |
動作確認
Chinachuのサービスが正常に起動するかどうかを確認します。実行結果として以下のように表示されれば成功です。
$ . /chinachu service operator execute 30 Aug 19:22:29 - READ: ` /home/chinachu/chinachu/data/reserves .json` is updated. 30 Aug 19:22:29 - READ: ` /home/chinachu/chinachu/data/recorded .json` is updated. 30 Aug 19:22:30 - SPAWN: node app-scheduler.js -f (pid=21535) 30 Aug 19:22:30 - STREAM: . /log/scheduler Ctrl+Cで抜ける |
続いてEPG取得のテストを行います。正常終了すれば成功です。本記事の通りEPG取得時間を180秒に設定した場合、終了までそれなりに時間がかかります。終わるまで気長に待ちましょう。
$ . /chinachu update -f |
起動設定
PCを起動した時にChinachuのサービスが起動するようにします。まず、起動スクリプトを生成します。
$ . /chinachu service operator initscript > /tmp/chinachu-operator $ . /chinachu service wui initscript > /tmp/chinachu-wui |
続いてChinachuのサービスを/etc/init.dから起動できるようにします。以下はsudoまたはsuでrootになって実行して下さい。
# cd /tmp # sudo chown root:root chinachu-* # sudo chmod 755 chinachu-* # sudo mv chinachu-* /etc/init.d/ # sudo update-rc.d chinachu-operator defaults # sudo update-rc.d chinachu-wui defaults # sudo service chinachu-operator start # sudo service chinachu-wui start |
最終的にpsコマンド実行結果として以下のように表示されれば成功です。
# ps ax | grep chinachu 1048 ? S 0:00 /bin/bash /home/chinachu/chinachu/chinachu service operator execute 1050 ? S 0:00 /bin/bash /home/chinachu/chinachu/chinachu service wui execute |
ページアクセス
ブラウザからChinachuのページにアクセスします。URLは”http://録画サーバのIPアドレス:接続ポート番号”です。接続ポート番号を変更していない場合、デフォルトは10772になります。ユーザー名とパスワードのデフォルトは”akari”、”bakuhatsu”です。外部から録画できるようにしたい場合、いずれも変更しておいたほうが良いです。
この段階で番組表が正常に表示されていれば設定完了です。
個人的に少し迷った操作内容を挙げておきます。
- ライブ視聴はテレビ局名を右クリックする。
- ストリーミング再生はコンテナにWebMを選択して「再生」ボタンをクリックする。
- 録画番組はMP4でも再生可
- TSファイルを無劣化で再生したい場合、以下の手順で可能。
- コンテナにM2TSを選択し、映像と音声のコーデックも無変換を選択。
- 「XSPF」ボタンをクリックしてPCに保存。
- 保存したXSPFファイルをダブルクリックしてVLC media playerで再生する。
- ユーザー名とパスワードを入力すれば再生開始。
- 手動での録画予約は番組表にて番組を右クリックすることで行う。
- キーワードでの録画予約はルール作成にて行う(以下の2つの方法)。
- 番組表にて番組を右クリックして「ルール作成」を選択。
- メニューの「ルール」をクリックする。
録画用ディレクトリの変更方法
本記事中で少し触れていますが、録画用ディレクトリの変更方法について改めて説明します。
本記事通りに作業すると録画用ディレクトリは”/home/chinachu/chinachu/recorded”になっています(初回録画時に作成される)。例えば”/home/share/chinachu”ディレクトリに変更したい場合、最初に設定ファイルを変更します。
# sudo vi /home/chinachu/chinachu/config.json 下記の "recordedDir" を変更したいディレクトリに変えます。 "recordedDir" : "/home/share/chinachu/" , |
続いて、録画中でないことを確認して、サービスを再起動します。録画済みのTSファイルがある場合、元ディレクトリからの移動を忘れずに!
# sudo service chinachu-operator restart # sudo service chinachu-wui restart |
Chinachuのアップデート方法
Chinachuのアップデート方法は下記コマンドを実行するだけです。あらかじめ、Chinachuのサービスを停止してから実行して下さい。途中Yes/Noの選択で一時停止するかもしれませんが、基本的に全てEnterキー押下で大丈夫です。
$ . /chinachu updater |
録画終了後のエンコード
当ブログで録画終了後にH.264でエンコードするスクリプトを作成しました。良かったら使ってみて下さい。
外出先から録画予約する方法
実現するのはかなり面倒なのですが、比較的安全に外部から接続する方法としてSoftEther VPNを使った方法を紹介します。
録画サーバを外部から接続する方法としてまとめましたが、実際には外部から家のLANにアクセスする方法なので、LANに接続する機器全てにアクセス可能になります。