JP4406851B2 - 電子機器及びその制御方法 - Google Patents

電子機器及びその制御方法 Download PDF

Info

Publication number
JP4406851B2
JP4406851B2 JP2007336779A JP2007336779A JP4406851B2 JP 4406851 B2 JP4406851 B2 JP 4406851B2 JP 2007336779 A JP2007336779 A JP 2007336779A JP 2007336779 A JP2007336779 A JP 2007336779A JP 4406851 B2 JP4406851 B2 JP 4406851B2
Authority
JP
Japan
Prior art keywords
pressed
signal
camcorder
key
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007336779A
Other languages
English (en)
Other versions
JP2009159418A (ja
Inventor
達弥 佐藤
己久忠 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2007336779A priority Critical patent/JP4406851B2/ja
Priority to KR1020080113913A priority patent/KR20090071363A/ko
Priority to US12/317,630 priority patent/US8274362B2/en
Priority to CN2008101891008A priority patent/CN101471834B/zh
Publication of JP2009159418A publication Critical patent/JP2009159418A/ja
Application granted granted Critical
Publication of JP4406851B2 publication Critical patent/JP4406851B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C17/00Arrangements for transmitting signals characterised by the use of a wireless electrical link
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43632Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wired protocol, e.g. IEEE 1394
    • H04N21/43635HDMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • H04N21/4751End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for defining user accounts, e.g. accounts for children
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/40Remote control systems using repeaters, converters, gateways
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/40Remote control systems using repeaters, converters, gateways
    • G08C2201/41Remote control of gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Child & Adolescent Psychology (AREA)
  • Health & Medical Sciences (AREA)
  • Selective Calling Equipment (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Communication Control (AREA)

Description

本発明は、電子機器及びその制御方法に関し、例えば、HDMI(High-Definition Multimedia Interface)規格に基づいて他の機器と接続可能な電子機器に適用して好適なものである。
近年、HD(High Definition)画像を扱う電子機器(例えば、AV(Audio Visual)機器)同士を接続するインタフェースとして、HDMIが普及しつつある。
このHDMIは、対応する機器同士を、HDMIに適合したケーブル(これをHDMIケーブルとも呼ぶ)を介して接続することで、HD画像の送受を可能とするインタフェースである。このHDMIを利用することで、例えば、カムコーダで撮影したHD画像をHDMIケーブルを介してテレビジョン放送受信装置(これを、単にTVとも呼ぶ)に送出して表示させることなどができる。
このHDMIには、複数のバージョンがあり、最新のバージョンには、CEC(Consumer Electronics Control)と呼ばれる、HDMIケーブルで接続(これをHDMI接続とも呼ぶ)された機器間の相互制御機能が追加されている。
このCECは、図1に示すように、HDMIケーブルHcの中の1つの信号線であるCECライン(13番ピンで接続されるライン)を使用して、HDMI接続された機器間で双方向のシリアル通信を行うことにより、機器間の相互制御を可能とする機能である。
このCECには、機器間で送受する制御コマンド及び制御プロトコルの仕様が定義され、このCECを利用することで、例えば、TV側から、このTVにHDMI接続されたカムコーダの電源をオフしたり、カムコーダ側から、このカムコーダの画面をTVに表示させたりすることができる。
また、このCECには、その一機能として、Remote Control Pass Throughと呼ばれる、或る機器のリモートコントローラに対して行われた操作を或る機器から、HDMI接続された他の機器に通知する機能が含まれている。
このRemote Control Pass Throughを利用することで、例えば、TVにHDMI接続されたカムコーダを、TVのリモートコントローラで操作することなどができる。
実際上、複数の機器を操作可能なリモートコントローラとしては、一回のキー操作で複数の機器に対するコマンドを順次送信可能なもの(例えば特許文献1参照)など、各社独自のものが提案されているが、これらは、HDMIのCECのように統一された規格ではなく、同社の同シリーズの機器でなければ操作できないなど、対応する機器が限定されるものであった。
ここで、CECのRemote Control Pass Throughについて詳しく説明する。このRemote Control Pass Throughには、User Control Pressedと呼ばれる、リモートコントローラのキーが「押下された」ことを、HDMI接続された他の機器に通知するコマンド(これをCECコマンドとも呼ぶ)が定義されている。
すなわち、例えば、TVは、リモートコントローラのキーが押下されたことを認識すると、このUser Control Pressedを、このキーのコード(これをキーコードとも呼ぶ)とともに、HDMI接続されたカムコーダに対して送信することで、カムコーダに対して、リモートコントローラの任意のキーが押下されたことを通知する。
また、このRemote Control Pass Throughには、User Control Releasedと呼ばれる、押下されていたキーが「解放された」(すなわち「離された」)ことを、HDMI接続された他の機器に通知するCECコマンドが定義されている。
すなわち、例えば、TVは、押下されていたキーが離されたことを認識すると、このUser Control Pressedを、HDMI接続されたカムコーダに対して送信することで、カムコーダに対して、押下されていた任意のキーが離されたことを通知する。
ところで、CECコマンドの送信側となる機器(これを送信側機器とも呼ぶ)の中には、リモートコントローラのキーが押され続けた場合(すなわち長押しされた場合)に、この「長押し」を表現するため、キーが押され続けている間、CECコマンドの受信側となる機器(これを受信側機器とも呼ぶ)に対して、User Control Pressedを所定の間隔(例えば500msec)で連続して送信するものがある。
このように、キーの「長押し」により、連続してUser Control Pressedが送信されてきた場合、通常、受信側機器では、キーが連続して押下された場合と同様の動作(これをリピート動作とも呼ぶ)をする。
ただし、そのキーの押下に対応付けられている命令によっては、連続してUser Control Pressedが送信されてきても、キーが連続して押下された場合と同様の動作ではなく、キーが単発で押下された場合と同様の動作(これを単発動作とも呼ぶ)をする必要がある。
具体的に言うと、例えば、図2に示すように、カムコーダの再生制御画面1が、TVに表示されているとする。この再生制御画面1には、カムコーダにより再生されるHD画像Mvと、HD画像の再生を制御するための各種再生制御ボタンと、任意の再生制御ボタンを選択するためのカーソルCuとが表示される。再生制御ボタンとしては、例えば、HD画像が再生中でなければ再生、再生中であれば一時停止する命令が割り当てられている再生/一時停止ボタン2、再生するHD画像を1つ前のHD画像に切り換える命令が割り当てられている前ボタン3、再生するHD画像を1つ後の(つまり次の)HD画像に切り換える命令が割り当てられている次ボタン4などが表示される。
そしてこの再生制御画面1では、リモートコントローラの方向キーにより画面上を移動可能なカーソルCuで所望の再生制御ボタンを選択した後、リモートコントローラの決定キーを押下操作することで、選択した再生制御ボタンに割り当てられている命令(つまりHD画像の再生、一時停止、1つ前のHD画像への切り換え、次のHD画像への切り換えなど)に応じた動作を、カムコーダに実行させることができるようになされている。
ここで、例えば、再生/一時停止ボタン2が選択された状態で、リモートコントローラの決定キーが長押しされた場合、その間、TVからカムコーダに対して、この決定キーのコードと、User Control Pressedが連続して送信される。
このとき、カムコーダ側で、決定キーが連続して押下された場合と同様のリピート動作をしてしまうと、決定キーが押下されている間、「再生」、「一時停止」、「再生」、「一時停止」、…を繰り返すことになり、ユーザの意図しない動作になってしまう。
ゆえに、このような場合、すなわち、再生/一時停止ボタン2が選択された状態で、リモートコントローラの決定キーが押下された場合には、カムコーダ側で、その押下時間に依らず、決定キーが離されるまで、「再生」もしくは「停止」の単発動作をすることが望ましい。
実際上、カムコーダは、図3のタイミングチャートに示すように、再生/一時停止ボタン2が選択された状態で、リモートコントローラの決定キーが押下されることによりTVから送信されてくる決定キーのキーコードとUser Control Pressedとを受信すると、その時点t1で、再生/一時停止ボタン2が選択された状態で決定キーが押下されたと認識して、このときの決定キーの押下に対応付けられている命令(例えば「一時停止」命令)に応じた動作(HD画像の一時停止)をするとともに、このキーコードを一時記憶する。
その後、カムコーダは、User Control Releasedを受信するまで、つまり、押下された決定キーが離されたと認識するまでは、同一キーコードのUser Control Pressedを受信しても、これを無視する。
そして、カムコーダは、User Control Releasedを受信すると、その時点t2で、押下されていた決定キーが離されたと認識して、一時記憶していたキーコードを破棄する。
その後、カムコーダは、再び、リモートコントローラの決定キーが押下されることにより送信されてくる決定キーのキーコードとUser Control Pressedとを受信すると、その時点t3で、再び、決定キーが押下されたと認識して、このときの決定キーの押下に対応付けられている命令(今度は「再生」命令)に応じた動作(HD画像の再生)をするとともに、このキーコードを一時記憶する。
こうすることで、カムコーダは、再生/一時停止ボタン2が選択されている状態で、決定キーが長押しされることにより連続してUser Control Pressedが送信されてきても、リピート動作することなく、決定キーが押下されて最初に受信したUser Control Pressedのみに応じて、単発動作することができる。
このように、受信側機器となるカムコーダは、キーの押下に対応付けられている命令が、再生/一時停止のように、1回の押下操作で1回入力されることが望ましい命令である場合には、キーが長押しされても、リピート動作でなく、単発動作するようになされている。
ところで、CECの規格では、リモートコントローラのキーが離されたらCECコマンドとしてUser Control Releasedを送信すべきであると、User Control Releasedの送信を推奨してはいるものの、送信しなければならないと定義されているわけではない。
ゆえに、送信側機器となる例えばTVの中には、リモートコントローラのキーが離されてもUser Control Releasedを送信しないものがある。
実際上、このようなTVとHDMI接続されたカムコーダは、図4に示すタイミングチャートに示すように、再生/一時停止ボタン2が選択された状態で、リモートコントローラの決定キーが押下されることによりTVから送信されてくる決定キーのキーコードとUser Control Pressedとを受信すると、その時点t10で、再生/一時停止ボタン2が選択された状態で決定キーが押下されたと認識して、このときの決定キーの押下に対応付けられている命令(例えば「一時停止」命令)に応じた動作(HD画像の一時停止)をするとともに、このキーコードを一時記憶する。
その後、カムコーダは、一時記憶したキーコードと同一キーコードのUser Control Releasedを受信するまで、つまり、押下された決定キーが離されたと認識するまでは、同一キーコードのUser Control Pressedを受信しても、これを無視する。
ところが、このTVは、例えば時点t11で決定キーが離されても、User Control Releasedを送信してこない。
ゆえに、カムコーダ側では、時点t11で決定キーが離されても、そのことを認識することができず、例えば、時点t12で、再びリモートコントローラの決定キーが押下されることにより同一キーコードのUser Control Pressedを受信しても、前の時点t10から決定キーが長押しされていると誤認識して、このときのUser Control Pressedを無視してしまう。
この結果、カムコーダでは、本来、この時点t12で実行すべき動作(HD画像の再生)を実行することができなくなる。
このように、決定キーが離されてもUser Control Releasedが送信されてこない場合、カムコーダでは、決定キーが離されたことを認識できず、決定キーが押下されて最初に受信したUser Control Pressedに応じて動作した以降、決定キーを離そうが再び押下しようが、この決定キーに対する操作を受け付けなくなり、結果として、リモートコントローラの操作に応じた動作をすることができなくなる。
そこで、CECの規格では、受信側機器がUser Control Pressedを受信してから所定期間(これをコマンド待受期間とも呼び、例えば、送信側機器がCECコマンドを連続して送信するときの間隔と同間隔の500msに設定)内に、同一キーコードのUser Control Pressedも、User Control Releasedも受信しなかったときには、受信側機器で内部的にUser Control Releasedを受信した場合の処理(これをReleased処理とも呼ぶ)を実行することが推奨されている。
すなわち、カムコーダは、図5のタイミングチャートに示すように、再生/一時停止ボタン2が選択された状態で、リモートコントローラの決定キーが押下されることによりTVから送信されてくる決定キーのキーコードとUser Control Pressedとを受信すると、その時点t20で、再生/一時停止ボタン2が選択された状態で決定キーが押下されたと認識して、このときの決定キーの押下に対応付けられている命令(例えば「一時停止」命令)に応じた動作(HD画像の一時停止)をするとともに、このキーコードを一時記憶する。
その後、カムコーダは、最初のUser Control Pressedを受信した時点t20からコマンド待受期間Ct内である時点t21に再び同一キーコードのUser Control Pressedを受信すると、その時点t21で、決定キーが押し続けられていると認識して、これを無視する。
以降も、カムコーダは、User Control Pressedを受信した時点(時点t21、t22、t23、t24)からコマンド待受期間Ct内に再び同一キーコードのUser Control Pressedを受信すると、その時点(t22、t23、t24、t25)で、同様にこれを無視する。
ここで、TVは、次のUser Control Pressedを送信するタイミング(最後にUser Control Pressedを送信してから500ms後)より前の時点t26で決定キーが離されると、その時点t26から、User Control Pressedの送信を停止する。ここで、このTVは、決定キーが離されても、User Contorol Releasedを送信しない送信側機器であるとする。
すると、カムコーダは、最後にUser Control Pressedを受信した時点t25からコマンド待受期間Ct経過しても、同一キーコードのUser Control Pressedを受信しなかったことにより、時点t25からコマンド待受期間Ct経過後の時点t27で、決定キーが離されたと認識する。
そして、カムコーダは、この時点t27で、内部的にReleased処理を実行する。すなわち、カムコーダは、一時記憶していたキーコードを破棄する。
その後、カムコーダは、再び、リモートコントローラの決定キーが押下されることにより送信されてくる決定キーのキーコードとUser Control Pressedとを受信すると、その時点t28で、再び、決定キーが押下されたと認識して、このときの決定キーの押下に対応付けられている命令(今度は「再生」命令)に応じた動作(HD画像の再生)をするとともに、このキーコードを一時記憶する。
このように、受信側機器となるカムコーダは、User Control Pressedを受信してから、コマンド待受期間Ct内に、再び同一キーコードのUser Control Pressedを受信しなかった場合に、内部的にReleased処理を実行することで、User Control Releasedを送信しない送信側機器とHDMI接続された場合でも、リモートコントローラの操作に応じた動作を実行することができる。
ここまで説明したように、従来の受信側機器は、キーが押下されたことを示すCECコマンドであるUser Control Pressedを受信してから、コマンド待受期間Ct内に、再び同一キーコードのUser Control Pressedを受信した場合には、このキーコードにより示されるキーが押し続けられていると判断する。
ここで、このキーの押下に対応付けられている命令が、特定の命令である場合、受信側機器は、キーが押下されて最初に受信したUser Control Pressed以外のUser Control Pressedについては無視する。
こうすることで、受信側機器は、キーが長押しされることによりUser Control Pressedを連続して受信しても、リピート動作することなく、単発動作することができる。
さらに、受信側機器は、User Control Pressedを受信してから、コマンド待受期間内に、同一キーコードのUser Control PressedもUser Control Releasedも受信しなかった場合には、このキーコードにより示されるキーが離されたと認識して、内部的にReleased処理を実行する。
こうすることで、受信側機器は、User Control Releasedを送信しない送信側機器とHDMI接続された場合でも、リモートコントローラの操作に応じた動作をすることができる。
特開平11−225381号公報
ところで、HDMIでは、複数の機器が接続されることを想定している。ここで、例えば、図6に示すように、複数のHDMI端子を有するTV10に対して、HDMIケーブルHc1を介してカムコーダ11が接続されるとともに、HDMIケーブルHc2を介してデジタルスチルカメラ12が接続され、さらにHDMIケーブルHc3を介して複数のHDMI端子を有するAV(Audio Video)アンプ13が接続され、またこのAVアンプ13に対して、HDMIケーブルHc4を介してBD(Blu-ray Disc)レコーダ14が接続されているとする。
ここで、複数のHDMI端子を有するTV10及びAVアンプ13は、HDMIケーブルHcの中の1つの信号線であるCECラインCLを、内部で接続するようになされている。この結果、HDMI接続された全ての機器が、1つのCECラインCLで繋がることになり、どの機器間でもCECコマンドの送受が可能となる。
ところが、この場合、1つのCECラインCLをHDMI接続された全ての機器で共用することになるので、1度に多くのCECコマンドが発行されると、CECラインCLのトラフィック(混雑量)が増加して、CECコマンドの送受に遅延が生じることがある。
このようにCECコマンドの送受に遅延が生じると、例えば、送信側機器が、本来送信すべきタイミングにUser Control Pressedを送信できなくなり、結果として、受信側機器で、リモートコントローラの操作を正確に認識できなくなる恐れがある。
例えば、図7のタイミングチャートに示すように、カムコーダ11は、再生/一時停止ボタン2が選択された状態で、リモートコントローラの決定キーが押下されることによりTV10から送信されてくる決定キーのキーコードとUser Control Pressedとを受信すると、その時点t30で、再生/一時停止ボタン2が選択された状態で決定キーが押下されたと認識して、このときの決定キーの押下に対応付けられている命令(例えば「再生」命令)に応じた動作(HD画像の再生)をするとともに、このキーコードを一時記憶する。
その後、カムコーダ11は、最初のUser Control Pressedを受信した時点t30からコマンド待受期間Ct内である時点t31に再び同一キーコードのUser Control Pressedを受信すると、決定キーが押し続けられていると認識して、これを無視する。
以降も、カムコーダ11は、User Control Pressedを受信した時点(時点t31、t32、t33、t34)からコマンド待受期間Ct内に再び同一キーコードのUser Control Pressedを受信すると、その時点(t32、t33、t34、t35)で、同様にこれを無視する。
ここで、TV10が、CECラインCLのトラフィックの増加の影響により、次のUser Control Pressedを、本来送信すべきタイミング(最後にUser Control Pressedを送信してから500ms後)よりも遅れて送信したとする。
すると、カムコーダ11は、最後にUser Control Pressedを受信した時点t35からコマンド待受期間Ct(500ms)経過しても、同一キーコードのUser Control Pressedを受信しなかったことにより、決定キーが押し続けられているにもかかわらず、時点t35からコマンド待受期間Ct経過後の時点t36で、決定キーが離されたと認識して、内部的にReleased処理(キーコードの破棄)を実行してしまう。
その後、カムコーダ11は、時点t37で、TV10から遅れて送信されてきたUser Control Pressedを受信すると、この時点t37で、再び、決定キーが押下されたと認識して、このときの決定キーの押下に対応付けられている命令(今度は「一時停止」命令)に応じた動作(HD画像の一時停止)をするとともに、このキーコードを一時記憶してしまう。
このように、トラフィックの増加により、送信側機器からの、User Control Pressedの送信に遅延が生じると、受信側機器では、キーが押し続けられていることを正確に認識することができず、結果として、リモートコントローラの操作に応じた動作をすることができなくなる。
つまり、従来の受信側機器では、CECラインCLのトラフィックが増加すると、その影響により、通常(トラフィックの影響がない場合)とは異なる動作をしてしまうことがあった。
本発明は以上の点を考慮してなされたもので、他の機器と接続する信号線のトラフィックに依らず、他の機器からの制御信号をもとに一定の動作をすることができる電子機器及びその制御方法を提案しようとするものである。
かかる課題を解決するため本発明においては、所定の信号線を介して一以上の機器と接続され、接続された他の機器から送信される制御信号に応じて動作可能な電子機器に対して、接続された他の機器から送信される制御信号を受信する受信部と、受信部により特定の制御信号を受信してから、設定された信号待受期間内に、当該特定の制御信号に対応する制御信号を受信しなかった場合に、所定の処理を実行する制御部と、信号待受期間を信号線のトラフィックに基づいて調整する待受期間調整部とを設けるようにした。
このように、信号線のトラフィックに基づいて、信号待受期間を調整するようにしたことにより、例えば、信号線のトラフィックが増加することに応じて制御信号の送信に遅延が生じるような場合には、その分延長した信号待受期間内で特定の制御信号を待ち受け、この延長した待受期間内に特定の制御信号を受信したか否かで所定の処理を実行するかどうか判断することができる。すなわち、信号線のトラフィックによる影響を排除した条件下で、所定の処理を実行するかどうか判断することができる。
本発明によれば、所定の信号線を介して一以上の機器と接続され、接続された他の機器から送信される制御信号に応じて動作可能な電子機器に対して、接続された他の機器から送信される制御信号を受信する受信部と、受信部により特定の制御信号を受信してから、設定された信号待受期間内に、当該特定の制御信号に対応する制御信号を受信しなかった場合に、所定の処理を実行する制御部と、信号待受期間を信号線のトラフィックに基づいて調整する待受期間調整部とを設けるようにしたことにより、例えば、信号線のトラフィックが増加することに応じて制御信号の送信に遅延が生じるような場合には、その分延長した信号待受期間内で特定の制御信号を待ち受け、この延長した待受期間内に特定の制御信号を受信したか否かで所定の処理を実行するかどうか判断することができ、かくして、他の機器と接続する信号線のトラフィックに依らず、他の機器からの制御信号をもとに一定の動作をすることができる電子機器及びその制御方法を実現することができる。
以下、図面について、本発明の実施の形態を詳述する。
(1)第1の実施の形態
(1−1)機器間制御システムの構成
図8において20は、全体として、HDMI接続された複数の機器で構成される機器間制御システムを示す。この図8に示す機器間制御システム20は、複数のHDMI端子を有するTV21に対して、HDMIケーブルHc10を介してカムコーダ22が接続されるとともに、HDMIケーブルHc11介してデジタルスチルカメラ23が接続され、さらにHDMIケーブルHc12を介して複数のHDMI端子を有するAVアンプ24が接続され、またこのAVアンプ24に対して、HDMIケーブルHc13を介してBDレコーダ25が接続された例である。
ここで、複数のHDMI端子を有するTV21及びAVアンプ24は、HDMIケーブルHcの中の1つの信号線であるCECラインCLを、内部で接続するようになされている。この結果、HDMI接続された全ての機器が、1つのCECラインCLで繋がることになり、どの機器間でもCECコマンドの送受が可能となる。
そしてこの機器間制御システム20では、CECのRemote Control Pass Throughを利用することにより、TV21のリモートコントローラRcで、各機器を操作(つまり制御)することができるようになされている。
具体的に言うと、例えば、図9に示すように、カムコーダ22が、HDMIケーブルHc10を介してTV21に画面データを送信することにより、カムコーダ22の画面の1つである、再生制御画面30をTV21に表示させる。
この再生制御画面30には、図10に示すように、主として、カムコーダ22により再生されるHD画像Mvと、HD画像の再生を制御するための各種再生制御ボタンと、任意の再生制御ボタンを選択するためのカーソルCuとが表示される。再生制御ボタンとしては、例えば、HD画像が再生中でなければ再生、再生中であれば一時停止する命令が割り当てられている再生/一時停止ボタン31、HD画像の再生を停止する命令が割り当てられている停止ボタン32、HD画像を巻き戻す命令が割り当てられている巻き戻しボタン33、HD画像を早送りする命令が割り当てられている早送りボタン34、再生するHD画像を1つ前のHD画像に切り換える命令が割り当てられている前ボタン35、再生するHD画像を1つ後の(つまり次の)HD画像に切り換える命令が割り当てられている次ボタン36などが表示される。
そしてTV21は、この表示した再生制御画面30に対する操作が、リモートコントローラRcで行われると、この操作(つまり再生制御画面30に対するリモートコントローラRcの操作)を示すCECコマンドをカムコーダ22に送信する。
カムコーダ22は、TV21から送信されてくるCECコマンドに基づいて、再生制御画面30に対するリモートコントローラRcの操作を認識し、この操作に応じた動作(つまりHD画像の再生、一時停止、停止、巻き戻し、早送り、1つ前のHD画像への切り換え、次のHD画像への切り換えなど)をする。
このようにして、この機器間制御システム20では、リモートコントローラRcを使ってTV21を操作する感覚で、カムコーダ22を操作できるようになされている。同様にして、デジタルスチルカメラ23、AVアンプ24、BDレコーダ25も、このリモートコントローラRcで操作することができる。
因に、ここでは、カムコーダ22の画面の1つである再生制御画面30をTV21に表示させ、この再生制御画面30に対するリモートコントローラRcの操作で、カムコーダ22に、HD画像の再生制御を行わせるようにしたが、他の画面を表示させて、例えば、カムコーダ22に、HD画像のサムネイルを表示させたり、HD画像のファイルを削除させたりすることもできる。
(1−2)リモートコントローラの構成
ここで、TV21のリモートコントローラRcの構成について簡単に説明する。リモートコントローラRcは、図11に示すように、矩形状の筐体40を有し、その一面の上端部にTV21の電源オン/オフに対応する電源キー41、TV21にHDMI接続された機器の電源オン/オフに対応する電源キー42などが設けられている。
さらにその下方には、TV21にHDMI接続された機器に対するHD画像などの再生制御に対応する各種再生制御キー43などが設けられている。さらにその下方には、TV21に表示される画面でのカーソル操作などに対応する上キー44A、下キー44B、左キー44C及び右キー44Dでなる方向キー44、画面での操作の決定などに対応する決定キー45、画面での戻り操作などに対応する戻るキー46などが設けられている。
さらにその下方には、テレビジョン放送のチャンネル選択操作などに対応する数字キー47、チャンネルの切換操作に対応するチャンネル切換キー48、音量調節操作に対応する音量調節キー49などが設けられている。
そしてリモートコントローラRcは、これらのキーが押下されると、そのキーに割り当てられているキーごとに固有のキーコード(例えば、決定キー45であれば「0x00」、上キー44Aであれば「0x01」など)を含んだ赤外線信号を発信することで、TV21にリモートコントローラRcの操作を認識させるようになされている。
(1−3)カムコーダの回路構成
次に、機器間制御システム20の各機器の回路構成について説明する。この第1の実施の形態は、Remote Control Pass Throughを利用したCECコマンドの受信を中心とした内容であるので、ここでは、CECコマンドを受信する側の機器(受信側機器)の1つである、カムコーダ22の回路構成を例に説明することにする。
図12に示すようにカムコーダ22は、CPU(Central Processing Unit)構成でなるマイクロプロセッサ50を有している。このマイクロプロセッサ50は、図示しない内蔵メモリまたはハードディスクドライブ51から基本プログラムや各種アプリケーションプログラムを読み出し、これらに従って、全体を統括的に制御するとともに、各種処理(撮影処理、再生処理及びCECコマンド受信処理など)を実行するようになされている。
実際上、カムコーダ22は、撮影時、撮像部52のレンズ53によって撮像対象の被写体をCCD(Charge Coupled Device)などでなる撮像素子54に結像させ、その結果得られるHD画像信号S1を信号処理回路55へ送出する。
信号処理回路55は、HD画像信号S1に対してガンマ補正、AGC(Auto Gain Control)などの処理を行うと共に、このHD画像信号S1をデジタルのHD画像データS2に変換した後、エンコーダ/デコーダ56へ送出する。
エンコーダ/デコーダ56は、HD画像データS2に対して所定の圧縮符号化方式に従って圧縮符号化処理を行い、この結果得られる圧縮HD画像データS3を記録再生回路57を介してハードディスクドライブ51に記録する。
またカムコーダ22は、再生時、記録再生回路57を介してハードディスクドライブ51から圧縮HD画像データS3を読み出して、この圧縮HD画像データS3をエンコーダ/デコーダ56によって復号化することにより元のHD画像データS2を得、これを重畳回路58経由でLCD(Liquid Crystal Display)59へ出力する。この結果、LCD59には、このHD画像データS2に基づくHD画像が表示される。
さらにカムコーダ22は、OSD(On Screen Display)生成回路60によってカムコーダ22を操作するためのメニュー項目や各種ボタンなどのグラフィックをOSDデータD1として生成し、これを重畳回路58へ送出する。
重畳回路58は、エンコーダ/デコーダ56からHD画像データS2の供給を受けていれば、OSD生成回路60から供給されたOSDデータD1をHD画像データS2に重畳して、その結果得られるOSD重畳画像データSD1をLCD59へ送出する一方、エンコーダ/デコーダ56からHD画像データS2の供給を受けていなければ、OSD生成回路60から供給されたOSDデータD1だけを、LCD59へ送出する。この結果、LCD59には、OSD重畳画像データSD1またはOSDデータD1に基づく画面が表示される。このとき表示される画面が、例えば、上述した再生制御画面30である。
そしてカムコーダ22のマイクロプロセッサ50は、LCD59に表示した画面(例えば再生制御画面30)に対する操作が、LCD59の前面に設けられたタッチパネル61を介して行われたことを認識すると、この操作に応じた制御(例えば、HD画像の再生、一時停止、停止、巻き戻し、早送り、1つ前のHD画像への切り換え、次のHD画像への切り換えなど)を行う。
さらにカムコーダ22のマイクロプロセッサ50は、必要に応じて、重畳回路58から得られるOSD重畳画像データSD1またはOSDデータD1を、HDMIインタフェース62及びHDMIケーブルHc10を介してTV21に送出する。この結果、TV21に、OSD重畳画像データSD1またはOSDデータD1に基づく画面として、例えば再生制御画面30が表示される。
さらにマイクロプロセッサ50は、TV21に表示された画面(例えば再生制御画面30)に対する操作がTV21のリモートコントローラRcで行われることにより、この操作を示すCECコマンドがTV21からHDMIケーブルHc10のCECラインCLを通り送信されてくると、これをHDMIインタフェース62を介して取得する。
そしてマイクロプロセッサ50は、取得したCECコマンドに基づいて、TV21に表示された画面(例えば再生制御画面30)に対するリモートコントローラRcの操作を認識して、この操作に応じた制御(つまりHD画像の再生、一時停止、停止、巻き戻し、早送り、1つ前のHD画像への切り換え、次のHD画像への切り換えなど)を行う。
このようにして、カムコーダ22は、TV21のリモートコントローラRcで操作できるようになされている。
また、詳しくは後述するが、カムコーダ22は、マイクロプロセッサ50に内蔵されたタイマにより、各種時間を計測し得るようにもなされている。
(1−4)CECコマンドに応じたカムコーダ22の動作
ここで、リモートコントローラRcの操作に応じてTV21から送信されてくるCECコマンドを受信したときのカムコーダ22の動作について詳しく説明する。
CECコマンドを受信したときのカムコーダ22は、基本的には従来のCEC規格に準拠した受信側機器と同様の動作をするようになされている。尚、CECコマンドを送信する側のTV21は、リモートコントローラRcのキーが押され続けた場合に、キーが押され続けている間、User Control Pressedを所定の間隔(これをリピート間隔とも呼び、例えば500msに設定されている)で連続して送信する機器とする。また、このTV21は、リモートコントローラRcのキーが離されても、User Control Releasedを送信しない機器とする。
すなわち、カムコーダ22のマイクロプロセッサ50は、図5とほぼ同一の図13のタイミングチャートに示すように、再生制御画面30の再生/一時停止ボタン31がカーソルCuにより選択された状態で、リモートコントローラRcの決定キー45が押下されることによりTV21から送信されてくる決定キー45のキーコード(例えば「0x00」)とUser Control Pressedとを受信すると、その時点t20で、再生/一時停止ボタン31が選択された状態で決定キー45が押下されたと認識して、このときの決定キー45の押下に対応付けられている命令(例えば「一時停止」命令)に応じた制御(HD画像の一時停止)を行うとともに、このキーコードを内蔵メモリに一時記憶する。
その後、カムコーダ22のマイクロプロセッサ50は、最初のUser Control Pressedを受信した時点t40からコマンド待受期間Ct内である時点t41に再び同一キーコードのUser Control Pressedを受信すると、その時点t41で、決定キーが押し続けられていると認識して、これを無視する。
以降も、カムコーダ22のマイクロプロセッサ50は、User Control Pressedを受信した時点(時点t41、t42、t43、t44)からコマンド待受期間Ct内に再び同一キーコードのUser Control Pressedを受信すると、その時点(t42、t43、t44、t45)で、同様にこれを無視する。
ここで、TV21は、次のUser Control Pressedを送信するタイミング(最後にUser Control Pressedを送信してから500ms後)より前の時点t46で決定キー45が離されると、その時点t46から、User Control Pressedの送信を停止する。
すると、カムコーダ22のマイクロプロセッサ50は、最後にUser Control Pressedを受信した時点t45からコマンド待受期間Ct経過しても、同一キーコードのUser Control Pressedを受信しなかったことにより、時点t45からコマンド待受期間Ct経過後の時点t47で、決定キー45が離されたと認識する。
そして、カムコーダ22のマイクロプロセッサ50は、この時点t47で、Released処理を実行する。すなわち、カムコーダ22のマイクロプロセッサ50は、内蔵メモリに一時記憶していたキーコードを破棄する(つまり消去する)。
その後、カムコーダ22のマイクロプロセッサ50は、再び、リモートコントローラRcの決定キー45が押下されることにより送信されてくる決定キー45のキーコードとUser Control Pressedとを受信すると、その時点t48で、再び、決定キー45が押下されたと認識して、このときの決定キーの押下に対応付けられている命令(今度は「再生」命令)に応じた制御(HD画像の再生)を行うとともに、このキーコードを一時記憶する。
このように、カムコーダ22は、User Control Pressedを受信してから、コマンド待受期間Ct内に、再び同一キーコードのUser Control Pressedを受信しなかった場合に、内部的にReleased処理を実行することで、User Control Releasedを送信しないTV21とHDMI接続された場合でも、リモートコントローラRcの操作に応じた動作を実行することができる。
尚、ここでは、キーの押下に対応付けられている命令が、再生/一時停止のように、1回の押下操作で1回入力されることが望ましい命令である場合のカムコーダ22の動作(すなわち単発動作)について説明したが、例えば、再生制御画面30の次ボタン36がカーソルCuにより選択された状態で、リモートコントローラRcの決定キー45が押下されたときなどのように、キーの押下に対応付けられている命令が、長押しにより連続して入力されることが望ましい命令(例えば、HD画像の巻き戻し、早送り、HD画像の切り換えなど)である場合には、カムコーダ22は、User Control Pressedを受信するごとに、キーの押下に対応付けられている命令に応じた動作を行うようにもなされている(つまりリピート動作ようにもなされている)。
ところで、上述したように、機器間制御システム20では、HDMI接続された複数の機器を1つのCECラインCLで繋げることにより、どの機器間でもCECコマンドを送受できるようになされている。
この結果、1つのCECラインCLをHDMI接続された全ての機器で共用することになり、このような場合、1度に多くのCECコマンドが発行されると、CECラインCLのトラフィックが増加して、CECコマンドの送受に遅延が生じることがある。
このようにCECコマンドの送受に遅延が生じると、例えば、TV21が、リピート間隔(例えば500ms)でUser Control Pressedを送信することができなくなり、結果、何も対策を施さなければ、カムコーダ22は、キーが押され続けているにもかかわらず、コマンド待受期間(例えば500ms)Ct内にUser Control Pressedを受信しなかったことにより、キーが離されたと認識してしまうことになる。
そこで、本実施の形態のカムコーダ22は、トラフィックの増加によるCECコマンドの遅延を予測して、この予測をもとにコマンド待受期間Ctを調整するようになされている。
具体的に、カムコーダ22は、機器間制御システム20を構成する機器の数、つまり1つのCECラインCLに接続されている機器の数に応じて、コマンド待受期間Ctを調整するようになされている。ここで、このコマンド待受期間Ctの調整について詳しく説明する。
(1−5)コマンド待受期間Ctの調整
コマンド待受期間Ctを調整するにあたり、カムコーダ22は、まず、自機が接続されているCECラインCLに接続されている機器の数を検出する。この検出には、例えば、CECメッセージの1つであるPolling Messageを利用する。ちなみに、上述したCECコマンド(例えばUser Control Pressed)も、このCECメッセージの1つである。
ここで、CECメッセージについて簡単に説明する。CECメッセージは、図14(A)に示すように、その先頭を示すStart Bitと、これに続くHeader Blockと、これに続く複数のData Blockとで、データフレームが構成される。Data Blockの数は、最小で0、最大で15である。
このうち、Header Blockは、CECメッセージの送信元と送信先とを示す情報が記されるBlockであり、送信元の機器ID(後述する)を示す4bitのInitiatorと、送信先の機器IDを示す4bitのDestinationと、このBlockがCECメッセージの末端であるかどうかを示す1bitのEOM(End Of Message)と、送信先からの応答を示す1bitのACK(Acknowledgement)とで構成される。また、Data Blockは、各種データ(CECコマンドなど)が記されるBlockであり、各種データを示す8bitのDataと、1bitのEOMと、1bitのACKとで構成される。
そして、実際上、このCECメッセージは、図14(B)に示すように、3.7±0.2ms間Low Levelが続きその後4.5±0.2msまでHigh Levelが続く波形で表されるStart Bitと、1.5±0.2ms間Low Levelが続きその後2.4±0.2msまでHigh Levelが続く波形で示されるbitの「0」及び0.6±0.2ms間Low Levelが続きその後2.4±0.2msまでHigh Levelが続く波形で示されるbitの「1」で表されるbit列とで構成された信号として、機器間で送受されるようになされている。
尚、このCECメッセージは、CECラインCLに接続されている全ての機器で受信可能である。ゆえに、CECメッセージを受信した機器は、そのHeader Blockに記される送信先の機器IDが自機の機器IDと同一であるかどうかで、受信したCECメッセージの送信先が自機であるかどうか判断するようになされている。
因に、HDMIには、図15に示すように、機器IDとして、「0」〜「15」の16個のLogical Addressがあらかじめ用意され、規格上、HDMI接続される機器はHDMI接続されたときに、これら16個のLogical Addressのうちの1つを取得するよう規定されている。
つまり、機器間のCECメッセージの送受は、送信側機器が、自機のLogical AddressをHeader BlockのInitiatorに記すとともに、送信先のLogical AddressをDestinationに記すことで実現される。
Polling Messageは、このようなCECメッセージの1つであり、CECラインCLに接続されている機器の認識に使用されるメッセージである。このPolling Messageは、Start BitとHeader Blockのみで構成される。
Polling Messageの送信元となる機器は、Header BlockのDestinationに所望のLogical Addressを記して、このPolling Messageを発行する。
ここで、そのLogical Addressを取得した機器がCECラインCL上に存在するのであれば、図16(A)に示すように、この機器がPolling Messageの受信に応じてACKを返す。
これに対して、そのLogical Addressを取得した機器がCECラインCL上に存在しないのであれば、図16(B)に示すように、ACKは返ってこない。
このように、Polling Messageを使えば、このPolling Messageに記したLogical Addressに対応する機器がCECラインCLに接続されているかどうかを認識することができるようになされている。
ここで、カムコーダ22が、このPolling Messageを、各Logical Addressに対して順番に発行して、このときACKを返してきた機器をカウントすれば、CECラインCLに接続されている機器の数を検出することができる。
因に、Logical Addressは、「0」〜「15」まで用意されているが、「15」は、無効な機器または全機器を表すので、この「15」に対してはPolling Messageを発行しない。
このようにして、Polling Messageを利用して、CECラインCLに接続されている機器の数を検出した後、カムコーダ22は、この数に応じて、コマンド待受期間Ctを調整する。
具体的に、カムコーダ22には、例えば、出荷前にこのカムコーダ22とCECラインCLを介して接続される機器の数ごとにトラフィックを検証した結果として機器の数ごとに予測されたトラフィックに基づいて、コマンド待受期間Ctの調整値が機器の数ごとに設定されている。
すなわち、カムコーダ22には、あらかじめ予測される、トラフィックの増加により生じるCECコマンドの遅延に基づいて、少なくともこの遅延分コマンド待受期間Ctを延長するような調整値が設定されている。
実際上、図17に示すように、例えば、自機を含めて、CECラインCLに接続されている機器の数が「2」の場合、つまりカムコーダ22とあともう1台しかCECラインCLに接続されていない場合、トラフィックの影響は受けないものとして、コマンド待受期間Ctの調整値は「0」に設定されている(つまりコマンド待受期間Ctはデフォルト(初期値)の500msまま)。
また、機器の数が「3」〜「5」の場合、この場合に予測されるトラフィックの増加によるCECコマンドの遅延に基づいて、調整値は「+300ms」に設定されている。つまり、この場合、コマンド待受期間Ctは、デフォルト+300msの800msとなる。
さらに、機器の数が「6」〜「9」の場合、この場合に予測されるトラフィックの増加によるCECコマンドの遅延に基づいて、調整値は「+400ms」に設定されている。つまり、この場合、コマンド待受期間Ctは、デフォルト+400msの900msとなる。
さらに、機器の数が「10」以上の場合、この場合に予測されるトラフィックの増加によるCECコマンドの遅延に基づいて、調整値は「+500ms」に設定されている。つまり、この場合、コマンド待受期間Ctは、デフォルト+500msの1000msとなる。
このように設定された調整値に基づいて、カムコーダ22は、CECラインCLに接続されている機器の数に応じてコマンド待受期間Ctを調整するようになされている。
ここで、図8に示したようにCECラインCLに接続されている機器の数がカムコーダ22を含めて5台の場合の、カムコーダ22の動作について説明する。この場合、上述したように、コマンド待受期間Ctは、デフォルト+300msの例えば800msに設定される。
カムコーダ22のマイクロプロセッサ50は、図18のタイミングチャートに示すように、再生制御画面30の再生/一時停止ボタン31がカーソルCuにより選択された状態で、リモートコントローラRcの決定キー45が押下されることによりTV21から送信されてくる決定キー45のキーコード(例えば「0x00」)とUser Control Pressedとを受信すると、その時点t50で、再生/一時停止ボタン31が選択された状態で決定キー45が押下されたと認識して、このときの決定キー45の押下に対応付けられている命令(例えば「一時停止」命令)に応じた制御(HD画像の一時停止)を行うとともに、このキーコードを内蔵メモリに一時記憶する。
その後、カムコーダ22のマイクロプロセッサ50は、最初のUser Control Pressedを受信した時点t50からコマンド待受期間Ct内である時点t51に再び同一キーコードのUser Control Pressedを受信すると、その時点t51で、決定キーが押し続けられていると認識して、これを無視する。
以降も、カムコーダ22のマイクロプロセッサ50は、User Control Pressedを受信した時点(時点t51、t52、t53、t54)からコマンド待受期間Ct内に再び同一キーコードのUser Control Pressedを受信すると、その時点(t52、t53、t54、t55)で、同様にこれを無視する。
ここで、TV21は、次のUser Control Pressedを送信するタイミング(最後にUser Control Pressedを送信してから500ms後)より前の時点t56で決定キー45が離されると、その時点t56から、User Control Pressedの送信を停止する。
すると、カムコーダ22のマイクロプロセッサ50は、最後にUser Control Pressedを受信した時点t55からコマンド待受期間(800ms)Ct経過しても、同一キーコードのUser Control Pressedを受信しなかったことにより、時点t55からコマンド待受期間Ct経過後の時点t57で、決定キー45が離されたと認識する。
そして、カムコーダ22のマイクロプロセッサ50は、この時点t57で、Released処理を実行する。すなわち、カムコーダ22のマイクロプロセッサ50は、内蔵メモリに一時記憶していたキーコードを破棄する(つまり消去する)。
その後、カムコーダ22のマイクロプロセッサ50は、再び、リモートコントローラRcの決定キー45が押下されることにより送信されてくる決定キー45のキーコードとUser Control Pressedとを受信すると、その時点t58で、再び、決定キー45が押下されたと認識して、このときの決定キーの押下に対応付けられている命令(今度は「再生」命令)に応じた制御(HD画像の再生)を行うとともに、このキーコードを一時記憶する。
その後、カムコーダ22のマイクロプロセッサ50は、最初のUser Control Pressedを受信した時点t58からコマンド待受期間Ct内である時点t59に再び同一キーコードのUser Control Pressedを受信すると、決定キー45が押し続けられていると認識して、これを無視する。
以降も、カムコーダ22のマイクロプロセッサ50は、User Control Pressedを受信した時点(時点t59、t60、t61、t62)からコマンド待受期間Ct内に再び同一キーコードのUser Control Pressedを受信すると、その時点(t60、t61、t62、t63)で、同様にこれを無視する。
ここで、TV21が、CECラインCLのトラフィックの増加の影響により、次のUser Control Pressedを、本来送信すべきタイミング(最後にUser Control Pressedを送信してから500ms後)よりも遅れた例えば700ms後に送信したとする。
このとき、カムコーダ22には、あらかじめCECコマンドの送信に生じる遅延を予測して、コマンド待受期間Ctがデフォルト+300msの800msに設定されている。
ゆえに、カムコーダ22のマイクロプロセッサ50は、このようにトラフィックの影響によりUser Control Pressedの送信が遅れても、この遅れてきたUser Control Pressedを、コマンド待受期間Ct内である時点t64に受信することができ、この結果、決定キー45が押し続けられていると正確に認識して、これを無視することができる。
また一方で、カムコーダ22のマイクロプロセッサ50は、この調整されたコマンド待受期間Ct内に、User Control Pressedを受信しなかった場合には、決定キー45が離されたと正確に認識して、Released処理を実行することができる。
このように、カムコーダ22は、CECラインCLに接続される機器の数ごとに予測されるトラフィックに基づいて設定された調整値でコマンド待受期間Ctを調整するようにしたことで、トラフィックの影響によりTV21からのUser Control Pressedの送信に遅延が生じても、リモートコントローラRcのキーが押し続けられていること、離されたことを正確に認識するこができ、結果として、リモートコントローラRcの操作に応じた動作をすることができる。
つまり、カムコーダ22は、CECラインCLのトラフィックに依らず、常に一定の動作をすることができる。
(1−6)接続機器数検出処理手順
次に、カムコーダ22が、CECラインCLに接続されている機器の数を検出するときの処理手順(これを接続機器数検出処理手順とも呼ぶ)について、図19に示すフローチャートを用いて詳しく説明する。この接続機器数検出処理手順は、カムコーダ22のマイクロプロセッサ50が、内蔵メモリまたはハードディスクドライブ51から読み出した接続機器数検出プログラムにしたがって実行する処理の手順である。
カムコーダ22のマイクロプロセッサ51は、例えば、起動すると接続機器数検出処理手順RT1を開始して、ステップSP1に移る。ステップSP1においてマイクロプロセッサ50は、接続機器数を「0」にセットして、次のステップSP2に移る。
ステップSP2においてマイクロプロセッサ50は、カムコーダ22が他の機器とHDMI接続されるまで待ち受ける。ここで、HDMI接続されたかどうかは、例えば、HDMIケーブルHcの中の1つの信号線であるHot Plug Detectを介して入力される信号がHighになったかどうかで判断するようになされている。
HDMI接続されたことを認識すると、マイクロプロセッサ50は、ステップSP3に移る。ステップSP3においてマイクロプロセッサ50は、16個のLogical Addressのうちの1つを取得することで、自機のLogical Addressを決定して、次のステップSP4に移る。
ステップSP4においてマイクロプロセッサ50は、Polling Messageの送信先となるDestinationに、先頭のLogical Addressである「0」を設定して、次のステップSP5に移る。
ステップSP5においてマイクロプロセッサ50は、設定したDestinationにPolling Messageを発行して、次のステップSP6に移る。ステップSP6においてマイクロプロセッサ50は、ステップSP5で発行したPolling Messageに対するACKが返ってきたかどうかを判別する。
このステップSP6で肯定結果を得ると、このことは、ACKが返ってきたことにより、設定したDestinationに対応する機器がCECラインCL上に存在することを意味しており、このときマイクロプロセッサ50は、ステップSP7に移る。ステップSP7においてマイクロプロセッサ50は、接続機器数を+1して、次のステップSP8に移る。
これに対して、上述のステップSP6で否定結果を得ると、このことは、ACKが返ってこなかったことにより、設定したDestinationに対応する機器がCECラインCL上に存在しないことを意味しており、このときマイクロプロセッサ50は、接続機器数を変えずに、ステップSP8に移る。
ステップSP8においてマイクロプロセッサ50は、Destinationを+1して、つまり、Polling Messageの送信先を、次のLogical Addressに設定して、次のステップSP9に移る。
ステップSP9においてマイクロプロセッサ50は、Destinationが、最後のLogical Addressである「15」に設定されているかどうかを判別する。このステップSP9で否定結果を得ると、まだ、「0」〜「14」までのLogical Addressの全てに対してPolling Messageを発行し終えていないことを意味しており、このときマイクロプロセッサ50は、再びステップSP5に戻る。
これに対して、このステップSP9で肯定結果を得ると、このことは、「0」〜「14」までのLogical Addressの全てに対してPolling Messageを発行し終えたことを意味しており、このときマイクロプロセッサ50は、この時点での接続機器数(つまりCECラインCLに接続されている機器の数)を、例えば内蔵メモリに記憶して、この接続機器検出処理手順RT1を終了する。
このような接続機器検出処理手順RT1にしたがって、カムコーダ22のマイクロプロセッサ50は、CECラインCLに接続されている機器の数を検出するようになされている。
因に、上述したステップSP5〜ステップSP6の処理については、設定したDestinationがカムコーダ22のLogical Addressになった場合、省略してもよい。このようにすれば、カムコーダ22が自機に対してPolling Messageを発行するという無駄な処理を省略することができる。
(1−7)CECコマンド受信時の動作処理手順
次に、カムコーダ22が、CECコマンドを受信したときの動作処理手順について、図20及び図21に示すフローチャートを用いて詳しく説明する。この動作処理手順も、カムコーダ22のマイクロプロセッサ50が、内蔵メモリまたはハードディスクドライブ51から読み出した動作プログラムにしたがって実行する処理の手順である。
カムコーダ22のマイクロプロセッサ51は、例えば、上述した接続機器数検出処理手順RT1を終了すると、この動作処理手順RT1を開始して、ステップSP10に移る。ステップSP10においてマイクロプロセッサ50は、User Control Pressedの受信を待ち受ける。
User Control Pressedを受信すると、マイクロプロセッサ50は、ステップSP11に移り、User Control Pressed受信時の処理(これをPressed処理とも呼ぶ)を実行する。
このPressed処理の手順(これをPressed処理手順とも呼ぶ)RT3を、図21に示す。すなわち、マイクロプロセッサ50は、このPressed処理手順RT3を開始すると、ステップSP20において、受信したUser Control Pressedに対応する、このときのリモートコントローラRcの操作が、リピート動作対象の操作であるかどうかを判別する。
このステップSP20で肯定結果を得ると、このことは、このときのリモートコントローラRcの操作が、リピート動作対象の操作であることを意味しており、このときマイクロプロセッサ50は、ステップSP21に移る。
ステップSP21においてマイクロプロセッサ50は、User Control Pressedとともに受信したキーコードを一時記憶して、次のステップSP22に移る。ステップSP22においてマイクロプロセッサ50は、受信したUser Control Pressedに対応する、このときのリモートコントローラRcの操作に応じた制御を行った後、このPressed処理手順RT3を終了する。
これに対して、上述のステップSP20で否定結果を得ると、このことは、受信したUser Control Pressedに対応する、このときのリモートコントローラRcの操作が、リピート動作対象の操作ではなく、単発動作対象の操作であることを意味しており、このときマイクロプロセッサ50は、ステップSP23に移る。
ステップSP23においてマイクロプロセッサ50は、内蔵メモリにUser Control Pressedのキーコードが一時記憶されているかどうか、つまり前回受信したUser Control Pressedのキーコードが残されているかどうかを判別する。このステップSP23で肯定結果を得ると、このことは、連続してUser Control Pressedを受信したことを意味しており、このときマイクロプロセッサ50は。ステップSP24に移る。
ステップSP24においてマイクロプロセッサ50は、受信したUser Control Pressedが、前回受信したUser Control Pressedと同一のキーコードであるかどうかを判別する。このステップSP24で肯定結果を得ると、このことは、リモートコントローラRcのキーが押し続けられていることにより、連続して送信されてきたUser Control Pressedを受信したことを意味しており、このときマイクロプロセッサ50は、このUser Control Pressedを無視して、このPressed処理手順RT3を終了する。
また、上述のステップSP23で否定結果を得た場合、このことは、受信したUser Control Pressedが、キーが押下されて最初のUser Control Pressedであることを意味しており、このときマイクロプロセッサ50は、ステップSP21に移る。
さらに、上述のステップSP24で否定結果を得た場合、このことは、前回受信したUser Control Pressedとは違うキーコードのUser Control Pressedを受信したこと、つまり前回とは違うキーが押下されたことを意味しており、このときもマイクロプロセッサ50は、ステップSP21に移る。
このようなPressed処理手順RT3にしたがって、Pressed処理を実行した後、マイクロプロセッサ50は、ステップSP12(図20)に移る。
ステップSP12においてマイクロプロセッサ50は、コマンド待受期間Ct用のタイマを、デフォルト(500ms)+接続機器数検出処理で検出した接続機器数に応じた調整値に設定して、タイマを動作させ、次のステップSP13に移る。
ステップSP13においてマイクロプロセッサ50は、コマンド待受期間Ct内に、User Control Pressedを受信したかどうかを判別する。このステップSP13で肯定結果を得ると、このときマイクロプロセッサ50は、再びステップSP11に戻り、Pressed処理を実行する。
これに対して、このステップSP13で否定結果を得ると、このときマイクロプロセッサ50は、ステップSP14に移る。ステップSP14においてマイクロプロセッサ50は、コマンド待受期間Ct内に、User Control Releasedを受信したかどうかを判別する。このステップSP14で否定結果を得ると、このときマイクロプロセッサ50は、ステップSP15に移る。
ステップSP15においてマイクロプロセッサ50は、タイマから得られる経過時間をもとに、コマンド待受期間Ct経過したかどうかを判別する。このステップSP15で否定結果を得ると、このことは、まだコマンド待受期間Ct経過していないことを意味しており、このときマイクロプロセッサ50は、再びステップSP13に戻る。
これに対して、このステップSP15で肯定結果を得ると、このことは、User Control Pressedを受信してから、User Control PressedもUser Control Releasedも受信せずに、コマンド待受期間Ct経過したことを意味しており、このときマイクロプロセッサ50は、ステップSP16に移る。
また、上述のステップSP14で肯定結果を得た場合、すなわち、コマンド待受期間Ct内にUser Control Releasedを受信した場合も、ステップSP16に移る。
ステップSP16においてマイクロプロセッサ50は、タイマを停止して、次のステップSP17に移る。ステップSP17においてマイクロプロセッサ50は、キーが離されたと認識して、一時記憶しているキーコードを破棄(クリア)した後、再びステップSP10に戻り、User Control Releasedの受信を待ち受ける。
このような動作処理手順RT2にしたがって、カムコーダ22のマイクロプロセッサ50は、動作するようになされている。
(1−8)第1の実施の形態による動作及び効果
以上の構成において、カムコーダ22は、HDMI接続されると、CECメッセージの1つであるPolling Messageを利用して、CECラインCLに接続されている機器の数を検出する。
そして、カムコーダ22は、TV21のリモートコントローラRcで操作されるときのコマンド待受期間Ctを、検出した機器の数をもとに、接続されている機器の数ごとに予測されたトラフィックに基づいて機器の数ごとに設定されている調整値で調整する。
すなわち、カムコーダ22は、機器の数が増えるにつれて増加するトラフィックによりCECコマンドの送信がどの程度遅延するかを予測して、CECコマンドが遅延してもコマンド待受期間Ct内で受信できるよう、コマンド待受期間Ctを延長する。
こうすることで、カムコーダ22は、トラフィックの影響によりTV21からのUser Control Pressedの送信に遅延が生じても、リモートコントローラRcのキーが押し続けられていること、離されたことを正確に認識するこができ、リモートコントローラRcの操作に応じた動作をすることができる。
つまり、カムコーダ22は、CECラインCLのトラフィックに依らず、常に一定の動作をすることができる。
以上の構成によれば、カムコーダ22は、コマンド待受期間CtをCECラインCLのトラフィックに基づいて調整するようにしたことにより、CECラインCLのトラフィックが増加することによりUser Control Pressedの送信に遅延が生じるような場合には、その分延長したコマンド待受期間Ct内でUser Control Pressed及びUser Control Releasedを待ち受け、この延長したコマンド待受期間Ct内にこれらを受信したか否かでReleased処理を実行するかどうか判断することができ、かくして、CECラインCLのトラフィックに依らず、他の機器からのCECコマンドをもとに一定の動作をすることができる。
(2)第2の実施の形態
次に、第2の実施の形態について説明する。この第2の実施の形態は、コマンド待受期間Ctの調整方法が第2の実施の形態とは異なる実施の形態であり、それ以外の部分である機器間制御システム20の構成、カムコーダ22の構成などについては、第2の実施の形態と同様とする。ゆえに、ここでは、コマンド待受期間Ctの調整を中心に説明する。
この第2の実施の形態では、機器の数をもとにCECラインCLのトラフィックを予測して、その予測したトラフィックに応じてコマンド待受期間Ctを調整するのではなく、実際に、CECラインCLのトラフィックを監視して、そのときどきのトラフィックに応じてコマンド待受期間Ctを調整するようになされている。
(2−1)CECコマンドに応じたカムコーダ22の動作
ここで、この第2の実施の形態によるカムコーダ22の動作について説明する。カムコーダ22のマイクロプロセッサ50は、図22のタイミングチャートに示すように、再生制御画面30の再生/一時停止ボタン31がカーソルCuにより選択された状態で、リモートコントローラRcの決定キー45が押下されることによりTV21から送信されてくる決定キー45のキーコード(例えば「0x00」)とUser Control Pressedとを受信すると、その時点t70で、再生/一時停止ボタン31が選択された状態で決定キー45が押下されたと認識して、このときの決定キー45の押下に対応付けられている命令(例えば「一時停止」命令)に応じた制御(HD画像の一時停止)を行うとともに、このキーコードを内蔵メモリに一時記憶する。
また、この時点t70から、マイクロプロセッサ50は、CECラインCLのトラフィックの監視を開始する。
その後、カムコーダ22のマイクロプロセッサ50は、最初のUser Control Pressedを受信した時点t70からコマンド待受期間Ct内である時点t71に再び同一キーコードのUser Control Pressedを受信すると、その時点t71で、決定キーが押し続けられていると認識して、これを無視する。このときのコマンド待受期間Ctは、CECラインCLのトラフィックが増加していないことから、デフォルト(例えば500ms)のままである。
以降も、カムコーダ22のマイクロプロセッサ50は、User Control Pressedを受信した時点(時点t71、t72、t73、t74)からコマンド待受期間Ct内に再び同一キーコードのUser Control Pressedを受信すると、その時点(t72、t73、t74、t75)で、同様にこれを無視する。この間も、CECラインCLのトラフィックは増加していないことから、コマンド待受期間Ctはデフォルト(例えば500ms)のままである。
ここで、TV21は、次のUser Control Pressedを送信するタイミング(最後にUser Control Pressedを送信してから500ms後)より前の時点t76で決定キー45が離されると、その時点t76から、User Control Pressedの送信を停止する。
すると、カムコーダ22のマイクロプロセッサ50は、最後にUser Control Pressedを受信した時点t75からコマンド待受期間(500ms)Ct経過しても、同一キーコードのUser Control Pressedを受信しなかったことにより、時点t75からコマンド待受期間Ct経過後の時点t77で、決定キー45が離されたと認識する。
そして、カムコーダ22のマイクロプロセッサ50は、この時点t77で、Released処理を実行する。すなわち、カムコーダ22のマイクロプロセッサ50は、内蔵メモリに一時記憶していたキーコードを破棄する(つまり消去する)。また、ここで、一旦、CECラインCLのトラフィックの監視を停止する。
その後、カムコーダ22のマイクロプロセッサ50は、再び、リモートコントローラRcの決定キー45が押下されることにより送信されてくる決定キー45のキーコードとUser Control Pressedとを受信すると、その時点t78で、再び、決定キー45が押下されたと認識して、このときの決定キーの押下に対応付けられている命令(今度は「再生」命令)に応じた制御(HD画像の再生)を行うとともに、このキーコードを一時記憶して、さらにCECラインCLのトラフィックの監視を開始する。
その後、カムコーダ22のマイクロプロセッサ50は、最初のUser Control Pressedを受信した時点t78からコマンド待受期間Ct内である時点t79に再び同一キーコードのUser Control Pressedを受信すると、決定キー45が押し続けられていると認識して、これを無視する。この間も、CECラインCLのトラフィックは増加していないことから、コマンド待受期間Ctはデフォルト(例えば500ms)のままである。
以降も、カムコーダ22のマイクロプロセッサ50は、User Control Pressedを受信した時点(時点t79、t80、t81、t82)からコマンド待受期間Ct内に再び同一キーコードのUser Control Pressedを受信すると、その時点(t80、t81、t82、t83)で、同様にこれを無視する。この間も、CECラインCLのトラフィックは増加していないことから、コマンド待受期間Ctはデフォルト(例えば500ms)のままである。
ここで、最後にUser Control Pressedを受信した時点t83からコマンド待受期間(500ms)Ct経過する前の時点t84で、CECラインCLに、User Control PressedでもUser Control Pressedでもない他のCECメッセージが割り込まれて送信されると、このCECメッセージの送信が終わるまで、次のUser Control Pressedの送信が待たされることになる。
この結果、次のUser Control Pressedの送信が、本来送信すべきタイミング(最後にUser Control Pressedを送信してから500ms後)よりも、このCECメッセージの送信にかかる時間(これを送信時間とも呼ぶ)だけ遅れて送信されることになる。
実際上、CECメッセージは、図14に示したように、Start Bitと、Header Blockと、最小0個、最大15個のData Blockで構成される。そしてStart Bitが4.5ms、10bitでなる各Blockが2.4ms×10で24msだとすると、CECメッセージの送信には、28.5ms〜388.5ms程度の時間が必要となる。つまりこの程度の時間、次のUser Control Pressedの送信が遅れることになる。
このとき、カムコーダ22のマイクロプロセッサ50は、CECラインCLのトラフィックを監視していることにより、他のCECメッセージが割り込まれてトラフィックが増加したことを認識すると、このCECメッセージの送信時間を計測して、この時間をデフォルトのコマンド待受期間Ctに追加することで、コマンド待受期間Ctを延長する。
こうすることで、カムコーダ22のマイクロプロセッサ50は、トラフィックの影響によりUser Control Pressedの送信が遅れても、このUser Control Pressedを、遅れる分延長したコマンド待受期間Ct内である時点t85に受信することができ、この結果、決定キー45が押し続けられていると正確に認識して、これを無視することができる。
その後、カムコーダ22のマイクロプロセッサ50は、再びコマンド待受期間Ctをデフォルトに戻して、このコマンド待受期間Ct内にUser Control Pressedを受信しなかった場合には、決定キー45が離されたと認識して、Released処理を実行する。
このように、カムコーダ22は、CECラインCLのトラフィック(実際には、CECラインCLを通るCECメッセージ)を監視して、そのときどきのトラフィックに応じてコマンド待受期間Ctを調整するようにしたことで、トラフィックの影響によりTV21からのUser Control Pressedの送信に遅延が生じても、リモートコントローラRcのキーが押し続けられていること、離されたことを正確に認識するこができ、結果として、リモートコントローラRcの操作に応じた動作をすることができる。
つまり、カムコーダ22は、CECラインCLのトラフィックに依らず、常に一定の動作をすることができる。
また、この場合、そのときどきのトラフィックに応じて適応的にコマンド待受期間Ctを調整するようにしたことにより、トラフィックの影響を受けない場合には、コマンド待受期間Ctをデフォルト(最小値)に戻すことができるので、例えば、キーが離されてから、実際にキーが離されたと認識するまでの応答時間を、第1の実施の形態と比して早くすることができる。
(2−2)CECコマンド受信時の動作処理手順
ここで、カムコーダ22が、CECコマンドを受信したときの動作処理手順について、図23に示すフローチャートを用いて詳しく説明する。この動作処理手順も、カムコーダ22のマイクロプロセッサ50が、内蔵メモリまたはハードディスクドライブ51から読み出した動作プログラムにしたがって実行する処理の手順である。
カムコーダ22のマイクロプロセッサ51は、例えば、HDMI接続されると、この動作処理手順RT4を開始して、ステップSP30に移る。ステップSP30においてマイクロプロセッサ50は、User Control Pressedの受信を待ち受ける。
User Control Pressedを受信すると、マイクロプロセッサ50は、ステップSP31に移り、User Control Pressed受信時の処理(Pressed処理)を実行する。
このPressed処理の手順(Pressed処理手順)は、第1の実施の形態のPressed処理手順RT3(図21)と同様であるので、その説明を省略する。
このステップSP31でPressed処理を実行した後、マイクロプロセッサ50は、ステップSP32に移る。
ステップSP32においてマイクロプロセッサ50は、コマンド待受期間Ct用のタイマを、デフォルト(500ms)に設定して、タイマを動作させるとともに、CECラインCLのトラフィックの監視を開始して、次のステップSP33に移る。
ステップSP33においてマイクロプロセッサ50は、コマンド待受期間Ct内に、User Control Pressedを受信したかどうかを判別する。このステップSP33で肯定結果を得ると、このときマイクロプロセッサ50は、再びステップSP31に戻り、Pressed処理を実行する。
これに対して、このステップSP33で否定結果を得ると、このときマイクロプロセッサ50は、ステップSP34に移る。ステップSP34においてマイクロプロセッサ50は、コマンド待受期間Ct内に、User Control Releasedを受信したかどうかを判別する。このステップSP34で否定結果を得ると、このときマイクロプロセッサ50は、ステップSP35に移る。
ステップSP35においてマイクロプロセッサ50は、さらにコマンド待受期間Ct内に、他のCECメッセージを受信したかどうかを判別する。このステップSP35で肯定結果を得ると、このときマイクロプロセッサ50は、ステップSP36に移る。
ステップSP36においてマイクロプロセッサ50は、受信した他のCECメッセージを解析して、このCECメッセージの送信時間を計測する。このときの計測方法としては、例えば、コマンド待受期間Ct用のタイマとは別のタイマにより、CECメッセージのStart Bitから最後のData Blockまでの時間を計測する方法と、マイクロプロセッサ50に保持させた、Start Bitに要する時間(4.5ms)と、各Blockに要する時間(24ms)とをもとに、CECメッセージが何Blockで構成されているかに応じて、計算により、CECメッセージの送信時間を計測する方法とがあり、このステップSP36では、これらの方法の1つが用いられる。
このようにして、CECメッセージの送信時間を計測した後、マイクロプロセッサ50は、次のステップSP37に移る。ステップSP37においてマイクロプロセッサ50は、デフォルトのコマンド待受期間(500ms)CtにCECメッセージの送信時間を追加することにより、コマンド待受期間Ctを延長して、次のステップSP38に移る。
これに対して、上述のステップSP35で否定結果を得た場合、マイクロプロセッサ50は、コマンド待受期間Ctを調整することなく、ステップSP38に移る。
ステップSP38においてマイクロプロセッサ50は、タイマから得られる経過時間をもとに、コマンド待受期間Ct経過したかどうかを判別する。このステップSP38で否定結果を得ると、このことは、まだコマンド待受期間Ct経過していないことを意味しており、このときマイクロプロセッサ50は、再びステップSP33に戻る。
これに対して、このステップSP38で肯定結果を得ると、このことは、User Control Pressedを受信してから、User Control PressedもUser Control Releasedも受信せずに、コマンド待受期間Ct経過したことを意味しており、このときマイクロプロセッサ50は、ステップSP39に移る。
また、上述のステップSP34で肯定結果を得た場合、すなわち、コマンド待受期間Ct内にUser Control Releasedを受信した場合も、ステップSP39に移る。
ステップSP39においてマイクロプロセッサ50は、タイマを停止して、次のステップSP40に移る。ステップSP40においてマイクロプロセッサ50は、キーが離されたと認識して、一時記憶しているキーコードを破棄(クリア)した後、再びステップSP30に戻り、User Control Releasedの受信を待ち受ける。
このような動作処理手順RT4にしたがって、カムコーダ22のマイクロプロセッサ50は、動作するようになされている。
このように、この第2の実施の形態では、カムコーダ22が、CECラインCLのトラフィックを実測して、そのときどきのトラフィックに応じてコマンド待受期間Ctを調整するようにしたことで、トラフィックの影響によりTV21からのUser Control Pressedの送信に遅延が生じても、リモートコントローラRcのキーが押し続けられていること、離されたことを正確に認識するこができ、結果として、リモートコントローラRcの操作に応じた動作をすることができる。
つまり、カムコーダ22は、CECラインCLのトラフィックに依らず、常に一定の動作をすることができる。
また、この場合、そのときどきのトラフィックに応じて適応的にコマンド待受期間Ctを調整するようにしたことにより、そのときどきのトラフィックに最適なコマンド待受期間Ctで、CECコマンドを待ち受けることができる。
(3)他の実施の形態
尚、上述した第1の実施の形態では、カムコーダ22がHDMI接続されたときに、Polling Messageを発行して、CECラインCLに接続されている機器の数を検出するようにした場合について述べたが、本発明はこれに限らず、例えば、定期的に、Polling Messageを発行して、定期的に機器の数を検出するようにしてもよい。
実際上、HDMI接続される機器の中には、デジタルスチルカメラ23などのように、普段はHDMI接続されてなく、必要なときだけHDMI接続されるような機器もあるため、カムコーダ22が機器の数を検出した以降に機器の数が変わることもある。
このため、上述したように、定期的に機器の数を検出することは有効であり、こうすることで、常にそのときどきの機器の数を把握することができ、その数に応じて適切にコマンド待受期間Ctを調整することができる。
また、このように定期的にPolling Messageを発行するのではなく、1度Polling Messageを発行して機器の数を検出したら、それ以降、CECラインCLを通るCECメッセージのHeader BlockのInitiatorとDestinationに記されるLogical Addressを監視して、利用されているLogical Addressを確認することで、HDMI接続されている機器の増減を認識するようにしてもよい。
また上述した第1の実施の形態では、コマンド待受期間Ctの調整値として、CECラインCLに接続されている機器の数が「2」の場合、「3」〜「5」の場合、「6」〜「9」の場合、機器の数が「10」以上の場合の調整値が設定されているようにした場合について述べたが、本発明はこれに限らず、接続されている機器1台ごとに、設定されていてもよく、少なくとも1以上の調整値が設定されていればよい。
また、この調整値の値もトラフィックの予測に基づいて、第1の実施の形態とは異なる値に設定されていてもよい。実際上、コマンド待受期間Ctが長すぎると、カムコーダ22側でのキー操作に対する応答が遅くなる。したがって、トラフィックによるCECコマンドの遅延と、このキー操作に対する応答との双方を考慮した調整値が設定されることが望ましく、実際上、このようにして調整値を設定するようにしてもよい。さらに、この調整値の値を、機器間制御システム20のメイン機器であるTV21に保持させ、カムコーダ22が、このTV21から調整値を取得するようにしてもよい。さらに、この調整値によるコマンド待受期間Ctの調整を、接続機器数検出処理手順RT1の最後に行うようにして、以降、この調整したコマンド待受期間Ctでタイマを動作させるようにしてもよい。
さらに上述した第1の実施の形態では、キーの押下に対応付けられている命令が、再生/一時停止の場合は、単発動作するようにして、この命令が、巻き戻し、早送り、HD画像の切り換えの場合は、リピート動作するようにした場合について述べたが、例えば、図24に示すように、TV21に表示させた、HD画像のサムネイルの一覧を表示するサムネイル画面100に表示される、表示されるサムネイルの一覧を上側にスクロールさせて切り換える命令が割り当てられている上ボタン101、表示されるサムネイルの一覧を下側にスクロールさせて切り換える命令が割り当てられている下ボタン102が、リモートコントローラRcの決定キー45により操作された場合も、リピート動作することが望ましい。
さらに上述した第1及び第2の実施の形態では、HDMIのCECに準拠したカムコーダ22に本発明を適用した場合について述べたが、本発明はこれに限らず、所定の信号線を介して一以上の機器と接続され、接続された他の機器から送信される制御信号に応じて動作可能な電子機器であって、コマンド待受期間Ctと同様の役割を果たす信号待受期間を設定するようになされた電子機器であれば、デジタルカメラ、AVアンプ、ビデオレコーダ、パーソナルコンピュータ、オーディオコンポなど、この他種々の電子機器に本発明を適用してもよく、また適用することができる。
さらに必ずしも他の機器のリモートコントローラの操作コマンドを受け付ける電子機器でなくてもよく、例えば、他の入力デバイスの操作コマンドを受け付ける電子機器であってもよい。
さらに上述した第2の実施の形態では、コマンド待受期間Ct内に、他のCECメッセージを受信した場合には、コマンド待受期間Ct経過後に、このコマンド待受期間CtにCECメッセージの送信時間を追加して、コマンド待受期間Ctを延長するようにした場合について述べたが、本発明はこれに限らず、例えば、コマンド待受期間Ct内に、他のCECメッセージを受信した場合には、この時点で、コマンド待受期間Ct用のタイマを一時停止させ、他のCECメッセージの送信が完了した時点で、再びこのタイマを動作させるようにしてもよい。この場合も、実質、コマンド待受期間Ctを延長したことと同意となる。
さらに上述した第1及び第2の実施の形態では、カムコーダ22のマイクロプロセッサ50が、内蔵メモリまたはハードディスクドライブ51から読み出したプログラムにしたがって、上述した接続機器数検出処理や動作処理を実行するようにした場合について述べたが、本発明はこれに限らず、これらの処理を実行するためのプログラムを、カムコーダ22と接続された他の機器から取得して、ハードディスクドライブ51にインストールするなどしてもよい。また、これらのプログラムを、光ディスクやメモリカードなどの記録媒体に記録しておき、この記録媒体を再生可能なドライブをカムコーダ22に接続して、このドライブを介して記録媒体から読み出したプログラムをハードディスクドライブ51にインストールするようにしてもよい。ここで、カムコーダ22が、これら他の機器やドライブと接続可能なインタフェースを有していないのであれば、別途設ければよい。
さらに上述した第1及び第2の実施の形態では、主として、制御信号及び操作信号としてのCECメッセージを受信する受信部としてのHDMIインタフェース62と、所定の処理としてのPressed処理を実行する制御部、及び信号待受期間としてのコマンド待受期間Ctを調整する待受期間調整部としてのマイクロプロセッサ50とにより電子機器としてのカムコーダ22を構成するようにした場合について述べたが、本発明はこれに限らず、同様の機能を有するものであれば、これら以外の受信部、制御部及び待受期間調整部によって、電子機器を構成するようにしてもよい。
さらに本発明は、上述した第1及び第2の実施の形態及びここまで説明した他の実施の形態に限定されるものではなく、これら第1及び第2の実施の形態及びここまで説明した他の実施の形態の一部または全部を任意に組み合わせた形態、もしくは一部を抽出した形態にもその適用範囲が及ぶものとする。
例えば、第1の実施の形態に第2の実施の形態を組み合わせるなどしてもよい。すなわち、あらかじめ第1の実施の形態のようにしてコマンド待受期間Ctを調整したうえで、さらに、その調整したコマンド待受期間Ct内に、他のCECメッセージを受信した場合に、第2の実施の形態のようにしてコマンド待受期間Ctを延長するようにしてもよい。
本発明は、例えばHDMI接続されることで、他の機器から制御可能な、カムコーダや、ビデオレコーダなどの電子機器で広く利用することができる。
HDMIのピン配列を示す略線図である。 再生制御画面(1)を示す略線図である。 従来のCECコマンド受信時の受信側機器の動作(1)を示すタイミングチャートである。 従来のCECコマンド受信時の受信側機器の動作(2)を示すタイミングチャートである。 従来のCECコマンド受信時の受信側機器の動作(3)を示すタイミングチャートである。 複数の機器がHDMI接続された様子を示す略線図である。 従来のCECコマンド受信時の受信側機器の動作(4)を示すタイミングチャートである。 第1の実施の形態における機器間制御システムの構成を示す略線図である。 カムコーダの画面をTVに表示させた様子を示す略線図である。 再生制御画面(2)を示す略線図である。 リモートコントローラと各キーに割り当てられたキーコードを示す略線図である。 カムコーダの回路構成を示すブロック図である。 第1の実施の形態におけるCECコマンド受信時のカムコーダの動作(1)を示すタイミングチャートである。 CECメッセージの構成を示す略線図である。 HDMI接続された機器ごとに割り当てられるLogical Addressを示す略線図である。 Polling Messageの構成を示す略線図である。 接続されている機器の数ごとに設定されているコマンド待受期間の調整値を示す略線図である。 第1の実施の形態におけるCECコマンド受信時のカムコーダの動作(2)を示すタイミングチャートである。 第1の実施の形態における接続機器数検出処理手順を示すフローチャートである。 第1の実施の形態における動作処理手順を示すフローチャートである。 第1の実施の形態におけるPressed処理手順を示すフローチャートである。 第2の実施の形態におけるCECコマンド受信時のカムコーダの動作(1)を示すタイミングチャートである。 第2の実施の形態における動作処理手順を示すフローチャートである。 他の実施の形態におけるサムネイル画面を示す略線図である。
符号の説明
20……機器間制御システム、21……TV、22……カムコーダ、30……再生制御画面、50……マイクロプロセッサ、62……HDMIインタフェース、CL……CECライン、Ct……コマンド待受期間、Hc……HDMIケーブル、Rc……リモートコントローラ。

Claims (9)

  1. 所定の信号線を介して一以上の機器と接続され、接続された他の機器から送信される制御信号に応じて動作可能な電子機器であって、
    接続された他の機器から送信される制御信号を受信する受信部と、
    上記受信部により特定の制御信号を受信してから、設定された信号待受期間内に、当該特定の制御信号に対応する制御信号を受信しなかった場合に、所定の処理を実行する制御部と、
    上記信号待受期間を上記信号線のトラフィックに基づいて調整する待受期間調整部と
    を具えることを特徴とする電子機器。
  2. 上記待受期間調整部は、
    上記信号線を介して接続されている機器の数をもとに当該信号線のトラフィックを予測し、予測した当該トラフィックに基づいて上記信号待受期間を調整する
    ことを特徴とする請求項1に記載の電子機器。
  3. 上記待受期間調整部は、
    上記信号線を介して接続される機器の数ごとにトラフィックを検証した結果として、当該機器の数ごとに予測されたトラフィックに基づいてあらかじめ設定されている上記信号待受期間に対する調整値をもとに、上記信号線を介して接続されている機器の数に応じて上記信号待受期間を調整する
    ことを特徴とする請求項2に記載の電子機器。
  4. 上記待受期間調整部は、
    上記受信手段が受信する制御信号を監視することで上記信号線のトラフィックを実測し、実測した上記トラフィックに基づいて上記信号待受期間を調整する
    ことを特徴とする請求項1に記載の電子機器。
  5. 上記待受期間調整部は、
    上記受信手段が上記特定の制御信号を受信してから、上記信号待受期間内に、当該特定の制御信号及び当該特定の制御信号に対応する制御信号以外の他の制御信号を受信した場合に、当該他の制御信号の送信に要する時間分、当該信号待受期間を延長する
    ことを特徴とする請求項4に記載の電子機器。
  6. 上記接続された他の機器から送信される制御信号は、
    当該他の機器の入力デバイスを介して行われた操作を示す操作信号である
    ことを特徴とする請求項1に記載の電子機器。
  7. 上記操作信号は、
    上記接続された他の機器のリモートコントローラを介して行われた操作を示す操作信号であり、
    上記制御部は、
    上記受信部により上記リモートコントローラの特定のキーが押下されたことを示す押下操作信号を受信してから、設定された信号待受期間内に、当該押下操作信号も上記特定のキーが解放されたことを示す解放操作信号も受信しなかった場合に、上記特定のキーが解放されたと認識する処理を実行する
    ことを特徴とする請求項6に記載の電子機器。
  8. 上記所定の信号線は、
    HDMI(High-Definition Multimedia Interface)規格に準拠したCEC(Consumer Electronics Control)ラインであり、
    上記制御信号は、
    上記HDMI規格で定義されたCECメッセージである
    ことを特徴とする請求項1に記載の電子機器。
  9. 所定の信号線を介して一以上の機器と接続され、接続された他の機器から送信される制御信号に応じて動作可能な電子機器の制御方法であって、
    接続された他の機器から送信される制御信号を受信部が受信する受信ステップと、
    上記制御信号を待ち受ける上記信号待受期間を上記信号線のトラフィックに基づいて待受期間調整部が調整する調整ステップと
    上記受信ステップで特定の制御信号を受信してから、上記調整ステップで調整された信号待受期間内に、当該特定の制御信号に対応する制御信号を受信しなかった場合に、所定の処理を制御部が実行する実行ステップと
    を具えることを特徴とする電子機器の制御方法。
JP2007336779A 2007-12-27 2007-12-27 電子機器及びその制御方法 Expired - Fee Related JP4406851B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007336779A JP4406851B2 (ja) 2007-12-27 2007-12-27 電子機器及びその制御方法
KR1020080113913A KR20090071363A (ko) 2007-12-27 2008-11-17 전자 기기 및 그 제어 방법
US12/317,630 US8274362B2 (en) 2007-12-27 2008-12-24 Electronic device and method for controlling the same
CN2008101891008A CN101471834B (zh) 2007-12-27 2008-12-29 电子设备和用于控制电子设备的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007336779A JP4406851B2 (ja) 2007-12-27 2007-12-27 電子機器及びその制御方法

Publications (2)

Publication Number Publication Date
JP2009159418A JP2009159418A (ja) 2009-07-16
JP4406851B2 true JP4406851B2 (ja) 2010-02-03

Family

ID=40797548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007336779A Expired - Fee Related JP4406851B2 (ja) 2007-12-27 2007-12-27 電子機器及びその制御方法

Country Status (4)

Country Link
US (1) US8274362B2 (ja)
JP (1) JP4406851B2 (ja)
KR (1) KR20090071363A (ja)
CN (1) CN101471834B (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8659400B2 (en) * 2006-09-05 2014-02-25 Universal Electronics Inc. System and method for configuring the remote control functionality of a portable device
JP4270270B2 (ja) * 2006-12-05 2009-05-27 ソニー株式会社 電子機器、撮像装置、電子機器の制御方法およびプログラム
KR101387396B1 (ko) * 2007-04-24 2014-04-23 삼성전자주식회사 서비스 정보 제공방법 및 이를 적용한 영상기기
KR20100104025A (ko) * 2009-03-16 2010-09-29 삼성전자주식회사 디지털 인터페이스의 신호처리장치 및 그 방법
JP5323579B2 (ja) 2009-05-01 2013-10-23 三洋電機株式会社 撮影装置、およびこれを備えた映像処理システム
JP5422276B2 (ja) * 2009-07-03 2014-02-19 日立コンシューマエレクトロニクス株式会社 無線映像送信装置
JP5590377B2 (ja) * 2010-02-24 2014-09-17 ソニー株式会社 通信装置、通信制御方法、およびプログラム
KR101789225B1 (ko) * 2011-06-23 2017-11-20 삼성전자주식회사 디바이스 및 그 신호 처리 방법
WO2013094020A1 (ja) * 2011-12-20 2013-06-27 キヤノン株式会社 電子機器、制御方法、プログラム及び記録媒体
US9665251B2 (en) * 2014-02-12 2017-05-30 Google Inc. Presenting content items and performing actions with respect to content items
CN105072485B (zh) * 2015-08-26 2018-11-13 小米科技有限责任公司 时延控制方法及装置
JP6922898B2 (ja) * 2016-04-28 2021-08-18 ソニーグループ株式会社 情報処理装置、および情報処理方法
JP6869656B2 (ja) * 2016-07-19 2021-05-12 キヤノン株式会社 送信装置、受信装置、及び、通信システム
KR20190078244A (ko) * 2017-12-26 2019-07-04 삼성전자주식회사 전자장치
CN112000599A (zh) * 2020-07-29 2020-11-27 深圳市智微智能软件开发有限公司 Io模拟实现cec协议的方法、系统、设备和存储介质
KR102683831B1 (ko) * 2022-12-30 2024-07-11 옵티시스 주식회사 전송 지연으로 인한 데이터의 전송 오류를 방지하는 hdmi용 광 링크

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2773386B2 (ja) * 1990-05-16 1998-07-09 ソニー株式会社 モニタ・テレビジョン装置
CN100388767C (zh) * 1994-08-16 2008-05-14 索尼株式会社 电视信号接收机
JP3858421B2 (ja) 1998-02-04 2006-12-13 ソニー株式会社 リモートコントローラ
US6714137B1 (en) * 2000-03-23 2004-03-30 Mitsubishi Digital Electronics America, Inc. Protocol for avoiding interference between transmission device
GB0208317D0 (en) * 2002-04-11 2002-05-22 Koninkl Philips Electronics Nv Controlling a home electronics system
KR20060124594A (ko) * 2005-05-31 2006-12-05 소니 가부시끼 가이샤 원격 제어 장치, 기기 조작 시스템 및 원격 제어 방법

Also Published As

Publication number Publication date
JP2009159418A (ja) 2009-07-16
US20090167552A1 (en) 2009-07-02
CN101471834B (zh) 2012-04-25
KR20090071363A (ko) 2009-07-01
US8274362B2 (en) 2012-09-25
CN101471834A (zh) 2009-07-01

Similar Documents

Publication Publication Date Title
JP4406851B2 (ja) 電子機器及びその制御方法
JP4596280B2 (ja) 映像出力装置及び映像出力装置のメニュー画面強制表示方法
US8477850B2 (en) Information recording/reproducing apparatus
KR101315040B1 (ko) 영상제공장치, 영상출력장치, 영상전송 시스템 및 이를 이용한 영상전송방법
KR20080095720A (ko) 키 코드 정보 제공방법 및 이를 적용한 영상기기
EP3007449B1 (en) Protected storage of content with two complementary memories
US20050265099A1 (en) Electric device and control method thereof
JP2004297801A (ja) デジタル撮像装置およびそのデータ伝送モードの選択方法
US20120198286A1 (en) Communication apparatus, control method, and recording medium
JP2009278465A (ja) 記録制御装置、記録制御方法、プログラム、及び、記録装置
US8996763B2 (en) Electronic device, control method, program, and recording medium for remotely operating electronic device
JP4695965B2 (ja) 映像記録装置及びプログラム
WO2003088246A1 (fr) Dispositif et procede d'enregistrement
JP2006191169A (ja) 画像記録装置、撮像装置、及び画像記録再生装置
KR20090017315A (ko) 디지털 컨텐츠 기록 시스템 및 그 더빙 방법
JP2019068187A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2006245796A (ja) 画像供給装置と情報処理装置及びその制御方法
KR101379767B1 (ko) 좌표정보 제공방법 및 이를 적용한 영상기기
JP2009290790A (ja) 映像送信装置および映像送信方法
JP2010074551A (ja) テレビジョン受像機及び記録方法
JP2010273025A (ja) 電子機器、コンテンツ転送システム、コンテンツ転送方法及びプログラム
WO2022019197A1 (ja) 撮像装置、レンズ鏡筒装置、撮像方法、送信方法
JP5165070B2 (ja) 映像記録装置及びプログラム
JP2009278286A (ja) 情報通信装置、情報通信方法及びプログラム
JP2007088592A (ja) 映像撮像記録装置

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091015

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091028

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121120

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121120

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131120

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees