JP4251248B2 - Reception device, information processing method, and recording medium - Google Patents
Reception device, information processing method, and recording medium Download PDFInfo
- Publication number
- JP4251248B2 JP4251248B2 JP24963699A JP24963699A JP4251248B2 JP 4251248 B2 JP4251248 B2 JP 4251248B2 JP 24963699 A JP24963699 A JP 24963699A JP 24963699 A JP24963699 A JP 24963699A JP 4251248 B2 JP4251248 B2 JP 4251248B2
- Authority
- JP
- Japan
- Prior art keywords
- subunit
- reservation
- information
- vcr
- tuner
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 7
- 238000003672 processing method Methods 0.000 title claims description 3
- 238000012545 processing Methods 0.000 claims description 31
- 230000004044 response Effects 0.000 claims description 11
- 239000000284 extract Substances 0.000 claims description 7
- 238000000034 method Methods 0.000 description 44
- 230000008569 process Effects 0.000 description 36
- 238000010586 diagram Methods 0.000 description 33
- 230000006870 function Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000002860 competitive effect Effects 0.000 description 2
- 230000003442 weekly effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Small-Scale Networks (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、情報処理装置および方法、並びに記録媒体に関し、特に、IEEE1394シリアルデータバスを介して他の情報処理装置と接続された情報処理装置において、内蔵するサブユニットを重複することなく、確実に制御することができるようにした情報処理装置および方法、並びに記録媒体に関する。
【0002】
【従来の技術】
IEEE1394シリアルデータバスを用いたネットワークを介して、相互に情報を伝達することができるAV機器が開発されている。このネットワークにおいては、所定のコマンド(AV/C Command Transaction Set)を用いることにより、ネットワークに接続されているAV機器を制御することが可能である。例えば、図1に示すように、デジタル衛星放送を受信するIRD(Integrated Receiver Decoder)71で受信した映像を、IEEE1394シリアルデータバス2(以下、バス2と記述する)を介して接続されているDVCR(Digital Video Cassette Recorder)81で録画することが可能である。さらに、IRD71およびDVCR81を用いて、いわゆる録画予約を行うことが可能である。
【0003】
この録画予約の処理においては、IRD71のコントローラ72が、IRD71およびDVCR81を制御している。すなわち、録画予約の設定(チャンネル、および録画開始時刻等)はIRD71に対して行われ、設定された録画開始時刻になると、IRD71のコントローラ72は、チューナサブユニット73に、予約されている(設定されている)チャンネルを選局させて、受信した映像信号をバス2を介してDVCR81に出力させる。また同時に、コントローラ72は、バス2を介してDVCR81のVCRサブユニット84に録画開始のコマンドを送信する。DVCR81のVCRサブユニット84は、コントローラ72から送信された録画開始コマンドに対応して、チューナサブユニット73からの映像信号を磁気テープに記録する。
【0004】
ところで上述したように、DVCR81の動作を、バス2を介して接続されている他の機器(いまの例の場合、IRD71)から制御することが可能である場合、いわゆるダブルブッキングが生ずる可能性がある。
【0005】
例えば、デジタル衛星放送の録画予約(録画予約Aとする)をIRD71に入力すると、その予約情報は、IRD71のコントローラ72に記憶される。その後、録画予約Aの録画時刻に重複する時刻において放送される地上波アナログ放送の録画予約(録画予約Bとする)をDVCR81に入力した場合、DVCR81のコントローラ82は、IRD71に入力された録画予約Aに関する情報を得ていないので、録画予約Bを受け付けて記憶してしまう。したがって、録画予約Aおよび録画予約Bで重複する時刻になると、DVCR81のVCRサブユニット84には、IRD71のチューナサブユニット73、およびDVCR81のアナログチューナブロック83の両方から映像信号が供給される不都合が生じてしまう。
【0006】
この不都合は、バス2を介して接続されているAV機器が、他のAV機器が管理する予約情報等を入手できないことに起因している。
【0007】
上述した不都合を解決するため、従来においては、DVCR81に、IRD71のコントローラ72による制御だけに従い、録画待機状態となるCSモードというモードが設けられており、IRD71に録画予約Aを入力した後、DVCR81をCSモードに設定することでダブルブッキングの発生を防止していた。
【0008】
【発明が解決しようとする課題】
しかしながら、CSモードに設定されたDVCR81は、予約待機状態となってしまうので、例えば、映像信号の再生等の処理を実行できず、操作性が悪い課題があった。
【0009】
また、バス2に伝送される録画予約等のイベント(event)を一意に特定する方法がないため、例えば、イベントを修正する場合、そのイベントに関連するAV機器毎に個別にコマンドを発生する必要があり、操作性が悪い課題があった。
【0010】
さらに、複数のAV機器が、他のAV機器が管理する情報(録画開始時刻等)を知らないことに起因して、同時にバス2に情報を出力した場合、出力された情報量がバス2の帯域を越えて、伝送エラーが発生する可能性がある課題があった。
【0011】
本発明はこのような状況に鑑みてなされたものであり、バスに接続されている各AV機器が、管理している情報を相互に検索することにより、録画予約時の操作性を向上させるとともに、ダブルブッキングの発生を抑止することができるようにするものである。
【0018】
【課題を解決するための手段】
本発明の受信装置は、ユニットとしての受信装置自身が有する機能ブロックであるチューナサブユニットと、ネットワークを介して接続される記録装置が有する機能ブロックであるVCRサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記受信装置自身の固有のIDと、自分自身の内部で競合しないIDとからなるオブジェクトIDを設定する設定手段と、前記設定手段により設定された前記オブジェクトIDとともに、前記チューナサブユニットの予約に関する情報を記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開する第1の記憶手段と、前記チューナサブユニットと前記VCRサブユニットを関連させた一連の動作を制御するための情報を記憶する第2の記憶手段と、前記記録装置が有する、前記VCRサブユニットの予約に関する情報を記憶する記憶手段に、前記設定手段により設定された前記オブジェクトIDとともに、前記VCRサブユニットの予約に関する情報を記憶させる制御手段とを備え、前記記録装置においては、前記VCRサブユニットの予約に関する情報を記憶させるとき、前記オブジェクトIDのうちの前記固有のIDの部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有のIDで前記仮番号を書き換えることが行われる。また、前記一連の動作として、前記チューナサブユニットは、アンテナから入力された信号から所定のチャンネルの信号を抽出して前記ネットワークを介して前記VCRサブユニットに供給し、前記VCRサブユニットは、前記チューナサブユニットから供給された信号を記録媒体に記録させる。
【0020】
前記ネットワークは、IEEE1394シリアルデータバスを用いて構成することができる。
【0022】
本発明の情報処理方法は、ユニットとしての受信装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される記録装置が有する機能ブロックであるVCRサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記受信装置自身の固有のIDと、自分自身の内部で競合しないIDとからなるオブジェクトIDを設定し、設定した前記オブジェクトIDとともに、前記サブユニットの予約に関する情報を第1の記憶手段に記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開し、前記サブユニットと前記VCRサブユニットを関連させた一連の動作を制御するための情報を第2の記憶手段に記憶し、前記記録装置が有する、前記VCRサブユニットの予約に関する情報を記憶する記憶手段に、設定した前記オブジェクトIDとともに、前記VCRサブユニットの予約に関する情報を記憶させるステップを含み、前記記録装置においては、前記VCRサブユニットの予約に関する情報を記憶させるとき、前記オブジェクトIDのうちの前記固有のIDの部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有のIDで前記仮番号を書き換えることが行われる。また、前記一連の動作として、前記チューナサブユニットにより、アンテナから入力された信号から所定のチャンネルの信号が抽出されて前記ネットワークを介して前記VCRサブユニットに供給され、前記VCRサブユニットにより、前記チューナサブユニットから供給された信号が記録媒体に記録される。
【0023】
本発明の記録媒体のプログラムは、ユニットとしての受信装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される記録装置が有する機能ブロックであるVCRサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記受信装置自身の固有のIDと、自分自身の内部で競合しないIDとからなるオブジェクトIDを設定し、設定した前記オブジェクトIDとともに、前記サブユニットの予約に関する情報を第1の記憶手段に記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開し、前記サブユニットと前記VCRサブユニットを関連させた一連の動作を制御するための情報を第2の記憶手段に記憶し、前記記録装置が有する、前記VCRサブユニットの予約に関する情報を記憶する記憶手段に、設定した前記オブジェクトIDとともに、前記VCRサブユニットの予約に関する情報を記憶させるステップを含む処理をコンピュータに実行させる。前記記録装置においては、前記VCRサブユニットの予約に関する情報を記憶させるとき、前記オブジェクトIDのうちの前記固有のIDの部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有のIDで前記仮番号を書き換えることが行われる。また、前記一連の動作として、前記チューナサブユニットにより、アンテナから入力された信号から所定のチャンネルの信号が抽出されて前記ネットワークを介して前記VCRサブユニットに供給され、前記VCRサブユニットにより、前記チューナサブユニットから供給された信号が記録媒体に記録される。
【0024】
本発明においては、ユニットとしての受信装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される記録装置が有する機能ブロックであるVCRサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記受信装置自身の固有のIDと、自分自身の内部で競合しないIDとからなるオブジェクトIDが設定され、設定された前記オブジェクトIDとともに、前記サブユニットの予約に関する情報が第1の記憶手段に記憶され、記憶されている情報が、前記ネットワークを介して接続される装置からの要求に対応して公開される。また、前記サブユニットと前記VCRサブユニットを関連させた一連の動作を制御するための情報が第2の記憶手段に記憶され、前記記録装置が有する、前記VCRサブユニットの予約に関する情報を記憶する記憶手段に、設定された前記オブジェクトIDとともに、前記VCRサブユニットの予約に関する情報を記憶させることが行われる。前記記録装置においては、前記VCRサブユニットの予約に関する情報を記憶させるとき、前記オブジェクトIDのうちの前記固有のIDの部分を一時的な仮番号として予約に関する情報を記憶させた後前記固有のIDで前記仮番号を書き換えることが行われる。また、前記一連の動作として、前記チューナサブユニットにより、アンテナから入力された信号から所定のチャンネルの信号が抽出されて前記ネットワークを介して前記VCRサブユニットに供給され、前記VCRサブユニットにより、前記チューナサブユニットから供給された信号が記録媒体に記録される。
【0038】
【発明の実施の形態】
本発明を適用したネットワークシステムの構成例について、図2を参照して説明する。なお、本明細書においてシステムの用語は、複数の装置、手段などにより構成される全体的な装置を意味するものである。
【0039】
このネットワークシステムは、バス2を介して接続されているIRD1およびDVCR3から構成されている。当然、このバス2にはIRD1およびDVCR3以外に、例えば、パーソナルコンピュータ、ハードディスクドライブ、CDプレーヤ、モニタ、デジタルビデオカメラ、またはMD(商標)プレーヤ等のIEEE1394端子を備える電子機器を接続することが可能である。
【0040】
なお、バス2に接続されているIRD1およびDVCR3のような電子機器は、ユニットと呼ばれており、ユニット間においては、AV/C Command Transaction SetのAV/C Digital Interface Command Set General Specification(以下、AV/C Generalと記述する)で規定されているディスクリプタ(Descriptor)を用いて、各ユニットに記憶されている情報を相互に読み書きすることが可能である。AV/C Generalの詳細については、http://www.1394ta.org/Technology/Specifications/を参照のこと。また、ユニットが有する機能はサブユニットと呼ばれている。
【0041】
IRD1のコントローラ11は、ユーザからの選局操作や録画予約操作等を受け付けて、IRD1の全体を制御する。また、コントローラ11は、所定のコマンド(AV/C Command Transaction Set)を用いてDVCR3を制御する。CSアンテナ13は、図示せぬ通信衛星を介して送信されてくるデジタル衛星放送のデジタル信号を受信して、チューナサブユニット12に出力する。チューナサブユニット12は、コントローラ11の制御に基づいて、CSアンテナ13から入力されたデジタル信号から所定のチャンネルの信号を抽出し、バス2を介してDVCR3のVCRサブユニット33に出力する。さらに、コントローラ11は、DVCR3のBBS(Bulletin Board Subunit)34が記憶している情報を検索する。
【0042】
IRD1のサブユニットであるBBS14は、コントローラ11が受け付けて、確定した録画予約の情報(詳細は、図24を参照して後述する)を記憶する。
【0043】
DVCR3のコントローラ31は、ユーザからの再生指示の操作や録画予約操作等を受け付けて、DVCR3の全体を制御する。アナログチューナブロック32は、コントローラ31の制御に基づいて、入力されるアナログ信号から所定のチャンネルの信号を抽出し、VCRサブユニット33に出力する。
【0044】
VCRサブユニット33は、アナログチューナブロック32から入力された映像信号、またはバス2を介して入力されるIRD1のチューナサブユニット12からの映像信号を図示せぬ磁気テープに記録する。
【0045】
BBS34は、DVCR3に関わる録画予約の情報を管理する。
【0046】
なお、チューナサブユニット12とBBS14は、IRD1のサブユニットであり、VCRサブユニット33とBBS34は、DVCR3のサブユニットである。アナログチューナブロック32は、DVCR3の1つの機能を実行するものではあるが、バス2を介して他のユニットから制御されるものではないので、サブユニットではない。
【0047】
このネットワークシステムにおいて、デジタル衛星放送の録画予約を行う場合、ユーザはIRD1に対して録画予約の設定(チャンネル、および録画開始時刻等の設定)を入力する。そして、その録画予約がダブルブッキングではない場合、入力された録画予約が認められて、その情報がIRD1のBBS14に書き込まれる。
【0048】
BBS14は、図3に示すように、RSB(Resource Schedule Board)51およびSAB(Schedule Action Board)52から構成される。SAB52は、IRD1のコントローラ11または他のユニットのコントローラ(例えば、DVCR3のコントローラ31)から入力された録画予約に関する全ての情報を記憶する。すなわち、SAB52は、所定の時刻においてIRD1のチューナサブユニット12に受信させ、受信した情報をDVCR3のVCRサブユニット33に録画させるという一連の動作を制御するための全ての情報を記憶している。
【0049】
これに対して、RSB51は、録画予約に関する全ての情報(他のユニットにより設定された録画予約を含む)のうちの、IRD1のサブユニットであるチューナサブユニット12の予約に関する情報のみを記憶し(関連して動作する場合であっても、VCRサブユニット33の予約情報は記憶しない)、記憶した情報を同一ユニット内のコントローラ11だけでなく、他のユニットのコントローラ(例えば、DVCR3のコントローラ31)からの要求に対応して公開する。
【0050】
同様に、DVCR3のBBS34は、図4に示すように、RSB61およびSAB62から構成される。SAB62は、DVCR3のコントローラ31または他のユニットのコントローラ(例えば、IRD1のコントローラ11)から入力された録画予約に関する全ての情報を記憶する。これに対して、RSB61は、DVCR3のコントローラ31に入力された録画予約、およびIRD1のコントローラ11に入力された録画予約に関する全ての情報のうちの、DVCR3のサブユニットであるVCRサブユニット33の予約に関する情報を記憶し(関連して動作する場合であっても、チューナサブユニット12の予約情報は記憶しない)、記憶した情報を同一ユニット内のコントローラ31は勿論、他のユニットのコントローラ(例えば、IRD1のコントローラ11)からの要求に対応して公開する。
【0051】
なお、RSB51,61に記憶され、公開される情報の詳細は、図26を参照して詳述する。
【0052】
次に、図5を参照して、RSB51,61が関連する動作について説明する。例えば、図5に示すように、IRD1のコントローラ11に、録画予約(10月16日、20時00分から21時00分まで、チューナサブユニット12に、第48チャンネルを受信させ、受信した映像信号をDVCR3のVCRサブユニット33に録画させる予約)が入力された場合、コントローラ11は、その録画予約に対して固有のID(BB Object ID)(この例の場合、ID_X)を設定し、SAB52に、その録画予約に関する全ての情報を記憶させるとともに、RSB51に、設定したID(ID_X)、日時(10月16日、20時00分から21時00分まで)、および関連するIRD1のサブユニット(いまの例の場合、チューナサブユニット12)を特定する情報(識別情報)を記憶させる。さらに、コントローラ11は、DVCR3のRSB61に、設定したID(ID_X)、日時(10月16日、20時00分から21時00分まで)、および関連するDVCR3のサブユニット(いまの例の場合、VCRサブユニット33)を特定する情報(識別情報)を記憶させる。
【0053】
その後、例えば図6に示すように、DVCR3のコントローラ31に、録画予約(10月16日、20時00分から21時00分までアナログチューナブロック32に第3チャンネルを受信させ、受信した映像をVCRサブユニット33に録画させる予約)が入力された場合、コントローラ31は、RSB61を参照し、入力された録画予約の情報と、既に録画予約が承認されてRSB61に公開されている情報が重複するか否かを判定する。いまの例の場合、録画時刻10月16日、20時00分から21時00分までが重複するので、入力された録画予約は承認されない。なお、入力された録画予約の情報と、既に録画予約が承認されてRSB61に公開(登録)されている情報が重複しないと判定された場合、入力された録画予約は承認され、その情報の全てがSAB62に記録され、全ての情報のうちのVCRサブユニット33に関する予約情報は、RSB61に記録される。
【0054】
次に図7乃至図9のフローチャートを参照して、以上の予約処理(競合ユニット検索処理)の詳細について説明する。
【0055】
最初にステップS11において、ユーザは、IRD1のコントローラ11に対して、予約設定処理を行う。すなわち図5の例の場合、10月16日の20時00分から21時00分まで、第48チャンネルをチューナサブユニット12に受信させ、これをDVCR3のVCRサブユニット33に転送し、記録させることが入力される。この時コントローラ11は、ステップS12において、使用するサブユニットの存在する機器内のRSBをWRITE OPENさせる処理を実行する。図5の例の場合、使用するサブユニットは、IRD1のチューナサブユニット12とDVCR3のVCRサブユニット33であるから、最初にそのうちの1つの、例えば、チューナサブユニット12が選択され、コントローラ11は、チューナサブユニット12を有する機器としてのIRD1のRSB51をWRITE OPENする(書き込み可能な状態にする)ために、WRITE OPENコマンドを出力する。
【0056】
但し実際には、RSB51とコントローラ11とはIRD1内に保持されているものであり、その間には、バス2は存在していない。そこで、コントローラ11は、RSB51に対して、バス2を介してWRITE OPENコマンドが供給されてきた場合と同様の状態となるように、RSB51を制御する。
【0057】
例えば、関連して使用されるサブユニットのうち、チューナサブユニット12が存在する機器としてのIRD1におけるRSB51に対するWRITE OPENの処理が完了した後、次に残りの関連するサブユニットとしてのVCRサブユニット33が存在する機器としてのDVCR3におけるRSB61をWRITE OPENする処理が同様に行われるのであるが、その場合には、コントローラ11は、バス2を介して、図10に示すようなフォーマットのWRITE OPENコマンドをDVCR3のRSB61(コントローラ31)に出力する。
【0058】
このWRITE OPENコマンドは、ターゲットの所定のアドレス空間にアクセスするために使用される、OPEN DESCRIPTORコマンドの一種であり、図10に示すようなフォーマットとされる。そのopcodeには、OPEN DESCRIPTORであることを表す値(0816)が記述される。operand0には、WRITE OPENするdescriptorの種類を表すdescriptor_typeとして、リストIDにより規定されるObject List Descriptorであることを表す値1016が記述される。operand1とoperand2には、アクセス先の(WRITE OPENする)RSBのリストID(この例においては、”00”と”01”)が記述される。
【0059】
さらにoperand3には、subfunctionとして、descriptorを、読み出しまたは書き込みアクセスのためにオープンするWRITE OPENであることを表す値0316が記述される。operand4は、リザーブのための値”00”とされている。
【0060】
次にステップS13に進み、コントローラ11は、BBS14内のRSB51のdescrptior_lengthと、list_specific_information field(図26)を読み出す。この読み出しは、例えば図11に示すREADコマンドを利用して行われる。但しこの場合においても、コントローラ11とRSB51は、バス2を介して接続されている訳ではないので、コントローラ11からRSB51に対する読み出しは、直接的に行われる。ただし、コントローラ11がDVCR3のRSB61からデータを読み出す場合には、図11に示すようなREADコマンドが、バス2を介して、RSB61(コントローラ31)に出力される。
【0061】
図11に示すように、READコマンドの先頭のopcodeとしては、read descriptorであることを表す値、0916が記述されている。続くoperand0には、読み出すdescriptorを識別するためのdescriptor identifierが、記述される。このステップS13における読み出しの処理の場合は、リストIDでdescriptor identifierが記述される。具体的には後述する図27のRSBのwrite enabled list_specific_information fieldのAddress_offsetの0016乃至0D16が記述される。
【0062】
read_result_statusには、READコマンドを送出するときは、FFが記述され、ターゲットからリスポンスとして返される場合には、読み取り結果が記述される。data_lengthには、ターゲットから読み出されるべきデータのバイト数が記述される。この値が”0”に設定された時、全てのリストが読み出される。addressには、読み出しを開始すべきアドレスが記述される。その値が”00”とされた場合、先頭から読み出しが開始される。
【0063】
ステップS14において、コントローラ11はターゲットとしてのRSB51に対するリストの最大長の制限(図27におけるobject_list_maximum_size)、リストのエントリ数の制限(図27におけるobject_entries_maximum_number)、および各エントリの最大バイト長の制限(図27におけるobject_entry_maximum_size)を抽出する。
【0064】
そしてステップS15において、コントローラ11は、これからRSB51にデータ(予約情報)を記録しても、ステップS14で抽出されたリストの最大長(object_list_maximum_size)を越えないか否かを判定する。この制限が守られる場合には、ステップS16に進み、コントローラ11は、ステップS14で抽出されたリストのエントリ数の制限(最大エントリ数)(object_entries_maximum_number)から、現在のエントリ数を引いた値が”0”より大きいか否か、すなわち、まだ記録可能なエントリが残っているか否かを判定する。この条件が満足される場合には、さらにステップS17に進み、コントローラ11は、ステップS14で抽出された最大エントリ長(object_entry_maximum_size)から、これから書き込もうとしているエントリ長を引いた値が”0”より大きいか否か、すなわち、書き込むべきエントリ長に、まだ余裕があるか否かを判定する。
【0065】
ステップS15乃至ステップS17における条件のいずれか1つが満足されない場合には、ステップS18に進み、コントローラ11は、例えば「予約が一杯です」のような警告表示をユーザに対して行う。ユーザはこれにより、予約が一杯で、それ以上予約をすることができないことを知ることができる。
【0066】
ステップS15乃至ステップS17の条件のいずれもが満足される場合には、RSB51に予約情報を書き込む余裕はあるので、ステップS19乃至ステップS25において、重複する時刻の予約がすでになされているか否かの判定処理が行われる。
【0067】
すなわちステップS19において、変数iに”0”が初期設定され、ステップS20において、RSB51に記録されているエントリの数number_of_entriesから変数iを減算した値が”0”より大きいか否か、すなわちRSB51に記録されている全てのエントリについて検索が行われたか否かが判定される。number_of_entriesから変数iを減算した値が”0”より大きい場合には、まだ検索していないエントリが存在するので、ステップS21に進み、コントローラ11は、RSB51に掲示されているobject_entry[i](図29)を読み出す(今の場合、object_entry[0]を読み出す)。
【0068】
なお、ステップS21における読み出しも、図11に示すREADコマンドで行われるが、この場合におけるdescriptor identifierの記述はobject positionで行われる。このobject entry[i]には、後述するように、既に登録されている予約の時刻情報(図30におけるstart_time,Duration)や、その予約において、使用するサブユニットの識別情報(図36におけるsubunit_type_and_ID[0])などが記憶されている。
【0069】
そこでステップS22において、コントローラ11は、ステップS11でユーザより入力された時刻情報(start_time,Duration)が、ステップS21で読み出された時刻情報(start_time,Duration)と重複しているか否かを判定する。時刻が重複している場合には、ステップS23に進み、コントローラ11は、ステップS11で予約設定されたサブユニット(今の場合、チューナサブユニット12)が、ステップS21で読み出したサブユニット(subunit_type_and_ID)と一致しているか否かを判定する。サブユニットが一致している場合には、結局、時刻とサブユニットの両方が一致していることになるので、ステップS25に進み、コントローラ11は、例えば「予約が重なっています」のような警告表示を行う。これによりダブルブッキングは、防止される。
【0070】
ステップS22において、時刻が重複していないと判定された場合、または、ステップS23において、時刻が一致していたとしても、サブユニットが一致していないと判定された場合、ダブルブッキングが発生する恐れはない。そこでステップS24において、変数iが1だけがインクリメントされ、ステップS20に戻り、number_of_entriesから変数iを減算した値が0より大きくないと判定されるまで、同様の処理が繰り返し実行される。すなわちRSB51に記憶されている全てのobject entry[i]について、重複する時刻の予約がなされているか否かの検索が行われる。
【0071】
ステップS20において、number_of_entriesから変数iを減算した値が”0”より大きくないと判定された場合(全てのobject entry[i]の検索が終了した場合)、ステップS26に進み、コントローラ11は、RSB51にCREATEコマンドを出力し、object entryをRSB51においてcreateする。ただし、この場合においても、CREATEコマンドは実際には出力されず(RSB61に対してobject entryをcreateする場合は出力されるが)、出力された場合と同様の処理が行われるだけである。
【0072】
なお、上述したステップS15乃至ステップS18の処理は、ステップS20の処理において、NOの判定が行われた場合に実行するようにすることも可能である。
【0073】
ここでCREATEコマンドについて説明する。図12はAV/C CREATEコマンドのフォーマットを示す。また図13は、図12内のsubfunction_1で指定できる値を示し、本実施の形態では”01”(create a new object and its child list)が使用される。また図14は、図12内のsubfunction_1_specification for subfunction_1=01のフォーマットを示す。さらに図15は、図14内の各フィールド値を示した図である。図14のdescriptor_identifier_where,descriptor_identifier_what_1,_2の各フィールドに、図15に示すように、”20”,”22”,”11”をそれぞれ設定すると、”create a new object and its child list”の意味となる。
【0074】
これらのAV/C CREATEコマンドについての詳細は、IEEE1394(インターネットホームページhttp://www.1394TA.org参照)に記述されているものであり、本実施の形態中の各図は、その文献(Enhancement to the AV/C General Specification 3.0Version 1.0 FC2や、TA Document 1999005 AV/C Bulletion Board Subunit General Specification 1.0 Draft 0.99:149)中のものを記載してある。また、ボードを構成するインフォメーションディスクリプタ(Information List Descriptor)にも書き込み可能なものと読み出し可能なものがあり、これらの区別には、リストタイプが使用される。
【0075】
ところで、外部からAV/Cディスクリプタ(AV/C Descriptor)に新規に情報を書き込む方法の1つとして、例えばコントローラがターゲットに対して前述したCREATEコマンドを発行し、当該ターゲットが情報を書き込む雛形を作った後、再度、コントローラが具体的な内容を書き込む制御を行うような方法が一般的な方法として考えられる。例えば、初めて情報を書き込む場合、コントローラは所望のリストを指定して、AV/Cディスクリプタクリエイトコマンド(AV/C Descriptor CREATE command)を発行する。このコマンドを受けたターゲットでは、AV/C Generalで指定されたデータ構造の雛形に基づいたオブジェクトをターゲットの内部に作ることになる。また、AV/C Generalで決められたデータ構造の雛形には、オブジェクトIDを示すフィールドがある。AV/Cディスクリプタ(AV/C Descriptor)を用いたリストでは、オブジェクトIDはターゲットが管理することになる。つまり、オブジェクトをクリエイト(CREATE)した段階で、ターゲットがそのオブジェクトを一意に指定できるIDを付け、そのIDを管理する機能をターゲットが所有することになる。
【0076】
ここで、オブジェクトIDとは、リスト内でそのオブジェクトを一意に指定するための識別番号であり、このため当該オブジェクトIDを重複しないようにする機能が管理する側に必要になる。BBS自体は情報を提供する場所であり、オブジェクトIDの管理はコントローラが持つことになる。
【0077】
ところが、サブユニットに対してクリエイトコマンド(CREATE command)が発行された時、矛盾が生ずる虞がある。すなわち、オブジェクトをCREATEした際には、コントローラが管理すべきオブジェクトIDを、ターゲットが割り振ることになるからである。また、クリエイトコマンド(CREATE command)の発行後は、ライト制御を続けて行う必要がある。このように、処理が複数ステップにわかれていることにより、コントローラが書き込み途中に例えばバスから外されたような場合には、不完全なオブジェクトが作成されてしまう可能性がある。
【0078】
したがって、上記のような状況に置いては、その不完全なオブジェクトを特定し、そのようなオブジェクトができたときに、当該オブジェクトを良好に削除できるシステムが必要になる。
【0079】
そこで、本発明の実施の形態では、BBSへの書き込み手段を規格で規定し、不完全なオブジェクトを特定できる仕組みを用意している。
【0080】
すなわち、先ず、ターゲット(本実施の形態の場合はDVCR3)は、オブジェクトをクリエイト(CREATE)した時、オブジェクトID(グローバルユニークID(Grobal Unique ID:GUID)とrecord IDとで構成される)のうちのGUIDの部分に、一時的に管理する番号(例えば、全て”0”)を割り振るようにする。コントローラは、先にオブジェクト内部に情報を書き込み、正常に書き込みが終了したならば、最後にGUIDを書き換える。
【0081】
上記の手順を決めることにより、正常に書き込み作業が終了したときには、GUIDが全て”0”となっているオブジェクトはできないことになり、したがって、GUIDが全て”0”のオブジェクトは、書き込み途中で不完全となったオブジェクトと特定できることになる。
【0082】
これにより、書き込み途中のオブジェクトを一意に特定することができ、また、正常に書き込まれたオブジェクトと不完全なオブジェクトとを区別でき、さらに不完全なオブジェクト(無効なオブジェクト)を簡単に削除することが可能となる。このことにより、電子機器に設けられている有限なメモリを有効活用できるようになる。また、書き込み途中のオブジェクトの特定方法は、オブジェクトIDのGUID部分を全て”0”にするような簡単な方法なので、不完全なオブジェクトを削除するためのソフトウェアの作成も容易となる。
【0083】
なお、図9のステップS26において、CREATEコマンドを利用する代わりに、INSERTコマンドを使用することも可能である。
【0084】
次に、ステップS27に進み、コントローラ11は、RSB51のentry_specific_information fieldsの部分(図30乃至図36)に予約内容を書き込む。すなわち、これにより、start_time,Duration,repeat_information,使用するサブユニット(subunit_type_and_ID)書き込まれる。
【0085】
図16は、このような場合にコントローラ11が出力するWRITE DESCRIPTORコマンドのフォーマットを表している。ただしこの場合においても、コントローラ11とRSB51は、バス2を介して接続されている訳ではないので、書き込みは直接行われるが、コントローラ11がDVCR3のRSB61に書き込みを行う場合には、コントローラ11は、このWRITE DESCRIPTORコマンドを発行する。
【0086】
先頭のopcodeには、WRITE DESCRIPTORであることを表す値0A16が記述される。operand0には、書き込み対象となるディスクリプタを識別させるためのdescriptor indentifierが記述される。この記述は、object positionで行われる。
【0087】
以下、subfunctionとして、partial_replaceであることを表す値、5016が記述される。これによりpartial insertまたは、partial delateが実行される。insertでは、descriptor_identifierで指定されるoperandにより規定される1つ前に新しいdescriptiorが挿入される。deleteではdescriptior_identifierにより規定されるdescriptorが削除される。
【0088】
group_tagは、WRITE DESCRIPTORコマンドが発行される必要があるdescriptior上において、分割できない更新の処理を行うために利用される。この例においては、データをdescriptorに迅速に書き込むことを表す値0016(immediate)が記述されている。replacement_data_lengthは、replacement_dataのoperandにおけるバイト数、すなわち、書き込みたいデータの長さを表している。addressは、処理が行われるべき位置を表している。replacement_data_lengthの”0”は、partial deleteを意味し、その場合、replacement_dataのoperandは存在しない。この場合、original_data_lengthは”0”より大きい値となり、それが削除されるべきバイトの数を表す。original_data_lengthが”0”である場合、partial insert処理が行われる。この場合、replacement_data_lengthは、”0”より大きい値とされ、挿入されるべきバイトの数を表している。
【0089】
次にステップS28に進み、コントローラ11は、リスト、すなわちRSB51をクローズする。この時コントローラ11は、RSB51に対して、図17に示すCLOSEコマンドを出力する。ただしこの場合においても、コントローラ11とRSB51は、バス2を介して接続されている訳ではないので、クローズ処理は直接的に行われるが、コントローラ11がDVCR3のRSB61をクローズする場合には、このCLOSEコマンドが出力される。
【0090】
図17に示すCLOSEコマンドのフォーマットは、基本的に図10に示した、WRITE OPENコマンドと同様のフォーマットであり、subfunctionが、図10においては、WRITE OPENを表す”0316”とされているのに対して、図17のCLOSEコマンドにおいては、CLOSEであることを表す値、”0016”とされている点が異なっている。その他の構成は図10における場合と同様である。
【0091】
次にステップS29に進み、コントローラ11は、予約に関連する他のリソースが存在するか否かを判定する。今の場合、これまでの処理によりチューナサブユニット12を予約するための処理が終了したので、まだDVCR3のVCRサブユニット33を予約するための処理が必要である。そこで、この場合においては、ステップS12に戻り、上述したRSB51に対して行われた場合と同様の処理が、DVCR3のRSD61に対しても行われる。
【0092】
そしてステップS29において、予約に関連する他のリソースが存在しないと判定された時、処理は終了される。
【0093】
ところで、例えば図18に示すように、チューナサブユニット12で受信した映像信号をDVCR3のVCRサブユニット33に録画させる一連の録画予約が、受信についてはIRD1に、録画についてはDVCR3に、それぞれ独立して行われた場合、すなわち、IRD1のコントローラ11には、チューナサブユニット12に所定の時刻(10月16日、20時00分から21時00分まで)において所定のチャンネル(第48チャンネル)を受信させる予約が入力され、DVCR3のコントローラ31には、VCRサブユニット33に所定の時刻(10月16日、20時00分から21時00分まで)に録画を開始させる予約が入力された場合、この2つの予約の入力は、ユーザにとって、1つの録画予約ではあるが、IRD1およびDVCR3にとっては、それぞれ独立した予約入力であるので、それぞれの予約には異なるID(BB Object ID_Y,BB Object ID_Z)が設定されて、対応するRSB51、またはRSB61に記憶される。
【0094】
このように、各ユニットにおいて、独立に予約を行う場合においても、図7乃至図9のフローチャートに示した場合と同様の処理により、予約処理を行うことができる。ただし、このように、サブユニットを共同して使用する場合において、それぞれの予約を独立して行うと、ダブルブッキングが発生するか否かは、ユーザが管理する必要がある。
【0095】
また、図19に示すように、IRD1が、BBS14を有しない場合においても、本発明は適用が可能である。この場合、例えば、IRD1のコントローラ11から、10月16日、20時00分から21時00分まで、DVCR3のVCRサブユニット33を予約することが入力されると、この予約が、バス2を介して、DVCR3のBBS34のRSB61に書き込まれる。
【0096】
次に、Object ID設定処理について、図20のフローチャートを参照して説明する。この処理は、ユーザがIRD1に対して、DVCR3を用いる録画予約の操作を入力し、その操作がコントローラ11に検知され、上述した図7乃至図9の予約処理(競合ユニット検索処理)が実行されて、その録画予約が認められた後、開始される。この例においては、所定の時刻から所定の時間の間、実行される予約処理(Event)に関し、それを識別するために、Object IDが対応される。このObject IDは、72ビットで構成され、そのうちのMSB側の64ビットは、その予約に関する全ての情報を持っている機器の固有のID、具体的にはその機器のGUID(Global Unique ID)とされ、例えば、IEEE EUI−64が用いられる。LSB側の8ビットは、その機器内で設定される固有の値とされ、具体的には、record IDとされる。このようにObject IDをGUIDとrecord IDとで構成することにより、固有なID設定の処理が容易となるとともに、書き込んだオーナを特定できる有益な情報を含ませることができる。
【0097】
すなわちこのObject IDは、バス2に接続されている各機器の間において、識別可能である必要がある。そうでなければ、この例においては、1つのユニット(機器)のRSBの内容を他のユニット(機器)が読み込み可能であり、複数のユニットのサブユニットにおいて、共同して(関連して)処理が実行されることがあるので、関連する処理があるか否かを、他のユニットが識別できる必要があるからである。
【0098】
ステップS41において、コントローラ11は、Object ID(=Global Unique ID+record ID)のうちのrecord IDとして、IRD1内において、その予約情報を一意に識別させるための仮IDを発生する。
【0099】
ステップS42において、コントローラ11は、RSB51に登録されているEventの中から、1つのEventを抽出して、その Eventに対応するObject IDの中のrecord IDを抽出する。ステップS43において、コントローラ11は、ステップS41で発生した仮IDと、ステップS42で抽出したrecord IDが一致するか否かを判定し、一致する場合、ステップS41に戻り、仮IDを変更し、一致しない仮IDが発生されるまで、ステップS41乃至S43の処理を繰り返す。
【0100】
仮IDとステップS42で抽出したrecord IDが一致しないと判定された場合、ステップS44において、コントローラ11は、関連するサブユニットに関するRSB51に公開されている全てのEventを抽出したか否かを判定し、まだ抽出していないEventが残っている場合はステップS42に戻り、全ての Eventを読み出したと判定するまで、ステップS42乃至S44の処理を繰り返す。全てのEventを読み出したと判定された場合、ステップS45において、コントローラ11は、IRD1の機器ID(GUID)に、ステップS41で発生した仮ID(record ID)を付加して、Object IDを生成し、RSB51等に記述する。
【0101】
このように、Object IDは、関連するサブユニットに関するRSBをチェックするだけで(関連しないサブユニットを有するユニットのRSBをチェックすることなく)設定することができる。これは、上述したように、他のユニットのRSBにおけるObject IDは、そのユニットのGUIDが含まれているため、他のユニットが設定したObject IDは、自分自身が設定したObject IDと一致することが有り得ないからである。したがって、Object IDを簡単に設定することが可能となる。
【0102】
なお、Object IDの代わりに、バス2内において固有の所定のID(以下、このIDを、SA Event IDとする)を利用することも可能である。図21は、この場合の処理を表している。この処理は、ユーザがIRD1に対して、DVCR3を用いる録画予約の操作を入力し、その操作がコントローラ11に検知され、図7乃至図9の予約(競合ユニット検索)処理が実行されて、その録画予約が認められた後、開始される。
【0103】
ステップS51において、コントローラ11は、バス2内において、その予約情報を一意に識別できる仮IDを発生する。ステップS52において、コントローラ11は、バス2内の1つのユニット(または、予約動作上関連するユニット)のRSB51に記憶されているEventを読み出して、その中のSA Event IDを抽出する。ステップS53において、コントローラ11は、ステップS51で発生した仮IDと、ステップS52で抽出したSA Event IDが一致するか否かを判定し、一致しないと判定するまで、ステップS51乃至S53の処理を繰り返す。
【0104】
ステップS51で発生した仮IDとステップS52で抽出したSA Event IDが一致しないと判定された場合、ステップS54において、コントローラ11は、バス2内のユニット(または関連するユニット)の全てのSA Eventを読み出したか否かを判定し、全てのSA Eventを読み出したと判定するまで、ステップS52乃至S54の処理を繰り返す。全てのSA Eventを読み出したと判定された場合、ステップS55において、コントローラ11は、ステップS51で発生した仮IDを、SA Event IDとして、RSB51に記録する。
【0105】
図21に示す処理の場合、バス2に接続されている全てのユニットが有するRSBをチェックする必要がある。これに対して、図20に示す処理の場合、自分自身と関連するユニットのRSBだけをチェックすればよいので、処理を迅速に完了させることができる。
【0106】
以上のように、Object IDをRSBに記憶させておく他、SABにも記憶させるようにすることができる。これにより、ダブルブッキングが発生する場合、それを容易に確認することが可能となる。例えば、図22に示すように、バス2にIRD1とDVCR3が接続されているとともに、IRD91が接続されているものとする。IRD1は、BBS14にRSB51とSAB52を有する他、SID(Subunit Identifier Descriptor)100を有している。このSID100には、このSID100が所属するBBS14内にどのようなボードタイプ(この例の場合、RSB51とSAB52)がサポートされているかを認知する情報が記憶されている。
【0107】
DVCR3のBBS34には、RSB61以外に、SID81が設けられている。また、IRD91は、コントローラ92と表示部93を有している。
【0108】
次に、図22のシステムにおける処理例について説明する。ユーザは、IRD1のコントローラ11に予約情報を入力する。図22の例においては、8月12日20時00分から21時00分までXチャンネルを選局し、選曲された番組のデータをDVCR3に記録するという予約内容が入力される。コントローラ11は、この予約内容を内蔵するメモリに書き込むとともに、自分自身のBBS14のRSB51とSAB52にその予約情報を書き込むとともに、ターゲットとしてのDVCR3のBBS34のRSB61にも使用予定を書き込む。この時、コントローラ11は、RSB51,SAB52,RSB61の各エントリに記憶するObject IDを同一の値に設定しておく。
【0109】
このような場合において、IRD91が、IRD1が予約した時刻と重複する時刻にDVCR3を予約しようとした場合における処理例について図23のフローチャートを参照して説明する。
【0110】
ステップS61において、IRD91のコントローラ92は、ターゲットとしてのDVCR3のRSB61をチェックし、使用したい時間帯に重なって他のコントローラの予定が記録されているか否かを判定する。重複する時間帯に予定が書き込まれていない場合には、ステップS65に進み、コントローラ92は、上述した場合と同様に予約処理を実行する。すなわちコントローラ92は、DVCR3のRSB61に使用時間帯を書き込む。
【0111】
ステップS61において、DVCR3のVCRサブユニット33がすでに他のコントローラにより重なる時間帯に予約されていると判定された場合、ステップS62に進み、コントローラ92は、その予約に使用されているエントリのObject IDを読み出し、その上位8バイト(64ビット)のGUIDから、そのエントリを書き込んだ機器のノードIDを割り出す。すなわちGUIDは、各機器に固有のものであり、ノードIDと異なり、バスリセット毎に変化するものではない。したがって、コントローラ92は、バス2に接続されている各機器のGUIDとノードIDを調べ、その対応表を予め作成しておく。そしてその対応表を参照することで、GUIDからノードIDを割り出すことが可能となる。
【0112】
次にステップS63に進み、コントローラ92は、ステップS62の処理で割り出した機器のSABから(今の場合、IRD1のSAB52から)、多重予約エントリと同一のObject IDを指定し、そのエントリの内容を読み出す。そしてステップS64において、コントローラ92は、ステップS63の処理で読み出した重複予約の内容を表示部93に出力し、表示させる。これにより、IRD91のユーザは、先に予約されている内容を確認することができる。
【0113】
次に、BBSの詳細について説明する。図24は、BBSを構成するSubunit identifier Descriptorのフォーマットを表している。descriptor_lengthは、このDescriptorの長さを表す。generation_IDは、このBBSにおいて、どのAV/C descriptorフォーマットが使用されるかを表し、通常”0016”とされる。
【0114】
size_of_list_IDは、list IDのバイト数を表す。size_of_object_IDは、このobject IDのバイト数を表す。
【0115】
size_of_object_posionは、list内のobjectの位置が参照されるときに使用されるバイト数を表す。number_of_root_object_listsは、このBBSが直接関連するroot object listsの数を表す。
【0116】
root_object_list_id_x(x=0,1,2,・・・n−1)は、このBBSが関連するroot object listsのそれぞれのIDを表す。subunit_dependent_information_lengthはsubunit_dependent_informationの長さを表し、subunit_dependent_informationには、このBBSが依存するフォーマットおよびコンテンツに関する情報が記述される。
【0117】
subunit_dependent_informationには、non_info_block_fiedlds_length,bulletin_board_subunit_version,number_of_supported_board_type(n)supported_board_type_specific_of_length[0]の他、supported_board_type_specific_info[0]乃至supported_board_type_specific_info[n−1]と、それらの長さを表すsupported_board_type_specific_of_length[0]乃至supported_board_type_specific_of_length[n−1]が含まれている。
【0118】
さらに、BBSには、manufacturer_dependent_informatinの長さを表す、manufacturer_dependent_lengthと製造者に依存する情報を含むmanufacturer_dependent_informationが記述される。
【0119】
root_object_list_idの値は、それがRSBを表すものである場合、図25に示すように、所定の値”100116”とされる。このように、RSB(図25ではResource Schedule Listと記述されている)を表すIDを、所定の値に固定しておくことにより、RSBを読み出す処理が容易となる。
【0120】
図26は、RSBのフォーマットを表している。descriptor_lengthはRSBの長さを表す。list_typeには、RSBがRead Onlyであるのか、またはWrite Enabledであるのかが記述される。Read Only listは、読み出しのみが可能とされ、Write Enabled listには、書き込みが可能とされる。
【0121】
size_list_specific_informationは、list_specific_informationの長さを表し、list_specific_informationは、list_typeによって異なるものとなる。Write Enabled list_specific_infomationの場合、図27により詳細に示す情報が記述される。
【0122】
non_info_block_fileds_lengthは、non info block fieldsのバイト数を表すboard_typeは、図28に示すように、Resource Schedule Boardの場合、”0116”とされる。
【0123】
object_list_maximum_sizeは、object listの最大の大きさを表す。object_entry_maximum_numberは、listにおけるobject entriesの最大の数を表す。object_entry_maximum_sizeは、object entryの最大の大きさを表す。以上のobject_list_maximum_size,object_entries_maximum_number,object_entry_maximum_sizeは、それぞれ制限が設けられていない場合には、”000016”とされる。
【0124】
これらの3つのフィールドは、コントローラがobject listまたは、object entryの容量を知る上において、有意義である。
【0125】
board_type_dependent_information_lengthは、board_type_dependent_information_lengthの長さを表し、board_type_dependent_information_lengthは、board typeに固有の情報を表す。
【0126】
object_entryは、より詳細には、図29に示すように構成される。descriptor_lengthは、このdescriptorの長さを表し、entry_typeは、Board entry Descriptorの場合、Board を表す値”8016”とされる。
【0127】
object_IDは、posting_device_GUIDとrecord_IDとにより構成される。posting_deviceは、BBSに対して情報を記入(post)したコントローラを意味し、従ってposting_device_GUIDは、そのGUIDを表す。record_IDは、ユニット内においてEventに対して割当てられたIDを表す。
【0128】
size_of_entry_specific_imformationは、entry_specific_imformationの大きさを表す。
【0129】
図30は、entry_specific_imformationのフォーマットを表してる。non_info_block_lengthは、repeat_informationまでのnon-info block fieldsのバイト数を表す。start_timeは、詳細には、図31に示すように、eventが開始する年月日時分秒を表す。年は、16ビットで、4つの数字がそれぞれ4ビットのBCDで表される。月は、8ビットで、2つの数字がそれぞれ4ビットのBCDで表される。日は、8ビットで、2つの数字がそれぞれ4ビットのBCDで表される。時間は、8ビットで、2つの数字が、それぞれ4ビットのBCDで表される。分は、8ビットで、2つの数字がそれぞれ4ビットのBCDで表される。秒は、8ビットで、2つの数字が、それぞれ4ビットのBCDで表される。
【0130】
このようにBCDで表すことにより、識別が容易となる。またこの時刻は、ローカルタイムで表される。
【0131】
eventの長さを表すDurationは、詳細には図32に示すように、時分秒で表される。時間は、3つの数字がそれぞれ4ビットのBCDで表され、合計12ビットとされる。分は,2つの数字がそれぞれ4ビットのBCDとされ、合計8ビットで表される。秒は2つの数字がそれぞれ4ビットのBCDで表され、合計8ビットとされる。
【0132】
start_timeにDurationを加算することで、evntの終了時刻が表される。終了時刻を直接的に表現せずに、Durationとしてeventの長さを表すようにすることで、eventのstart_timeが変更されたような場合においても、その終了時刻は変更する必要がなくなり、変更処理が容易となる。
【0133】
repeat_information_lengthは、repeat_informationの長さを表している。 repeat_informationは、いつどのようにしてscheduleが繰り返されるかを表す。Scheduled Actionが繰り返されない場合、repeat_infomation_lengthは、”0016”とされる。
【0134】
repeat_informationは、選択されたrepeat typeによって内容が異なる。repeat typeには、図33に示すように、Weekly schedule”0016”と、Interval schedule”1016”とがある。
【0135】
scheduleが、週毎に繰り返される場合、Posting Deviceは、その曜日および繰り返されるべきeventの数を図34に示すように表示する。
【0136】
repeat_typeには、図33に示す値、”0016”が記述される。number_of_eventsには、eventの数が記述される。日曜日から土曜日までのWeekly flagsは、繰り返されるeventが開始する週の日を表す。例えば、13時00分から3時間のeventが、毎週月曜日と水曜日に開始される場合、月曜日と水曜日のフラグに”1”が設定され、その他のフラグには”0”が設定される。
【0137】
このように週毎に繰り返されるeventが記録できるので、例えば月曜日と水曜日の絶対的な日時を放送日に対応する分だけ記憶させるような場合に比べて、記憶容量は小さくて済ませることが可能ととなる。
【0138】
Posting Deviceは、Scheduled Actionが所定のintervalsで繰り返される場合、図35に示すようなフォーマットでeventを記述する。
【0139】
repeat_typeには、この例の場合、図33に示す値”1016”が記述される。number_of_eventsには、eventの数が記述される。
【0140】
interval(間隔)は、現在のeventのstart_timeから次のeventのstart_timeまでの間隔を表す。この間隔は、時分秒で表される。時間は、3つの数字がそれぞれ4ビットのBCDで表され、合計12ビットで表現される。分と秒は、それぞれ2つの数字が4ビットのBCDとされ、合計8ビットで表現される。
【0141】
このように周期的に繰り返されるeventが記憶できるので、それぞれが開始される絶対時刻(日時)を別に記憶させる場合に比べて、記憶容量が少なくて済む。
【0142】
図30に示すように、info blocksは図36に示すようなフォーマットとされる。conpound_lengthは、info blockのバイト長を表す。ただしlengthフィールド自身は、この長さに含まれていない。info_block_typeは”890016”にセットされる。primary_fields_lengthは、number_of_subunitsとsubunit_type_and_ID fieldのバイト数を表す。
【0143】
number_of_subunitsは、posting Deviceが使用すsubunitsの数を表す。 subunit_type_and_IDは、posting Deviceが使用するsubunitsを指定する。
【0144】
このようにstart_timeとDurationが固定のアドレスにおける固定の長さで表される。それに対して、subunitと、それを使用するPosting Deviceを識別する識別情報は、Info blocksとして、start_time,Durationなどより後の所定のアドレスに記憶される。これによりPosting Deviceの数が増加としても、対応が容易となる。
【0145】
図24のsupported_board_type_specific_informationフィールドは、図37に示すようなフォーマットとされる。supported_board_typeには、図28に示すRSBであることを表す値”0116”が記述される。supported_board_type_versionは、bulletin Bond Type Specificationのバージョンの番号を表す。inplementation_profile_IDはこのboard typeのためのprofile IDバージョンを表す。
【0146】
supported_board_type_dependend_information_lengthは、supported_type_dependent_informationのバイト数を表す。supported_board_type_dependent_informationには、各board type specificationに固有の情報が記述される。
【0147】
上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアとしてのコントローラに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどにインストールされる。
【0148】
汎用のパーソナルコンピュータ101は、例えば、図38に示すように、CPU(Central Processing Unit)111を内蔵している。CPU111には、バス115を介して入出力インターフェース116が接続されており、CPU111は、入出力インターフェース116を介して、ユーザから、キーボード、マウスなどよりなる入力部118から指令が入力されると、それに対応して、ROM(Read Only Memory)112あるいはハードディスク114などの記録媒体、または、ドライブ120に装着された磁気ディスク131,光ディスク132、光磁気ディスク133などの記録媒体から、それらに記録されている、上述した一連の処理を実行するプログラムを読み出し、RAM(Ramdom Access Memory)113にインストールし、実行する。なお、ハードディスク114に格納されているプログラムには、予め格納されてユーザに配布されるものだけでなく、衛星もしくは、ネットワークから転送され、通信部119により受信され、インストールされたプログラムも含まれる。
【0149】
また、CPU111は、プログラムの処理結果のうち、画像信号を、入出力インターフェース116を介して、LCD(Liquid Crystal Display),CRT(Cathode Ray Tube)などよりなる表示部117に出力する。
【0151】
【発明の効果】
本発明によれば、ネットワークにおけるダブルブッキングを防止することができる。
【図面の簡単な説明】
【図1】従来のネットワークシステムの構成例を示すブロック図である。
【図2】本発明を適用したネットワークシステムの構成例を示すブロック図である。
【図3】図2のBBS14の構成例を示すブロック図である。
【図4】図2のBBS34の構成例を示すブロック図である。
【図5】図2のネットワークシステムの動作を説明する図である。
【図6】図2のネットワークシステムの動作を説明する図である。
【図7】図5のネットワークシステムの動作を説明するフローチャートである。。
【図8】図5のネットワークシステムの動作を説明するフローチャートである。。
【図9】図5のネットワークシステムの動作を説明するフローチャートである。。
【図10】 WRITE OPENコマンドのフォーマットを説明する図である。
【図11】 READコマンドのフォーマットを説明する図である。
【図12】 CREATEコマンドのフォーマットを説明する図である。
【図13】図12のsubfunction_1を説明する図である。
【図14】図13のsubfunction_1の詳細を説明する図である。
【図15】図14におけるフィールドの値の例を示す図である。
【図16】 WRITE DESCRITORコマンドのフォーマットを説明する図である。。
【図17】 CLOSEコマンドのフォーマットを説明する図である。
【図18】図2のネットワークシステムの他の動作を説明する図である。
【図19】本発明を適用したネットワークシステムの構成例を示すブロック図である。
【図20】 Object ID設定処理を説明するフローチャートである。
【図21】 SA Event IDの設定処理を説明するフローチャートである。
【図22】ネットワークシステムの他の構成例を示すブロック図である。
【図23】図22のネットワークシステムの動作を説明するフローチャートである。
【図24】 BBSのフォーマットを説明する図である。
【図25】図24のroot_object_list_IDを説明する図である。
【図26】 RSBのフォーマットを説明する図である。
【図27】図26のWrite Enabled list_specific_informationのフォーマットを説明する図である。
【図28】図27のboard_typeのフォーマットを説明する図である。
【図29】図26のobject_entryのフォーマットを説明する図である。
【図30】図29のResource Schedule Entryのフォーマットを説明する図である。
【図31】図30のstart_timeのフォーマットを説明する図である。
【図32】図30のDurationのフォーマットを説明する図である
【図33】図34のrepeat_typeのフォーマットを説明する図である。
【図34】図30のrepeat_informationのフォーマットを説明する図である。
【図35】図30のrepeat_informationのフォーマットを説明する図である。
【図36】図30のInfo blocksのフォーマットを説明する図である。
【図37】図24のsupported_board_type_specific_informationのフォーマットを説明する図である。
【図38】コンピュータの構成例を示すブロック図である。
【符号の説明】
1 IRD, 2 IEEE1394シリアルデータバス, 3 DVCR, 11 コントローラ, 12 チューナサブユニット, 14 BBS, 31 コントローラ, 32 アナログチューナブロック, 33 VCRサブユニット, 34 BBS, 51 RSB, 52 SAB, 61 RSB, 62 SAB[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information processing apparatus and method, and a recording medium. In particular, in an information processing apparatus connected to another information processing apparatus via an IEEE 1394 serial data bus, it is ensured without duplicating built-in subunits. The present invention relates to an information processing apparatus and method that can be controlled, and a recording medium.
[0002]
[Prior art]
AV devices capable of transmitting information to each other via a network using an IEEE 1394 serial data bus have been developed. In this network, it is possible to control AV devices connected to the network by using a predetermined command (AV / C Command Transaction Set). For example, as shown in FIG. 1, a DVCR connected to an image received by an IRD (Integrated Receiver Decoder) 71 that receives a digital satellite broadcast via an IEEE 1394 serial data bus 2 (hereinafter referred to as a bus 2). (Digital Video Cassette Recorder) 81 can be used for recording. Furthermore, so-called recording reservation can be performed using the IRD 71 and the DVCR 81.
[0003]
In the recording reservation process, the
[0004]
By the way, as described above, when the operation of the
[0005]
For example, when a digital satellite broadcast recording reservation (recording reservation A) is input to the IRD 71, the reservation information is stored in the
[0006]
This inconvenience is caused by the fact that AV equipment connected via the
[0007]
In order to solve the inconvenience described above, in the past, the DVCR 81 is provided with a mode called CS mode which is in a recording standby state only in accordance with the control of the
[0008]
[Problems to be solved by the invention]
However, since the DVCR 81 set in the CS mode is in a reservation standby state, for example, processing such as reproduction of a video signal cannot be executed, and there is a problem that operability is poor.
[0009]
In addition, since there is no method for uniquely specifying an event such as a recording reservation transmitted to the
[0010]
Furthermore, when a plurality of AV devices output information to the
[0011]
The present invention has been made in view of such a situation, and each AV device connected to the bus improves the operability at the time of recording reservation by searching information managed by each AV device. It is intended to prevent the occurrence of double booking.
[0018]
[Means for Solving the Problems]
The receiving device of the present invention operates a tuner subunit, which is a functional block of the receiving device itself as a unit, and a VCR subunit, which is a functional block of a recording device connected via a network. Setting means for setting an object ID consisting of a unique ID of the receiving device itself and an ID that does not conflict within itself for the set reservation, and the setting means First storage means for storing information related to the reservation of the tuner subunit together with the set object ID, and disclosing the stored information in response to a request from a device connected via the network And storing information for controlling a series of operations relating the tuner subunit and the VCR subunit. And storage means for storing information relating to the reservation of the VCR subunit in the recording device, and control means for storing information relating to the reservation of the VCR subunit together with the object ID set by the setting means. In the recording device, when storing information related to the reservation of the VCR subunit, after storing information related to the reservation using the unique ID portion of the object ID as a temporary temporary number The temporary number is rewritten with the unique ID. Further, as the series of operations, the tuner subunit extracts a signal of a predetermined channel from a signal input from an antenna and supplies the signal to the VCR subunit via the network, and the VCR subunit The signal supplied from the tuner subunit is recorded on the recording medium.
[0020]
The network can be configured using an IEEE 1394 serial data bus.
[0022]
The information processing method according to the present invention operates a subunit, which is a functional block of a receiving apparatus itself as a unit, and a VCR subunit, which is a functional block of a recording apparatus connected via a network. If the reservation is set, for the set reservation, set an object ID consisting of the unique ID of the receiving device itself and an ID that does not conflict within itself, along with the set object ID, Information relating to the reservation of the subunit is stored in the first storage means, and the stored information is disclosed in response to a request from a device connected via the network, and the subunit and the VCR sub-unit are disclosed. Information for controlling a series of operations associated with the unit is stored in the second storage means, and the pre-recording of the VCR subunit that the recording apparatus has is stored. Storing information related to the reservation of the VCR subunit together with the set object ID in the storage means for storing information related to the recording device, in the recording apparatus, when storing the information related to the reservation of the VCR subunit, After storing information related to reservation using the unique ID portion of the object ID as a temporary temporary number, the temporary number is rewritten with the unique ID. Further, as the series of operations, a signal of a predetermined channel is extracted from a signal input from an antenna by the tuner subunit and supplied to the VCR subunit via the network, and the VCR subunit The signal supplied from the tuner subunit is recorded on the recording medium.
[0023]
The recording medium program of the present invention operates in association with a subunit, which is a functional block of a receiving apparatus itself as a unit, and a VCR subunit, which is a functional block of a recording apparatus connected via a network. If the reservation is to be set, an object ID consisting of a unique ID of the receiving device itself and an ID that does not compete with itself is set for the set reservation, together with the set object ID , Storing information relating to the reservation of the subunit in the first storage means, and releasing the stored information in response to a request from a device connected via the network, the subunit and the VCR Information for controlling a series of operations associated with the sub-unit is stored in the second storage means, and the VCR sub-unit possessed by the recording apparatus is stored. A storage means for storing information on the feeding of the reservation, together with the object ID set, to execute processing comprising the step of storing information on reserved the VCR sub-unit to the computer. In the recording device, when storing the information related to the reservation of the VCR subunit, after storing the information related to the reservation using the unique ID portion of the object ID as a temporary temporary number, the unique ID is stored. The temporary number is rewritten with the ID. Further, as the series of operations, a signal of a predetermined channel is extracted from a signal input from an antenna by the tuner subunit and supplied to the VCR subunit via the network, and the VCR subunit The signal supplied from the tuner subunit is recorded on the recording medium.
[0024]
In the present invention, there is a reservation for operating a subunit, which is a functional block of the receiving device itself as a unit, and a VCR subunit, which is a functional block of a recording device connected via a network. If set, an object ID consisting of a unique ID of the receiving device itself and an ID that does not conflict within itself is set for the set reservation, and the sub-object is set together with the set object ID. Information relating to the unit reservation is stored in the first storage means, and the stored information is released in response to a request from a device connected via the network. Further, information for controlling a series of operations relating the subunit and the VCR subunit is stored in a second storage means, and information relating to the reservation of the VCR subunit that the recording apparatus has is stored. The storage unit stores information related to the reservation of the VCR subunit together with the set object ID. In the recording device, when storing information related to the reservation of the VCR subunit, the unique ID is stored after storing information related to the reservation using the unique ID portion of the object ID as a temporary temporary number. Then, the temporary number is rewritten. Further, as the series of operations, a signal of a predetermined channel is extracted from a signal input from an antenna by the tuner subunit and supplied to the VCR subunit via the network, and the VCR subunit The signal supplied from the tuner subunit is recorded on the recording medium.
[0038]
DETAILED DESCRIPTION OF THE INVENTION
A configuration example of a network system to which the present invention is applied will be described with reference to FIG. In this specification, the term “system” means an overall apparatus constituted by a plurality of apparatuses and means.
[0039]
This network system includes
[0040]
Note that electronic devices such as IRD1 and DVCR3 connected to the
[0041]
The
[0042]
The
[0043]
The
[0044]
The
[0045]
The
[0046]
The
[0047]
In this network system, when making a recording reservation for digital satellite broadcasting, the user inputs recording reservation settings (settings such as a channel and a recording start time) to the
[0048]
As shown in FIG. 3, the
[0049]
On the other hand, the
[0050]
Similarly, the
[0051]
Details of the information stored and disclosed in the
[0052]
Next, operations related to the
[0053]
Thereafter, for example, as shown in FIG. 6, the
[0054]
Next, the details of the above reservation process (contention unit search process) will be described with reference to the flowcharts of FIGS.
[0055]
First, in step S <b> 11, the user performs reservation setting processing for the
[0056]
However, actually, the
[0057]
For example, after the processing of WRITE OPEN for the
[0058]
This WRITE OPEN command is a kind of OPEN DESCRIPTOR command used to access a predetermined address space of a target, and has a format as shown in FIG. The opcode has a value (08 indicating OPEN DESCRIPTOR)16) Is described.
[0059]
Further, operand3 has a value 03 indicating that the descriptor is a WRITE OPEN that opens a descriptor for read or write access.16Is described.
[0060]
In step S13, the
[0061]
As shown in FIG. 11, the opcode at the head of the READ command has a value indicating a read descriptor, 0916Is described. In the following operand0, a descriptor identifier for identifying the descriptor to be read is described. In the case of the reading process in step S13, the descriptor identifier is described by the list ID. Specifically, 00 of Address_offset of write enabled list_specific_information field of RSB of FIG.16To 0D16Is described.
[0062]
In read_result_status, FF is described when a READ command is sent, and a read result is described when returned as a response from the target. In data_length, the number of bytes of data to be read from the target is described. When this value is set to “0”, all lists are read. In address, an address at which reading is to be started is described. When the value is “00”, reading is started from the top.
[0063]
In step S14, the
[0064]
In step S15, the
[0065]
If any one of the conditions in steps S15 to S17 is not satisfied, the process proceeds to step S18, and the
[0066]
If any of the conditions of Steps S15 to S17 is satisfied, there is room for writing the reservation information in the
[0067]
That is, in step S19, “0” is initially set in the variable i. In step S20, whether or not the value obtained by subtracting the variable i from the number of entries number_of_entries recorded in the
[0068]
The reading in step S21 is also performed by the READ command shown in FIG. 11. In this case, the descriptor identifier is described by the object position. In this object entry [i], as will be described later, reservation time information that has already been registered (start_time, Duration in FIG. 30) and identification information of a subunit to be used in the reservation (subunit_type_and_ID [in FIG. 36] 0]) and the like are stored.
[0069]
In step S22, the
[0070]
If it is determined in step S22 that the times do not overlap, or if it is determined in step S23 that the subunits do not match even if the times match, double booking may occur. There is no. Therefore, in step S24, only the variable i is incremented by 1, and the process returns to step S20, and the same processing is repeatedly executed until it is determined that the value obtained by subtracting the variable i from number_of_entries is not greater than 0. That is, for all object entries [i] stored in the
[0071]
If it is determined in step S20 that the value obtained by subtracting the variable i from number_of_entries is not greater than “0” (when the search for all object entries [i] is completed), the process proceeds to step S26, and the
[0072]
It should be noted that the processing from step S15 to step S18 described above can be executed when NO is determined in the processing of step S20.
[0073]
Here, the CREATE command will be described. FIG. 12 shows the format of the AV / C CREATE command. FIG. 13 shows values that can be specified by subfunction_1 in FIG. 12, and “01” (create a new object and its child list) is used in this embodiment. FIG. 14 shows a format of subfunction_1_specification for subfunction_1 = 01 in FIG. Further, FIG. 15 is a diagram showing each field value in FIG. As shown in FIG. 15, when “20”, “22”, and “11” are set in the fields of descriptor_identifier_where, descriptor_identifier_what_1, and _2, respectively, in FIG. 14, this means “create a new object and its child list”. .
[0074]
Details of these AV / C CREATE commands are described in IEEE 1394 (refer to the Internet homepage http://www.1394TA.org), and each figure in the present embodiment is described in the literature (Enhancement). to the AV / C General Specification 3.0 Version 1.0 FC2 and TA Document 1999005 AV / C Bulletion Board Subunit General Specification 1.0 Draft 0.99: 149). In addition, there are information writable and readable information descriptors (Information List Descriptors) constituting the board, and a list type is used for the distinction between them.
[0075]
By the way, as one method of writing information to the AV / C descriptor (AV / C Descriptor) from the outside, for example, the controller issues the above-mentioned CREATE command to the target, and the target creates a template for writing the information. Then, a method in which the controller performs control to write specific contents again is considered as a general method. For example, when information is written for the first time, the controller designates a desired list and issues an AV / C descriptor create command. In the target that receives this command, an object based on the data structure template specified in AV / C General is created inside the target. In addition, the data structure model determined by AV / C General includes a field indicating an object ID. In the list using the AV / C descriptor (AV / C Descriptor), the object ID is managed by the target. That is, when an object is created (CREATE), the target assigns an ID that can uniquely specify the object, and the target has a function of managing the ID.
[0076]
Here, the object ID is an identification number for uniquely specifying the object in the list. Therefore, a function for preventing the object ID from being duplicated is required on the management side. The BBS itself is a place for providing information, and the controller manages the object ID.
[0077]
However, when a create command is issued to a subunit, there is a risk of inconsistency. That is, when an object is created, the target allocates an object ID to be managed by the controller. Further, after issuing a create command, it is necessary to continue the write control. As described above, since the process is divided into a plurality of steps, an incomplete object may be created when the controller is removed from the bus during writing, for example.
[0078]
Therefore, in the situation as described above, there is a need for a system that can identify an incomplete object and delete the object when such an object is created.
[0079]
Therefore, in the embodiment of the present invention, a mechanism for specifying an incomplete object is prepared by defining a writing means to the BBS by the standard.
[0080]
That is, first, the target (DVCR3 in the case of this embodiment) is the object ID (consisting of a global unique ID (GUID) and a record ID) when the object is created (CREATE). A number to be temporarily managed (for example, all “0”) is assigned to the GUID part. The controller writes information in the object first, and if the writing is completed normally, it rewrites the GUID at the end.
[0081]
By deciding the above procedure, when writing is completed normally, an object whose GUID is all “0” cannot be created. Therefore, an object whose GUID is all “0” cannot be created during writing. It can be identified as a complete object.
[0082]
This makes it possible to uniquely identify the object that is being written, distinguish between a normally written object and an incomplete object, and easily delete incomplete objects (invalid objects). Is possible. As a result, a finite memory provided in the electronic device can be effectively used. In addition, since the method for specifying an object in the middle of writing is a simple method in which all GUID portions of the object ID are set to “0”, it is easy to create software for deleting an incomplete object.
[0083]
In step S26 in FIG. 9, an INSERT command can be used instead of using the CREATE command.
[0084]
Next, proceeding to step S27, the
[0085]
FIG. 16 shows the format of the WRITE DESCRIPTOR command output by the
[0086]
The first opcode has a value 0A indicating that it is a WRITE DESCRIPTOR16Is described. In operand0, a descriptor indentifier for identifying a descriptor to be written is described. This description is made at the object position.
[0087]
Hereinafter, as a subfunction, a value indicating partial_replace, 5016Is described. As a result, partial insert or partial delate is executed. In insert, a new descriptor is inserted immediately before the one specified by the operand specified by descriptor_identifier. In delete, the descriptor specified by descriptor_identifier is deleted.
[0088]
The group_tag is used to perform update processing that cannot be divided on the descriptor where the WRITE DESCRIPTOR command needs to be issued. In this example, the
[0089]
In step S28, the
[0090]
The format of the CLOSE command shown in FIG. 17 is basically the same format as the WRITE OPEN command shown in FIG. 10, and the subfunction is “03” indicating WRITE OPEN in FIG.16In contrast, in the CLOSE command in FIG. 17, a value indicating CLOSE, “00”16The other points are the same as those in FIG.
[0091]
Next, proceeding to step S29, the
[0092]
When it is determined in step S29 that there are no other resources related to the reservation, the process is terminated.
[0093]
Incidentally, for example, as shown in FIG. 18, a series of recording reservations for recording the video signal received by the
[0094]
As described above, even when each unit makes a reservation independently, the reservation process can be performed by the same process as that shown in the flowcharts of FIGS. However, when the subunits are used jointly in this way, it is necessary for the user to manage whether or not double booking occurs if each reservation is made independently.
[0095]
As shown in FIG. 19, the present invention can be applied even when the
[0096]
Next, the Object ID setting process will be described with reference to the flowchart of FIG. In this process, the user inputs a recording reservation operation using DVCR3 to the
[0097]
That is, this Object ID needs to be identifiable among the devices connected to the
[0098]
In step S41, the
[0099]
In step S42, the
[0100]
When it is determined that the temporary ID and the record ID extracted in step S42 do not match, in step S44, the
[0101]
In this way, the Object ID can be set only by checking the RSB for related subunits (without checking the RSB of units having unrelated subunits). As described above, the Object ID in the RSB of another unit contains the GUID of that unit, so the Object ID set by the other unit matches the Object ID set by itself. This is because there is no possibility. Therefore, it is possible to easily set the Object ID.
[0102]
It should be noted that, instead of the Object ID, a specific ID unique within the bus 2 (hereinafter, this ID is referred to as SA Event ID) can be used. FIG. 21 shows processing in this case. In this process, the user inputs a recording reservation operation using DVCR3 to the
[0103]
In step S51, the
[0104]
If it is determined that the temporary ID generated in step S51 and the SA Event ID extracted in step S52 do not match, in step S54, the
[0105]
In the case of the processing shown in FIG. 21, it is necessary to check the RSBs of all the units connected to the
[0106]
As described above, the Object ID can be stored not only in the RSB but also in the SAB. Thereby, when double booking occurs, it can be easily confirmed. For example, as shown in FIG. 22, it is assumed that
[0107]
In addition to
[0108]
Next, a processing example in the system of FIG. 22 will be described. The user inputs reservation information to the
[0109]
In such a case, an example of processing when the
[0110]
In step S61, the
[0111]
If it is determined in step S61 that the
[0112]
Next, proceeding to step S63, the
[0113]
Next, details of the BBS will be described. FIG. 24 shows the format of the Subunit identifier Descriptor that constitutes the BBS. descriptor_length represents the length of this Descriptor. The generation_ID indicates which AV / C descriptor format is used in this BBS.16"
[0114]
size_of_list_ID represents the number of bytes of list ID. size_of_object_ID represents the number of bytes of this object ID.
[0115]
size_of_object_posion represents the number of bytes used when the position of the object in list is referenced. number_of_root_object_lists represents the number of root object lists with which this BBS is directly related.
[0116]
root_object_list_id_x (x = 0, 1, 2,..., n−1) represents each ID of root object lists related to this BBS. subunit_dependent_information_length represents the length of subunit_dependent_information, and information related to the format and content on which this BBS depends is described in subunit_dependent_information.
[0117]
In subunit_dependent_information, non_info_block_fiedlds_length, bulletin_board_subunit_version, number_of_supported_board_type (n) supported_board_type_specific_of_length [0], supported_board_type_specific_info [0] to supported_board_type_specific_info_n_supported_board include.
[0118]
Further, the BBS describes manufacturer_dependent_length indicating the length of the manufacturer_dependent_informatin and manufacturer_dependent_information including information dependent on the manufacturer.
[0119]
When the value of root_object_list_id represents RSB, as shown in FIG. 25, a predetermined value “1001” is used.16In this way, by fixing the ID representing the RSB (described as Resource Schedule List in FIG. 25) to a predetermined value, the process of reading the RSB becomes easy.
[0120]
FIG. 26 shows the RSB format. descriptor_length represents the length of the RSB. The list_type describes whether the RSB is Read Only or Write Enabled. In the Read Only list, only reading is possible, and in the Write Enabled list, writing is possible.
[0121]
The size_list_specific_information represents the length of the list_specific_information, and the list_specific_information differs depending on the list_type. In the case of Write Enabled list_specific_infomation, information shown in detail in FIG. 27 is described.
[0122]
non_info_block_fileds_length is “01” in the case of a Resource Schedule Board as shown in FIG.16"
[0123]
object_list_maximum_size represents the maximum size of the object list. object_entry_maximum_number represents the maximum number of object entries in the list. object_entry_maximum_size represents the maximum size of the object entry. The above object_list_maximum_size, object_entries_maximum_number, and object_entry_maximum_size are “0000” if no limit is provided.16"
[0124]
These three fields are meaningful for the controller to know the capacity of the object list or object entry.
[0125]
board_type_dependent_information_length represents the length of board_type_dependent_information_length, and board_type_dependent_information_length represents information specific to the board type.
[0126]
More specifically, the object_entry is configured as shown in FIG. descriptor_length represents the length of this descriptor, and entry_type is “80” representing the Board in the case of the Board entry Descriptor.16"
[0127]
The object_ID is composed of posting_device_GUID and record_ID. posting_device means a controller that has posted (posted) information to the BBS, and therefore posting_device_GUID represents the GUID. record_ID represents the ID assigned to the Event within the unit.
[0128]
size_of_entry_specific_imformation represents the size of entry_specific_imformation.
[0129]
FIG. 30 shows the format of entry_specific_imformation. non_info_block_length represents the number of bytes of non-info block fields up to repeat_information. In detail, as shown in FIG. 31, start_time represents the year, month, day, hour, minute, and second when the event starts. The year is 16 bits, and four numbers are each represented by a 4-bit BCD. The month is 8 bits, and two numbers are each represented by a 4-bit BCD. A day is 8 bits, and two numbers are each represented by a 4-bit BCD. The time is 8 bits, and two numbers are each represented by a 4-bit BCD. The minute is 8 bits, and two numbers are each represented by a 4-bit BCD. The second is 8 bits, and two numbers are each represented by a 4-bit BCD.
[0130]
In this way, identification by BCD becomes easy. This time is expressed in local time.
[0131]
The duration representing the length of the event is represented in hours, minutes and seconds as shown in detail in FIG. The time is represented by 4 bits of BCD, each of which has a total of 12 bits. The minute is represented by a total of 8 bits, with 2 numbers being each a 4-bit BCD. The second is represented by a 4-bit BCD with 2 numbers each, for a total of 8 bits.
[0132]
The end time of evnt is expressed by adding Duration to start_time. By expressing the length of the event as a Duration instead of directly expressing the end time, even if the start_time of the event is changed, it is not necessary to change the end time, and the change process Becomes easy.
[0133]
repeat_information_length represents the length of repeat_information. repeat_information represents when and how the schedule is repeated. If Scheduled Action is not repeated, repeat_infomation_length is “00”16"
[0134]
The content of repeat_information differs depending on the selected repeat type. The repeat type includes Weekly schedule “00” as shown in FIG.16”And Interval schedule” 1016"
[0135]
When the schedule is repeated every week, the Posting Device displays the day of the week and the number of events to be repeated as shown in FIG.
[0136]
In repeat_type, the value shown in FIG.16"Number_of_events" describes the number of events. Weekly flags from Sunday to Saturday represent the day of the week when the repeated event starts. For example, an event of 3 hours from 13:00 is displayed. When starting every Monday and Wednesday, “1” is set in the flags of Monday and Wednesday, and “0” is set in the other flags.
[0137]
Since events that are repeated every week can be recorded in this way, it is possible to reduce the storage capacity compared to, for example, storing the absolute date and time of Monday and Wednesday by the amount corresponding to the broadcast date. It becomes.
[0138]
The Posting Device describes an event in a format as shown in FIG. 35 when the scheduled action is repeated at predetermined intervals.
[0139]
In this example, repeat_type has a value “10” shown in FIG.16"Is described. In number_of_events, the number of events is described.
[0140]
The interval (interval) represents the interval from the start_time of the current event to the start_time of the next event. This interval is expressed in hours, minutes and seconds. The time is represented by a total of 12 bits, with three numbers each represented by a 4-bit BCD. The minutes and seconds are expressed by a total of 8 bits, with two numbers each being a 4-bit BCD.
[0141]
Since events that are repeated periodically can be stored in this way, the storage capacity can be reduced compared to the case where the absolute time (date and time) at which each event is started is stored separately.
[0142]
As shown in FIG. 30, the info blocks have a format as shown in FIG. conpound_length represents the byte length of the info block. However, the length field itself is not included in this length. info_block_type is "890016“_Primary_fields_length” represents the number of bytes in the number_of_subunits and subunit_type_and_ID fields.
[0143]
number_of_subunits represents the number of subunits used by the posting device. subunit_type_and_ID specifies subunits used by posting Device.
[0144]
In this way, start_time and Duration are represented by a fixed length at a fixed address. On the other hand, the identification information for identifying the subunit and the Posting Device using the subunit is stored as Info blocks at a predetermined address after start_time, Duration, and the like. Thereby, even if the number of Posting Devices increases, it becomes easy to cope.
[0145]
The supported_board_type_specific_information field in FIG. 24 has a format as shown in FIG. In supported_board_type, a value “01” indicating that the RSB is shown in FIG.16Is described. The supported_board_type_version represents the version number of the bulletin Bond Type Specification. The implementation_profile_ID represents the profile ID version for this board type.
[0146]
supported_board_type_dependend_information_length represents the number of bytes of supported_type_dependent_information. Supported_board_type_dependent_information describes information specific to each board type specification.
[0147]
The series of processes described above can be executed by hardware, but can also be executed by software. When a series of processing is executed by software, the program that configures the software has various functions by installing a computer built into the controller as dedicated hardware or various programs. For example, a general-purpose personal computer.
[0148]
The general-purpose personal computer 101 includes a CPU (Central Processing Unit) 111 as shown in FIG. An input /
[0149]
Further, the
[0151]
【The invention's effect】
According to the present invention,Double booking in the network can be prevented.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration example of a conventional network system.
FIG. 2 is a block diagram showing a configuration example of a network system to which the present invention is applied.
FIG. 3 is a block diagram showing a configuration example of a
4 is a block diagram illustrating a configuration example of a
FIG. 5 is a diagram for explaining the operation of the network system of FIG. 2;
6 is a diagram for explaining the operation of the network system of FIG. 2;
7 is a flowchart for explaining the operation of the network system of FIG. 5; .
FIG. 8 is a flowchart for explaining the operation of the network system of FIG. 5; .
FIG. 9 is a flowchart for explaining the operation of the network system of FIG. 5; .
FIG. 10 is a diagram for explaining the format of a WRITE OPEN command.
FIG. 11 is a diagram illustrating a format of a READ command.
FIG. 12 is a diagram illustrating a format of a CREATE command.
13 is a diagram for explaining subfunction_1 in FIG. 12; FIG.
FIG. 14 is a diagram for explaining the details of subfunction_1 in FIG. 13;
FIG. 15 is a diagram illustrating an example of field values in FIG. 14;
FIG. 16 is a diagram illustrating the format of a WRITE DESCRITOR command. .
FIG. 17 is a diagram illustrating a format of a CLOSE command.
FIG. 18 is a diagram for explaining another operation of the network system of FIG. 2;
FIG. 19 is a block diagram showing a configuration example of a network system to which the present invention is applied.
FIG. 20 is a flowchart for explaining Object ID setting processing;
FIG. 21 is a flowchart for describing SA Event ID setting processing;
FIG. 22 is a block diagram illustrating another configuration example of the network system.
FIG. 23 is a flowchart for explaining the operation of the network system of FIG. 22;
FIG. 24 is a diagram illustrating a BBS format.
FIG. 25 is a diagram for explaining root_object_list_ID in FIG. 24;
FIG. 26 is a diagram for explaining an RSB format.
27 is a diagram for explaining the format of Write Enabled list_specific_information in FIG. 26;
28 is a diagram for explaining the format of board_type in FIG. 27;
FIG. 29 is a diagram for explaining the format of object_entry in FIG. 26;
30 is a diagram for explaining the format of Resource Schedule Entry in FIG. 29. FIG.
FIG. 31 is a diagram for explaining the format of start_time in FIG. 30;
32 is a diagram for explaining the format of Duration in FIG. 30;
33 is a diagram for describing the format of the repeat_type in FIG. 34;
34 is a diagram for explaining the format of repeat_information in FIG. 30. FIG.
FIG. 35 is a diagram for explaining the format of repeat_information in FIG. 30;
36 is a diagram for explaining the format of Info blocks in FIG. 30;
FIG. 37 is a diagram for explaining the format of supported_board_type_specific_information in FIG. 24;
FIG. 38 is a block diagram illustrating a configuration example of a computer.
[Explanation of symbols]
1 IRD, 2 IEEE1394 serial data bus, 3 DVCR, 11 controller, 12 tuner subunit, 14 BBS, 31 controller, 32 analog tuner block, 33 VCR subunit, 34 BBS, 51 RSB, 52 SAB, 61 RSB, 62 SAB
Claims (4)
前記設定手段により設定された前記オブジェクトIDとともに、前記チューナサブユニットの予約に関する情報を記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開する第1の記憶手段と、 Along with the object ID set by the setting means, information related to the reservation of the tuner subunit is stored, and the stored information is disclosed in response to a request from a device connected via the network. 1 storage means;
前記チューナサブユニットと前記VCRサブユニットを関連させた一連の動作を制御するための情報を記憶する第2の記憶手段と、 Second storage means for storing information for controlling a series of operations relating the tuner subunit and the VCR subunit;
前記記録装置が有する、前記VCRサブユニットの予約に関する情報を記憶する記憶手段に、前記設定手段により設定された前記オブジェクトIDとともに、前記VCRサブユニットの予約に関する情報を記憶させる制御手段と Control means for storing information relating to reservation of the VCR subunit together with the object ID set by the setting means, in storage means for storing information relating to the reservation of the VCR subunit, which the recording apparatus has
を備え、 With
前記記録装置においては、前記VCRサブユニットの予約に関する情報を記憶させるとき、前記オブジェクトIDのうちの前記固有のIDの部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有のIDで前記仮番号を書き換えることが行われ、 In the recording device, when storing the information related to the reservation of the VCR subunit, after storing the information related to the reservation using the unique ID portion of the object ID as a temporary temporary number, the unique ID is stored. The temporary number is rewritten with the ID,
前記一連の動作として、前記チューナサブユニットは、アンテナから入力された信号から所定のチャンネルの信号を抽出して前記ネットワークを介して前記VCRサブユニットに供給し、前記VCRサブユニットは、前記チューナサブユニットから供給された信号を記録媒体に記録させる As the series of operations, the tuner subunit extracts a signal of a predetermined channel from a signal input from an antenna and supplies the signal to the VCR subunit via the network, and the VCR subunit includes the tuner subunit. Record the signal supplied from the unit on the recording medium
受信装置。 Receiver device.
請求項1に記載の受信装置。The receiving device according to claim 1, wherein the network is configured using an IEEE1394 serial data bus.
設定した前記オブジェクトIDとともに、前記チューナサブユニットの予約に関する情報を第1の記憶手段に記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開し、 Along with the set object ID, information related to the reservation of the tuner subunit is stored in the first storage means, and the stored information is made public in response to a request from a device connected via the network. ,
前記チューナサブユニットと前記VCRサブユニットを関連させた一連の動作を制御するための情報を第2の記憶手段に記憶し、 Storing information for controlling a series of operations relating the tuner subunit and the VCR subunit in a second storage means;
前記記録装置が有する、前記VCRサブユニットの予約に関する情報を記憶する記憶手段に、設定した前記オブジェクトIDとともに、前記VCRサブユニットの予約に関する情報を記憶させる The storage unit that stores information related to the reservation of the VCR subunit included in the recording apparatus stores information related to the reservation of the VCR subunit together with the set object ID.
ステップを含み、 Including steps,
前記記録装置においては、前記VCRサブユニットの予約に関する情報を記憶させるとき、前記オブジェクトIDのうちの前記固有のIDの部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有のIDで前記仮番号を書き換えることが行われ、 In the recording device, when storing the information related to the reservation of the VCR subunit, after storing the information related to the reservation using the unique ID portion of the object ID as a temporary temporary number, the unique ID is stored. The temporary number is rewritten with the ID,
前記一連の動作として、前記チューナサブユニットにより、アンテナから入力された信号から所定のチャンネルの信号が抽出されて前記ネットワークを介して前記VCRサブユニットに供給され、前記VCRサブユニットにより、前記チューナサブユニットから供給された信号が記録媒体に記録される As the series of operations, a signal of a predetermined channel is extracted from a signal input from an antenna by the tuner subunit and is supplied to the VCR subunit via the network. The signal supplied from the unit is recorded on the recording medium
情報処理方法。 Information processing method.
設定した前記オブジェクトIDとともに、前記チューナサブユニットの予約に関する情報を第1の記憶手段に記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開し、 Along with the set object ID, information related to the reservation of the tuner subunit is stored in the first storage means, and the stored information is made public in response to a request from a device connected via the network. ,
前記チューナサブユニットと前記VCRサブユニットを関連させた一連の動作を制御するための情報を第2の記憶手段に記憶し、 Storing information for controlling a series of operations relating the tuner subunit and the VCR subunit in a second storage means;
前記記録装置が有する、前記VCRサブユニットの予約に関する情報を記憶する記憶手段に、設定した前記オブジェクトIDとともに、前記VCRサブユニットの予約に関する情報を記憶させる The storage unit that stores information related to the reservation of the VCR subunit included in the recording apparatus stores information related to the reservation of the VCR subunit together with the set object ID.
ステップを含む処理をコンピュータに実行させるプログラムが記録されており、 A program that causes a computer to execute processing including steps is recorded,
前記記録装置においては、前記VCRサブユニットの予約に関する情報を記憶させるとき、前記オブジェクトIDのうちの前記固有のIDの部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有のIDで前記仮番号を書き換えることが行われ、 In the recording device, when storing the information related to the reservation of the VCR subunit, after storing the information related to the reservation using the unique ID portion of the object ID as a temporary temporary number, the unique ID is stored. The temporary number is rewritten with the ID,
前記一連の動作として、前記チューナサブユニットにより、アンテナから入力された信号から所定のチャンネルの信号が抽出されて前記ネットワークを介して前記VCRサブユニットに供給され、前記VCRサブユニットにより、前記チューナサブユニットから供給された信号が記録媒体に記録される As the series of operations, a signal of a predetermined channel is extracted from a signal input from an antenna by the tuner subunit and is supplied to the VCR subunit via the network. The signal supplied from the unit is recorded on the recording medium
記録媒体。 recoding media.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24963699A JP4251248B2 (en) | 1998-09-14 | 1999-09-03 | Reception device, information processing method, and recording medium |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25973498 | 1998-09-14 | ||
JP10-259734 | 1998-09-14 | ||
JP29650298 | 1998-10-19 | ||
JP10-296502 | 1998-10-19 | ||
JP24963699A JP4251248B2 (en) | 1998-09-14 | 1999-09-03 | Reception device, information processing method, and recording medium |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000196632A JP2000196632A (en) | 2000-07-14 |
JP2000196632A5 JP2000196632A5 (en) | 2006-06-08 |
JP4251248B2 true JP4251248B2 (en) | 2009-04-08 |
Family
ID=27333855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24963699A Expired - Fee Related JP4251248B2 (en) | 1998-09-14 | 1999-09-03 | Reception device, information processing method, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4251248B2 (en) |
-
1999
- 1999-09-03 JP JP24963699A patent/JP4251248B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000196632A (en) | 2000-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7631334B2 (en) | Information processing device, information processing method and medium | |
EP0912051B1 (en) | Method for using audio and video devices and audio and video device system | |
KR100626558B1 (en) | Information processing apparatus and method, and recording media | |
US20010002846A1 (en) | Electronic device for managing removable storage medium, method and storage medium therefor | |
JP2002525732A (en) | Communication method and communication system | |
EP1615218A2 (en) | Content recording apparatus, content playback apparatus content recording method, content playback method, computer program and system | |
US7684673B2 (en) | Managing a digital video recorder via a network | |
JPH11177919A (en) | AV equipment, equipment usage method and AV equipment system | |
JP2000242699A (en) | Content rental method with use expiration date, content providing device and content using device used in the content rental method | |
EP1056242B1 (en) | Information processing apparatus and method, and recording medium | |
KR100575012B1 (en) | Information processing apparatus and the method, and recoding medium | |
JP4186332B2 (en) | Information processing apparatus and method, and recording medium | |
JP4251248B2 (en) | Reception device, information processing method, and recording medium | |
US20020184573A1 (en) | Method and device for configuring a functional unit with a temporary character in a communication network | |
JPH11355707A (en) | Timer reservation device | |
JP3943677B2 (en) | Equipment and equipment system for timer management | |
JP2002033750A (en) | Information processing unit and method, and medium | |
JPH10269754A (en) | Electronic equipment and its controlling method, information-providing device and method, and informationproviding system | |
EP0987891A2 (en) | Timer-controlled information processing method and apparatus | |
MXPA99008384A (en) | Information processing device, information processing method, and media de regis | |
MXPA99008383A (en) | Information processing device, information processing method, and media de regis | |
JP2002077745A (en) | Program reservation management system and program reservation management method | |
JP2000358048A (en) | Device and method for information processing, and recording medium | |
JP2004336464A (en) | TV program recording and playback device | |
MXPA99008385A (en) | Timer-controlled information processing method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060307 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060307 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080912 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081007 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081202 |
|
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: 20081225 |
|
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: 20090107 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120130 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130130 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140130 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |