スポンサードリンク

2014年9月27日土曜日

中古パソコンで作る格安な録画サーバ

01

本稿では中古パソコンにPT3を組み込み、Debianにrecpt1やChinachuを組み合わせ、録画サーバを実現します。
ソフトウェア構築部分については以前の記事とほぼ同じですが、一部加筆修正した上で掲載しています。



中古パソコンの是非

結論ありきですが少し考えます。

メリット

  • 安い
  • しっかりしている
  • スリムタワーが充実している

中古パソコンを用いる最大の理由は「安い」ことです。今回用いた機材は送料・手数料を含めても8000円ほどで、新品であれば富士通やHPの格安サーバでない限り到底無理な価格です。

またメーカー製のパソコンは作りがしっかりしており頑丈で、部品も低廉なものは使われていないことが多いです。ヤフオクで多く出回るリース上がりのパソコンはvPro対応を謳っている製品も多く、このレベルを自作で実現しようなら、かなりの出費となります。


デメリット

  • 古い
  • 壊れやすい
  • 消費電力が高め

外見上、色あせ、キズ等があり、あまりよろしくない場合があります。

また新品に比べ壊れやすいのはあります。バスタブ曲線に代表されるように、中古パソコンは初期不良こそないものの、年月を経ているので壊れやすいです。

なによりここ数年はパソコンの省電力化が進み、あまりに世代が離れてしまうと消費電力が現行に比べ大幅に違ってしまうケースもあります。

このようなデメリットがありますが、安さだけでも中古パソコンを導入するメリットはあると考えます。


購入機材

簡単な仕様
型番PC-MY30DEZ7A
CPUCore i3-540(3.06GHz)
メモリDDR3-1333 2GB(1GB*2)
ストレージなし
ネットワークIntel 82578DM
チップセットIntel Q57 Express
グラフィックIntel HD Graphics
購入価格約8,000円(送料・手数料込み)

今回購入したのは2010年5月モデルのNEC Mate タイプME、我が4畳半にもってこいの省スペース型PCです。Intel Q57のチップセットとIntelのNICが搭載されているので、CPUをCore i5以上にするとIntel AMTが使えます。Clarkdale世代の中古CPUは安いので、手軽にアップグレードができます。

メモリは2GBです。DebianでChinachuを動かす程度ですから、不足することはありません。

ストレージはなしでの販売でした。これは私にとっては好都合で、もともと手持ちの500GBのHDDに載せ替えるつもりだったので、無駄なパーツが増えず助かりました。標準では160GBのHDDですから、付いてきたところで無駄なパーツが部屋を専有するだけです。

カタログによれば、搭載されている電源は高効率タイプ(変換効率88%以上)のものを使用しているようで、省電力にもこだわっているようです。


その他必要なもの

必要機器実際に使用したもの一般的な売価
TVチューナアースソフト PT3 Rev.A10,000円
分波器マスプロ電工 SR2-P1,000円
ICカードリーダNTT-ME SCR3310-NTTCom2,000円
B-CASカードB-CASカード 赤不明

注意が必要なのはICカードリーダです。Linuxで動作するものが必要です。手持ちの日立 HX-5200UJ.Kで試したところ、どうやっても動きませんでした。本品はWindows 7 64bitでさえ動作しなかったので当然と言えば当然かもしれません。


PT3を組み込む

では組み込んでいきます。

1.背面にある2カ所のロックを解除します。
02

2.カバーを矢印の方向をスライドし、開けます。
03

3.赤丸のねじを外し、ライザーカードを取り外します
04

4.ブラケットを外します。

5.PCIe x1スロットにPT3を挿します。

あとは順番に戻していくだけです。
最初カバーの開け方がわからず、マニュアルを熟読しなければならなかったのは秘密にしておきたいです。


OSのインストール

ソフト側を構築していきます。
Debian Wheezy 7.6をインストールしました。インストールには「debian-7.6.0-amd64-netinst.iso」を用いました。netinstイメージには余計なものが含まれていなく構築には最適です。

条件は次のとおり。
インストール言語英語
rootのパスワード空欄*
ユーザ名yutorm
taskselSSH
Standard System Utilityを選択
*空欄にすることでyutormにsudoが割り当てられる


必要なものをインストール

$ sudo apt-get install autoconf build-essential curl dkms git-core libboost-all-dev libccid libpcsclite1 libpcsclite-dev libssl-dev libtool linux-headers-`uname -r` pcsc-tools pcscd pkg-config unzip yasm


カードリーダ

Wheezyでインストールされるlibccidでは、SCR3310が標準では使用できません。設定ファイルに本品の情報を追記することで使用できるようになります。
$ sudo nano /etc/libccid_Info.plist

#3カ所に追記する
<key>ifdVendorID</key>
<array>
        <string>0x072F</string>
               --略--
        <string>0x15E1</string>
        <string>0x04E6</string>  ←追記
</array>

<key>ifdProductID</key>
<array>
        <string>0x90CC</string>
               --略--
        <string>0x2007</string>
        <string>0x511A</string>  ←追記
</array>

<key>ifdFriendlyName</key>
<array>
        <string>ACS ACR 38U-CCID</string>
          --略--
        <string>RSA RSA SecurID (R) Authenticator</string>
        <string>SCM Microsystems Inc. SCR 3310 NTTCom</string>  ←追記
</array>
サービスを再起動し、スキャンします。
$ sudo service pcscd restart
Japanese Chijou Digital B-CAS Card (pay TV)
#終了は[Ctrl] + [C]



PT3のドライバ

Gitからクローンしインストールします。
$ git clone https://github.com/m-tsudo/pt3.git
$ cd pt3/
$ make
$ sudo make install
カーネル更新後も使えるようにDKMSを設定しておきます。
$ sudo ${SHELL} ./dkms.install


arib25

arib25は復号化するために用います。
$ wget http://hg.honeyplanet.jp/pt1/archive/c44e16dbb0e2.zip
$ unzip c44e16dbb0e2.zip
$ cd pt1-c44e16dbb0e2/arib25
$ make
$ sudo make install


recpt1

recpt1は録画プログラムです。

Gitからクローンしインストールします。
$ git clone https://github.com/stz2012/recpt1.git
$ cd recpt1/recpt1
$ ./autogen.sh
$ ./configure --enable-b25
$ make
$ sudo make install
動作確認をします。
$ recpt1 --b25 --strip 13 10 /home/yutorm/nhk_edu-test.ts
# 13:物理チャンネル番号 10:10秒間保存
録画機に再生環境がない場合、他機よりストリーミング再生し確認する方法もあります。
$ recpt1 --udp --addr アドレス --port 1234 --b25 --strip 13 - /dev/null
2


Chinachu

ChinachuはEPG録画予約管理システムです。

Chinachuの実行ユーザを作成します。ここでは名前を「chinachu」にしました。
$ sudo adduser chinachu
chinachuがsudoを使えるようにします。
$ sudo visudo

#以下を追記 
chinachu ALL=(ALL:ALL) ALL
chinachuでログインします。
$ sudo -i -u chinachu
Gitからクローンしインストールします。
$ git clone git://github.com/kanreisa/Chinachu.git ~/chinachu
$ cd ~/chinachu/
$ ./chinachu installer
# 1のAuto(full) を選択
起動時に実行されるよう設定します。
$ ./chinachu service operator initscript > /tmp/chinachu-operator
$ ./chinachu service wui initscript > /tmp/chinachu-wui
$ sudo chown root:root /tmp/chinachu-operator /tmp/chinachu-wui
$ sudo chmod +x /tmp/chinachu-operator /tmp/chinachu-wui
$ sudo mv /tmp/chinachu-operator /tmp/chinachu-wui /etc/init.d/
$ sudo insserv chinachu-operator
$ sudo insserv chinachu-wui
チャンネル等の基本設定をします。私の環境はPT3を1枚挿しで、CATVを契約しています。
"tuners"はPT3以外の部分を削除、"Channels"は地上波しか映らないため、"GR"のみにしています。
$ cp config.sample.json config.json ←サンプルをコピー
$ nano config.json

#チューナとチャンネル部分のみ抜粋
  "tuners": [
    {
      "name"        : "PT3-S1",
      "isScrambling": false,
      "types"       : [ "BS", "CS" ],
      "command"     : "recpt1 --device /dev/pt3video0 --b25 --strip --sid $
    },
    {
      "name"        : "PT3-S2",
      "isScrambling": false,
      "types"       : [ "BS", "CS" ],
      "command"     : "recpt1 --device /dev/pt3video1 --b25 --strip --sid $
    },
    {
      "name"        : "PT3-T1",
      "isScrambling": false,
      "types"       : [ "GR" ],
      "command"     : "recpt1 --device /dev/pt3video2 --b25 --strip --sid $
    {
      "name"        : "PT3-T2",
      "isScrambling": false,
      "types"       : [ "GR" ],
      "command"     : "recpt1 --device /dev/pt3video3 --b25 --strip --sid $
    }
  ],

  "channels": [
    { "type": "GR", "channel": "13" },
    { "type": "GR", "channel": "14" },
    { "type": "GR", "channel": "15" },
    { "type": "GR", "channel": "C32" },
    { "type": "GR", "channel": "C33" },
    { "type": "GR", "channel": "C43" },
    { "type": "GR", "channel": "C62" },
    { "type": "GR", "channel": "C63" }
  ]
見てのとおり、recpt1のコマンドもsidオプションが指定されているなど、標準のまますぐ使えるようになっていることがわかります。

サービスを開始します。
$ sudo service chinachu-operator start
$ sudo service chinachu-wui start
ブラウザからアクセスします。初期設定では10772ポートを使用します。
http://サーバのアドレス:10772/
3
ユーザ名とパスワードを求められるので入力します。初期設定では以下のとおりです。
ユーザ名:aka ri
パスワード:baku hatsu
#どちらも空白を除くこと
後はブラウザから自分好みの設定をするだけです。


*********12/1追記*********

NTP

連続稼働を続けていると、システムの時刻が狂ってしまい、録画開始がずれ込んでしまう事象が発生しました。正しい時刻を維持するため、NTPサーバに接続し、時刻を同期します。なお、今回は特定のサーバは指定していません。
$ sudo apt-get install ntp

$ sudo nano /etc/ntp.conf

次のような初期設定をコメントアウト
#server 0.debian.pool.ntp.org iburst
#server ntp.debian.com

以下を追記
server 0.jp.pool.ntp.org
server 1.jp.pool.ntp.org
server 2.jp.pool.ntp.org
server 3.jp.pool.ntp.org

$ sudo service ntp restart ←サービスの再起動

$ ntpq -p ←ステータスの確認
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
-219x123x70x91.a 192.168.7.123    2 u   13   64   77   14.920   44.696   8.536
+laika.paina.jp  61.114.187.55    2 u    6   64   77   11.714   37.990   5.484
*v157-7-152-213. 10.84.87.146     2 u   12   64   77   12.426   40.070   4.562
+y.ns.gin.ntt.ne 95.222.122.210   2 u    8   64   77   13.203   32.488   8.377


Chinachuをアップデートする

Chinachuは開発が盛んであるため、頻繁に更新があります。ありがたいことです。
$ cd /home/chinachu/chinachu ←カレントディレクトリに移動
$ ./chinachu update
#対話形式でアップデートが実行される
*********追記終わり*********


リアルタイムで再生する

Chinachuは録画しなくともブラウザ上からリアルタイムで再生することができるので、手持ちのどんなデバイスでもテレビを見ることができます。

1.番組表の[局名]を右クリックし、[ライブ視聴]をクリックする
4
2.ストリーミングの設定を調整し、右下の[再生]をクリックする
5
3.再生される
6
このパラメータ程度だと突っかかることもなく快適に視聴できます。


録画したものを再生する

当然ですが、録画したものも再生できます。今回はM2TSコンテナを無変換で再生します。VLCが必要です。

1.録画した番組をクリックする

2.右上の[ストリーミング再生]をクリックする
05

3.映像・音声ともに[無変換]とし、[XSPF]をクリックする
06

4.再生される
07
こちらは非常にスムーズに再生されます。他機よりストリーミングしてるとは思えないほどです。


消費電力

待機時0.9W
起動時(最大)61.4W
アイドル時27.4-27.7W
録画時30.6-35.3W
再生時27.8-30.5W
TAP-TST8にて測定。接続はPT3、ICカードリーダ、LANケーブル。光学ドライブは取り外している。BIOSはほぼ出荷時設定。アイドルは起動より10分後。録画は1チャンネル。

4年前の製品にしてはがんばってる印象です。市販のレコーダが30Wぐらいだと聞きますから、そう変わりありません。


コスト

肝心なコストですが、今回掛かったのは約2万円です。市販のレコーダが購入できる値段ですが、こちらはネットワークに対応していますし、なにより自由度が桁違いなのは大きなメリットです。


使用感

Chinachuのインターフェースが優秀で、軽快に動作します。本体自体も静音なので、深夜帯の番組を録画していても睡眠の邪魔になることはありません。もちろん自作機特有のキラキラLEDはありません。

難点としてはダッシュボード上でストレージの保存容量、もしくは空き容量が表示されないところ。これが確認できればさらに便利になります。


謝辞

ここまで手軽に録画サーバを構築できるのも各種ソフト制作者様のおかげです。感謝申し上げます。


参考・関連



関連商品

マスプロ電工 VU/BS(CS)セパレーター(分波器) SR2-P
マスプロ電工 (2004-06-21)
売り上げランキング: 10,602
NTTコミュニケーションズ  接触型ICカードリーダー・ライター e-Tax Win&Mac対応 SCR3310-NTTCom
NTTコミュニケーションズ (2007-07-24)
売り上げランキング: 221

1 件のコメント: