(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0019】
以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。
【0020】
[第1の実施の形態]
{AVシステムの構成}
図1は、本発明の第1の実施の形態によるAVシステムの構成を示す図である。
図1を参照して、AVシステムは、AVアンプ1と、BDプレーヤ100と、STB(Set Top Box)200と、ゲーム機300と、DVD(Digital Versatile Disc)プレーヤ400と、テレビ500とを備える。
【0021】
AVアンプ1は、HDMIに準拠するソース機器又はHDMIに準拠しないソース機器を、HDMIに準拠するテレビ500に選択的に接続する中継機器である。ユーザは、テレビ500のリモコン501を用いて、テレビ500に接続されるソース機器をAVアンプ1に指示することができる。
【0022】
BDプレーヤ100は、HDMIケーブル150を介して、AVアンプ1に接続される。STB200は、HDMIケーブル250を介して、AVアンプ1に接続される。ゲーム機300は、コンポジット信号線350を介して、AVアンプ1に接続される。DVDプレーヤ400は、コンポーネント信号線450を介して、AVアンプ1に接続される。
【0023】
BDプレーヤ100及びSTB200は、HDMIに準拠するソース機器である。以下、BDプレーヤ100及びSTB200を総称する場合、「HDMIソース機器」と呼ぶ。BDプレーヤ100は、ブルーレイディスクに記録されたコンテンツデータを再生する。STB(Set Top Box)200は、ケーブルテレビ放送又は衛星放送の放送信号を受信し、放送信号をコンテンツデータに変換する。HDMIソース機器は、HDMIに準拠したコンテンツデータをAVアンプ1に送信する。
【0024】
ゲーム機300及びDVDプレーヤ400は、HDMIに準拠しないソース機器である。以下、ゲーム機300及びDVDプレーヤ400を総称する場合、「非準拠ソース機器」と呼ぶ。ゲーム機300は、ゲーム用のコンテンツデータを生成し、生成したコンテンツデータをコンポジット信号として出力する。DVDプレーヤ400は、DVDに記録されたコンテンツデータを再生し、再生したコンテンツデータをコンポーネント信号として出力する。
【0025】
テレビ500は、HDMIに準拠するシンク機器である。テレビ500は、AVアンプ1からコンテンツデータを受信し、映像コンテンツを表示する。
【0026】
{AVアンプ1の構成}
図2は、AVアンプ1の構成を示す機能ブロック図である。
図2を参照して、AVアンプ1は、ソースインタフェース11,12,13,14と、シンクインタフェース15と、スイッチ16と、マイクロコントローラ(マイコン)17とを備える。
【0027】
ソースインタフェース11は、HDMIに準拠しており、BDプレーヤ100からのコンテンツデータを受信する。ソースインタフェース11は、HDMI端子11aと、アドレス保持部11bと、受信部11cとを備える。HDMIケーブル150が、HDMI端子11aに挿入される。アドレス保持部11bは、BDプレーヤ100に割り当てられた物理アドレスを保持する。物理アドレスの詳細は、後述する。受信部11cは、BDプレーヤ100からのコンテンツデータをデジタル形式のビデオデータに変換する。
【0028】
ソースインタフェース12は、HDMIに準拠しており、STB200からのコンテンツデータを受信する。ソースインタフェース12は、HDMI端子12aと、アドレス保持部12bと、受信部12cとを備える。HDMIケーブル250が、HDMI端子12aに挿入される。アドレス保持部12bは、STB200に割り当てられた物理アドレスを保持する。受信部12cは、STB200からのコンテンツデータをデジタル形式のビデオデータに変換する。
【0029】
ソースインタフェース13は、HDMIに非準拠であり、ゲーム機300からのコンテンツデータを受信する。ソースインタフェース13は、コンポジット端子13aと、A/Dコンバータ13bとを備える。コンポジット信号線350が、コンポジット端子13aに挿入される。A/Dコンバータ13bは、ゲーム機300からのコンテンツデータ(アナログデータ)をAD変換して、デジタル形式のビデオデータを生成する。
【0030】
ソースインタフェース14は、HDMIに非準拠であり、DVDプレーヤ400からのコンテンツデータを受信する。ソースインタフェース14は、コンポーネント端子14aと、A/Dコンバータ14bとを備える。コンポーネント信号線450が、コンポーネント端子14aに挿入される。A/Dコンバータ14bは、DVDプレーヤ400からのコンテンツデータ(アナログデータ)をAD変換して、デジタル形式のビデオデータを生成する。
【0031】
シンクインタフェース15は、ソースインタフェース11〜14のいずれかにより受信されたコンテンツデータをテレビ500に送信する。シンクインタフェース15は、HDMI端子15aと、送信部15bとを備える。HDMI端子15aには、HDMIケーブル550が挿入される。送信部15bは、デジタル形式のビデオデータをHDMIに準拠したコンテンツデータに変換する。送信部15bにより変換されたコンテンツデータは、HDMI端子15aからテレビ500に送信される。
【0032】
スイッチ16は、ソースインタフェース11〜14のいずれかをシンクインタフェース15に接続する。マイコン17は、AVアンプ1を制御する半導体装置である。
【0033】
図3は、AVアンプ1の内部におけるCECライン18の接続を示す図である。
図3では、アドレス保持部11b,12bと、受信部11c,12cと、A/Dコンバータ13b,14bと、スイッチ16との表示を省略している。
【0034】
図3を参照して、AVアンプ1は、さらに、CECライン18を備える。CECライン18は、HDMIに準拠する機器の間で制御メッセージを伝送するために用いられる双方向通信式の信号線である。CECライン18は、HDMI端子11a,12a,15aと、マイコン17とを相互に接続している。テレビ500からの制御メッセージは、AVアンプ1を通過し、HDMIソース機器に送信される。マイコン17は、BDプレーヤ100、STB200及びテレビ500からの制御メッセージを受信することができる。ソースインタフェース13,14は、HDMIに準拠していないため、CECライン18は、コンポジット端子13a及びコンポーネント端子14aに接続されない。
【0035】
{マイコン17の構成}
図4は、マイコン17の構成を示す機能ブロック図である。
図4を参照して、マイコン17は、CPU(Central Processing Unit)171と、RAM(Random Access Memory)172と、ROM(Read Only Memory)173と、インタフェース174とを備える。
【0036】
CPU171は、RAM172にロードされたプログラムを実行して、AVアンプ1を制御する。
【0037】
RAM172は、マイコン17のメインメモリである。RAM172には、アドレステーブル21が格納される。アドレステーブル21は、BDプレーヤ100、STB200、ゲーム機300及びDVDプレーヤ400(以下、これらの機器を総称して、単に「ソース機器」と呼ぶ。)の物理アドレスなどを管理するテーブルである。
【0038】
ROM173は、固定論理アドレス23と、論理アドレス候補テーブル24とを格納する。固定論理アドレス23は、AVアンプ1が使用する論理アドレスある。論理アドレスは、HDMIで定義されたアドレスであり、制御メッセージの宛先として用いられる。論理アドレス候補テーブル24は、非準拠ソース機器に割り当てる論理アドレスの候補を記録したデータである。
【0039】
ROM173は、さらに、割当プログラム31と、スイッチ切替プログラム32とを格納する。割当プログラム31は、物理アドレスをソース機器に割り当て、論理アドレスを非準拠ソース機器に割り当てる。スイッチ切替プログラム32は、AVアンプ1がスイッチ16の切り替えを指示するメッセージ(以下、「切替メッセージ」と呼ぶ。)をテレビ500から受信した場合、アドレステーブル24の中から、切替メッセージで指定されたアドレスに一致する物理アドレスを特定する。スイッチ切替プログラム32は、特定したアドレスに対応付けられたソースインタフェースを、シンクインタフェース15に接続するように、スイッチ16を制御する。
【0040】
{物理アドレス及び論理アドレス}
図1に示す各機器に割り当てられる物理アドレス及び論理アドレスについて説明する。通常、物理アドレス及び論理アドレスは、HDMIに準拠する機器(HDMIソース機器、AVアンプ1及びテレビ500)に割り当てられるが、非準拠ソース機器に割り当てられない。しかし、本実施の形態では、AVアンプ1が、物理アドレス及び論理アドレスを非準拠ソース機器に仮想的に割り当てる。
【0041】
まず、物理アドレスについて説明する。物理アドレスは、AVシステムを構成する各機器を一意に特定する情報であり、かつ、AVシステムの階層構造を示す。
図1を参照して、テレビ500の物理アドレスは、(0,0,0,0)に設定されている。これは、テレビ500が、AVシステムの最上位の階層に位置していることを示す。
【0042】
AVアンプ1の物理アドレスは、(1,0,0,0)であり、テレビ500の次の階層に位置することを示す。AVアンプ1の物理アドレスは、上の階層のテレビ500により決定される。本実施の形態において、物理アドレスは、切替メッセージで指定されるアドレスとして用いられる。
【0043】
BDプレーヤ100、STB200、ゲーム機300及びDVDプレーヤ400に割り当てられる物理アドレスは、それぞれ、(1,1,0,0)、(1,2,0,0)、(1,3,0,0)、(1,4,0,0)である。これらソース機器の物理アドレスは、AVアンプ1により割り当てられる。
【0044】
論理アドレスは、物理アドレスと同様に、AVシステムを構成する機器を一意に特定する情報である。HDMIに準拠する機器(AVアンプ1、テレビ500及びHDMIソース機器)は、自らの論理アドレスを設定する。非準拠ソース機器の論理アドレスは、AVアンプ1により割り当てられる。論理アドレスは、上述のように、CECに基づく制御メッセージの宛先として用いられる。
【0045】
テレビ500の論理アドレスは、L(0)である。AVアンプ1の論理アドレスは、Laである。BDプレーヤ100、STB200、ゲーム機300及びDVDプレーヤ400の論理アドレスは、それぞれ、L(1)、L(2)、L(3)及びL(4)である。
【0046】
{動作概要}
以下、AVアンプ1の動作の概要を説明する。
【0047】
AVアンプ1は、物理アドレスをHDMIソース機器に割り当てる。HDMIソース機器の物理アドレスは、アドレステーブル21において、ソースインタフェース11,12にそれぞれに対応付けられる。AVアンプ1は、物理アドレス及び論理アドレスを非準拠ソース機器に仮想的に割り当てる。非準拠ソース機器の物理アドレス及び論理アドレスは、アドレステーブル21において、ソースインタフェース13,14にそれぞれ対応付けられる。
【0048】
テレビ500は、ユーザの操作に応じて、切替メッセージをAVアンプ1に送信する。AVアンプ1は、切替メッセージで指定された物理アドレスに一致する物理アドレスを、アドレステーブル21の中から特定する。AVアンプ1は、特定された物理アドレスに対応するソースインタフェースを、シンクインタフェース15に接続するように、スイッチ16を制御する。
【0049】
たとえば、切替メッセージにおいて、ゲーム機器300の物理アドレス(1,3,0,0)が指定されていた場合、AVアンプ1は、ソースインタフェース13をシンクインタフェース15に接続する。AVアンプ1は、非準拠ソース機器に物理アドレスを仮想的に割り当てることにより、テレビ500からの切替メッセージに基づいて、非準拠ソース機器をテレビ500に接続することができる。非準拠ソース機器がAVアンプ1に接続されている場合であっても、ユーザは、AVアンプ1を直接操作することなく、非準拠ソース機器からのコンテンツデータをテレビ500に送信することを、AVアンプ1に指示することができる。
【0050】
{AVアンプ1の動作}
以下、AVアンプ1の動作について詳しく説明する。
【0051】
(1.物理アドレスの割り当て)
AVアンプ1は、切替メッセージに基づいてスイッチ16を制御する前に、割当プログラム31を用いて、HDMIソース機器及び非準拠ソース機器に物理アドレスを割り当てる。AVアンプ1は、電源がONされた場合又はテレビ500が接続された場合、割当プログラム31を起動する。
【0052】
図5及び
図6は、
図4に示す割当プログラム31の処理を示すフローチャートである。
図5を参照して、割当プログラム31は、テレビ500からAVアンプ1に割り当てられた物理アドレス(1,0,0,0)を取得する(ステップS101)。具体的には、割当プログラム31は、シンクインタフェース15を介して、アドレス保持部504から物理アドレス(1,0,0,0)を読み出す。割当プログラム31は、読み出した物理アドレスを、AVアンプ1の物理アドレスとしてRAM172に登録する(ステップS102)。
【0053】
次に、割当プログラム31は、ステップS103〜S108の処理を実行することにより、HDMIソース機器に物理アドレスを割り当てる。割当プログラム31は、AVアンプ1の物理アドレスのうち、値が0である最小の桁を特定する(ステップS103)。
【0054】
図7は、AVアンプ1の物理アドレスを示す図である。
図7に示す物理アドレスにおいて、カンマ(,)で区切られた数値を、左から順に、第1桁、第2桁、第3桁及び第4桁と定義する。割当プログラム31は、第2桁を最小の桁と特定する。割当プログラム31は、最小の桁の数値をインクリメントすることにより、HDMIソース機器に割り当てる物理アドレスを生成する。
【0055】
割当プログラム31は、変数x,mを初期化する(ステップS104)。変数xは、ソースインタフェースの端子番号に相当するとともに、最小の桁に設定される数値である。変数xの初期値は1である。端子番号は、アドレステーブル21に設定されている(
図8参照)。変数mは、HDMIに準拠したソースインタフェースの端子番号の最大値である。割当プログラム31は、アドレステーブル21を参照して、変数mを決定する。
【0056】
図8は、アドレステーブル21を示す図である。
図8を参照して、アドレステーブル21は、ソースインタフェース11〜14と、ソースインタフェース11〜14に接続されるソース機器に割り当てられるアドレスとを対応付けて記録している。アドレステーブル21は、初期状態において、物理アドレス及び論理アドレスの欄が空欄である。
【0057】
端子番号「1」〜「4」は、ソースインタフェース11〜14の識別番号である。アドレステーブル21の規格の欄を参照することにより、ソースインタフェース11,12がHDMIに準拠し、ソースインタフェース13,14がHDMI以外の規格に準拠していることが分かる。HDMIに準拠しているソースインタフェース11,12の端子番号「1」、「2」であるので、変数mを2に設定する。また、CEC動作の欄は、AVアンプ1が非準拠ソース機器に関する制御メッセージを送受信できるか否かを示す。
【0058】
次に、割当プログラム31は、端子番号「x」のソースインタフェースに接続されるソース機器に、物理アドレスを割り当てる(ステップS105)。x=1であるので、割当プログラム31は、端子番号「1」のソースインタフェース11に接続されるBDプレーヤ100に、物理アドレス(1,1,0,0)を割り当てる。つまり、変数xが、AVアンプ1の物理アドレス(1,0,0,0)の第2桁に代入されることにより、BDプレーヤ100に割り当てられる物理アドレスが生成される。
【0059】
割当プログラム31は、物理アドレス(1,1,0,0)を端子番号「1」に対応付けて、アドレステーブル21に登録する(ステップS106)。割当プログラム31は、物理アドレス(1,1,0,0)をアドレス保持部11bに登録する。BDプレーヤ100は、アドレス保持部11bに登録された物理アドレスを読み出すことで、自装置に割り当てられた物理アドレスを知ることができる。
【0060】
割当プログラム31は、変数xをインクリメントし(ステップS107)、変数xが変数mよりも大きいか否かを確認する(ステップS108)。変数xが変数m以下である場合(ステップS108においてNo)、割当プログラム31は、ステップS105〜S107の処理を繰り返す。x=2のとき、物理アドレス(1,2,0,0)が、ソースインタフェース12に接続されるSTB200に割り当てられる。
【0061】
変数xが変数mより大きい場合(ステップS108においてYes)、割当プログラム31は、HDMIソース機器の物理アドレスの割り当てが終了したと判断する。つまり、x=3のとき、変数xが、HDMIに準拠するソースインタフェースの端子番号の最大値(m=2)よりも大きいため、割当プログラム31は、ステップS109に進む。
【0062】
次に、割当プログラム31は、ステップS109〜S113の処理により、非準拠ソース機器に物理アドレスを割り当てる。割当プログラム31は、変数nを初期化する(ステップS109)。変数nは、HDMIに準拠していないソースインタフェース13,14の端子番号の最大値(4)である。なお、変数xは、ステップS110の時点で、HDMIに準拠していないソースインタフェース11,13の中で、端子番号の1番小さい「3」に設定されている。
【0063】
割当プログラム31は、端子番号「x」のソースインタフェースに接続されるソース機器に、物理アドレスを割り当てる(ステップS110)。x=3であるので、割当プログラム31は、端子番号「3」のソースインタフェース13に接続されるゲーム機300に、物理アドレス(1,3,0,0)を割り当てる。つまり、AVアンプ1の物理アドレスの第2桁に、変数xが代入されることにより、ゲーム機300の物理アドレスが生成される。割当プログラム31は、物理アドレス(1,3,0,0)を端子番号「3」に対応付けて、アドレステーブル21に登録する(ステップS111)。これにより、物理アドレス(1,3,0,0)と、ソースインタフェース13とが対応付けられる。
【0064】
次に、割当プログラム31は、変数xをインクリメントする(ステップS112)。変数xが、変数nよりも大きいか否かを確認する(ステップS113)。変数xが変数n以下である場合(ステップS113においてNo)、割当プログラム31は、ステップS110〜S112の処理を繰り返す。これにより、物理アドレス(1,4,0,0)が、ソースインタフェース14に接続されるDVDプレーヤ400に割り当てられる。
【0065】
変数xが変数nより大きい場合(ステップS113においてYes)、変数xが、HDMIに準拠しないソースインタフェースの端子番号の最大値よりも大きくなる。この場合、割当プログラム31は、非準拠ソース機器の物理アドレスの割り当てが終了したと判断し、
図6に示すステップS201に進む。
【0066】
(2.論理アドレスの割り当て)
続いて、割当プログラム31は、AVアンプ1及び非準拠ソース機器に論理アドレスを割り当てる。AVアンプ1は、論理アドレスをHDMIソース機器に割り当てない。HDMIソース機器は、自装置で使用する論理アドレスを自ら設定するためである。したがって、アドレステーブル21に、HDMIソース機器の論理アドレスを設定しなくてもよい。
【0067】
最初に、割当プログラム31は、AVアンプ1の論理アドレスを設定する。
図6を参照して、割当プログラム31は、固定論理アドレス23を使用しているか否かを、HDMIに準拠した機器(BDプレーヤ100、STB200及びテレビ500)に問い合わせる(ステップS201)。
図9に、固定論理アドレス23の具体例を示す。割当プログラム31は、固定論理アドレス23を含む問い合わせメッセージを、CECライン18を通してブロードキャストする。
【0068】
割当プログラム31は、問い合わせメッセージの応答に基づいて、固定論理アドレス23が使用されているか否かを確認する(ステップS202)。
【0069】
固定論理アドレス23が使用されていた場合(ステップS202においてYes)、AVアンプ1に論理アドレスを設定することができない。HDMIにおいて、AVアンプに割り当てられる候補アドレスが一つと規定されているためである。割当プログラム31は、AVアンプ1が制御メッセージの処理(CEC動作)をすることができない旨を示すステータスをRAM172に登録し(ステップS212)、
図6に示す処理を終了する。
【0070】
一方、固定論理アドレス23が使用されていなかった場合(ステップS202においてNo)、割当プログラム31は、固定論理アドレス13をAVアンプ1の論理アドレスに設定する。
【0071】
次に、割当プログラム31は、ステップS203〜S211の処理を実行して、論理アドレスを非準拠ソース機器に割り当てる。割当プログラム31は、変数y,n,cを初期化する(ステップS203)。変数y,nは、HDMIに準拠していないソースインタフェースの端子番号の最小値及び最大値である。変数yは、3に設定され、変数nは、4に設定される(
図8参照)。
【0072】
図10は、論理アドレス候補テーブル24を示す図である。論理アドレス候補テーブル24は、非準拠ソース機器に割り当てる論理アドレスの候補を記録している。論理アドレスの候補には、候補番号が設定されている。変数cは、割当プログラム31が参照している論理アドレスの候補に対応する候補番号である。例えば、割当プログラム31が論理アドレスの候補L(3)を参照している場合、変数cは、3である。
【0073】
割当プログラム31は、論理アドレス候補テーブル24を参照して、端子番号が「y」であるソースインタフェースの論理アドレスの候補として、候補アドレスL(c)を選択する。割当プログラム31は、候補アドレスL(c)が使用中であるか否かを問い合わせる(ステップS204)。ステップS204の処理は、ステップS201と同様である。
【0074】
候補アドレスL(c)が使用中である場合(ステップS205においてYes)、割当プログラム31は、変数cをインクリメントする(ステップS206)。変数cが候補番号の最大値以下である場合(ステップS207においてNo)、割当プログラム31は、ステップS204に戻る。すなわち、割当プログラム31は、次の候補アドレスが使用中であるか否かを問い合わせる(ステップS204)。
【0075】
一方、変数cが候補番号の最大値よりも大きい場合(ステップS207においてYes)、割当プログラム31は、アドレステーブル21において、y以上の端子番号を有するソースインタフェースのCEC動作の欄に、「不可」を登録する(ステップS208)。たとえば、端子番号「4」のソースインタフェース14のCEC動作の欄に「不可」が設定された場合、ソースインタフェース14に接続されたDVDプレーヤ400に関する制御メッセージは、AVシステムを構成する機器の間で送受信されない。
【0076】
ステップS205の説明に戻る。候補アドレスL(c)が使用中でない場合(ステップS205においてNo)、割当プログラム31は、端子番号「y」のソースインタフェースに、論理アドレスL(c)を割り当てる(ステップS209)。アドレステーブル24において、端子番号「y」の論理アドレスの欄に、L(c)が登録される。
【0077】
次に、割当プログラム31は、変数yをインクリメントする(ステップS210)。変数yが変数nよりも大きい場合(ステップS211においてYes)、割当プログラム31は、HDMIに準拠していないソースインタフェースへの論理アドレスの割り当てが終了したと判断し、
図6に示す処理を終了する。
【0078】
一方、変数yが変数nよりも小さい場合(S211においてNo)、割当プログラム31は、HDMIに準拠していない次のソースインタフェースに論理アドレスを割り当てるために、ステップS206に進む。
【0079】
(3.スイッチの制御)
次に、AVアンプ1が、テレビ500から受信した切替メッセージに基づいて、スイッチ16を制御するときの動作を説明する。
【0080】
AVアンプ1が切替メッセージをテレビ500から受信した場合、スイッチ切替プログラム32が、切替メッセージで指定された物理アドレスに対応するソースインタフェースをテレビ500に接続するように、スイッチ16を制御する。
【0081】
以下、ソースインタフェース13がシンクインタフェース15に接続される場合を例にして、スイッチ切替プログラム32の処理を説明する。
【0082】
ユーザは、テレビ500のリモコン501を操作して、AVアンプ1に対して、ゲーム機300のコンテンツデータをテレビ500に表示するように指示する。テレビ500は、ユーザの操作に応じて、宛先がAVアンプ1の論理アドレスに設定され、かつ、ゲーム機300の物理アドレス(1,3,0,0)が指定された切替メッセージを送信する。
【0083】
図11は、スイッチ切替プログラム32の処理を示すフローチャートである。AVアンプ1が切替メッセージを受信した場合、スイッチ切替プログラム32は、
図11に示す処理を開始する。
【0084】
スイッチ切替プログラム32は、アドレステーブル21を参照する(ステップS301)。スイッチ切替プログラム32は、切替メッセージで指定された物理アドレス(1,3,0,0)に一致するアドレスがアドレステーブル21に登録されているか否かを確認する(ステップS302)。
【0085】
図8を参照して、切替メッセージで指定された物理アドレスは、ソースインタフェース13に対応付けられた物理アドレス(1,3,0,0)に一致する(ステップS302においてYes)。スイッチ切替プログラム32は、物理アドレス(1,3,0,0)に対応するソースインタフェース13をシンクインタフェース15に接続するように、スイッチ16を制御する(ステップS303)。具体的には、スイッチ切替プログラム32は、シンクインタフェース15の接続先がソースインタフェース13であることを示す信号を、スイッチ16に出力する(ステップS303)。スイッチ16は、信号に基づいて、ソースインタフェース13をシンクインタフェース15に接続する。これにより、ゲーム機300からのコンテンツデータが、AVアンプ1を介して、テレビ500に送信される。
【0086】
このように、スイッチ切替プログラム32は、テレビ500からの切替メッセージに基づいて、シンクインタフェース15に接続されるソースインタフェースを切り替える。ユーザは、AVアンプ1を直接操作したり、AVアンプ1のリモコンを操作することなく、AVアンプ1から送信されるコンテンツデータを切り替えることができる。
【0087】
次に、スイッチ切替プログラム32は、中継対象メッセージをCECライン18を介して送信する(ステップS304)。中継対象メッセージは、物理アドレス(1,3,0,0)のソース機器からのコンテンツデータをテレビ500へ送信していることを示す制御メッセージである。BDプレーヤ100、STB200及びテレビ500は、中継対象メッセージを受信することにより、物理アドレス(1,3,0,0)のソース機器からのコンテンツデータが、AVアンプ1からテレビ500へ送信されていることを知ることができる。
【0088】
スイッチ切替プログラム32は、アドレステーブル21を参照して、シンクインタフェース15に接続されたソースインタフェース13が、HDMIに準拠しているか否かを確認する(ステップS305)。
【0089】
ソースインタフェース15がHDMIに準拠していないため(ステップS305においてNo)、スイッチ切替プログラム32は、物理アドレス(1,3,0,0)のソース機器がアクティブであることを示すアクティブメッセージを、CECライン18を介して送出する(ステップS306)。アクティブとは、HDMIソース機器がコンテンツデータを送信していることを示すステータスである。ゲーム機300は、HDMIに準拠していないため、アクティブメッセージを送信することができない。このため、AVアンプ1が、ゲーム機300に代わって、アクティブメッセージを送信する。これにより、BDプレーヤ100、STB200及びテレビ500は、物理アドレス(1,3,0,0)のソース機器がコンテンツデータを送信していることを知ることができる。
【0090】
一方、シンクインタフェース15に接続されたソースインタフェースが、HDMIに準拠している場合(ステップS305においてYes)、スイッチ切替プログラム32は、
図11に示す処理を終了する。この場合、HDMIソース機器(たとえば、BDプレーヤ100)がテレビ500に接続されるため、HDMIソース機器が、自らアクティブメッセージを送信する。
【0091】
ステップS302の説明に戻る。一致するアドレスがアドレステーブル21に登録されていない場合(ステップS302においてNo)、
図11に示す処理を終了する。
【0092】
[第2の実施の形態]
以下、本発明の第2の実施の形態を説明する。本実施の形態では、AVアンプ1と非準拠ソース機器との間で、RIと呼ばれる規格に準拠したメッセージ(以下、「RIメッセージ」と呼ぶ。)が伝送される。RIメッセージは、機器の動作又は制御に関するメッセージである。
【0093】
AVアンプ1は、コンテンツの再生開始を示すRIメッセージを非準拠ソース機器から受信した場合、RIメッセージの送信元の非準拠ソース機器をテレビ500に接続するように、スイッチ16を制御する。また、AVアンプ1は、非準拠ソース機器が宛先に指定された制御メッセージを受信した場合、受信した制御メッセージに対応するRIメッセージを非準拠ソース機器に送信する。
【0094】
{AVアンプ1の構成}
図12は、第2の実施の形態に係るAVアンプ1の構成を示す機能ブロック図である。
図12を参照して、ソースインタフェース13は、RI端子13cをさらに備える。ゲーム機300は、RIケーブル360を介してRI端子13cに接続される。ソースインタフェース14は、RI端子14cをさらに備える。DVDプレーヤ400は、RIケーブル460を介してRI端子14cに接続される。
【0095】
図13は、
図12に示すAVアンプ1におけるCECライン18及びRIライン19の接続を示す図である。
図13を参照して、RIライン193は、RI端子13cとマイコン17との間に接続される。RIライン194は、RI端子14cとマイコン17との間に接続される。
【0096】
図14は、第2の実施の形態におけるマイコン17の構成を示す機能ブロック図である。
図14を参照して、ROM173は、メッセージプログラム34と、変換テーブル25とを格納する。メッセージプログラム34は、非準拠ソース機器宛ての制御メッセージを、RIメッセージに変換して転送する。変換テーブル25は、制御メッセージとRIメッセージとの対応を記録したテーブルであり、メッセージの変換に用いられる。
【0097】
{AVアンプ1の動作}
(1.非準拠ソース機器からのRIメッセージに基づくスイッチの切り替え)
図15は、非準拠ソース機器からコンテンツの再生開始を示すRIメッセージ(再生開始メッセージ)を受信した場合における、スイッチ切替プログラム32の処理を示すフローチャートである。AVアンプ1は、再生開始メッセージを受信した場合、再生開始メッセージの送信元の非準拠ソース機器をテレビ500に接続する。
【0098】
以下、AVアンプ1が、DVDプレーヤ400から再生開始メッセージを受信した場合を例にして、
図15に示す処理を説明する。
【0099】
ユーザは、DVDプレーヤ400を操作することにより、コンテンツの再生開始を指示する。DVDプレーヤ400は、コンポーネント信号線450を介して、コンテンツデータをAVアンプ1に送信する。DVDプレーヤ400は、コンテンツデータの送信を開始する前に、RIケーブル460を介して、再生開始メッセージをAVアンプ1に送信する。
【0100】
マイコン17は、RI端子14c及びRIライン194を介して、再生開始メッセージをDVDプレーヤ400から受信する。スイッチ切替プログラム32は、
図15に示す処理を開始する。
【0101】
スイッチ切替プログラム32は、RI端子14c(ソースインタフェース14)から再生開始メッセージを受信したため、ソースインタフェース14をシンクインタフェース15に接続するように、スイッチを制御する(ステップS501)。すなわち、スイッチ切替プログラム32は、ソースインタフェース14を接続先に指定した信号をスイッチ16に出力する。スイッチ16は、入力された信号に応じて、ソースインタフェース14をシンクインタフェース15に接続する。これにより、DVDプレーヤ400からのコンテンツデータが、テレビ500へ送信される。ユーザは、DVDプレーヤ400を操作するだけで、DVDプレーヤからのコンテンツデータをテレビ500で見ることができる。
【0102】
スイッチ制御プログラム32は、アドレステーブル21を参照して、再生開始メッセージを送信したDVDプレーヤ400の物理アドレス(1,4,0,0)を取得する(ステップS502)。
【0103】
スイッチ制御プログラム32は、取得した物理アドレス(1,4,0,0)のソース機器からのコンテンツデータをテレビ500へ送信していることを示す中継対象メッセージを、CECライン18を介して送信する(ステップS503)。これにより、BDプレーヤ100、STB200及びテレビ500は、AVアンプ1が物理アドレス(1,4,0,0)のソース機器からのコンテンツデータをテレビ500に送信していることを知ることができる。
【0104】
次に、スイッチ制御プログラム32は、物理アドレス(1,4,0,0)のソース機器がアクティブであることを示すアクティブメッセージを、CECライン18を介して送出する(ステップS504)。DVDプレーヤ400は、HDMIに準拠していないため、アクティブメッセージを送信することができない。このため、AVアンプ1が、DVDプレーヤ400に代わって、アクティブメッセージを送信する。これにより、BDプレーヤ100、STB200及びテレビ500は、物理アドレス(1,4,0,0)のソース機器がコンテンツデータを送信していることを知ることができる。
【0105】
(2.操作メッセージの転送)
ユーザは、テレビ500を介して、非準拠ソース機器を操作することができる。たとえば、ユーザは、テレビ500のリモコン501を操作して、コンテンツの再生開始をDVDプレーヤ400に指示することができる。この場合、テレビ500は、操作対象のソース機器の論理アドレスが宛先に設定され、かつ、操作内容が設定された制御メッセージ(以下、「CEC操作メッセージ」という。)を送信する。AVアンプ1は、非準拠ソース機器の論理アドレスが宛先に設定されたCEC操作メッセージを受信した場合、CEC操作メッセージに対応するRIメッセージを、宛先に設定された非準拠ソース機器に送信する。
【0106】
以下、ユーザが、テレビ500を操作して、DVDプレーヤ400にコンテンツの再生開始を指示した場合を例にして、AVアンプ1の動作を説明する。
【0107】
テレビ500は、ユーザの操作に応じて、DVDプレーヤ400の論理アドレスL(4)が宛先に指定され、再生開始を指示するCEC操作メッセージを送信する。
【0108】
図16は、メッセージプログラム34の動作を示すフローチャートである。メッセージプログラム34は、CEC操作メッセージを受信した場合、
図16に示す処理を開始する。
図16を参照して、メッセージプログラム34は、CEC操作メッセージの宛先に指定されたソース機器に接続されているソースインタフェースを特定する(ステップS601)。宛先がDVDプレーヤ400の論理アドレスL(4)に設定されているため、メッセージプログラム34は、アドレステーブル21を参照して、ソースインタフェース14を特定する。
【0109】
ソースインタフェース14がHDMIに準拠していないため(ステップS602においてYes)、メッセージプログラム34は、CEC操作メッセージを、RI用の操作メッセージに変換して転送する(ステップS603,S604)。
【0110】
メッセージプログラム34は、変換テーブル25を参照して、CEC操作メッセージをRI用の操作メッセージに変換する(ステップS603)。変換テーブル25は、CEC操作メッセージとRI用の操作メッセージとを対応付けて記録している。メッセージプログラム34は、再生開始を指示するRI用の操作メッセージを取得する。
【0111】
メッセージプログラム34は、取得したRI用の操作メッセージを、ステップS601で特定したソースインタフェース14に出力する(ステップS604)。具体的には、メッセージプログラム34は、RIライン194を介して、RI用の操作メッセージをソースインタフェース14に出力する。ソースインタフェース14は、RI用の操作メッセージを、RIケーブル460を介してDVDプレーヤ400に送信する。DVDプレーヤ400は、受信したRIメッセージに基づいて、コンテンツの再生を開始する。
【0112】
メッセージプログラム34は、CEC操作メッセージの宛先(DVDプレーヤ400)がアクティブであることを示すアクティブメッセージを送信する(ステップS605)。一方、DVDプレーヤの論理アドレスL(4)が宛先に指定され、かつ、再生終了を指示するCEC操作メッセージがテレビ500から送信された場合、メッセージプログラム34は、DVDプレーヤ400が再生終了をしたことを示す制御メッセージを、CECライン18を介して送信する。
【0113】
ステップS602の説明に戻る。CEC操作メッセージの宛先がHDMIに準拠する機器の場合(ステップS602においてNo)、メッセージプログラム34は、
図1に示す処理を終了する。CEC操作メッセージは、AVアンプ1内のCECライン18を介して、HDMIソース機器に送信される。したがって、HDMIソース機器の論理アドレスがCEC操作メッセージの宛先に指定されている場合、HDMIソース機器は、CEC操作メッセージに応じた動作を自動的に実行する。
【0114】
これにより、ユーザは、HDMIに準拠したテレビ500を介して、HDMIに準拠していないDVDプレーヤ400に再生開始又は再生終了などを指示することができる。
【0115】
(3.スタンバイメッセージの転送)
次に、テレビ500がスタンバイに移行したことを示す制御メッセージ(CECスタンバイメッセージ)を受信したときにおける、AVアンプ1の動作を説明する。
【0116】
CECスタンバイメッセージは、ユーザがテレビ500にスタンバイへの移行を指示したときに、テレビ500により送信される。
図17は、CECスタンバイメッセージを受信したときのメッセージプログラムの動作を示すフローチャートである。
【0117】
メッセージプログラム34は、CECスタンバイメッセージを受信した場合、
図17に示す処理を開始する。
図17を参照して、メッセージプログラム34は、変換テーブル25を参照して、RI用のスタンバイメッセージを取得する(ステップS701)。
【0118】
メッセージプログラム34は、RI用のスタンバイメッセージをRIライン193,194に出力する(ステップS702)。つまり、メッセージプログラム34は、RI用のスタンバイメッセージをゲーム機300及びDVDプレーヤ400に送信する。ゲーム機300及びDVDプレーヤ400は、RI用のスタンバイメッセージを受信した場合、スタンバイに移行する。
【0119】
これにより、ユーザは、スタンバイへの移行をテレビ500に指示するだけで、非準拠ソース機器をスタンバイに移行させることができる。なお、CECスタンバイメッセージは、AVアンプ1内のCECライン18を介して、HDMIソース機器に送信される。したがって、HDMIソース機器は、CECスタンバイメッセージに基づいて、自動的にスタンバイに移行することができる。
【0120】
なお、上記第1及び第2の実施の形態では、AVアンプ1、BDプレーヤ100、STB200及びテレビ500がHDMIに準拠している場合を例にして説明した。しかし、これらの機器は、HDMI以外の所定の規格に準拠していてもよい。所定の規格は、たとえば、ビデオデータ又は音声データの入出力に関する規格であり、各機器の間で制御メッセージが送受信できる規格であってもよい。AVアンプ1は、所定の規格に準拠するソース機器又は所定の規格に準拠しないソース機器を、所定の規格に準拠するソース機器に選択的に接続できる中継機器であればよい。
【0121】
また、上記第1及び第2の実施の形態では、AVアンプ1が、ソース機器に物理アドレスを割り当て、非準拠ソース機器の論理アドレスを割り当てる例を説明した。しかし、非準拠ソース機器の論理アドレス又は物理アドレスが、予め設定されていてもよい。すなわち、AVアンプ1は、HDMIソース機器に割り当てられたアドレスと、HDMIソース機器からのコンテンツデータを受信するソースインタフェースとを対応付けて記憶し、非準拠ソース機器に割り当てられたアドレスと、非準拠ソース機器からのコンテンツデータを受信するソースインタフェースとを対応付けて記憶するためのメモリを備えていればよい。
【0122】
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。