Category Archives: PT1

PT1:Spinel導入

PT1を導入してから早半年ほど、別のPCでリアルタイム視聴が出来たらいいなぁと思ったので
Spinelを導入してみた。ちょー便利。
以下にちょっと導入方法などを書いてみる。
間違いあったら指摘しておくれ。

2009年7月29日現在の最新版を前提に記述しています。

環境及び覚え書き
TVTest、Tvrockなどが稼働中の地デジパススルーCATV+光テレビ(BS用)の環境
PT1は導入済み、TvrockおよびTVTestによる視聴、録画が出来ることを前提(主にスキル的な意味で)

必要なもの
PT1とPT1を認識させるソフトウェア(ドライバ+SDK)
BonDriver_PT1(PT1をアプリで使うためのDLL)
Spinel(PT1の放送波を配信するためのサーバー)
BonDriver_Spinel(アプリでPT1の放送波を受信するためのDLL)
TVTest(MPEG2TSを再生するためのソフト)
BonCasLink(B-CASを共有するためのサーバ及びクライアント)

まずhttp://2sen.dip.jp/dtv/のDTV アップローダから
up0111.zip(Spinel ver3.0.13.1 + BonDriver_Spinel ver3.0.8.1)
up0116.zip(BonDriver_Spinel ver3.0.9.0)
をダウンロードして解凍する。

PT1を利用するアプリケーションで使うドライバを用意する

up0111.zipの中のBonDriver_Spinel3をいきなり削除(古いので)
up0116.zipを解凍する。

BonDriver_Spinel.dllとBonDriver_Spinel.dll.iniのファイルをコピーして、以下の8つのファイルを用意する。

BonDriver_Spinel_PT1_0_S0.dll
BonDriver_Spinel_PT1_0_S0.dll.ini
BonDriver_Spinel_PT1_0_S1.dll
BonDriver_Spinel_PT1_0_S1.dll.ini
BonDriver_Spinel_PT1_0_T0.dll
BonDriver_Spinel_PT1_0_T0.dll.ini
BonDriver_Spinel_PT1_0_T1.dll
BonDriver_Spinel_PT1_0_T1.dll.ini

iniファイルは中身を確認して変更すること(デフォルトではダメ)
チューナのパスは各チャンネルに対応したものにする
Terraが地上波、SatelliteがBS放送


BonDriver_Spinel_PT1_0_S0.dll.iniの場合
TunerPath = “PT1/0/Satellite/0″のコメント(;)を外して
それ以外をコメント(;)にする

SpinelがPT1から放送波を取るためのドライバを用意

http://2sen.dip.jp/dtv/のPT1 アップローダからBonDriver_PT1をダウンロードする
up0199.zip(BonDriver_PT1-ST-shm (人柱版3改) 0.3.0.13 / 残念な人Ver)でいいと思うけど、お好みで。
解凍後BonDriver_PT1-S.dllとBonDriver_PT1-T.dllをその場にコピーして

BonDriver_PT1-S0.dll
BonDriver_PT1-S1.dll
BonDriver_PT1-T0.dll
BonDriver_PT1-T1.dll
BonDriver_PT1-ST.ini
PT1Ctrl.exe

のファイルを用意する
BonDriver_PT1-ST.iniの中身は必要に応じて修正
注意点は”UseCATV”(CATVの人)と”UseLNB”の部分(BSは電源が供給されないと映らない、他の機器が供給する場合もある)
他は理由が無ければ修正不要

用意したファイルを”Spinel.exe”のあるフォルダに入れる
Spinel.ini.defaultのファイルをコピーしSpinel.iniというファイルを用意する。
これがSpinelの設定ファイル。
今回の環境では得に必要ない。

※ BonDriver_Spinel.dllはここでは使わない
※ ドライバがロードされないと、Spinelが起動したときに真っ白な画面になる

20090729_Spinel3_kaisetu10.png

↑ こうなれば正常

視聴&録画用のTVTestを用意する

TVtestのフォルダにBonDriver_Spinel3の中身をコピー

BonDriver_Spinel_PT1_0_S0.dll
BonDriver_Spinel_PT1_0_S0.dll.ini
BonDriver_Spinel_PT1_0_S1.dll
BonDriver_Spinel_PT1_0_S1.dll.ini
BonDriver_Spinel_PT1_0_T0.dll
BonDriver_Spinel_PT1_0_T0.dll.ini
BonDriver_Spinel_PT1_0_T1.dll
BonDriver_Spinel_PT1_0_T1.dll.ini

と、Spinel.exeのフォルダにある

Lapis.Spinel.SharedInterfaces.dll

をコピーする。
BonDriver_Spinel_PT1_0_XX.dll.iniのアドレス部分はPT1のあるPCで使用する場合は127.0.0.1(デフォルト)が推奨
それ以外のPCの場合、SpinelとPT1が動いているPCのアドレスを設定する。

※ SpinelのサーバPCはIPを固定した方がいい

あとはTVTestの初期設定で、通常のBonDriverと同じように設定することが出来る。

TvrockもBonDriverとほぼ変わらない

例:
アプリケーションフォルダ:BonDriver_Spinel_PT1_0_XX.dllを導入したTVTestのフォルダ
実行アプリ(視聴有り):TVTest.exe
オプション:/d BonDriver_Spinel_PT1_0_T0 /DID A
実行アプリ(視聴無し):TVTest.exe
オプション:/d BonDriver_Spinel_PT1_0_T0 /nodshow /min /DID A

という用に4つのチューナーを設定するだけ。

BonCasLinkについて

Spinel3にはB25Decoderのオプションがあり、B25Decoder.dllを同じフォルダにコピーすることで
デコード済みの放送波をアプリケーションに送ることが出来る・・・が
どうにも不安定で、TVTestのチャンネルスキャンやTvrockの番組表取得などで
Spinel.exeがエラー吐いて落ちる問題が出たので、Spinelによるデコードはオススメしない。
その場合、各アプリごとにデコードが必要になり
カードリーダとB-CASを持たないマシンで視聴が出来なくなる。
そこでBonCasLinkを使用してB-CASカードを共有し、デコードが出来るようにする必要がある。

http://2sen.dip.jp/dtv/の実験用ツールからBonCasLink0110.zipをダウンロードして解凍する。
B-CASカードを持ったPCで”BonCasServer.exe”を実行
設定項目は使用するポート番号のみなので、Portの衝突が無ければ特に弄る必要は無い

B-CASカードを持たないPCで”BonCasProxy.exe”を実行する。
タスクバーのアイコンを右クリックして”クライアントの設定”からサーバのIPアドレスとポートを設定する

視聴アプリケーション側ではカードリーダを使用する設定にするだけでOK

※ アプリケーションからBonCasServerに接続出来るとBonCasProxyのアイコンが青から赤になる。

まとめ

サーバ側で必要な最低限のもの
PT1
Spinel+BonDriver_PT1
カードリーダ+B-CASカード
BonCasServer

※ SpinelはPT1を利用するすべてのアプリケーションで必要になるので、スタートアップに入れることを推奨
※ BonCasServerはB-CASカードが利用できるマシンならPT1と同じPCである必要は無い
ただしその場合、PT1のあるPCで録画や視聴する場合デコードの手段(例:BonCasProxy)が必要になる。

クライアント側で必要な最低限のもの
TVTest+BonDriver_Spinel_PT1
BonCasProxy

※ 通信でTCPのポートを使用するため、FWなどでブロックされないことが前提
※ 必要な帯域は、BS放送で約24Mbps、地上波で17Mbps 複数チャンネルを同時視聴する場合はその分必要

※ BonDriver_Spinelのiniは全体で共有しているわけではないので、
たとえば録画側は”RequireExclusiveChannelControl“を”1″に設定して排他ロックをかけ
視聴側は”0“に設定して、簡易的に録画側の優先度を高くするという設定が出来る。
これは録画中にうっかりチャンネルを変えてしまって、録画が失敗しないようにするのに有効。

仕組みさえ分かってしまえばそれぞれの設定そのものは難しくないんだけど
複数のアプリケーションを束ねて運用することになるので非常に取っつきにくい
各アプリケーションごとの細かい問題もあるし・・・
そのため忘備録をかねて書いてみた。
たぶんこれで使えるようになるはず。
録画中のチャンネルも別PCで見れるので(録画失敗しない)
便利ですよ。

参考:
地デジ・BS/CS 4番組同時受信!「PT1」の設定を徹底解説 :教えて君.net
http://www.oshiete-kun.net/archives/2008/12/bscs_4pt1.html

PT1活用テク:PT1の映像をLAN配信する!(1)~設定編~ :教えて君.net
http://www.oshiete-kun.net/archives/2009/01/pt1pt1lan1.html

PT1活用テク:1枚のB-CASカードを複数PCで共有しよう(1) :教えて君.net
http://www.oshiete-kun.net/archives/2009/01/pt11bcaspc1.html