Spinel経由で地デジを視聴する

TVTest + TVRockを用いた視聴・録画の設定なので、RecTestを使っている場合にはうまくいかないかも。
Spinelを使う一番のメリットは、サーバー側でチューナー1を録画で使用中に、クライアント側でチューナー1を視聴で使うことができようになるということ。
これを実現するには、サーバー側、クライアント側のいずれもSpinel経由で録画、視聴を行えばよい。
今回は、録画中のみクライアント側にチャンネル選択権はなく、それ以外はサーバー側、クライアント側どちらでもチャンネルを変更できるようにする。


○設定の前に
以下のファイルをダウンロード、解凍する。
Spinel ver3.3.2.0
BonDriver_Spinel ver3.1.3.0
Multi2Dec Ver.2.10
いずれも、2010年8月30日現在で最新版。
今回は例として、デフォルト設定の48083番と48084番のポートを開放する。なお、開放するポートはSpinel.iniで変更可能。


○サーバーの設定
BonDriver_Spinelに同梱されているSpinelは使わないので削除。
Spinel3BonDriver_Spinel3Multi2Decの三つのフォルダができる。


1. \Spinel3\BonDriverにBonDriver_nnb.dllをBonDriver_nnb0.dllとリネームしてコピー。


2. \Multi2Dec\B25DecoderSDKフォルダ内のB25Decoder.dllをSpinel.exeと同一フォルダにコピー。


3. Spinel.iniを開き、以下のように書き換える。
21行目 EnableB25Decoder = 0

21行目 EnableB25Decoder = 1


4. Spinel.exeを実行し、チューナーが認識されているか確認。以下のようになっていれば正常。


5. BonDriver_Spinel3フォルダ内のBonDriver_Spinel.dllとBonDriver_Spinel.dll.iniをそれぞれ、
 BonDriver_Spinel0.dllBonDriver_Spinel0.dll.iniとリネームして、TVTest.exeと同一フォルダにコピー。


6. BonDriver_Spinel0.dll.iniのチューナーのパス指定部分を以下のように書き換える。
12行目 ;TunerPath = "HDUS/0/Terra/0"
13行目 TunerPath = "PT1/0/Terra/0"
をそれぞれ、
12行目 TunerPath = "HDUS/0/Terra/0"
13行目 ;TunerPath = "PT1/0/Terra/0"
セミコロンを追加、削除する。


7. BonDriver_Spinel0.dll.iniの排他制御指定部分を以下のように変更する。
25行目 RequireExclusiveChannelControl = 1

25行目 RequireExclusiveChannelControl = 0
このように変更することで、サーバー側でBonDriver_Spinel0.dllを使用しているときは、クライアント側でもチャンネル選択権がある。


8. TVTestを起動→設定→BonDriver_Spinel0.dllを指定→スマートカードリーダ→チャンネルスキャン


9. TVTestフォルダ内の
BonDriver_Spinel0.ch2
BonDriver_Spinel0.dll
BonDriver_Spinel0.dll.ini
をコピーする。同じフォルダ内にペーストし、コピーしたファイルを以下のようにリネームする。
rokuga_BonDriver_Spinel0.ch2
rokuga_BonDriver_Spinel0.dll
rokuga_BonDriver_Spinel0.dll.ini
とリネームする。TVTestフォルダにはBonDriver_Spinek0とrokuga_BonDriver_Spinek0が存在する。


10. rokuga_BonDriver_Spinel0.dll.iniの排他制御指定部分を以下のように書き換える。
25行目 RequireExclusiveChannelControl = 0

25行目 RequireExclusiveChannelControl = 1


11. TVRock→設定→チューナー→実行アプリ(視聴)、実行アプリ(録画)を以下のように変更する。
/d rokuga_BonDriver_Spinel0.dll /DID A
こうすることで、録画中はrokuga_BonDriver_Spinel0.dllが指定され、クライアント側でチャンネル制御ができなくなる。
以上でサーバー側の設定は終了。


○クライアントの設定
1. クライアント側にもTVTestを用意する。


2. TVTest.exeと同一フォルダにBonDriver_Spinel0.dll、BonDriver_Spinel0.dll.iniをコピー。


3. BonDriver_Spinel0.dll.iniを開き、5行目を以下のように書き換える。
5行目 Address = "127.0.0.1:48083"

5行目 Address = "192.168.11.3:48083"(環境によって異なる)


4. BonDriver_Spinel0.dll.iniのチューナーのパス指定部分を以下のように書き換える。
12行目 ;TunerPath = "HDUS/0/Terra/0"
13行目 TunerPath = "PT1/0/Terra/0"
をそれぞれ、
12行目 TunerPath = "HDUS/0/Terra/0"
13行目 ;TunerPath = "PT1/0/Terra/0"
セミコロンを追加、削除する。


5. BonDriver_Spinel0.dll.iniの排他制御指定部分を以下のように変更する。
25行目 RequireExclusiveChannelControl = 1

25行目 RequireExclusiveChannelControl = 0
このように変更することで、クライアント側でBonDriver_Spinel0.dllを使用しているときは、サーバー側でもチャンネル選択権がある。


6. TVTestを起動→設定→BonDriver_Spinel0.dllを指定→カードリーダなし→チャンネルスキャン
以上でクライアント側の設定は終了。
サーバー側でSpinelを起動し、チャンネル制御などを確認し、正常に動作していればOK