JP4186332B2 - 情報処理装置および方法、並びに記録媒体 - Google Patents
情報処理装置および方法、並びに記録媒体 Download PDFInfo
- Publication number
- JP4186332B2 JP4186332B2 JP25110399A JP25110399A JP4186332B2 JP 4186332 B2 JP4186332 B2 JP 4186332B2 JP 25110399 A JP25110399 A JP 25110399A JP 25110399 A JP25110399 A JP 25110399A JP 4186332 B2 JP4186332 B2 JP 4186332B2
- Authority
- JP
- Japan
- Prior art keywords
- reservation
- subunit
- information
- information processing
- processing apparatus
- 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
Images
Landscapes
- Television Signal Processing For Recording (AREA)
Description
【発明の属する技術分野】
本発明は、情報処理装置および方法、並びに記録媒体に関し、特に、IEEE1394シリアルデータバスを介して他の情報処理装置と接続される情報処理装置において、内蔵するサブユニットを重複することなく、確実に制御することができるようにした情報処理装置および方法、並びに記録媒体に関する。
【0002】
【従来の技術】
IEEE1394シリアルデータバスを用いたネットワークを介して、相互に情報を伝達することができるAV機器が開発されている。このネットワークにおいては、所定のコマンド(AV/C Command Transaction Set)を用いることにより、ネットワークに接続されているAV機器を制御することが可能である。例えば、図1に示すように、デジタル衛星放送を受信するIRD(Integrated Receiver Decoder)71で受信した映像信号を、IEEE(Institute of Electical and Electronic Engineers)1394シリアルデータバス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を介して接続されている他の機器(図1の例の場合、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】
上述した不都合を解決するため、従来においては、IRD71により予約された場合、DVCR81に、IRD71のコントローラ72による制御だけに従い、録画待機状態となるCSモードというモードが設けられており、IRD71に録画予約Aを入力した後、DVCR81をCSモードに設定することでダブルブッキングの発生を防止していた。
【0008】
【発明が解決しようとする課題】
しかしながら、CSモードに設定されたDVCR81は、予約待機状態となってしまうので、例えば、映像信号の再生等の処理を実行できず、操作性が悪い課題があった。
【0009】
また、複数のAV機器が、他のAV機器が管理する情報(録画開始時刻等)を知らないことに起因して、同時にバス2に情報を出力した場合、出力された情報量がバス2の帯域を越えて、伝送エラーが発生する可能性がある課題があった。
【0010】
本発明はこのような状況に鑑みてなされたものであり、バスに接続されている各AV機器が、管理している情報を相互に知ることができるようにすることにより、録画予約時の操作性を向上させるとともに、ダブルブッキングの発生を抑止することができるようにするものである。
【0011】
【課題を解決するための手段】
本発明の情報処理装置は、ユニットとしての情報処理装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される他の情報処理装置が有する機能ブロックである他のサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記情報処理装置自身の固有の ID と、自分自身の内部で競合しない ID とからなるオブジェクト ID を設定する設定手段と、前記設定手段により設定された前記オブジェクト ID とともに、前記サブユニットの予約に関する情報を記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開する第1の記憶手段と、前記サブユニットと前記他のサブユニットを関連させた一連の動作を制御するための情報を記憶する第2の記憶手段と、前記他の情報処理装置が有する、前記他のサブユニットの予約に関する情報を記憶する記憶手段に、前記設定手段により設定された前記オブジェクト ID とともに、前記他のサブユニットの予約に関する情報を記憶させる制御手段とを備え、前記他の情報処理装置においては、前記他のサブユニットの予約に関する情報を記憶させるとき、前記オブジェクト ID のうちの前記固有の ID の部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有の ID で前記仮番号を書き換えることが行われる。
【0028】
前記ネットワークは、IEEE1394シリアルデータバスを用いて構成されるようにすることができる。
【0029】
本発明の情報処理方法は、ユニットとしての情報処理装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される他の情報処理装置が有する機能ブロックである他のサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記情報処理装置自身の固有の ID と、自分自身の内部で競合しない ID とからなるオブジェクト ID を設定し、設定した前記オブジェクト ID とともに、前記サブユニットの予約に関する情報を第1の記憶手段に記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開し、前記サブユニットと前記他のサブユニットを関連させた一連の動作を制御するための情報を第2の記憶手段に記憶し、前記他の情報処理装置が有する、前記他のサブユニットの予約に関する情報を記憶する記憶手段に、設定した前記オブジェクト ID とともに、前記他のサブユニットの予約に関する情報を記憶させるステップを含み、前記他の情報処理装置においては、前記他のサブユニットの予約に関する情報を記憶させるとき、前記オブジェクト ID のうちの前記固有の ID の部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有の ID で前記仮番号を書き換えることが行われる。
【0030】
本発明の記録媒体のプログラムは、ユニットとしての情報処理装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される他の情報処理装置が有する機能ブロックである他のサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記情報処理装置自身の固有の ID と、自分自身の内部で競合しない ID とからなるオブジェクト ID を設定し、設定した前記オブジェクト ID とともに、前記サブユニットの予約に関する情報を第1の記憶手段に記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開し、前記サブユニットと前記他のサブユニットを関連させた一連の動作を制御するための情報を第2の記憶手段に記憶し、前記他の情報処理装置が有する、前記他のサブユニットの予約に関する情報を記憶する記憶手段に、設定した前記オブジェクト ID とともに、前記他のサブユニットの予約に関する情報を記憶させるステップを含む処理をコンピュータに実行させる。前記他の情報処理装置においては、前記他のサブユニットの予約に関する情報を記憶させるとき、前記オブジェクト ID のうちの前記固有の ID の部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有の ID で前記仮番号を書き換えることが行われる。
【0031】
本発明においては、ユニットとしての情報処理装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される他の情報処理装置が有する機能ブロックである他のサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記情報処理装置自身の固有の ID と、自分自身の内部で競合しない ID とからなるオブジェクト ID が設定され、設定された前記オブジェクト ID とともに、前記サブユニットの予約に関する情報が第1の記憶手段に記憶され、記憶されている情報が、前記ネットワークを介して接続される装置からの要求に対応して公開される。また、前記サブユニットと前記他のサブユニットを関連させた一連の動作を制御するための情報が第2の記憶手段に記憶され、前記他の情報処理装置が有する、前記他のサブユニットの予約に関する情報を記憶する記憶手段に、設定された前記オブジェクト ID とともに、前記他のサブユニットの予約に関する情報を記憶させることが行われる。前記他の情報処理装置においては、前記他のサブユニットの予約に関する情報を記憶させるとき、前記オブジェクト ID のうちの前記固有の ID の部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有の ID で前記仮番号を書き換えることが行われる。
【0032】
【発明の実施の形態】
本発明を適用したネットワークシステムの構成例について、図2を参照して説明する。なお、本明細書においてシステムの用語は、複数の装置、手段などにより構成される全体的な装置を意味するものである。
【0033】
このネットワークシステムは、バス2を介して接続されているIRD1およびDVCR3から構成されている。当然、このバス2にはIRD1およびDVCR3以外に、例えば、パーソナルコンピュータ、ハードディスクドライブ、CDプレーヤ、モニタ、デジタルビデオカメラ、またはMD(商標)プレーヤ等のIEEE1394端子を備える電子機器を接続することが可能である。
【0034】
なお、バス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/ を参照のこと。また、ユニットが有する機能はサブユニットと呼ばれている。
【0035】
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が記憶している情報を検索する。
【0036】
IRD1のサブユニットであるBBS14は、コントローラ11が受け付けて、確定した録画予約の情報(詳細は、図20を参照して後述する)を記憶する。
【0037】
DVCR3のコントローラ31は、ユーザからの再生指示の操作や録画予約操作等を受け付けて、DVCR3の全体を制御する。アナログチューナブロック32は、コントローラ31の制御に基づいて、入力されるアナログ信号から所定のチャンネルの信号を抽出し、VCRサブユニット33に出力する。
【0038】
VCRサブユニット33は、アナログチューナブロック32から入力された映像信号、またはバス2を介して入力されるIRD1のチューナサブユニット12からの映像信号を図示せぬ磁気テープに記録する。
【0039】
BBS34は、DVCR3に関わる録画予約の情報を管理する。
【0040】
なお、チューナサブユニット12とBBS14は、IRD1のサブユニットであり、VCRサブユニット33とBBS34は、DVCR3のサブユニットである。アナログチューナブロック32は、DVCR3の1つの機能を実行するものではあるが、バス2を介して他のユニットから制御されるものではないので、サブユニットではない。
【0041】
このネットワークシステムにおいて、デジタル衛星放送の録画予約を行う場合、ユーザはIRD1に対して録画予約の設定(チャンネル、および録画開始時刻等の設定)を入力する。そして、その録画予約がダブルブッキングではない場合、入力された録画予約が認められて、その情報がIRD1のBBS14に書き込まれる。
【0042】
BBS14は、図3に示すように、RSB(Resource Schedule Board)51およびSAB(Schedule Action Board)52から構成される。SAB52は、IRD1のコントローラ11または他のユニットのコントローラ(例えば、DVCR3のコントローラ31)から入力された録画予約に関する全ての情報を記憶する。すなわち、SAB52は、所定の時刻においてIRD1のチューナサブユニット12に受信させ、受信した情報をDVCR3のVCRサブユニット33に録画させるという一連の動作を制御するための全ての情報を記憶している。
【0043】
これに対して、RSB51は、録画予約に関する全ての情報(他のユニットにより設定された録画予約を含む)のうちの、IRD1のサブユニットであるチューナサブユニット12の予約に関する情報のみを記憶し(関連して動作する場合であっても、VCRサブユニット33の予約情報は記憶しない)、記憶した情報を同一ユニット内のコントローラ11だけでなく、他のユニットのコントローラ(例えば、DVCR3のコントローラ31)からの要求に対応して公開する。
【0044】
同様に、DVCR3のBBS34は、図4に示すように、RSB61およびSAB62から構成される。SAB62は、DVCR3のコントローラ31または他のユニットのコントローラ(例えば、IRD1のコントローラ11)から入力された録画予約に関する全ての情報を記憶する。これに対して、RSB61は、DVCR3のコントローラ31に入力された録画予約、およびIRD1のコントローラ11に入力された録画予約に関する全ての情報のうちの、DVCR3のサブユニットであるVCRサブユニット33の予約に関する情報を記憶し(関連して動作する場合であっても、チューナサブユニット12の予約情報は記憶しない)、記憶した情報を同一ユニット内のコントローラ31は勿論、他のユニットのコントローラ(例えば、IRD1のコントローラ11)からの要求に対応して公開する。
【0045】
なお、RSB51,61に記憶され、公開される情報の詳細は、図22を参照して詳述する。
【0046】
次に、図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)を特定する情報(識別情報)を記憶させる。
【0047】
その後、例えば図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に記録される。
【0048】
次に図7乃至図9のフローチャートを参照して、以上の予約処理(競合ユニット検索処理)の詳細について説明する。
【0049】
最初にステップ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コマンドを出力する。
【0050】
但し実際には、RSB51とコントローラ11とはIRD1内に保持されているものであり、その間には、バス2は存在していない。そこで、コントローラ11は、RSB51に対して、バス2を介してWRITE OPENコマンドが供給されてきた場合と同様の状態となるように、RSB51を制御する。
【0051】
例えば、関連して使用されるサブユニットのうち、チューナサブユニット12が存在する機器としてのIRD1におけるRSB51に対するWRITE OPENの処理が完了した後、次に残りの関連するサブユニットとしてのVCRサブユニット33が存在する機器としてのDVCR3におけるRSB61をWRITE OPENする処理が同様に行われるのであるが、その場合には、コントローラ11は、バス2を介して、図10に示すようなフォーマットのWRITE OPENコマンドをDVCR3のRSB61(コントローラ31)に出力する。
【0052】
この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”)が記述される。
【0053】
さらにoperand3には、subfunctionとして、descriptorを、読み出しまたは書き込みアクセスのためにオープンするWRITE OPENであることを表す値”0316”が記述される。operand4は、リザーブのための値”00”とされている。
【0054】
次にステップS13に進み、コントローラ11は、BBS14内のRSB51のdescrptior_lengthと、list_specific_information field(図22)を読み出す。この読み出しは、例えば図11に示すREADコマンドを利用して行われる。但しこの場合においても、コントローラ11とRSB51は、バス2を介して接続されている訳ではないので、コントローラ11からRSB51に対する読み出しは、直接的に行われる。ただし、コントローラ11がDVCR3のRSB61からデータを読み出す場合には、図11に示すようなREADコマンドが、バス2を介して、RSB61(コントローラ31)に出力される。
【0055】
図11に示すように、READコマンドの先頭のopcodeとしては、read descriptorであることを表す値、”0916”が記述されている。続くoperand0には、読み出すdescriptorを識別するためのdescriptor identifierが、記述される。このステップS13における読み出しの処理の場合は、リストIDでdescriptor identifierが記述される。具体的には後述する図23のRSBのwrite enabled list_specific_information fieldのAddress_offsetの”0016”乃至”0D16”が記述される。
【0056】
read_result_statusには、READコマンドを送出するときは、FFが記述され、ターゲットからリスポンスとして返される場合には、読み取り結果が記述される。data_lengthには、ターゲットから読み出されるべきデータのバイト数が記述される。この値が”0”に設定された時、全てのリストが読み出される。addressには、読み出しを開始すべきアドレスが記述される。その値が”00”とされた場合、先頭から読み出しが開始される。
【0057】
ステップS14において、コントローラ11はターゲットとしてのRSB51に対するリストの最大長の制限(図23におけるobject_list_maximum_size)、リストのエントリ数の制限(図23におけるobject_entries_maximum_number)、および各エントリの最大バイト長の制限(図23におけるobject_entry_maximum_size)を抽出する。
【0058】
そしてステップS15において、コントローラ11は、これからRSB51にデータ(予約情報)を記録しても、ステップS14で抽出されたリストの最大長(object_list_maximum_size)を越えないか否かを判定する。この制限が守られる場合には、ステップS16に進み、コントローラ11は、ステップS14で抽出されたリストのエントリ数の制限(最大エントリ数)(object_entries_maximum_number)から、現在のエントリ数を引いた値が”0”より大きいか否か、すなわち、まだ記録可能なエントリが残っているか否かを判定する。この条件が満足される場合には、さらにステップS17に進み、コントローラ11は、ステップS14で抽出された最大エントリ長(object_entry_maximum_size)から、これから書き込もうとしている予約情報のエントリ長を引いた値が”0”より大きいか否か、すなわち、書き込むべきエントリ長に、まだ余裕があるか否かを判定する。
【0059】
ステップS15乃至ステップS17における条件のいずれか1つが満足されない場合には、ステップS18に進み、コントローラ11は、例えば「予約が一杯です」のような警告表示をユーザに対して行う。ユーザはこれにより、予約が一杯で、それ以上予約をすることができないことを知ることができる。
【0060】
ステップS15乃至ステップS17の条件のいずれもが満足される場合には、RSB51に予約情報を書き込む余裕はあるので、ステップS19乃至ステップS25において、重複する時刻の予約がすでになされているか否かの判定処理が行われる。
【0061】
すなわちステップS19において、変数iに”0”が初期設定され、ステップS20において、RSB51に記録されているエントリの数number_of_entriesから変数iを減算した値が”0”より大きいか否か、すなわちRSB51に記録されている全てのエントリについて検索が行われたか否かが判定される。number_of_entriesから変数iを減算した値が”0”より大きい場合には、まだ検索していないエントリが存在するので、ステップS21に進み、コントローラ11は、RSB51に掲示されているobject_entry[i](図25)を読み出す(今の場合、object_entry[0]を読み出す)。
【0062】
なお、ステップS21における読み出しも、図11に示すREADコマンドで行われるが、この場合におけるdescriptor identifierの記述はobject positionで行われる。このobject entry[i]には、後述するように、既に登録されている予約の時刻情報(図26におけるstart_time,Duration)や、その予約において、使用するサブユニットの識別情報(図32におけるsubunit_type_and_ID[0])などが記憶されている。
【0063】
そこでステップS22において、コントローラ11は、ステップS11でユーザより入力された時刻情報(start_time,Duration)が、ステップS21で読み出された時刻情報(start_time,Duration)と重複しているか否かを判定する。時刻が重複している場合には、ステップS23に進み、コントローラ11は、ステップS11で予約設定されたサブユニット(今の場合、チューナサブユニット12)が、ステップS21で読み出したサブユニット(subunit_type_and_ID)と一致しているか否かを判定する。サブユニットが一致している場合には、結局、時刻とサブユニットの両方が一致していることになるので、ステップS25に進み、コントローラ11は、例えば「予約が重なっています」のような警告表示を行う。これによりダブルブッキングは、防止される。
【0064】
ステップS22において、時刻が重複していないと判定された場合、または、ステップS23において、時刻が一致していたとしても、サブユニットが一致していないと判定された場合、ダブルブッキングが発生する恐れはない。そこでステップS24において、変数iが1だけがインクリメントされ、ステップS20に戻り、number_of_entriesから変数iを減算した値が0より大きくないと判定されるまで、同様の処理が繰り返し実行される。すなわちRSB51に記憶されている全てのobject entry[i]について、重複する時刻の予約がなされているか否かの検索が行われる。
【0065】
ステップS20において、number_of_entriesから変数iを減算した値が”0”より大きくないと判定された場合(全てのobject entry[i]の検索が終了した場合)、ステップS26に進み、コントローラ11は、RSB51にCREATEコマンドを出力し、object entryをRSB51においてcreateする。ただし、この場合においても、CREATEコマンドは実際には出力されず(RSB61に対してobject entryをcreateする場合は出力されるが)、出力された場合と同様の処理が行われるだけである。
【0066】
なお、上述したステップS15乃至ステップS18の処理は、ステップS20の処理において、NOの判定が行われた場合に実行するようにすることも可能である。
【0067】
ここで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”の意味となる。
【0068】
これらの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)にも書き込み可能なものと読み出し可能なものがあり、これらの区別には、リストタイプが使用される。
【0069】
ところで、外部から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を管理する機能をターゲットが所有することになる。
【0070】
ここで、オブジェクトIDとは、リスト内でそのオブジェクトを一意に指定するための識別番号であり、このため当該オブジェクトIDを重複しないようにする機能が管理する側に必要になる。BBS自体は情報を提供する場所であり、オブジェクトIDの管理はコントローラが持つことになる。
【0071】
ところが、サブユニットに対してクリエイトコマンド(CREATE command)が発行された時、矛盾が生ずる虞がある。すなわち、オブジェクトをCREATEした際には、コントローラが管理すべきオブジェクトIDを、ターゲットが割り振ることになるからである。また、クリエイトコマンド(CREATE command)の発行後は、ライト制御を続けて行う必要がある。このように、処理が複数ステップにわかれていることにより、コントローラが書き込み途中に例えばバスから外されたような場合には、不完全なオブジェクトが作成されてしまう可能性がある。
【0072】
したがって、上記のような状況に置いては、その不完全なオブジェクトを特定し、そのようなオブジェクトができたときに、当該オブジェクトを良好に削除できるシステムが必要になる。
【0073】
そこで、本発明の実施の形態では、BBSへの書き込み手段を規格で規定し、不完全なオブジェクトを特定できる仕組みを用意している。
【0074】
すなわち、先ず、ターゲット(本実施の形態の場合はDVCR3)は、オブジェクトをクリエイト(CREATE)した時、オブジェクトID(グローバルユニークID(Grobal Unique ID:GUID)とrecord IDとで構成される)のうちのGUIDの部分に、一時的に管理する番号(例えば、全て”0”)を割り振るようにする。コントローラは、先にオブジェクト内部に情報を書き込み、正常に書き込みが終了したならば、最後にGUIDを書き換える。
【0075】
上記の手順を決めることにより、正常に書き込み作業が終了したときには、GUIDが全て”0”となっているオブジェクトはできないことになり、したがって、GUIDが全て”0”のオブジェクトは、書き込み途中で不完全となったオブジェクトと特定できることになる。
【0076】
これにより、書き込み途中のオブジェクトを一意に特定することができ、また、正常に書き込まれたオブジェクトと不完全なオブジェクトとを区別でき、さらに不完全なオブジェクト(無効なオブジェクト)を簡単に削除することが可能となる。このことにより、電子機器に設けられている有限なメモリを有効活用できるようになる。また、書き込み途中のオブジェクトの特定方法は、オブジェクトIDのGUID部分を全て”0”にするような簡単な方法なので、不完全なオブジェクトを削除するためのソフトウェアの作成も容易となる。
【0077】
なお、図9のステップS26において、CREATEコマンドを利用する代わりに、INSERTコマンドを使用することも可能である。
【0078】
次に、ステップS27に進み、コントローラ11は、RSB51のentry_specific_information fieldsの部分(図26乃至図32)に予約内容を書き込む。すなわち、これにより、start_time,Duration,repeat_information,使用するサブユニット(subunit_type_and_ID)などが書き込まれる。
【0079】
図16は、このような場合にコントローラ11が出力するWRITE DESCRIPTORコマンドのフォーマットを表している。ただしこの場合においても、コントローラ11とRSB51は、バス2を介して接続されている訳ではないので、書き込みは直接行われるが、コントローラ11がDVCR3のRSB61に書き込みを行う場合には、コントローラ11は、このWRITE DESCRIPTORコマンドを発行する。
【0080】
先頭のopcodeには、WRITE DESCRIPTORであることを表す値”0A16”が記述される。operand0には、書き込み対象となるディスクリプタを識別させるためのdescriptor indentifierが記述される。この記述は、object positionで行われる。
【0081】
以下、subfunctionとして、partial_replaceであることを表す値、”5016”が記述される。これによりpartial insertまたは、partial delateが実行される。insertでは、descriptor_identifierで指定されるoperandにより規定される1つ前に新しいdescriptiorが挿入される。deleteではdescriptior_identifierにより規定されるdescriptorが削除される。
【0082】
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”より大きい値とされ、挿入されるべきバイトの数を表している。
【0083】
次にステップS28に進み、コントローラ11は、リスト、すなわちRSB51をクローズする。この時コントローラ11は、RSB51に対して、図17に示すCLOSEコマンドを出力する。ただしこの場合においても、コントローラ11とRSB51は、バス2を介して接続されている訳ではないので、クローズ処理は直接的に行われるが、コントローラ11がDVCR3のRSB61をクローズする場合には、このCLOSEコマンドが出力される。
【0084】
図17に示すCLOSEコマンドのフォーマットは、基本的に図10に示した、WRITE OPENコマンドと同様のフォーマットであり、subfunctionが、図10においては、WRITE OPENを表す”0316”とされているのに対して、図17のCLOSEコマンドにおいては、CLOSEであることを表す値、”0016”とされている点が異なっている。その他の構成は図10における場合と同様である。
【0085】
次にステップS29に進み、コントローラ11は、予約に関連する他のリソースが存在するか否かを判定する。今の場合、これまでの処理によりチューナサブユニット12を予約するための処理が終了したので、まだDVCR3のVCRサブユニット33を予約するための処理が必要である。そこで、この場合においては、ステップS12に戻り、上述したRSB51に対して行われた場合と同様の処理が、DVCR3のRSD61に対しても行われる。
【0086】
そしてステップS29において、予約に関連する他のリソースが存在しないと判定された時、処理は終了される。
【0087】
ところで、例えば図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に記憶される。
【0088】
このように、各ユニットにおいて、独立に予約を行う場合においても、図7乃至図9のフローチャートに示した場合と同様の処理により、予約処理を行うことができる。ただし、このように、サブユニットを共同して使用する場合において、それぞれの予約を独立して行うと、ダブルブッキングが発生するか否かは、ユーザが管理する必要がある。
【0089】
次に、Object ID設定処理について、図19のフローチャートを参照して説明する。この処理は、ユーザがIRD1に対して、DVCR3を用いる録画予約の操作を入力し、その操作がコントローラ11に検知され、上述した図7乃至図9の予約処理(競合ユニット検索処理)が実行されて、その録画予約が認められた後、開始される。この例においては、所定の時刻から所定の時間の間、実行される予約処理(Event)に関し、それを識別するために、Object IDが対応される。このObject IDは、72ビットで構成され、そのうちのMSB側の64ビットは、その予約に関する全ての情報を持っている機器の固有のID、具体的にはその機器のGUID(Global Unique ID)とされ、LSB側の8ビットは、その機器内で設定される固有の値とされ、具体的には、record IDとされる。このようにObject IDをGUIDとrecord IDとで構成することにより、Eventを識別するためのObject IDを設定すると、ID設定の処理が容易となる。
【0090】
すなわちこのObject IDは、バス2に接続されている各機器の間において、識別可能である必要がある。そうでなければ、この例においては、1つのユニット(機器)のRSBの内容を他のユニット(機器)が読み込み可能であり、複数のユニットのサブユニットにおいて、共同して(関連して)処理が実行されることがあるので、関連する処理があるか否かを、他のユニットが識別できる必要があるからである。
【0091】
バス2に接続されている、ユニット間において、識別可能なものであれば、例えば、Object IDをEventが発生する毎に、番号1から順番に順次設定するようにすることも可能である。しかしながらそのようにすると、所定のユニットが、所定のEventに関して、Object IDを設定しようとした場合、バス2に接続されている全てのユニットが、既に設定しているObject IDを読み出して、競合するものがあるか否かを判定し、競合しないものに設定する必要が生じる。しかしながらこの例においては、GUIDがObject IDに含まれており、GUIDの値は、ユニット毎に異なるものであることが保証されている。したがって各ユニットは、record IDを自分自身の内部において、競合するものがないように設定すれば、GUIDとrecord IDを組み合わせて得られるObject IDは、他のユニットが設定したObject IDと競合することはない。そこで各ユニットは、図19のフローチャートに示すような処理を行って、RSBに登録するEventに対するObject IDを設定する。
【0092】
ステップS41において、コントローラ11は、Object ID(=Global Unique ID+record ID)のうちのrecord IDとして、IRD1内において、その予約情報を一意に識別させるための仮IDを発生する。
【0093】
ステップS42において、コントローラ11は、RSB51に登録されているEventの中から、1つのEventを抽出して、その Eventに対応するObject IDの中のrecord IDを抽出する。ステップS43において、コントローラ11は、ステップS41で発生した仮IDと、ステップS42で抽出したrecord IDが一致するか否かを判定し、一致する場合、ステップS41に戻り、仮IDを変更し、一致しない仮IDが発生されるまで、ステップS41乃至S43の処理を繰り返す。
【0094】
仮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等に記述する。
【0095】
このように、Object IDは、関連するサブユニットに関するRSBをチェックするだけで(関連しないサブユニットを有するユニットのRSBをチェックすることなく)設定することができる。これは、上述したように、他のユニットのRSBにおけるObject IDは、そのユニットのGUIDが含まれているため、他のユニットが設定したObject IDは、自分自身が設定したObject IDと一致することが有り得ないからである。したがって、Object IDを簡単に設定することが可能となる。
【0096】
次に、BBSの詳細について説明する。図20は、BBSを構成するSubunit identifier Descriptorのフォーマットを表している。descriptor_lengthは、このDescriptorの長さを表す。generation_IDは、このBBSにおいて、どのAV/C descriptorフォーマットが使用されるかを表し、通常”0016”とされる。
【0097】
size_of_list_IDは、list IDのバイト数を表す。size_of_object_IDは、このobject IDのバイト数を表す。
【0098】
size_of_object_posionは、list内のobjectの位置が参照されるときに使用されるバイト数を表す。number_of_root_object_listsは、このBBSが直接関連するroot object listsの数を表す。
【0099】
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が依存するフォーマットおよびコンテンツに関する情報が記述される。
【0100】
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]が含まれている。
【0101】
さらに、BBSには、manufacturer_dependent_informatinの長さを表す、manufacturer_dependent_lengthと製造者に依存する情報を含むmanufacturer_dependent_informationが記述される。
【0102】
root_object_list_idの値は、それがRSBを表すものである場合、図21に示すように、所定の値”100116”とされる。このように、RSB(図21ではResource Schedule Listと記述されている)を表すIDを、所定の値に固定しておくことにより、RSBを読み出す処理が容易となる。
【0103】
図22は、RSBのフォーマットを表している。descriptor_lengthはRSBの長さを表す。list_typeには、RSBがRead Onlyであるのか、またはWrite Enabledであるのかが記述される。Read Only listは、読み出しのみが可能とされ、Write Enabled listには、書き込みが可能とされる。
【0104】
size_list_specific_informationは、list_specific_informationの長さを表し、list_specific_informationは、list_typeによって異なるものとなる。Write Enabled list_specific_infomationの場合、図23により詳細に示す情報が記述される。
【0105】
non_info_block_fileds_lengthは、non info block fieldsのバイト数を表す。board_typeは、図24に示すように、Resource Schedule Boardの場合、”0116”とされる。
【0106】
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”とされる。
【0107】
これらの3つのフィールドは、コントローラがobject listまたは、object entryの容量を知る上において、有意義である。
【0108】
board_type_dependent_information_lengthは、board_type_dependent_informationの長さを表し、board_type_dependent_informationは、board typeに固有の情報を表す。
【0109】
object_entryは、より詳細には、図25に示すように構成される。descriptor_lengthは、このdescriptorの長さを表し、entry_typeは、Board entry Descriptorの場合、Board を表す値”8016”とされる。
【0110】
object_IDは、posting_device_GUIDとrecord_IDとにより構成される。posting_deviceは、BBSに対して情報を記入(post)したコントローラを意味し、従ってposting_device_GUIDは、そのGUIDを表す。record_IDは、ユニット内においてEventに対して割当てられたIDを表す。
【0111】
size_of_entry_specific_imformationは、entry_specific_imformationの大きさを表す。
【0112】
図26は、entry_specific_imformationのフォーマットを表している。non_info_block_lengthは、repeat_informationまでのnon-info block fieldsのバイト数を表す。start_timeは、詳細には、図27に示すように、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で表される。
【0113】
このようにBCDで表すことにより、識別が容易となる。またこの時刻は、ローカルタイムで表される。
【0114】
eventの長さを表すDurationは、詳細には図28に示すように、時分秒で表される。時間は、3つの数字がそれぞれ4ビットのBCDで表され、合計12ビットとされる。分は,2つの数字がそれぞれ4ビットのBCDとされ、合計8ビットで表される。秒は2つの数字がそれぞれ4ビットのBCDで表され、合計8ビットとされる。
【0115】
start_timeにDurationを加算することで、evntの終了時刻が表される。終了時刻を直接的に表現せずに、Durationとしてeventの長さを表すようにすることで、eventのstart_timeが変更されたような場合においても、その終了時刻は変更する必要がなくなり、変更処理が容易となる。
【0116】
repeat_information_lengthは、repeat_informationの長さを表している。 repeat_informationは、いつどのようにしてscheduleが繰り返されるかを表す。Scheduled Actionが繰り返されない場合、repeat_infomation_lengthは、”0016”とされる。
【0117】
repeat_informationは、選択されたrepeat typeによって内容が異なる。repeat typeには、図29に示すように、Weekly schedule”0016”と、Interval schedule”1016”とがある。
【0118】
scheduleが、週毎に繰り返される場合、Posting Deviceは、その曜日および繰り返されるべきeventの数を図30に示すように表示する。
【0119】
repeat_typeには、図29に示す値、”0016”が記述される。number_of_eventsには、eventの数が記述される。日曜日から土曜日までのWeekly flagsは、繰り返されるeventが開始する週の日を表す。例えば、13時00分から3時間のeventが、毎週月曜日と水曜日に開始される場合、月曜日と水曜日のフラグに”1”が設定され、その他のフラグには”0”が設定される。
【0120】
このように週毎に繰り返されるeventが記録できるので、例えば月曜日と水曜日の絶対的な日時を放送日に対応する分だけ記憶させるような場合に比べて、記憶容量は小さくて済ませることが可能ととなる。
【0121】
Posting Deviceは、Scheduled Actionが所定のintervalsで繰り返される場合、図31に示すようなフォーマットでeventを記述する。
【0122】
repeat_typeには、この例の場合、図29に示す値”1016”が記述される。number_of_eventsには、eventの数が記述される。
【0123】
interval(間隔)は、現在のeventのstart_timeから次のeventのstart_timeまでの間隔を表す。この間隔は、時分秒で表される。時間は、3つの数字がそれぞれ4ビットのBCDで表され、合計12ビットで表現される。分と秒は、それぞれ2つの数字が4ビットのBCDとされ、合計8ビットで表現される。
【0124】
このように周期的に繰り返されるeventが記憶できるので、それぞれが開始される絶対時刻(日時)を別に記憶させる場合に比べて、記憶容量が少なくて済む。
【0125】
図26に示すように、info blocksは図32に示すようなフォーマットとされる。conpound_lengthは、info blockのバイト長を表す。ただしlengthフィールド自身は、この長さに含まれていない。info_block_typeは”890016”にセットされる。primary_fields_lengthは、number_of_subunitsとsubunit_type_and_ID fieldのバイト数を表す。
【0126】
number_of_subunitsは、posting Deviceが使用するsubunitsの数を表す。 subunit_type_and_IDは、posting Deviceが使用するsubunitsを指定する。
【0127】
このようにstart_timeとDurationが固定のアドレスにおける固定の長さで表される。それに対して、subunitと、それを使用するPosting Deviceを識別する識別情報は、Info blocksとして、start_time,Durationなどより後の所定のアドレスに記憶される。これによりPosting Deviceの数が増加としても、対応が容易となる。
【0128】
図20のsupported_board_type_specific_informationフィールドは、図33に示すようなフォーマットとされる。supported_board_typeには、図24に示すRSBであることを表す値”0116”が記述される。supported_board_type_versionは、bulletin Bond Type Specificationのバージョンの番号を表す。inplementation_profile_IDはこのboard typeのためのprofile IDバージョンを表す。
【0129】
supported_board_type_dependend_information_lengthは、supported_type_dependent_informationのバイト数を表す。supported_board_type_dependent_informationには、各board type specificationに固有の情報が記述される。
【0130】
上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアとしてのコントローラに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどにインストールされる。
【0131】
汎用のパーソナルコンピュータ101は、例えば、図34に示すように、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により受信され、インストールされたプログラムも含まれる。
【0132】
また、CPU111は、プログラムの処理結果のうち、画像信号を、入出力インターフェース116を介して、LCD(Liquid Crystal Display),CRT(Cathode Ray Tube)などよりなる表示部117に出力する。
【0133】
【発明の効果】
以上のように、本発明によれば、ダブルブッキングの発生を抑止することが可能となる。
【図面の簡単な説明】
【図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】 Object ID設定処理を説明するフローチャートである。
【図20】 BBSのフォーマットを説明する図である。
【図21】図20のroot_object_list_IDを説明する図である。
【図22】 RSBのフォーマットを説明する図である。
【図23】図22のWrite Enabled list_specific_informationのフォーマットを説明する図である。
【図24】図23のboard_typeのフォーマットを説明する図である。
【図25】図22のobject_entryのフォーマットを説明する図である。
【図26】図25のResource Schedule Entryのフォーマットを説明する図である。
【図27】図26のstart_timeのフォーマットを説明する図である。
【図28】図26のDurationのフォーマットを説明する図である。
【図29】図30のrepeat_typeのフォーマットを説明する図である。
【図30】図26のrepeat_informationのフォーマットを説明する図である。
【図31】図26のrepeat_informationのフォーマットを説明する図である。
【図32】図26のInfo blocksのフォーマットを説明する図である。
【図33】図20のsupported_board_type_specific_informationのフォーマットを説明する図である。
【図34】コンピュータの構成例を示すブロック図である。
【符号の説明】
1 IRD, 2 IEEE1394シリアルデータバス, 3 DVCR, 11 コントローラ, 12 チューナサブユニット, 14 BBS, 31 コントローラ, 32 アナログチューナブロック, 33 VCRサブユニット, 34 BBS, 51 RSB, 52 SAB, 61 RSB, 62 SAB
Claims (4)
- ユニットとしての情報処理装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される他の情報処理装置が有する機能ブロックである他のサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記情報処理装置自身の固有の ID と、自分自身の内部で競合しない ID とからなるオブジェクト ID を設定する設定手段と、
前記設定手段により設定された前記オブジェクト ID とともに、前記サブユニットの予約に関する情報を記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開する第1の記憶手段と、
前記サブユニットと前記他のサブユニットを関連させた一連の動作を制御するための情報を記憶する第2の記憶手段と、
前記他の情報処理装置が有する、前記他のサブユニットの予約に関する情報を記憶する記憶手段に、前記設定手段により設定された前記オブジェクト ID とともに、前記他のサブユニットの予約に関する情報を記憶させる制御手段と
を備え、
前記他の情報処理装置においては、前記他のサブユニットの予約に関する情報を記憶させるとき、前記オブジェクト ID のうちの前記固有の ID の部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有の ID で前記仮番号を書き換えることが行われる
情報処理装置。 - 前記ネットワークは、IEEE1394シリアルデータバスを用いて構成される
請求項1に記載の情報処理装置。 - ユニットとしての情報処理装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される他の情報処理装置が有する機能ブロックである他のサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記情報処理装置自身の固有の ID と、自分自身の内部で競合しない ID とからなるオブジェクト ID を設定し、
設定した前記オブジェクト ID とともに、前記サブユニットの予約に関する情報を第1の記憶手段に記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開し、
前記サブユニットと前記他のサブユニットを関連させた一連の動作を制御するための情報を第2の記憶手段に記憶し、
前記他の情報処理装置が有する、前記他のサブユニットの予約に関する情報を記憶する記憶手段に、設定した前記オブジェクト ID とともに、前記他のサブユニットの予約に関する情報を記憶させる
ステップを含み、
前記他の情報処理装置においては、前記他のサブユニットの予約に関する情報を記憶させるとき、前記オブジェクト ID のうちの前記固有の ID の部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有の ID で前記仮番号を書き換えることが行われる
情報処理方法。 - ユニットとしての情報処理装置自身が有する機能ブロックであるサブユニットと、ネットワークを介して接続される他の情報処理装置が有する機能ブロックである他のサブユニットとを関連して動作させることの予約が設定された場合、設定された予約に対して、前記情報処理装置自身の固有の ID と、自分自身の内部で競合しない ID とからなるオブジェクト ID を設定し、
設定した前記オブジェクト ID とともに、前記サブユニットの予約に関する情報を第1の記憶手段に記憶し、記憶している情報を、前記ネットワークを介して接続される装置からの要求に対応して公開し、
前記サブユニットと前記他のサブユニットを関連させた一連の動作を制御するための情報を第2の記憶手段に記憶し、
前記他の情報処理装置が有する、前記他のサブユニットの予約に関する情報を記憶する記憶手段に、設定した前記オブジェクト ID とともに、前記他のサブユニットの予約に関する情報を記憶させる
ステップを含む処理をコンピュータに実行させるプログラムが記録されており、
前記他の情報処理装置においては、前記他のサブユニットの予約に関する情報を記憶させるとき、前記オブジェクト ID のうちの前記固有の ID の部分を一時的な仮番号として予約に関する情報を記憶させた後、前記固有の ID で前記仮番号を書き換えることが行われる
記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25110399A JP4186332B2 (ja) | 1998-09-14 | 1999-09-06 | 情報処理装置および方法、並びに記録媒体 |
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25973598 | 1998-09-14 | ||
JP10-259735 | 1998-09-14 | ||
JP10-296502 | 1998-10-19 | ||
JP29650298 | 1998-10-19 | ||
JP5365699 | 1999-03-02 | ||
JP11-53656 | 1999-03-02 | ||
JP25110399A JP4186332B2 (ja) | 1998-09-14 | 1999-09-06 | 情報処理装置および方法、並びに記録媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000316133A JP2000316133A (ja) | 2000-11-14 |
JP2000316133A5 JP2000316133A5 (ja) | 2006-04-20 |
JP4186332B2 true JP4186332B2 (ja) | 2008-11-26 |
Family
ID=27462943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25110399A Expired - Fee Related JP4186332B2 (ja) | 1998-09-14 | 1999-09-06 | 情報処理装置および方法、並びに記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4186332B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080134270A1 (en) * | 2004-10-20 | 2008-06-05 | Kazutomo Watanabe | Programming Management System, Programming Management Apparatus, Programming Management Method, and Programming Management Program |
EP2051522B1 (en) * | 2006-11-02 | 2019-06-26 | Panasonic Corporation | Broadcast-program recording-programming system |
-
1999
- 1999-09-06 JP JP25110399A patent/JP4186332B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000316133A (ja) | 2000-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7631334B2 (en) | Information processing device, information processing method and medium | |
US7224886B2 (en) | Method of using AV devices and AV device system | |
US6513064B1 (en) | Information processing apparatus, information processing method, and recording medium | |
JP2002525732A (ja) | 通信方法及び通信システム | |
US20010002846A1 (en) | Electronic device for managing removable storage medium, method and storage medium therefor | |
EP0801488B1 (en) | Information transfer method and apparatus | |
JP4323114B2 (ja) | ピアトゥピア配信ネットワーク環境におけるリソーススケジュールの管理方法及び装置 | |
JPH11177919A (ja) | Av機器、機器使用方法及びav機器システム | |
JP4186332B2 (ja) | 情報処理装置および方法、並びに記録媒体 | |
KR100575012B1 (ko) | 정보 처리 장치 및 방법, 및 기록 매체 | |
EP1056242B1 (en) | Information processing apparatus and method, and recording medium | |
JP4251248B2 (ja) | 受信装置、情報処理方法、並びに記録媒体 | |
EP1093319A1 (en) | Network control system and method therefor | |
US20020184573A1 (en) | Method and device for configuring a functional unit with a temporary character in a communication network | |
JP3943677B2 (ja) | タイマ管理を行なう機器及び機器システム | |
JPH10269754A (ja) | 電子機器および電子機器制御方法、情報提供装置および方法、並びに情報提供システム | |
EP0987891A2 (en) | Timer-controlled information processing method and apparatus | |
MXPA99008383A (en) | Information processing device, information processing method, and media de regis | |
MXPA99008384A (en) | Information processing device, information processing method, and media de regis | |
EP1102170A1 (en) | Information processing device and method, and information processing system | |
JP2004336464A (ja) | Tv番組録画再生装置 | |
JP2000187934A (ja) | 情報処理装置および方法、並びに媒体 | |
JP2000358048A (ja) | 情報処理装置および方法、並びに記録媒体 | |
MXPA99008385A (en) | Timer-controlled information processing method and apparatus | |
JPH10269757A (ja) | 電子機器、電子機器制御方法、電子機器制御装置、並びに電子機器制御システム |
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: 20080529 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080603 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080723 |
|
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: 20080819 |
|
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: 20080901 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110919 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110919 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120919 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120919 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130919 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |