2011年04月01日

チャンネル拡張モードについて

スクランブル解除について」でも説明したように、BonDriverの内部チャンネル番号はトランスポートストリーム単位で採番されています。これをVirtualPTでは「チャンネル互換モード」と呼びます。このモードではVirtualPT側でスクランブル解除すると無駄が生ずるため、新たに内部チャンネル番号をチャンネル(サービス)単位で採番しスクランブル解除の無駄を無くします。これを「チャンネル拡張モード」とします。

※VirtualPT ver1.05まではチャンネル拡張モードがTvRockで正しく動作しませんでしたが、ver1.06でTvRock DTVターゲットに対応したチャンネル拡張モードBを追加しました。拡張モードBについて詳しくは「チャンネル拡張モードBについて」を参照して下さい。

チャンネル拡張モードでは内部チャンネル番号をチャンネル(サービス)単位で採番しますが、それに伴い、トランスポートストリームを下図のように、あたかも1つのチャンネル(サービス)だけを含んでいるかのように仮想化します。このようにすることで、視聴・録画ソフトの(プログラム的な)変更無しにどちらのチャンネルモードでも動作することが期待できます。また、どちらのチャンネルモードを使用するかは、視聴・録画ソフトごと(正確にはBonDriver単位)に設定できます。

例)チャンネル互換モード
トランスポートストリーム1
NHK BS1
NHK BS2
トランスポートストリーム2
WOWOW1
WOWOW2
WOWOW3

例)チャンネル拡張モード
TS1-1
NHK BS1
TS1-2
NHK BS2
TS2-1
WOWOW1
TS2-2
WOWOW2
TS2-3
WOWOW3

この新しいチャンネルモードの主目的は、トランスポートストリーム内の不必要なチャンネル(サービス)を除外することで、除外したチャンネル(サービス)のECM処理(鍵情報の暗号化解除処理)を無くすことです。ただし、このメリットの効果が発揮されるのは、トランスポートストリーム内に複数のチャンネル(サービス)が存在し、それぞれが独自のECMデータを持っている場合です。これに該当するのはBSのWOWOW1・WOWOW2・WOWOW3とCSの有料放送のみです。その他はトランスポートストリーム内に1つのチャンネル(サービス)しか存在していないもの、複数のチャンネル(サービス)が存在していても1つのECMデータを共有していたり、そもそもスクランブルされておらずECMデータが存在していないものとなっています。

このことから、トランスポートストリームをチャンネル(サービス)別に分割することで、メリットがあるのはBSとCSで、地デジはトランスポートストリームを分割しても、しなくてもあまり変わらないことになります。そこで、地デジではトランスポートストリームの分割は行わず、チャンネル互換モードとチャンネル拡張モードのどちらでも同じ動作とします。BSとCSについては、チャンネル拡張モードではトランスポートストリームをチャンネル(サービス)別に分割します。

チャンネル拡張モードには利点だけでなく問題点もあります。PT1・PT2では1つのデバイスで地上2TS・衛星2TSの同時録画が可能です。例えば、NHK BS1とNHK BS2は同じトランスポートストリーム内に存在し、WOWOW1、WOWOW2、WOWOW3は同じトランスポートストリーム内に存在します。NHK BS1、NHK BS2、WOWOW1、WOWOW2、WOWOW3の5チャンネル(サービス)を同時に録画したとしてもトランスポートストリーム的には2つなので、衛星2TSの範囲内となり(録画ソフトが対応していれば)同時録画が可能です。しかし、チャンネル拡張モードでは、各チャンネル(サービス)が別々のトランスポートストリームに分割されるので、実トランスポートストリーム内に存在するチャンネル(サービス)がどれなのか知るすべがなく、地上2チャンネル(サービス)・衛星2チャンネル(サービス)の範囲内での録画可能チェックしか行えないことになります。

ただし、上で「録画ソフトが対応していれば」と書きましたが、EpgDataCap_BonやEPGデータビューアでは、地上2TS・衛星2TSではなく、地上2チャンネル(サービス)・衛星2チャンネル(サービス)での同時録画可能チェックを行っているようです。TvRockでも録画用に地上2プロセス・衛星2プロセスしか同時起動できないので、地上2チャンネル(サービス)・衛星2チャンネル(サービス)までしか同時に録画できません。このようなソフトではどちらのチャンネルモードを使用しても同じです。もしトランスポートストリーム単位でチェックを行う録画ソフトがあれば拡張チャンネルモードでは正確なチェックが出来ないことになります。

拡張チャンネルモードにおいて、BonDriverの内部チャンネル番号をどのように持つべきか、かなり試行錯誤しました。BonDriverの内部チャンネル番号は、0からの連番で抜け番が許されない設計になっています。これに対応する方法として3つの案を考えました。

案1) サービスID順に0からの連番で内部チャンネル番号を採番する。チャンネル(サービス)が追加・削除された場合は、最新の状況で新たにサービスID順に0からの連番で採番し直す。(新しいチャンネル(サービス)は途中に追加されることになる)

案2) 初期はサービスIDの順番で0からの連番で採番する。チャンネル(サービス)が追加された場合は続きに追加していく。チャンネル(サービス)が削除された場合、内部チャンネル番号は削除せず残しておく(選択しても何も受信しないチャンネルとして残る)。

案3) BS・CSのサービスIDが必ず1000未満であり、この法則が今後も続くと考えられる。これを利用し、BS・CSそれぞれの内部チャンネル番号を0~999の1000個分をあらかじめ採番して置き、チャンネル(サービス)をサービスIDと同じ内部チャンネル番号に割当てる。割当てられなかった内部チャンネル番号は選択しても何も受信しない。チャンネル(サービス)が追加された場合もサービスIDが等しい内部チャンネル番号に割当てる。チャンネル(サービス)が削除された場合は該当する内部チャンネル番号の割当てを解除する。

案1はチャンネル(サービス)が追加・削除された前後で内部チャンネル番号の互換性がありません。例えばWOWOW1が20から21になるといったことが起こりえます。案2と案3はチャンネル(サービス)が追加・削除されても、その前後で内部チャンネル番号の互換性が保たれます。内部チャンネル番号の互換性が無いと、内部チャンネル番号の採番し直しをユーザーの操作で行う必要があり(自動で変更は出来ない)、さらに視聴・録画ソフトのチャンネルスキャン、予約録画のやり直し、自動予約の再設定、視聴・録画ソフトによっては設定の初期化からやり直す必要もあります。案2と案3では内部チャンネル番号の互換性が保たれるので、視聴・録画ソフトのチャンネルスキャンで変更分の認識は必要ですが、それ以外の操作は必要ありません。

案2は使い込んでいくうちに削除されたチャンネル(サービス)が溜まり、追加されたチャンネル(サービス)が無造作に存在するようになります。以前にCSで大幅なチャンネル番号(このチャンネル番号=サービスIDです)の変更がありました。ほとんどのチャンネルで変更されたように記憶していますが、今後も同様なことが起きる可能性が無いとはいえないので、無駄なチャンネルが多くなり並び順が乱雑になるということは考えられます。

案3は常に一定の規則で並び、案2のように並び順が乱雑になるといったことは無いのですが、実チャンネル(サービス)が割当てられていない内部チャンネルが多数存在していますので、視聴・録画ソフトのチャンネルスキャン時に時間が掛かる可能性があります。TVTestでは信号レベルを考慮することでそれほど時間は掛かりませんでしたが、EpgDataCap_Bonでは3時間近く掛かりました。

このように、それぞれの案で一長一短があるわけですが、チャンネル(サービス)の追加・削除がそれほど頻繁にあるものではないとしても、毎回設定の初期化が必要となるようではちょっと実用には向かないということで、案1はボツにしました。案2が一番良いような気がするのですが、なぜか引っ掛かるものがありやってみたら爆弾があったということになりそうな気がして、予感的なものでしかないのですがどうしても採用できず、とりあえず案3を採用することしました。チャンネルスキャンが長時間掛かるというのも実用的にどうかと思うのですが、あまりに問題になるようならEpgDataCap_Bonのチャンネルスキャンを代理で行うようなプログラムを作成することでも対応可能だと判断しました。他に何かもっと良い案があれば大幅な変更を行うかもしれません。

※2011/4/3追記:EpgDataCap_Bonのチャンネルスキャンを高速で行えるようにする方法が見つかり15分掛からない程度の時間で行えるようになりました。(ver1.04で対応)

とりあえず案3を採用することにしましたが、バージョン1.03の時点では内部チャンネル番号は固定で定義しており、チャンネル(サービス)の追加・削除を反映する機能はまだ未対応となっています。チャンネル(サービス)の追加・削除を反映する機能ついては出来るだけ早く対応したいと考えています。
↑ver1.05で対応しました。

このようにチャンネル互換モード・チャンネル拡張モードのそれぞれに一長一短があります。これらのことを考慮の上、どちらを使用するか判断していただければと思います。
※基本的には、VirtualPT側でスクランブル解除を行う場合は拡張モードを、視聴・録画ソフト側でスクランブル解除を行う場合は互換モードをお使いいただければと考えています。



domamemo at 21:46コメント(0)トラックバック(0) 
VirtualPT 

トラックバックURL

コメントする

名前
 
  絵文字
 
 

プロフィール

Doma

記事検索
最新コメント
最新トラックバック
タグクラウド
  • ライブドアブログ