【PT3特集】1:PT3とSpinelをセットアップしてTVTest視聴環境を整える

ツール, ハック, 動画編集

【PT3特集】1:PT3とSpinelをセットアップしてTVTest視聴環境を整える

本連載では、LAN内でPT3のチューナーをSpinelで共有し、EDCBで録画サーバを構築し、録画ファイルのエンコードを自動化するまでを目標としています。今回はSpinel使用を前提に、視聴環境まで構築します。 記事の目 […]

スポンサーリンク

本連載では、LAN内でPT3のチューナーをSpinelで共有し、EDCBで録画サーバを構築し、録画ファイルのエンコードを自動化するまでを目標としています。今回はSpinel使用を前提に、視聴環境まで構築します。

用語について

まずは、度々出てくる用語について最初にまとめておきます。

PT3 アースソフトのPCI Express x1対応(TS抜き)デジタルチューナーカード。
「地上デジタル」x2、「BSデジタル、110°CSデジタル」x2の計4チューナー搭載。
最大の特徴は制限を回避し、色々マニアックな使い方ができること。
Spinel PT3等のチューナーをLAN内の複数端末で共有できるようにする。
チューナー使用権が被って録画に失敗したりしないよう、排他制御も可能。
TVTest PT3等で番組を視聴する。視聴番組の録画も可能。
シンプルかつ多機能で、プラグインによる拡張も可能。
本連載では番組視聴画面に実況コメントを流すプラグインを使用する。
EDCB EpgDataCap_Bonの略。PT3等で予約録画、番組表自動取得を可能にする。
LAN内の録画サーバを共有する使い方が可能。
TS EDCBやTVTestで録画した番組は、TSファイルになる。
TSとはAVIやMP4のようなコンテナのことで、中身はMPEG-2映像とAAC音声。

想定している構成

前提として、PT3と直接やり取りするのはサーバ PC上のSpinelのみです。

サーバ PC自身を含むすべてのEDCBやTVTestは、このSpinelを経由してチューナーを利用します。

EDCBは、サーバ PC上で動作しているものだけが実際の録画や録画予約を行っており、各クライアントのEDCBは、親玉であるサーバ PC上のEDCBにアクセスし、同じデータを共有します。

こうして配信サーバや録画サーバを1箇所でコントロールすることにより、複数のPCやソフトウェア間で発生する衝突を解消する、排他制御が可能です。

録画担当のEDCBがPT3のチューナー「T0」で録画予約をしてあるのに、録画開始時刻になっても誰かが同じ「T0」で別チャンネルを視聴していた場合、EDCBがチャンネルを変更できずに録画が失敗する問題が発生します。これが衝突です。

チャンネルコントロールの権限を制御していれば、EDCB側のチャンネル切り替えを他より優先させることができ、正常に録画を開始することができます。これが排他制御です。

チューナーカード「PT3」

ただ観るだけでなく、録画したり編集したりしたいなら、TS抜きチューナーが必要です。

TS抜きチューナーの代表といえばアースソフトのPT3です。古くはFriioが有名でしたね。

なおOSはWindows 7 64bit版で構築していますが、Windows 10 32bit版の環境でも構築に成功していますので、他のバージョンでもいけるでしょう。

ソフトウェアの準備

今回はすべて32bit版を使用します。多くのプラグインやライブラリがありますが、そのすべてに64bit版があるとは限りませんし、導入後の余計なトラブルを避けるためでもあります。

PT3関連

http://earthsoft.jp/PT3/download.html

PT3 の動作に必要です。ドライバとSDKをダウンロードし、インストールしてください。

Spinel関連

http://lapislabs.blog24.fc2.com/?tag=Spinel3

  • Spinel_ver3.6.1.1
  • BonDriver_Spinel_ver3.5.3.0

ひとまずダウンロードしておいてください。

TVTest関連

http://up.mapopi.com/

  • TVTest 0.7.23 (x86)
  • TVTest_0.7.23fix
  • BonDriver_PT3-ST(お試し人柱版4)

TVTest 0.8以上では不具合が確認されていますので、実績のある旧バージョンにしておきます。

なおBonDriverは、今回のケースではTvTestではなくSpinel側で使用します。

SoftCAS, B25Decoder関連

  • SoftCAS(winscard.dll)
  • Multi2Dec 2.10(B25Decoder.dll)

SoftCASは、B-CASカードのエミュレーションを行うものです。カード書き換えではありませんが、グレーな領域になるため詳解は避けます。

B25Decoderは、スクランブル解除に必要となります。こちらも多くは語りません…が、後でちょっと語ったりします。

ランタイム等

本環境の動作に必要となります。未導入の場合は先にインストールしておいてください。

http://www.microsoft.com/ja-jp/download/details.aspx?id=17718

http://www.microsoft.com/ja-jp/download/details.aspx?id=5555

環境によってはこちらも必要となります。筆者環境ではWindows 10 64bit版で必要でした。

https://www.microsoft.com/ja-jp/download/details.aspx?id=21

https://www.microsoft.com/ja-jp/download/details.aspx?id=40784

ファイルの配置

以下の例ではC:ドライブ直下にDTVというフォルダを作成し、その中に各ソフトウェアを解凍することを想定しています。

EpgDataCap_Bon次回の連載2で説明するEDCBです。今は無視しておいてください。

フォルダ構成

Spinelの設定

BonDriverの準備

  1. BonDriver_PT3-ST(お試し人柱版4)を解凍し、C:¥DTV¥Spinel¥BonDriverにすべてコピーする
  2. BonDriver_PT3-S.dllを同フォルダ内にコピーし、それぞれ次のようにリネームする
    • BonDriver_PT3-S0.dll
    • BonDriver_PT3-S1.dll
  3. BonDriver_PT3-T.dllを同フォルダ内にコピーし、それぞれ次のようにリネームする
    • BonDriver_PT3-T0.dll
    • BonDriver_PT3-T1.dll

設定ファイルの編集

  1. C:¥DTV¥Spinel¥BonDriverMapping.jsonをテキストエディタで開き、以下の記述がなければ追記する
    /* BonDriver_PT3-ST */
    {
        "DeviceName": "PT3",
        "Mapping": {
            "ISDB_T": "^BonDriver_PT3-T.*?.dll$",
            "ISDB_S": "^BonDriver_PT3-S.*?.dll$",
        }
    },
  2. C:¥DTV¥Spinel¥DeviceDefinitions¥EarthSoft.xmlをテキストエディタで開き、以下の記述がなければ追記する
    <DeviceDefinition DeviceName="PT3" DisplayName="EarthSoft PT3">
     <TunerDefinitions>
     <TunerDefinition TunerType="ISDB_T" Count="2">
     <ChannelCategories>
     <ChannelCategory>UHF</ChannelCategory>
     <ChannelCategory>CATV</ChannelCategory>
     <ChannelCategory>VHF</ChannelCategory>
     </ChannelCategories>
     </TunerDefinition>
     <TunerDefinition TunerType="ISDB_S" Count="2">
     <ChannelCategories>
     <ChannelCategory>BS</ChannelCategory>
     <ChannelCategory>CS110</ChannelCategory>
     </ChannelCategories>
     </TunerDefinition>
     </TunerDefinitions>
    </DeviceDefinition>

起動確認

C:¥DTV¥Spinel¥Spinel.exeを実行してみます。

Spinel 起動画面

このように、地上波チューナー(T0, T1)とBS/CSチューナー(S0, S1)が認識されていればOKです。

ここで閉じるボタンをクリックすると終了してしまいますので、最小化ボタンをクリックしておきましょう。Spinelはタスクトレイに格納されます。

自動起動の設定

Windows起動時にSpinelが自動起動するように設定します。Spinelはサーバの役割を果たしますので、常時起動していることが望ましいためです。

Windows 7では、単にSpinel.exeのショートカットを作成し、スタートメニューのスタートアップフォルダにドラッグすればOKです。

Windows 10ではこの操作が行えなくなっていますので、スタートメニューを代替するソフトウェアを利用するか、手動でスタートアップに追加することになります。

環境によって異なることもありますが、下記がスタートアップのフォルダです。

C:¥Users¥[ユーザー名]¥AppData¥Roaming¥Microsoft¥Windows¥Start Menu¥Programs¥Startup

また、起動時に自動でウィンドウを最小化するように細工しておきます。

最小化状態で起動

TVTestの設定

パッチを適用する

TVTest 0.7.23には「Microsoft DTV-DVD Video Decoder」でのデコードに不具合があります。

これはWindows Updateにより「Windows 7 SP1 及び Windows Server 2008 R2 SP1 用プラットフォーム更新プログラム (KB2670838)」がインストールされている場合に生じるものです。

この問題を解決するのが、TVTestと一緒にダウンロードした00047_TVTest_0.7.23fixです。

解凍するとTVTest_0.7.23fix.exeというファイルがありますので、TVTestと同じフォルダにコピーしてから実行します。

BonDriver_Spinelの準備

ここで用意するファイルセットは、次回の連載2でEDCBにそのまま流用できます。

  1. BonDriver_Spinel_ver3.5.3.0を解凍し、以下の2ファイルを C:¥DTV¥TVTestにコピーする
    • BonDriver_Spinel3¥BonDriver_Spinel.dll.ini
    • BonDriver_Spinel3¥x86¥BonDriver_Spinel.dll
  2. BonDriver_Spinel.dllを同フォルダ内に3つコピーし、これら4ファイルを以下のようにリネームする
    • BonDriver_Spinel_PT-S0.dll
    • BonDriver_Spinel_PT-S1.dll
    • BonDriver_Spinel_PT-T0.dll
    • BonDriver_Spinel_PT-T1.dll
  3. BonDriver_Spinel.dll.iniを同フォルダ内に3つコピーし、これら4ファイルを以下のようにリネームする
    • BonDriver_Spinel_PT-S0.dll.ini
    • BonDriver_Spinel_PT-S1.dll.ini
    • BonDriver_Spinel_PT-T0.dll.ini
    • BonDriver_Spinel_PT-T1.dll.ini
  4. 上記3の各ファイルをテキストエディタで開き、それぞれ下記の通り編集するBonDriver_Spinel_PT-S0.dll.ini
    TunerPath = "PT3/0/S/0"

    BonDriver_Spinel_PT-S1.dll.ini

    TunerPath = "PT3/0/S/1"

    BonDriver_Spinel_PT-T0.dll.ini

    TunerPath = "PT3/0/T/0"

    BonDriver_Spinel_PT-T1.dll.ini

    TunerPath = "PT3/0/T/1"

SoftCASとスクランブル解除の準備

本来必須ではありませんが、ここを見に来た方であれば以下略。

  1. winscard.dllC:¥DTV¥TVTestにコピーする
  2. B25Decoder.dllC:¥DTV¥TVTestにコピーする

前述の通りSpinel側で請け負うこともできる処理ですが、主に負荷分散のため各クライアントに任せることにします。

次に設定を開き、SoftCAS(winscard.dll)を利用する場合は「カードリーダ」を「スマートカードリーダ」にします。

デコーダの設定

視聴画質に大きく影響するのが「デコーダ」と「レンダラ」です。

デコーダはWindows 7同梱の「Microsoft DTV-DVD Video Decoder」が定番で、次点としてCyberLink社のPowerDVDに同梱されているデコーダがよく挙げられるのですが、筆者としてはMicrosoftのデコーダが総合的に最も優れていると思います。

レンダラについては「EVR」が利用できるのであればこれ一択で良いでしょう。

デコーダとカードリーダの設定

Windows 10でMicrosoft DTV-DVD Video Decoderを使うには

Windows 10では、TVTestからMicrosoft DTV-DVD Video Decoderを利用できなくなりました。

使えない…だと…

この問題には回避策があります。別記事にまとめてありますのでご覧ください。

http://blacknd.com/video-editing/windows10_microsoft_dtv-dvd_video_decoder/

チャンネルスキャン

TVTestの画面左下にあるボタンで、使用するチューナーを選択できます。

4つあるBonDriver_Spinel_PT-** を一つづつ選択し、それぞれにチャンネルスキャンを行います。

「設定」→「チャンネルスキャン」

チャンネルスキャン

「スキャン開始」ボタンをクリックし、スキャンが終了するまでしばらく待ちます。しばらくと言っても4チューナーに対してスキャンを行うと、結構な時間がかかります。

スキャン完了後、上記画面のように同じチャンネルが複数表示されたりしますが、一番上のものだけ残してチェックを外しておきましょう。

ここでチェックを外したチャンネルは、チャンネル切り替えの際に表示されません。

番組が視聴できることを確認

チャンネルスキャンに失敗していなければ、ここで問題が生じることはほぼないでしょう。

TVTestで番組視聴

チャンネルを切り替えてみて、しばらく視聴を続けると自動で放送局ロゴや番組情報が表示されるようになります。

なお上記画面ではニコニコ動画のように実況コメントが表示されていますが、これはTVTestのプラグインによって実現しています。詳細は連載の第4回で解説します。

http://blacknd.com/video-editing/pt3_spinel_tvtest_edcb_nicojk_4/


PAGE TOP