本ドキュメントの更新情報など

2011年10月4日
2011年10月及び2012年4月より始まる「新BS」に対応するようドキュメントを一部書き直しています。
また、アプリケーションのバージョンアップにより作法が変わっているのでその部分も修正しています。

前提とする構成

構成としてはサーバー (以下「鯖」) とクライアント (以下「倉」) 構成にする。
鯖では録画と倉へのスクランブル解除された TS 配信のみを行い、倉ではリアルタイム視聴のみを行うようにする。
# PT2 は鯖にのみ必要。

接続形態
なお、録画した TS ファイルの再生は、当方の環境では鯖に HDMI 接続してある BRAVIA KDL-40V3000 で再生しているが、ネットワーク経由の倉で再生したい場合はファイル共有で TVTest を使って直接再生するか、もしくは tsfile2u を使って TVTest で再生すればよい。
TVTest を使う理由として、TS ファイルにチャンネル構成が違う複数の音声が混ざっている (CM 2ch、本編 5.1ch など) と再生に支障が出るため。

必要なパーツなど

PT2 だけだと何も出来ないので色々と用意してください。
詳しくは「PT2初心者入門 - 用意」を参照のこと。

ハードウェア

ソフトウェア

現在の TV 鯖の構成

前提条件

以下のような条件でアンテナを使用していることを前提とする。 電波は地デジと BS/CS が混合されている。

TV 鯖の環境構築

TV 鯖では「録画のみ」を行うことを前提とする。
事前準備 #1 - PT2 の取り付けとアンテナケーブルの接続

PT2 を PC に取り付けるときはアンテナコネクタがバックパネルに入りづらくてかなり難儀するかもしれないので注意しながら取り付けること。
自分がやった限りでは先にバックパネルに軽く突っ込んでから PCI スロットに刺す。

地デジ・BS/CS の分波・分配は以下のように。
地デジしか使わないなら分波器は不要になり分配器は 1個だけで済む。


        ┏━[T0]
     ┏━□┫    地デジ側
     ┃  ┗━[T1]
 大本━■┫
     ┃  ┏━[S0]
     ┗━□┫    BS/CS側
        ┗━[S1]

■:分器
□:分
事前準備 #2 - PT2 の取り付け後のインストール

※この時点では BonDriver_* は不要です※

カードリーダは Windows XP 以上ならぶっさせばデフォルトドライバがインストールされる。
更に WindowsUpdate の「ハードウェア」の項目でドライバのアップデータが出ているのでそれも適用しておく。
この後が重要なのだが、「サービス」で「Smart card」を「手動」から「自動」にしておく。

PT2 を PC に認識させるまでの行程は 「PT2初心者入門 - 導入 を見て PT2 を TV 鯖となる PC で Sample.exe が正常に動作するところまで設定する。

Sample.exe が正常に動作したら今度は Windows の FireWall 機能を切っておくこと。
その際セキュリティセンターが五月蠅いと思うので、サービスで「Security Center」を停止してから「無効」にしておくと良い。
# とりあえずルーターの後ろに居るから外部からの攻撃については問題ないはず。

Spinel の準備

ダウンロードした BonDriver_PT-ST ドライバを Spinel ディレクトリにある BonDriver ディレクトリにコピーする。
# Spinel は直接 PT2 と通信を行うため、BonDriver_PT-STが必要になる。
# BonDriver_Spinel ではないことに注意!
Spinel を使用する場合は BonDriver のコピー方法が少し特殊になり、以下のようにする。

  • BonDriver_PT-S.dll を BonDriver_PT-S0.dll、BonDriver_PT-S1.dll としてコピー。
  • BonDriver_PT-T.dll を BonDriver_PT-T0.dll、BonDriver_PT-T1.dll としてコピー。
  • BonDriver_PT-ST.ini はそのままコピー。連番は不要。
  • PTCtrl.exe はそのままコピー。連番は不要。
PT2 が 2枚、3枚と増えていく場合は、数字の部分を倍々で増やしていく。
例) 2枚の場合:BonDriver_PT-T0〜3.dll / BonDriver_PT-S0〜3.dll:各々 4チューナー分

BonDriver_PT-ST のコピーが終わったら BonDriver_PT-ST.ini の設定を行う。
何をどう設定するかは BonDriver_PT-ST の ini ファイルと Readme.txt を見てもらいたいが、地デジのみ使うのであれば ini ファイルの Use(UHF|CATV|VHF|BS|CS) の 5種類うち、UseUHF のみ 1 にする。
# アンテナが一般的な「屋根の上のアンテナ」でない場合 (例:ケーブル TV) は事情が違うので Sample.exe で電波受信が出来るかなど確認しながら各々の設定項目を合わせること。

ダウンロードした BonDriver だけでは新 BS が受信できないので、BonDriver ディレクトリに有る BonDriver_PT-S.ChSet.txt を新 BS に対応させたファイルと差し替える。

新 BS 対応 BonDriver_PT-S.ChSet.txt

元のファイルをバックアップした上で本ファイルを上書きする。
なお、当方のように「CS は受信しないよー」という人は本ファイルの NS2 〜 NS24 までの行を削除するとチャンネルスキャンからして CS をキャンセルすることが出来る。

あとは Spinel.exe のショートカットをスタートアップに登録し、「最小化の状態で起動」するようにしておけばよい。

ここで一旦 Spinel.exe を実行してデバイス表示リストに各チューナーが認識されているかを確認。
# ここで Spinel.ini が作成される。
確認が出来たら一旦終了しておく。

B25Decord.dll を Spinel のディレクトリにコピー。
その後、Spinel.ini の EnableB25Decoder を 1 に設定。

設定が終わったら Spinel.exe を起動しておく。

EDCB の準備

チューナードライバは TVTest と EDCB でチューナーの排他制御をする必要があるので、必ず BonDriver_Spinel を使用すること。

BonDriver_Spinel のインストール

EDCB のディレクトリにある BonDriver ディレクトリに BonDriver_Spinel をコピーする。
DLL ファイルは PT2 1枚当たり 2チューナー付いているので、地デジと BS/CS 合わせて 4つのファイルを用意する。
# PT2 を 2枚取り付けるなら 4チューナーになるから合計 8つのファイルとなる。
具体的には BonDriver_Spinel.dll と BonDriver_Spinel.dll.ini というファイルがあるので、これらを以下のように複製。
# BonDriver_Spinel は地デジ/BS/CS共用ドライバなので 1つのファイルを異なるファイル名で複製する。。

  • BonDriver_Spinel_PT-T0.dll / BonDriver_Spinel_PT-T0.dll.ini
    ※地デジチューナー その1 (T0)
  • BonDriver_Spinel_PT-T1.dll / BonDriver_Spinel_PT-T1.dll.ini
    ※地デジチューナー その2 (T1)
  • BonDriver_Spinel_PT-S0.dll / BonDriver_Spinel_PT-S0.dll.ini
    ※BS/CS チューナー その1 (S0)
  • BonDriver_Spinel_PT-S1.dll / BonDriver_Spinel_PT-S1.dll.ini
    ※BS/CS チューナー その2 (S1)
BS/CS を使わない人は S* はコピーしなくても良い。

ini ファイルは 1つの DLL に対して 1つの ini ファイルがペアとなっている。
設定内容については ReadMe.txt を見た方が良いが、参考例で説明するならば

  • Address は全ての ini ファイルで 127.0.0.1:48083 とする。
    接続対象の Spinel はローカルで動いてることに注意。
  • TunerPath は Spinel に表示されているパスを記述。
    PT2 を 1枚だけ刺しているならば PT/0/Terra/* (地デジ) と PT/0/Satellite/* (BS/CS) となるので、
    • BonDriver_Spinel_PT-T0.dll.ini
      → TunerPath = PT/0/T/0
    • BonDriver_Spinel_PT-T1.dll.ini
      → TunerPath = PT/0/T/1
    • BonDriver_Spinel_PT-S0.dll.ini
      → TunerPath = PT/0/S/0
    • BonDriver_Spinel_PT-S1.dll.ini
      → TunerPath = PT/0/S/1
    となる。
    Spinel 3.2.x 系から最新版にバージョンアップした場合は TunerPath が Terra → T、Satellite → S と短縮名称に変更されているので注意。
  • RequireExclusiveChannelControl は TV 鯖となる側では「排他的チャンネルコントロール」、つまり「優先権」を必要とするので全ての ini ファイルにおいて 1 にしておく。

BonDriver_Spinel の設定については Readme.txt を見ればよいが、ポイントとしては鯖の EDCB で使用する BonDriver_Spinel の設定だけ「排他的チャンネルコントロール (RequireExclusiveChannelControl)」の項目を 1 にしておく
そうすることにより、例えば倉の BonDriver_Spinel@TvTest がチューナーを使用していても、鯖の排他制御 ON にされた BonDriver_Spinel@EDCB が起動された時点で制御を奪い返す。
# チューナーの優先権を録画のための EDCB に割り当てることで TV 視聴中の録画失敗を回避する。

EpgDataCap_Bon.exe の設定

ドライバのインストールが終わったら EDCB の設定を行うが、多岐にわたるので順を追って説明する。

EpgDataCap_Bon.exe の事前設定

まずは事前設定。
EpgDataCap_Bon.exe を起動して「設定」ボタンを押し、「基本設定」タブの「設定関係保存フォルダ」と「録画ファイル保存フォルダ」を設定する。

設定できたら EpgDataCap_Bon.exe を起動し直すこと。

チャンネル設定

今回は地デジのみの説明をするが、基本的には BS/CS も同じ。

EpgDataCap_Bon.exe を起動するとチューナーの選択リストで BonDriver_Spinel_PT-T0 と BonDriver_Spinel_PT-T1 が選択できるので、まずは T0 を選択して「チャンネルスキャン」ボタンを押す。
するとかなりの時間をかけてチャンネルスキャンを実行するが、この時 C51 あたりでずっと止まったままになっていると Spinel の BonDriver_PT-ST.ini の設定を間違っている、もしくは ini ファイルそのものがないので BonDriver_PT-ST の設定を見直す。

T0 のスキャンが終わったら T1 のスキャンも実施。

残りの設定

「設定」ボタンを押して設定画面に移動。

EPG 取得設定

ここでは EPG を取得する対象を選択する。
通常は「映像サービスのみチェック」でいいが、他にも取得したい対象がある場合はその旨設定すること。

「BS は〜」「CS は〜」は 3つ全部にチェックを入れておく。

詳細設定

「TS データ処理設定」の項目は「指定サービスのみ処理対象とする (UDP 送信に影響)」にチェックを入れる。

「指定サービス」とは、地上デジタル放送 (や BS、CS など) は 1つのチャンネルに複数の「サービス (子チャンネル)」を持っており、それを TS 型式で送信している。
これ (「指定サービスのみ(ry」) にチェックを入れた場合は、選択した「サービス (子チャンネル)」のみを処理 (録画・視聴) 対象とする。

具体的には、例えば NHK 総合は「NHK 総合」という「チャンネル」の中に「NHK 総合 1」「NHK 総合 2」「NHK 総合 3」という「サービス (子チャンネル)」が有る。

EPG リストで「NHK 総合」チャンネルに複数のサービスを使って放映されている番組が有る場合、例えば「NHK 総合 3」の番組を予約すると「指定サービスのみ(ry」にチェックが入っている場合は「NHK 総合 3」だけ録画される。
しかしチェックが入っていないとチャンネル全体を録画対象としてしまうため録画データが肥大化してしまう。

また、再生の際も TS データの先頭にあるサービスが再生されて面倒なことになるので、「指定サービスのみ(ry」にはチェックを入れておくことをお勧めする。

他の設定に関しては各自自由に決めること。
EPG リストを取得してみる
設定が終わったらメインウィンドウに戻り、「EPG データ取得」ボタンを押して EPG データを取得してみる。
かーなーり、時間がかかる!ので注意。

設定が終わったら EpgDataCap_Bon.exe は終了して良い。

EpgTimer_Bon.exe の設定

予約録画制御を行う EpgTimer_Bon.exe の設定を行う。

EpgTimer_Bon.exe は常時起動する必要があるので、自動ログオンしてスタートアップから起動させる必要がある。

サービスモードで起動することも可能で、その場合は Windows ログオンしなくても良いが、Spinel がサービス起動に対応していないので無意味 Spinel を利用する場合は EDCB のサービスモードは利用すべきではない。

設定は EpgTimer_Bon.exe を起動して「設定」ボタンで行う。
ここで説明している項目の他にも利用者により設定する項目が多数有ると思うので、必ず全項目に目を通すこと。
ここでは内容的にややこしい項目のみを取り上げる。

基本設定

「設定関係保存フォルダ」と「録画ファイル保存フォルダ」は EpgDataCap_Bon.exe で設定したフォルダと同じ場所を指定する。
「録画用アプリの exe」は EpgDataCap_Bon.exe が指定されていることを確認。
その下にある「スタートアップにショートカットを作る」ボタンを押してスタートアップにショートカットを作成。

設定したら EpgTimer_Bon.exe を再起動

チューナー設定

基本はそのままで良いが、BonDriver_Spinel_PT-T*、BonDriver_Spinel_PT-S* に対してチューナー数が 1 になっているかを確認。
また、「EPG データの取得対象とする」のチェックは、BonDriver_Spinel_PT-T* と BonDriver_Spinel_PT-S* が複数有る場合は全部にチェックを入れておくと負荷分散で処理が速くなる。
実測では地デジ 8局の場合、1チューナーで 15分、4チューナーで5〜10分ほど。

動作設定 2

「その他」の「検索時のデフォルト対象サービスを設定する」で番組検索時に検索対象を選択する。
普通は「映像サービスのみチェック」ボタンを押せば良い。
対象サービス設定ウィンドウは右上の [×] で閉じる。

「×ボタンで最小化する」は、EpgTimer_Bon.exe の右上の [X] でウィンドウを閉じると EpgTimer_Bon.exe そのものが終了してしまうのを回避するために必要。
# EpgTimer_Bon.exe を終了すると予約録画が動かないので注意。

「予約登録設定のデフォルトを設定する」は、予約登録時に各種項目を設定するが、そのデフォルト値をここで設定する。
その中でも「録画モード」は「指定サービス」にしておく。
# サービスについては上記参照。
# 「ぴったり (?) 録画」などについては Readme*.txt 参照。

EPG データ取得設定

「サービス一覧」については上記参照。

「BS/CS1/CS2 は 1チャンネルから〜」の 3つのチェックボックスはチェックを入れておくと良いらしい。

「EPG 取得開始時間」は適当な時間をいくつか入れておく。

サービス設定

Windows にログオンせずに EpgTimer_Bon.exe を起動できるが、Spinel がサービスに対応していないのでこの項目は触れないこと。

ネットワーク設定

「ネットワーク接続」の「ネットワーク接続機能を使用する」にチェックを入れると EpgTimer_BonNW.exe によるリモート予約録画を行うことが可能になる。

kkcald の準備

EDCB 10 用と EDCB 9 用でバイナリが違うので注意。

ZIP ファイルを展開したら中にある全てのファイルを EDCB と同じディレクトリにコピーする。

スタートアップに kkcald.exe のショートカット作って起動する。
するとタスクトレイに常駐するので、タスクトレイにあるアイコンを右クリックして ID とパスワードを設定する。

あとは適当な PC で http://(TV 鯖の IP アドレス):18990/ にアクセスすれば EDCB の予約状況ならびに iEPG 情報を取得したり予約動作が行える。

予約管理のみ行うのであれば EpgTimer_BonNW.exe を使うよりも楽ではある。
ルーターに穴開けすれば外から携帯電話のフルブラウザ使って予約できるし。

TV 倉の準備

TV 倉では「視聴のみ」を行うことを前提とする。
デコーダーの準備

MPV Decoder を使用する。

ZIP ファイルを展開したら適当なディレクトリに移動させて Install.bat を実行すればインストールできる。

TVTest の準備
BonDriver_Spinel のインストール

BonDriver_UDP.dll は UDP 受信による TV 視聴を行わないのであれば削除か適当なところに待避。

基本的には「◆TV 鯖の準備」→「EDCB の準備」→「BonDriver_Spinel のインストール」と同じ。
違う点は ini ファイルで RequireExclusiveChannelControl を 0 にすること。
これで EDCB による予約録画の邪魔をしないで済む。
# その代わり制御を持って行かれるので、TV 鯖で録画が始まると勝手にチャンネルを変えられる場合がある。(笑)

TVTest の設定

まずはデバイスの設定。
「カードリーダー」の項目は「無し」にしておく。
# Spinel の B25Decord.dll でスクランブル解除された TS データが流れてくるので B-CAS カードは TV 倉で扱わない。

次にチャンネルの設定。
チューナーデバイスで BonDriver_Spinel_PT-ST_T0 を選択。
設定画面の「チャンネルスキャン」で「サービスも対象にする」にチェックを入れてチャンネルスキャンを実施。
終了したら T1 → S0 → S1 と順にチャンネルスキャンを実施。

TVTest で視聴確認

チューナーデバイスで BonDriver_Spinel_PT-ST_* を選択して視聴できるかを確認。

EpgTimer_BonNW.exe の設定

基本は EpgTimer_Bon.exe と同じ。
ただし EpgTimer_Bon.exe が鯖になっているのでそれが起動していないと EpgTimer_BonNW.exe は使用できない。
EpgTimer_BonNW.exe で指定された予約情報などはリアルタイムで TV 鯖の EpgTimer_Bon.exe に反映される。

iEPG 情報ファイル (.tvpi) は EpgTimer_BonNW.exe に関連づけしておくと、iEPG 情報を使った予約が出来る。

予約時に「番組名が違う」とエラーが出た場合は EpgTimer_BonNW.exe と同じディレクトリにある *.ch2、ChSet*.txt を削除する。

現在の問題点

環境依存にかかわらず、現在問題となっている案件を記載。

環境構築の際にはまったこと

FAQ かもしれないけど。

リンク

雑記

BonDriver の違い
BonDriver には様々な種類が有るが、その中でも PT* に関係するものを説明する。
  • BonDriver_PT1:
    PT1 用。複数プロセスで共用できません。
  • BonDriver_PT2:
    PT2 用。たぶん以下同文(readme.txt 見てない)
  • BonDriver_PT1-ST:
    PT1 用。複数プロセスから使えるようになった。
  • BonDriver_PT1-ST-shm:
    BonDriver_PT1-ST の改造品。低スペック PC 向け。
  • BonDriver_PT-ST
    PT1、PT2 の SDK バージョン 2.0用。★今はこれが主流。
  • BonDriver_Spinel:
    Spinel クライアント用。Spinel 経由の視聴録画アプリはBonDriver_PT* の代わりにこれを使う。