(57)【要約】【課題】ストリームの転送速度の誤認識を原因とする通信の不具合を、バスリセットを発生させることなく解消することができるようにする。【解決手段】DTV１がDVHS２に対して転送速度をＳ４００としたコネクションを張り、ストリームの出力を要求したにもかかわらず、DVHS２がストリームを出力しない場合、DTV１においては、DTV１の転送速度をDVHS２が誤認識している可能性があるとして判断され、転送速度を落とした形でコネクションを張り直すことが行われる。転送速度をＳ４００としたコネクションが張られている場合には、Ｓ２００としたコネクションが新たに張られ、以降、DTV１においては、DVHS２の転送速度がＳ２００として管理される。本発明は、IEEE1394ネットワークを介してストリームの転送を行うテレビジョン受像機に適用することができる。【選択図】図４
2008009802.tif 000002
【特許請求の範囲】
【請求項１】
ディジタルデータバスを介して接続される通信相手の機器に対してストリームの出力を要求する手段と、
前記ストリームが前記通信相手の機器から出力されたことを判断する手段と、
前記判断する手段において前記通信相手の機器からストリームの出力が行われないと判断した場合に、前記通信相手の機器のデータ転送速度を調査する手段と、
前記ディジタルデータバスを介した前記通信相手の機器との間の接続を、前記調査する手段によって得られたデータ転送速度によって再接続する手段と
を備える通信制御装置。
【請求項２】
前記ディジタルデータバスはIEEE1394バスである
請求項１に記載の通信制御装置。
【請求項３】
前記判断する手段によって前記通信相手の機器からストリームの出力が行われないと判断した場合に、バスリセットを発生させることによって再接続する手段をさらに備える
請求項２に記載の通信制御装置。
【請求項４】
ディジタルデータバスを介して接続される通信相手の機器に対してストリームの出力を要求し、
前記ストリームが前記通信相手の機器から出力されたことを判断し、
前記通信相手の機器からストリームの出力が行われないと判断した場合に、前記通信相手の機器のデータ転送速度を調査し、
前記ディジタルデータバスを介した前記通信相手の機器との間の接続を、調査によって得られたデータ転送速度によって再接続する
ステップを含む通信制御方法。
【請求項５】
ディジタルデータバスを介して接続される通信相手の機器に対してストリームの出力を要求し、
前記ストリームが前記通信相手の機器から出力されたことを判断し、
前記通信相手の機器からストリームの出力が行われないと判断した場合に、前記通信相手の機器のデータ転送速度を調査し、
前記ディジタルデータバスを介した前記通信相手の機器との間の接続を、調査によって得られたデータ転送速度によって再接続する
ステップを含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御装置、通信制御方法、およびプログラムに関し、特に、ストリームの転送速度の誤認識を原因とする通信の不具合を、バスリセットを発生させることなく解消することができるようにした通信制御装置、通信制御方法、およびプログラムに関する。
【背景技術】
【０００２】
IEEE(Institute of Electrical and Electronics Engineers)1394バスによって構築されるネットワーク（IEEE1394ネットワーク）においては、データの転送を行う前に、機器が新たに接続されたときなどの所定のタイミングでバスリセットが行われる。
【０００３】
バスリセットが行われた後には、通信相手の機器が許容するデータの転送速度を認識することなどがそれぞれの機器において行われ、ある機器が許容するデータの転送速度を通信相手の機器が正しく認識しているときにのみ、通信相手の機器から、その機器に対してデータの出力が行われる。IEEE1394ネットワークを介して行われるデータ転送の速度としては、１００Mbps，２００Mbps，４００Mbpsなどが規格化されており、ある機器は４００Mbpsでのデータの転送が許容され、他の機器は２００Mbpsでのデータの転送が許容されるといったように、機器毎に、許容する転送速度が設定されている。
【０００４】
特許文献１には、機器間のデータの転送速度から接続の状況が最適であるかを判断し、最適でないと判断したときには接続状況をユーザに通知する技術が開示されている。
【０００５】
特許文献２には、各機器の物理層での最高転送速度とリンク層での最高転送速度をバスマネージャが管理し、各機器間で実現可能な最高のデータの転送速度を容易に判定することができるようにした技術が開示されている。
【０００６】
特許文献３には、各機器の物理層での最高転送速度とリンク層での最高転送速度を比較し、低い方の速度を、各機器間での実質的な最高転送速度として設定する技術が開示されている。
【０００７】
【特許文献１】特開２００２−１６６１１号公報
【特許文献２】特開２００４−２８２５８０号公報
【特許文献３】特開２００６−６０５８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
バスリセットのときに行われるデータの転送速度の認識は、ケーブルを流れる電流の値（Speed Signal）に基づいて行われることから、老朽化などによってケーブルの電気特性が低下していたりすると、許容する転送速度を誤認識する機器が出てしまうことがある。
【０００９】
例えば、機器Ｂの転送速度を機器Ａが誤認識している状態で、機器Ｂが機器Ａに対してコネクションを張ると、機器Ｂが張ったコネクションの転送速度よりも機器Ａが認識している機器Ｂの転送速度の方が遅くなり、結果として、機器Ｂから要求があったとしても、ストリームの出力が機器Ａにおいて行われないことがある。
【００１０】
このように、転送速度の誤認識によりストリームの出力が行われない場合、バスリセットをソフトウエア的に発生させ、各機器が許容するデータの転送速度の認識を再度行えばこのような不具合を解消することができることもあるが、バスリセットは他の不具合を生じさせかねないため、なるべく行わない方が望ましい。
【００１１】
本発明はこのような状況に鑑みてなされたものであり、ストリームの転送速度の誤認識を原因とする通信の不具合を、バスリセットを発生させることなく解消することができるようにするものである。
【課題を解決するための手段】
【００１２】
本発明の一側面の通信制御装置は、ディジタルデータバスを介して接続される通信相手の機器に対してストリームの出力を要求する手段と、前記ストリームが前記通信相手の機器から出力されたことを判断する手段と、前記判断する手段において前記通信相手の機器からストリームの出力が行われないと判断した場合に、前記通信相手の機器のデータ転送速度を調査する手段と、前記ディジタルデータバスを介した前記通信相手の機器との間の接続を、前記調査する手段によって得られたデータ転送速度によって再接続する手段とを備える。
【００１３】
前記ディジタルデータバスはIEEE1394バスであるようにすることができる。
【００１４】
前記判断する手段によって前記通信相手の機器からストリームの出力が行われないと判断した場合に、バスリセットを発生させることによって再接続する手段をさらに設けることができる。
【００１５】
本発明の一側面の通信制御方法またはプログラムは、ディジタルデータバスを介して接続される通信相手の機器に対してストリームの出力を要求し、前記ストリームが前記通信相手の機器から出力されたことを判断し、前記通信相手の機器からストリームの出力が行われないと判断した場合に、前記通信相手の機器のデータ転送速度を調査し、前記ディジタルデータバスを介した前記通信相手の機器との間の接続を、調査によって得られたデータ転送速度によって再接続するステップを含む。
【００１６】
本発明の一側面においては、ディジタルデータバスを介して接続される通信相手の機器に対してストリームの出力が要求され、前記ストリームが前記通信相手の機器から出力されたことが判断される。また、前記通信相手の機器からストリームの出力が行われないと判断された場合に、前記通信相手の機器のデータ転送速度が調査され、前記ディジタルデータバスを介した前記通信相手の機器との間の接続が、調査によって得られたデータ転送速度によって再接続される。
【発明の効果】
【００１７】
本発明の一側面によれば、ストリームの転送速度の誤認識を原因とする通信の不具合を、バスリセットを発生させることなく解消することができる。
【発明を実施するための最良の形態】
【００１８】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外には対応しないものであることを意味するものでもない。
【００１９】
本発明の一側面の通信制御装置（例えば、図１のDTV１）は、  ディジタルデータバスを介して接続される通信相手の機器に対してストリームの出力を要求する手段（例えば、図１４のステップＳ１の処理を行う図１３のコネクション管理部４１）と、前記ストリームが前記通信相手の機器から出力されたことを判断する手段（例えば、図１４のステップＳ２の処理を行う図１３のコネクション管理部４１）と、前記判断する手段において前記通信相手の機器からストリームの出力が行われないと判断した場合に、前記通信相手の機器のデータ転送速度を調査する手段（例えば、図１４のステップＳ４の処理を行う図１３のコネクション管理部４１）と、前記ディジタルデータバスを介した前記通信相手の機器との間の接続を、前記調査する手段によって得られたデータ転送速度によって再接続する手段（例えば、図１４のステップＳ９の処理を行う図１３のコネクション管理部４１）とを備える。
【００２０】
本発明の一側面の通信制御方法またはプログラムは、ディジタルデータバスを介して接続される通信相手の機器に対してストリームの出力を要求し、前記ストリームが前記通信相手の機器から出力されたことを判断し、前記通信相手の機器からストリームの出力が行われないと判断した場合に、前記通信相手の機器のデータ転送速度を調査し、前記ディジタルデータバスを介した前記通信相手の機器との間の接続を、調査によって得られたデータ転送速度によって再接続するステップ（例えば、図１４のステップＳ９）を含む。
【００２１】
以下、本発明の実施の形態について図を参照して説明する。
【００２２】
図１は、本発明の一実施形態に係る通信システムの構成例を示す図である。
【００２３】
図１の通信システムは、DTV(Digital Television)１、DVHS(Digital Video Home System)２、AV-HDD(Audio Visual-Hard Disk Drive)３がIEEE1394ネットワーク４を介して接続されることによって構成される。図１に示される接続関係は論理的な接続関係を表すものであり、物理的には、例えば、DTV１とDVHS２がIEEE1394ケーブルを介して接続され、DVHS２とAV-HDD３が別のIEEE1394ケーブルを介して接続される。
【００２４】
図１の例においては、DTV１、DVHS２、AV-HDD３のそれぞれは、４００Mbpsでのストリームの転送（アイソクロナス転送）を許容する機器とされている。以下、適宜、４００Mbpsの転送速度をＳ４００、２００Mbpsの転送速度をＳ２００、１００Mbpsの転送速度をＳ１００として表す。
【００２５】
どの機器がどの速度でのストリームの転送を許容しているのかは、IEEE1394ネットワーク４に機器が新たに接続されたときや、IEEE1394ネットワーク４から機器が外されたときなどに行われるバスリセット後にそれぞれの機器により認識される。バスリセットが行われ、それまでのトポロジの構成に関する情報がクリアされたとき、tree-identifyとself-identifyの２つのシーケンスを経て、新たなトポロジの構成に関する情報が各機器により保持されることになるが、このうちのself-identifyにおいて、許容する転送速度の認識が行われる。
【００２６】
tree-identifyは、１つのルートのノード（機器）に各ノードがぶら下がることによって構築されるツリー構造を解析するシーケンスであり、self-identifyは、ストリームの転送に必要な情報を機器間で送受信するシーケンスである。
【００２７】
ここで、図１に示されるような構成を有する通信システムにおいて、それぞれの機器が認識する他の機器の転送速度（他の機器が許容する転送速度）の違いに応じてストリームの転送がどのように行われるのかについて説明する。
【００２８】
図２は、ストリームの入力側の機器であるDTV１と出力側の機器であるDVHS２が、相手の転送速度を互いに正しく認識している場合のストリームの転送の状態を示す図である。
【００２９】
この場合、DTV１から、双方の機器が許容するできるだけ速い転送速度であるＳ４００のコネクションがDVHS２に対して張られ、DTV１からDVHS２に対して要求が行われることに応じて、図２に示されるように、DVHS２からストリームが出力される。DVHS２から出力されたストリームは、DTV１により張られているＳ４００のコネクションによってDTV１に入力される。
【００３０】
コネクションとは、AV信号であるストリームの経路の接続をいい、point-to-point型のコネクションとbroadcast型のコネクションとがある。図２に示されるDTV１とDVHS２の間で張られるコネクションはpoint-to-point型のコネクションである。コネクションにおいては、ストリームの入力側の機器のプラグと、それと対になる、ストリームの出力側の機器のプラグが設定され、設定されたプラグ間の経路がストリームの経路となる。
【００３１】
プラグは論理的な信号の入出力部であり、それがActiveの状態にあるとき、出力プラグから、入力プラグに対してストリームが出力される。プラグの状態にはActive，Suspended，Ready，Idleの４つの状態があり、Activeは、コネクションが張られ、かつ、オンラインの状態、Suspendedは、コネクションが張られ、かつ、オフラインの状態である。Readyは、コネクションが張られておらず、かつ、オンラインの状態であり、Idleは、コネクションが張られておらず、かつ、オフラインの状態である。
【００３２】
入力プラグの状態は、入力プラグが設定された機器が管理するiPCR(Input Plug Control Register)の値によって表され、出力プラグの状態は、出力プラグが設定された機器が管理するoPCR(Output Plug Control Register)の値によって表される。図１の通信システムにおいては、ストリームの転送を実現するため、適宜、DTV１により、DVHS２などのoPCRの値が調査される。
【００３３】
図３は、ストリームの入力側の機器であるDTV１は出力側の機器であるDVHS２の転送速度を正しく認識しているが、DVHS２が、DTV１の転送速度をＳ２００として誤認識している場合のストリームの転送の状態を示す図である。
【００３４】
この場合、DTV１がDVHS２に対して張るコネクションは、DTV１の認識上、DTV１もDVHS２も許容する転送速度がＳ４００であるため、双方の機器が許容するできるだけ速い転送速度であるＳ４００のコネクションとなるが、DTV１の転送速度をＳ２００としてDVHS２が誤認識しているため、図３に示されるように、DTV１による要求があった場合でも、DVHS２からは、DTV１により張られたＳ４００のコネクションによってはストリームが出力されない。この場合、図４に示されるようにして、ストリームの転送が実現される。
【００３５】
すなわち、コネクションを張り、ストリームの出力を要求したにもかかわらず、相手の機器であるDVHS２がストリームを出力しない場合、DTV１においては、DTV１自身の転送速度をDVHS２が誤認識している可能性があるとして判断され、転送速度を落とした形でコネクションを張り直すことが行われる。Ｓ４００のコネクションを張っている場合には、転送速度をＳ２００としたコネクションを新たに張り、以降、DTV１は、DVHS２の転送速度をＳ２００として認識し、管理することになる。
【００３６】
これにより、DTV１もDVHS２も、互いに相手の転送速度をＳ２００として認識している状態になるため、DTV１による要求があった場合には、図４に示されるように、DTV１により張られたＳ２００のコネクションによって、DVHS２からストリームが出力される。
【００３７】
このように、図１の通信システムにおいては、コネクションを張り、ストリームの出力を要求したにもかかわらず、相手の機器がストリームを出力しない場合、DTV１においては、バスリセットをソフトウエア的に発生させるようなことは行われずに、転送速度を落とした形でコネクションが張り直され、張り直されたコネクションによって、ストリームの転送が行われる。
【００３８】
これにより、転送速度は抑えたものになるものの、バスリセットを発生させることなく、ストリームの転送が行われない不具合を解消することができる。
【００３９】
図５は、ストリームの入力側の機器であるDTV１は出力側の機器であるAV-HDD３の転送速度を正しく認識しているが、DTV１とAV-HDD３の間にある機器のDVHS２がDTV１の転送速度をＳ２００として誤認識している場合のストリームの転送の状態を示す図である。
【００４０】
この場合、DTV１がAV-HDD３に対して張るコネクションは、DTV１の認識上、DTV１もAV-HDD３も転送速度がＳ４００であるため、双方の機器が許容するできるだけ速い転送速度であるＳ４００のコネクションとなるが、物理的な経路上でDTV１とAV-HDD３の間にあるDVHS２が、DTV１の転送速度をＳ２００と誤認識しているため、図５に示されるように、AV-HDD３も、DTV１の転送速度をＳ２００として誤認識することになる。AV-HDD３からDTV１に対するストリームの出力は物理的にはDVHS２を経由して行われるため、AV-HDD３が認識するDTV１の転送速度も、DVHS２が認識するDTV１の転送速度と同じ速度に制限される。
【００４１】
従って、DVHS２が誤認識しているときと同様に、AV-HDD３は、DTV１による要求があった場合でも、DTV１により張られたＳ４００のコネクションではストリームを出力しない。
【００４２】
このように、コネクションを張り、ストリームの出力を要求したにもかかわらず、相手の機器であるAV-HDD３がストリームを出力しない場合、DTV１においては、DTV１が認識しているDVHS２の転送速度がＳ２００として変更される。これにより、AV-HDD３に対してコネクションを張るとき、DTV１は、自分が認識するAV-HDD３の転送速度であるＳ４００より遅い、DVHS２の転送速度と同じＳ２００の転送速度でそれを行うことになる。このとき、ストリームの状態は図６の状態となる。
【００４３】
すなわち、転送速度をＳ２００としたコネクションがDTV１からAV-HDD３に対して張られ、DTV１による要求があった場合には、図６に示されるように、DTV１により張られたＳ２００のコネクションによって、AV-HDD３からストリームが出力される。
【００４４】
図７は、ストリームの出力側の機器であるDVHS２を介して入力側の機器であるDTV１に接続される機器のAV-HDD３の転送速度をDVHS２がＳ２００として誤認識しているものの、DTV１とDVHS２が、相手の転送速度を互いに正しく認識している場合のストリームの転送の状態を示す図である。
【００４５】
この場合、AV-HDD３の転送速度をDVHS２が誤認識していることはDTV１とDVHS２の間では関係がないから、図２に示される場合と同様に、DTV１により、DVHS２に対してＳ４００のコネクションが張られ、DTV１による要求があることに応じて、DVHS２からストリームが出力される。
【００４６】
図８は、ストリームの出力側の機器であるAV-HDD３の転送速度を、入力側の機器であるDTV１とAV-HDD３の間にある機器のDVHS２がＳ２００として誤認識しているものの、DTV１とAV-HDD３が、相手の転送速度を互いに正しく認識している場合のストリームの転送の状態を示す図である。
【００４７】
この場合、DVHS２が誤認識しているAV-HDD３の転送速度はDTV１とAV-HDD３の間では関係がないから（反対に、DTV１を出力側の機器、AV-HDD３を入力側の機器としてコネクションを張る場合には、図５の場合と同様に、DVHS２が誤認識していることはDTV１とAV-HDD３の間のコネクションに関係してくる）、DTV１により、AV-HDD３に対してＳ４００のコネクションが張られ、DTV１による要求があることに応じて、AV-HDD３からストリームが出力される。
【００４８】
図９は、ストリームの出力側の機器であるDVHS２を介して入力側の機器であるDTV１に接続される機器のAV-HDD３がDVHS２の転送速度をＳ２００として誤認識しているものの、DTV１とDVHS２が、相手の転送速度を互いに正しく認識している場合のストリームの転送の状態を示す図である。
【００４９】
この場合、DVHS２の転送速度をAV-HDD３が誤認識していることはDTV１とDVHS２の間では関係がないから、図２の場合と同様に、DTV１により、DVHS２に対してＳ４００のコネクションが張られ、DTV１による要求があることに応じて、DVHS２からストリームが出力される。
【００５０】
このように、図７、図８、図９の状態のときには、転送速度を落とした形でコネクションを張り直すようなことはDTV１においては行われない。
【００５１】
図１０は、ストリームの入力側の機器であるDTV１は出力側の機器であるAV-HDD３の転送速度を正しく認識しているが、DTV１とAV-HDD３の間にある機器のDVHS２の転送速度をAV-HDD３がＳ２００として誤認識している場合のストリームの転送の状態を示す図である。
【００５２】
この場合、DTV１がAV-HDD３に対して張るコネクションは、DTV１の認識上、DTV１もAV-HDD３も許容する転送速度がＳ４００であるため、双方の機器が許容するできるだけ速い転送速度であるＳ４００のコネクションとなるが、AV-HDD３が、DVHS２の転送速度をＳ２００として誤認識しているため、図１０に示されるように、DTV１による要求があった場合でも、AV-HDD３からは、DTV１により張られたＳ４００のコネクションではストリームが出力されない。
【００５３】
AV-HDD３が出力したストリームはDVHS２を経由してDTV１に入力されるため、物理的な経路上でDTV１とAV-HDD３の間にあるDVHS２の転送速度をAV-HDD３がＳ２００として誤認識している場合、ストリームの転送速度は、AV-HDD３が認識するDVHS２の転送速度と同じ速度に制限される。
【００５４】
このように、コネクションを張り、ストリームの出力を要求したにもかかわらず、相手の機器であるAV-HDD３がストリームを出力しない場合、図４の場合と同様に、DTV１においては、DTV１が認識するAV-HDD３の転送速度がＳ２００として変更される。これにより、AV-HDD３に対してコネクションを張るとき、DTV１は、自分が認識を変更したＳ２００の転送速度でそれを行うことになる。このとき、ストリームの状態は図１１の状態となる。
【００５５】
すなわち、転送速度をＳ２００としたコネクションがDTV１からAV-HDD３に対して張られ、DTV１による要求があった場合には、図１１に示されるように、DTV１により張られたＳ２００のコネクションによって、AV-HDD３からストリームが出力される。
【００５６】
以上のように、DTV１においては、コネクションを張り、ストリームの出力を要求したにもかかわらず、相手の機器がストリームを出力しない場合、転送速度を落とした形でコネクションを張り直すことが行われ、これにより、ストリームの転送が実現される。以上のようにしてコネクションを制御するDTV１の一連の処理についてはフローチャートを参照して後述する。
【００５７】
図１２は、DTV１のハードウエア構成例を示すブロック図である。
【００５８】
CPU(Central Processing Unit)１１は、メモリ１２に記憶されているプログラムを実行し、受光部１３から供給される信号に応じてDTV１の全体の動作を制御する。
【００５９】
受光部１３は、リモートコントローラ３２からの赤外線を受光し、復調して得られたユーザ操作に対応する信号をCPU１１に出力する。
【００６０】
チューナ１４は、CPU１１による制御に従って、アンテナ３１からの放送信号を受信、復調し、所定のチャンネルで放送されるトランスポートストリーム（TS）をデスクランブラ１５に出力する。
【００６１】
デスクランブラ１５は、図示せぬCASカードに記憶されているデータを用いてスクランブルを解くキーを生成し、チューナ１４から供給されたトランスポートストリームのスクランブルを解除する。デスクランブラ１５によりスクランブルが解除されたトランスポートストリームはDEMUX（デマルチプレクサ）１６に供給される。
【００６２】
DEMUX１６は、CPU１１による制御に従って、デスクランブラ１５から供給されたトランスポートストリームから所定のストリームを抽出し、抽出したストリーム（ストリームを構成するパケット）をAudioデコーダ１７、Videoデコーダ２０に出力する。
【００６３】
また、DEMUX１６は、コンテンツをDVHS２やAV-HDD３に録画させる場合、得られたストリームをIEEE1394インタフェース２４に出力し、DVHS２やAV-HDD３に録画されているコンテンツを再生する場合、IEEE1394バス３３、およびIEEE1394インタフェース２４を介してDVHS２やAV-HDD３から供給されたストリームをAudioデコーダ１７、Videoデコーダ２０に出力する。
【００６４】
Audioデコーダ１７は、DEMUX１６から供給されたオーディオデータ（オーディオパケット）をデコードし、得られたオーディオデータを音声処理回路１８に出力する。
【００６５】
音声処理回路１８は、Audioデコーダ１７から供給されたオーディオデータに対してD/A(Digital/Analog)変換、増幅処理等を施し、得られた音声をスピーカ１９から出力させる。
【００６６】
Videoデコーダ２０は、DEMUX１６から供給されたビデオデータ（ビデオパケット）をデコードし、得られたビデオデータを映像処理回路２１に出力する。
【００６７】
映像処理回路２１は、Videoデコーダ２０から供給されたビデオデータに対して所定の画像処理、D/A変換等を施し、コンテンツの画像をディスプレイ２３に表示させる。また、映像処理回路２１は、OSD(On Screen Display)付加回路２２から供給されたビデオデータにも基づいて所定の画像をディスプレイ２３に表示させる。
【００６８】
OSD付加回路２２は、CPU１１による制御に従ってディスプレイ２３に表示させる画像のビデオデータを生成し、生成したビデオデータを映像処理回路２１に出力する。OSD付加回路２２により、例えば、DVHS２やAV-HDD３に録画されているコンテンツのリストを表示するためのビデオデータが生成され、それが映像処理回路２１に出力される。
【００６９】
IEEE1394インタフェース２４は、IEEE1394バス３３によって構築されるIEEE1394ネットワーク４を介してDVHS２やAV-HDD３との間で通信を行う。IEEE1394インタフェース２４からDVHS２やAV-HDD３に対しては、例えば、CPU１１から供給されたAV/Cコマンド、DEMUX１６から供給されたストリームが送信される。
【００７０】
図１３は、DTV１の機能構成例を示すブロック図である。図１３の構成のうちの少なくとも一部は、図１２のCPU１１により所定のプログラムが実行されることによって実現される。
【００７１】
図１３に示されるように、DTV１においては、コネクション管理部４１とSpeed情報登録部４２が実現される。
【００７２】
コネクション管理部４１は、IEEE1394インタフェース２４を制御し、IEEE1394ネットワーク４を介して接続される機器とのコネクションを管理する。例えば、コネクション管理部４１は、コネクションを張った機器からストリームが出力されない場合、相手の機器がDTV１自身の転送速度を誤認識していると判断し、転送速度を落とした形でコネクションを張り直すことなどを行う。
【００７３】
Speed情報登録部４２は、コネクション管理部４１によりコネクションが張られている相手の転送速度に関する情報であるSpeed情報を登録する。Speed情報登録部４２に登録されているSpeed情報は、相手の転送速度についてコネクション管理部４１が認識を変更したとき、適宜、更新される。
【００７４】
次に、図１４のフローチャートを参照して、コネクションを制御するDTV１の処理について説明する。
【００７５】
ここでは、DTV１をストリームの入力側の機器、DVHS２をストリームの出力側の機器としたコネクションを制御する処理について説明する。この処理は、例えば、ユーザが、リモートコントローラ３２を操作することによって、DVHS２に装着されているテープに記録されているコンテンツの再生をDTV１に対して指示したときに開始される。
【００７６】
ステップＳ１において、DTV１のコネクション管理部４１は、DVHS２に対してコネクションを張り、ストリームの出力を開始することを要求する。例えば、DVHS２の転送速度がＳ４００であると認識している場合、コネクション管理部４１は、転送速度をＳ４００としたコネクションをDVHS２との間で張る。このとき、Speed情報登録部４２には、DVHS２の転送速度がＳ４００であることを表すSpeed情報が登録される。
【００７７】
ステップＳ２において、コネクション管理部４１は、DVHS２からストリームが出力されたか否かを判定し、出力されたと判定した場合、ステップＳ３に進み、ストリームの入力を正常に受けることができる状態であると認識する。この状態は、例えば、DTV１とDVHS２の双方が、互いに、相手の転送速度がＳ４００であると正しく認識しているときの状態である。ストリームの入力を正常に受けることができる状態であると認識された後、処理は終了される。
【００７８】
一方、ステップＳ２において、コネクション管理部４１は、DVHS２からストリームが出力されていないと判定した場合、ステップＳ４に進み、DVHS２のoPCRを調査する。上述したように、oPCRは、ストリームの出力側の機器であるDVHS２の出力プラグの状態を表す。
【００７９】
ステップＳ５に進み、コネクション管理部４１は、ステップＳ４で行ったoPCRの調査の結果に基づいて、DVHS２のoPCRの値がActiveを表す値であるか否かを判定する。DVHS２との間でコネクションが張られている場合には、oPCRの値は、コネクションが張られ、かつ、オンラインの状態であるActiveを表す値か、コネクションが張られ、かつ、オフラインの状態であるSuspendedを表す値となる。
【００８０】
コネクション管理部４１は、ステップＳ５において、DVHS２のoPCRの値がActiveを表す値ではない、すなわち、Suspendedを表す値であると判定した場合、ステップＳ６に進み、DVHS２がストリームを出力することができないオフラインの状態にあるとして認識する。その後、処理は終了される。
【００８１】
一方、ステップＳ５において、コネクション管理部４１は、DVHS２のoPCRの値がActiveを表す値であると判定した場合、ステップＳ７に進み、Speed情報登録部４２に登録されているSpeed情報を参照し、DVHS２との間で張られているコネクションの転送速度がＳ１００であるか否かを判定する。
【００８２】
ステップＳ７において、コネクション管理部４１は、DVHS２との間で張られているコネクションの転送速度がＳ１００であると判定した場合、上述したように、コネクションの転送速度として規格化されている速度がＳ１００，Ｓ２００，Ｓ４００の３種類だけであるときには、転送速度を落とした形でコネクションを張り直すことができないから、ステップＳ８に進み、転送速度の誤認識以外のエラーが原因となって、DVHS２がストリームを出力することができない状態にあると認識する。この場合、例えば、バスリセットが行われるなどして不具合が解消され、その後、処理は終了される。
【００８３】
一方、ステップＳ７において、コネクション管理部４１は、DVHS２との間で張られているコネクションの転送速度がＳ１００ではなく、転送速度を落とした形でコネクションを張り直すことができると判定した場合、ステップＳ９に進み、転送速度を落とした形でコネクションを張り直す。例えば、Ｓ４００として張られているコネクションが、転送速度をＳ２００として張り直される。
【００８４】
転送速度を落とした形でコネクションを張り直したとき、ステップステップＳ１０において、コネクション管理部４１は、DVHS２からストリームが出力されたか否かを判定し、出力されていないと判定した場合、ステップＳ４以降の処理を繰り返す。
【００８５】
例えば、転送速度をＳ２００としてコネクションが張り直されたが、それでも、ストリームがDVHS２から出力されない場合、DVHS２のoPCRの値によっては、転送速度をさらに落とした、Ｓ１００のコネクションが再度張り直される。
【００８６】
一方、ステップＳ１０において、コネクション管理部４１は、DVHS２からストリームが出力されたと判定した場合、ステップＳ１１に進む。
【００８７】
ステップＳ１１において、コネクション管理部４１は、DTV１自身の転送速度をDVHS２が誤認識していたことが原因となって、ストリームが出力されていなかったとしてその原因を特定し、Speed情報登録部４２により管理されるDVHS２のSpeed情報を、DVHS２との間でいま張られているコネクションの転送速度と同じ速度を表す情報によって更新する。その後、処理は終了される。
【００８８】
DVHS２との間で次にコネクションを張るとき、DTV１においては、Speed情報登録部４２により管理されている更新後のSpeed情報に基づいてコネクションが張られるようにすることにより、コネクションの張り直しなどを行うことなく、最初から、DVHS２が誤認識していることにあわせて、転送速度をＳ２００としたコネクションを張ることが可能となる。
【００８９】
以上においては、通信相手の機器が転送速度を誤認識しているか否かの判断が、ユーザによる指示に応じてストリームの出力が通信相手の機器に対して要求され、そのときにストリームが出力されない場合に行われるものとしたが、IEEE1394ネットワーク４に機器が新たに接続されたときなどに発生するバスリセット時に、ストリームの出力が可能な全ての機器を対象として行われるようにしてもよい。すなわち、図１４を参照して説明した処理が、ユーザにより指示が行われる前にあらかじめ行われる。
【００９０】
これにより、コネクションを張り直すことなどがあらかじめ行われ、ユーザにより指示が行われる前に、全ての機器からストリームが出力される状態を確保しておくことができ、ユーザがコンテンツの再生を指示したにもかかわらず、映像がDTV１に表示されないといったことを防止することができる。
【００９１】
なお、ストリームの出力が可能な全ての機器を対象とする場合、図１４を参照して説明した処理は、DTV１に物理的に近い機器から順に、対象を切り換えて行われるようにすることが望ましい。
【００９２】
これは、図６を参照して説明したように、DTV１に近い位置にあるDVHS２が誤認識すると、その誤認識はDVHS２より物理的に遠い位置にあるAV-HDD３との間のコネクションにも影響を与えることから、物理的に遠い位置にあるAV-HDD３を対象とした処理を先に行うと、AV-HDD３が誤認識しているのか、それより近い位置にあるDVHS２が誤認識しているのかが判別できないためである。
【００９３】
図１５は、トポロジの例を示す図である。
【００９４】
図１５の例においては、DTV１をルートのノードとしてDVHS＃１とAV-HDD＃１が接続され、このうちのDVHS＃１を親のノードとしてDVHS＃２とAV-HDD＃２が、AV-HDD＃１を親のノードとしてAV-HDD＃３とCAM＃１（ビデオカメラ）がそれぞれ接続されている。DVHS＃２には、それを親のノードとしてAV-HDD＃４も接続されている。図１５に示されるそれぞれの機器は、Ｓ４００でのストリームの転送を許容する機器である。
【００９５】
このような関係で各機器が接続されたトポロジにおいて、例えば、DVHS＃２の転送速度をＳ２００としてDVHS＃１が誤認識している場合、図７の場合と同様に、DVHS＃１が誤認識していることはDTV１には影響がないから、DTV１とDVHS＃１の間では、DTV１により張られたＳ４００のコネクションを用いてストリームの転送が行われる。
【００９６】
また、図１５に示されるように、DVHS＃２の転送速度をＳ１００としてAV-HDD＃４が誤認識している場合、図１１の場合と同様に、DTV１においては、AV-HDD＃４の転送速度がＳ１００として認識され、DTV１とAV-HDD＃４の間で転送速度をＳ１００としたコネクションがDTV１により張られることによって、ストリームの転送が実現される。
【００９７】
さらに、図１５に示されるように、DTV１の転送速度をＳ２００としてAV-HDD＃１が誤認識している場合、図４の場合と同様に、DTV１においては、AV-HDD＃１の転送速度がＳ２００として認識され、DTV１とAV-HDD＃１の間で転送速度をＳ２００のコネクションがDTV１により張られることによって、ストリームの転送が実現される。
【００９８】
このように、トポロジ内の機器のうち、DTV１との間でのストリームの転送に影響を与えるような誤認識をしている全ての機器について転送速度の認識を更新することにより、DTV１は、バスリセットなどを発生させることなく、そのような誤認識を原因として発生する不具合を解消させることができる。
【００９９】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１００】
図１６は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。
【０１０１】
CPU(Central Processing Unit)１０１は、ROM(Read Only Memory)１０２、または記憶部１０８に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)１０３には、CPU１０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU１０１、ROM１０２、およびRAM１０３は、バス１０４により相互に接続されている。
【０１０２】
CPU１０１にはまた、バス１０４を介して入出力インタフェース１０５が接続されている。入出力インタフェース１０５には、キーボード、マウス、マイクロホンなどよりなる入力部１０６、ディスプレイ、スピーカなどよりなる出力部１０７が接続されている。CPU１０１は、入力部１０６から入力される指令に対応して各種の処理を実行する。そして、CPU１０１は、処理の結果を出力部１０７に出力する。
【０１０３】
入出力インタフェース１０５に接続されている記憶部１０８は、例えばハードディスクからなり、CPU１０１が実行するプログラムや各種のデータを記憶する。通信部１０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０１０４】
入出力インタフェース１０５に接続されているドライブ１１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア１１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部１０８に転送され、記憶される。
【０１０５】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図１６に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)，DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア１１１、または、プログラムが一時的もしくは永続的に格納されるROM１０２や、記憶部１０８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部１０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０１０６】
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０１０７】
【図１】本発明の一実施形態に係る通信システムの構成例を示す図である。
【図２】ストリームの転送の状態を示す図である。
【図３】ストリームの転送の他の状態を示す図である。
【図４】ストリームの転送のさらに他の状態を示す図である。
【図５】ストリームの転送の状態を示す図である。
【図６】ストリームの転送の他の状態を示す図である。
【図７】ストリームの転送のさらに他の状態を示す図である。
【図８】ストリームの転送の状態を示す図である。
【図９】ストリームの転送の他の状態を示す図である。
【図１０】ストリームの転送のさらに他の状態を示す図である。
【図１１】ストリームの転送の状態を示す図である。
【図１２】DTVのハードウエア構成例を示すブロック図である。
【図１３】DTVの機能構成例を示すブロック図である。
【図１４】DTVのコネクション制御処理について説明するフローチャートである。
【図１５】トポロジの例を示す図である。
【図１６】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０１０８】
１  DTV，  ２  DVHS，  ３  AV-HDD，  ４  IEEE1394ネットワーク，  ４１  コネクション管理部，  ４２  Speed情報登録部
【図１】
2008009802.tif 000003
【図２】
2008009802.tif 000004
【図３】
2008009802.tif 000005
【図４】
2008009802.tif 000006
【図５】
2008009802.tif 000007
【図６】
2008009802.tif 000008
【図７】
2008009802.tif 000009
【図８】
2008009802.tif 000010
【図９】
2008009802.tif 000011
【図１０】
2008009802.tif 000012
【図１１】
2008009802.tif 000013
【図１２】
2008009802.tif 000014
【図１３】
2008009802.tif 000015
【図１４】
2008009802.tif 000016
【図１５】
2008009802.tif 000017
【図１６】
2008009802.tif 000018