〔実施形態1〕
本発明の第1の実施形態に係る記録装置について、図面に基づいて説明すれば以下のとおりである。なお、本実施形態に係る記録装置は、光ディスクにデータを書き込む記録装置と実現されているので、以下ではこれを光ディスクドライブ装置と呼称する。光ディスクとしては、BD(Blu-ray Disc)、DVD(Digital Versatile Disc)、CD(Compact Disc)などが想定される。ただし、本発明はこれに限定されず、書込み遅延を有する記録媒体にデータを書き込む記録装置一般に適用することができる。
<光ディスクドライブ装置の構成>
まず、光ディスクドライブ装置10の構成について、図1を参照して説明する。図1(a)は、光ディスクドライブ装置10の構成を示すブロック図であり、図1(b)は、ドライブ制御部12の構成を示す機能ブロック図である。
図1(a)に示したように、光ディスクドライブ装置10は、インターフェース部11と、ドライブ制御部12と、光ディスクドライブ部13と、メモリ14とを備えている。
インターフェース部11は、ホスト装置から発せられたコマンドを取得するための手段であり、例えば、ATAPI(ATA Packet Interface)、ATA(Advanced Technology Attachment)、またはSATA(Serial Advanced Technology Attachmen)インタフェースを用いて構成することができる。インターフェース部11が取得するコマンドしては、光ディスクPDにデータを書き込む書き込みコマンドや、光ディスクPDからデータを読み出す読み出しコマンドなどが挙げられる。書き込みコマンドには、データを書き込むべき光ディスクPD上の領域を指定するディスク領域指定情報(例えば、論理ブロックアドレス)が含まれる。また、読み出しコマンドには、データを読み出すべき光ディスクPD上の領域を指定するディスク領域指定情報(例えば、論理ブロックアドレス)が含まれる。
ドライブ制御部12は、インタフェース部11にて取得したコマンドに応じて光ディスクドライブ装置10の各部を制御するための手段であり、例えば、CPU(Central Processing Unit)を用いて構成することができる。この場合、CPUをドライブ制御部12として機能させるためのプログラムは、例えば、メモリ14に記憶しておけばよい。ドライブ制御部12は、図1(b)に示したように、仮書込手段12aと、読出手段12bと、本書込手段12cと、再配置手段12dとを含む。ドライブ制御部12の制御により実現される光ディスクドライブ1の動作については、参照する図面を代えて後述する。
光ディスクドライブ部13は、光ディスクドライブ1に装填された光ディスクPDに記録マークを形成することによって光ディスクPDにデータを書き込んだり、光ディスクPDに形成された記録マークを読み取ることによって光ディスクPDに書き込まれたデータを読み出したりするための手段である。光ディスクドライブ部13は、例えば、光ヘッド(光ピックアップ装置)やスピンドルモータなどにより構成することができる。
メモリ14は、光ディスクPDに記録するべきデータなどを一時的に記憶するための手段であり、例えば、不揮発性メモリ(より具体的にはフラッシュメモリ)により構成することができる。なお、ハードディスクドライブなど、光ディスクドライブ部13と比べて書き込み遅延の小さい任意の記憶装置をメモリ14の代わりに利用しても、本発明の本質的効果が損なわれることはない。ただし、フラッシュメモリなどの半導体メモリを利用することにより、書き込み速度の向上や消費電力の削減などの副次的効果を得ることができる。また、不揮発性メモリを利用する場合には、電源断時にも光ディスクに書き込むべきデータを保持しておくことができるというメリットがある。
また、メモリ14の記録容量は任意であるが、メモリ14の記録容量が光ディスクPDの記録容量以上であれば、本書き込みを行ってメモリを開放せずとも、光ディスクPDに記録し得るすべてのデータをメモリ14に書き込んでおくことができる。すなわち、まったくエラーを発生させることなく光ディスクPDにデータを書き込むことができる。このため、例えば、レコーダ装置(ホスト装置)に内蔵された光ディスクドライブ装置10を用いて長時間に渡る番組録画を行なうような場合、レコーダ装置は一度もエラー処理を行うことなく番組録画を完了することができる。そして、本書き込み時に発生しえる書き込みエラーに対する対処は、番組録画を完了してから余った演算資源を用いて行なえばよい。
<光ディスクドライブ装置10の動作>
次に、光ディスクドライブ1の動作について、図2および図3を参照して説明する。図2は、光ディスクドライブ装置10の動作例を示すシーケンス図であり、図3は、その変形例を示すシーケンス図である。
図2に示したように、インタフェース部11が書き込みコマンドを取得すると、ドライブ制御部12の仮書込手段12aが、その書き込みコマンドと共にホスト装置から与えられたデータをメモリ14に書き込み(図1(a)の経路A参照:これを以下では「仮書き込み」と称する)、メモリ14への書き込みが完了し次第、ホスト装置に書き込み完了通知(ACK)を返す。これにより、ホスト装置からは、光ディスクPDに対するデータの書き込みが遅延なく完了したように見える。この際、仮書込手段12aは、書き込みコマンドに含まれるディスク領域指定情報(すなわち、そのデータを書き込むべき光ディスクPD上の領域を指定する領域指定情報)と、そのデータを書き込んだメモリ14上の領域を指定するメモリ領域指定情報とを関連付けて、メモリ14に保存された仮想化テーブルに登録する。
また、図2においては省略されてるが、インターフェース部11が読み出しコマンドを取得すると、ドライブ制御部12の読出手段12bが、その読み出しコマンドに含まれるディスク領域指定情報により指定された光ディスクPD上の領域に書き込まれたデータを読み出すよう光ディスクドライブ部13を制御する。読み出されたデータは、ホスト装置に返される。ただし、そのディスク領域指定情報が仮想化テーブルに登録されている場合には、仮想化テーブルにおいてそのディスク領域指定情報に関連付けられているメモリ領域指定情報により指定されたメモリ14上の領域に書き込まれたデータを読み出し、読み出したデータをホスト装置に返す。これにより、ホスト装置は、読み出すべきデータが光ディスクPDに書き込まれているのかメモリ14に書き込まれているのかを意識することなく、同一の読み出しコマンドにより読み出すべきデータを正しく読み出すことができる。つまり、仮想化テーブルを利用することによって、メモリ14を光ディスクPDの仮想ディスクとして利用することができる。
また、図2に示したように、インターフェース部11が本書込コマンドを取得すると、ドライブ制御部12の本書込手段12cが、仮想化テーブルに登録されたメモリ指定情報の各々について、そのメモリ領域指定情報により指定されたメモリ14上の領域に書き込まれたデータを、そのメモリ指定情報に関連付けられたディスク領域指定情報により指定された光ディスクPD上の領域に書き込む(図1の経路B参照:これを以下では「本書き込み」と称する)よう、ディスクドライブ部13を制御する。また、そのメモリ領域指定情報により指定されたメモリ14上の領域に書き込まれたデータを消去する。これにより、メモリ14に仮書き込みされたデータが光ディスクPDにコピーされ、光ディスクPDへのデータの書き込みが完了する。
なお、ここではホスト装置から本書込コマンドを取得した時点で本書き込みを行なう構成について説明したが、本書き込みを行なうタイミングは、これに限定されるものではない。例えば、光ディスクPDを排出する時点で本書き込みを行なうようにしてもよい。また、本書き込み時に電源断が生じた場合には、光ディスクPDへの本書き込みが正しく行われていない可能性があるので、電源断後の復帰の際に本書き込みを行うようにしてもよい。さらに、メモリ14への仮書き込みを行なうのと同時に、光ディスクPDへの本書き込みを行なうようにしてもよい。この場合、いったんメモリ14に書き込んだデータを光ディスクにコピーするのではなく、インタフェース11を介して取得したデータをそのままディスクドライブ部13に渡すようにしてもよい。要するに、本書き込みを行なうタイミングは任意である。
ところで、光ディスクドライブ部13による光ディスクPDへのデータの本書き込みは、光ディスクドライブ部13に内蔵された光ヘッドから射出されたビームによって、指定された光ディスクPD上の領域に記録マークを書き込むことにより実現される。したがって、指定された光ディスクPD上の領域に記録マークの書き込みを阻害するような欠陥があると、光ディスクドライブ部13は、指定された光ディスクPD上の領域に正しく記録マークを書き込むことができない。このため、仮書き込み時に指定された光ディスクPD上の領域への書き込みに成功したことが通知されているにもかかわらず、実際には、指定された光ディスクPD上の領域への書き込みが行われていないという事態が生じえる。つまり、ホスト装置が認識しているファイルシステムと、光ディスクPD上の実際のファイルシステムとの間に齟齬が生じえる。
そこで、ドライブ制御部12は、再配置手段12dをさらに備えている。本書込手段12cが上述した本書き込みに失敗すると、図2に示したように、再配置手段12dは、本書込手段12cが本書き込みに失敗したデータをメモリ14から読み出し、本書込手段12cが本書き込みに失敗した領域とは異なる領域に書き込むよう、光ディスクドライブ部13を制御する。再配置手段12dは、光ディスクPDへの本書き込みに成功するまでこれを繰り返す。そして、再配置手段12dは、本書込手段12cが本書込みに失敗した領域を指定する失敗領域指定情報と、本書き込みに成功した領域を指定する成功領域指定情報とを含む再配置情報をホスト装置に通知する。ホスト装置は、この再配置情報に基づいて、光ディスクPD上のファイルシステムとの間に生じた齟齬を埋め合わせることができる。
なお、データをメモリ14に仮書き込みするのと同時に、光ディスクPDに本書き込みする場合、光ディスクドライブ装置10の動作は、図4に示したようになる。この場合にも、ホスト装置は、この再配置情報に基づいて、光ディスクPD上のファイルシステムとの間に生じた齟齬を埋め合わせることができる。
また、ここでは光ディスクドライブ装置10側で再配置を行う構成について説明したが、図3に示したように、ホスト装置側で再配置を行う構成に変形することもできる。この場合、ドライブ制御部12は、本書込手段12cが上述した本書き込みに失敗すると、本書き込みに失敗した領域を指定する失敗領域指定情報をホスト装置に通知する。そして、ホスト装置が、本書き込みに失敗したデータを、本書込手段12cが本書き込みに失敗した領域とは異なる領域に書き込むように指示する書き込みコマンドを光ディスクドライブ装置10に対して発行する。この構成を採用しても、ホスト装置が認識しているファイルシステムと、光ディスクPD上の実際のファイルシステムとの間に生じえる齟齬を回避することができる。
また、データをメモリ14に仮書き込みするのと同時に、光ディスクPDに本書き込みする場合、光ディスクドライブ装置10の動作は、図5に示したようになる。この場合にも、ホスト装置は、この再配置情報に基づいて、光ディスクPD上のファイルシステムとの間に生じた齟齬を埋め合わせることができる。
〔実施形態2〕
本発明の第2の実施形態に係る記録装置について、図面に基づいて説明すれば以下のとおりである。なお、本実施形態に係る記録装置は、レコーダ装置に内蔵された光ディスクドライブ装置として実現されているので、以下ではこれをドライブ部と呼称する。なお、このレコーダ装置は、コンテンツを光ディスクに記録する記録機能だけでなく、記録媒体に記録されているコンテンツおよび外部より取得したコンテンツを再生する再生機能を有するレコーダ装置である。
<レコーダ装置100の構成>
本実施形態に係るレコーダ装置の構成について、図6を参照しつつ以下に説明する。図6は、レコーダ装置100の要部構成を示すブロック図である。
図6に示すように、レコーダ装置100は、レコーダ装置100に入力されるコンテンツの再生または記録(録画)全般を実行するバックエンド部200、ならびに、装填されている光ディスクからのデータの読み出し、および装填されている光ディスクに対するデータの書き込み全般を実行するドライブ部300を備えている。
ドライブ部300は、従来の光ディスクドライブ装置が備えている機能に加え、以下の新規な機能を有している。すなわち、(1)ユーザにより指定された複数の光ディスクをマイディスクとして登録する登録機能、(2)マイディスクとして登録された光ディスクに対する書き込み命令がバックエンド部200から与えられたとき、その光ディスクにデータを書き込むと共に、ドライブ部300内に設けられたメモリにデータを書き込む書き込み機能(仮書き込み機能)、(3)マイディスクに対する読み出し命令がバックエンド部200から与えられたときに、その光ディスクからデータを読み出す代わりに、上記メモリからデータを読み出す読み出し機能、(4)マイディスクとして登録された光ディスクに書き込む代わりに上記メモリに書き込まれたデータをその光ディスクに書き込み、上記メモリと上記光ディスクとに記録されているデータを同期させる同期機能(本書き込み機能)、及び、(5)上記メモリに書き込まれたデータを書き込み命令に指定された光ディスク上の領域に書き込むことができなかった場合に、そのデータを他の領域に書き込み直す再配置機能を有している。そして、バックエンド部200は、これらの新規な機能を利用して、コンテンツの録画、再生、および編集を行なう。以下、このようなバックエンド部200およびドライブ部300の構成例について、以下に順に説明する。
バックエンド部200は、図6に示すように、チューナー部210、エンコーダ部220、ストリーム処理部230、バックエンド制御部240、デコーダ部260、画像処理部270、バッファ部250、記憶部280およびインターフェース部290を備えている。また、図6に示すように、ストリーム処理部230、バックエンド制御部240、デコーダ部260、画像処理部270、バッファ部250、記憶部280およびインターフェース部290は、バスラインを介して互いに接続されている。
ドライブ部300は、図6に示すように、インターフェース部310、ドライブ制御部320、ディスクドライブ部330および記憶部340を備えている。また、図6に示すように、インターフェース部310、ドライブ制御部320、ディスクドライブ部330および記憶部340は、バスラインを介して互いに接続されている。
本明細書等では、記憶部340における各領域に対して対応付けられた光ディスク、すなわち自身の有するメディアIDが記憶部340に記録されている光ディスクを「マイディスク」と称する。
バックエンド部200およびドライブ部300の備える各部材について、以下に説明する。
(チューナー部210、エンコーダ部220)
チューナー部210は、アンテナ部において受信したデジタル放送波(例えば、BSデジタル放送、CSデジタル放送、地上波デジタル放送)から、映像データ、音声データなどが多重化されているストリーム(Transport Stream:TS)を抽出する。
エンコーダ部220は、アンテナ部において受信したアナログ放送、または、外部から入力された映像/音声信号をMPEG2−TS形式またはMPEG2−PS形式にエンコードする。
(ストリーム処理部230、バッファ部250)
ストリーム処理部230は、抽出されたストリームまたはエンコードされたストリームに多重化されている映像データ、音声データなどの個々のデータを分離、抽出すると共に、同じパケット識別子(PID)が付与されているパケット(TS)のペイロード部を繋ぎ合わせることにより、コンテンツデータ(PESパケット)を復元する。また、不図示の通信部によりネットワークを介して入力されるコンテンツデータもストリーム処理部230において処理される。
なお、ストリーム処理部230において処理されたコンテンツデータは、一時的にバッファ部250に格納される。バッファ部250は、表示装置またはドライブ部300に対して出力するコンテンツデータ(映像データ、音声データなど)を一時的に記憶するメモリである。バッファ部250は、揮発メモリを用いることが一般的であるが、不揮発性メモリを用いてもよい。
(バックエンド制御部240)
バックエンド制御部240は、レコーダ装置100におけるコンテンツデータの記録および再生全般を制御する。
ストリーム処理部230において復元したコンテンツデータを、ドライブ部300に装填されている光ディスクに対して記録する場合、バックエンド制御部240は、光ディスクに書き込むための書き込み命令をインタフェース部290を介してドライブ制御部320に出力すると共に、書き込み対象とするコンテンツデータをバッファ部250から読み出してインタフェース部290を介してドライブ部300に対して出力する。
ドライブ部300に装填されている光ディスクに記録されているコンテンツデータを再生する場合、バックエンド制御部240は、ドライブ部300に対して、コンテンツデータを光ディスクから読み出すための読み出し命令を、インターフェース部290を介してドライブ制御部320に出力する。このとき、光ディスクから読み出されたコンテンツデータは、バッファ部250に一時的に格納される。
また、バックエンド制御部240は、バッファ部250に格納されているコンテンツデータを表示装置に対して出力する場合には、バッファ部250から読み出したコンテンツデータをデコードするようデコーダ部260を制御する。
(デコーダ部260)
デコーダ部260は、バックエンド制御部240からの指示を受けて、バッファ部250に格納されているコンテンツデータのうち、バックエンド部200内において生成されるクロック(System Time Clock:STC)の値に一致するタイムスタンプ(PTS)が付与されているコンテンツデータを読み出す。そして読み出したコンテンツデータをデコードし、画像処理部270に出力する。
(画像処理部270)
画像処理部270は、フレームレート変換などのような動画像データの表示性能を向上させるため、画素の補間や色調整などの高品質化処理を実行し、高品質化処理を施した動画像データを表示装置(図示しない)に対して出力する。すなわち、画像処理部270では、デコーダ部260においてデコード(復号)されたフレーム画像から表示装置において実際に表示する際に用いるフレーム画像を生成する。
(記憶部280)
記憶部280には、バックエンド制御部240を動作させるためのプログラム、および、バックエンド制御部240が参照する各種データが格納されている。バックエンド制御部240により参照されるデータとしては、予約情報およびタイトル管理情報などが挙げられる。予約情報およびタイトル管理情報の詳細については以下に詳述するため、ここではその説明を省略する。なお、記憶部280は、電源をオフにしても記録内容の消去されない不揮発性メモリであることが好ましい。
(インターフェース部290、310)
インターフェース部290は、入力されたデータをインターフェース部310を介してドライブ部300に対して出力する。インターフェース部290としては、SATA(Serial AT attachment)などを挙げることができる。なお、ATA(AT attachment)は、転送方式がシリアルのATAであるSATAに限定されるものではなく、転送方式がパラレルのATAであるPATAを用いてもよい。
インターフェース部310は、入力されたデータをインターフェース部290を介してバックエンド部250に対して出力する。インターフェース部310も、インターフェース部290と同様に、SATA(Serial AT attachment)などとすることができるが、インターフェース部290とインターフェース部310とは同一規格のインターフェースであることが好ましい。
なお、本実施形態では、インターフェース部290、310がSATAである場合を例に挙げて説明する。
(ドライブ制御部320)
ドライブ制御部320は、ディスクドライブ部330に装填されている光ディスクからのデータの読み出し、および光ディスクへのデータの書き込みを制御すると共に、記憶部340からのデータの読み出し、および記憶部340へのデータの書き込みを制御する。ドライブ制御部320は、第1の実施形態における光ディスクドライブ装置10が備えているドライブ制御部12と同様、仮書込手段、本書込手段、読出手段、および、再配置手段として機能する。
ドライブ制御部320では、インターフェース部310を介して入力されるバックエンド制御部240からの命令(光ディスクからのデータ読み出し命令、または光ディスクへのデータ書き込み命令)を、記憶部340からのデータ読み出し命令、または記憶部340へのデータ書き込み命令に読み換える。しかし、バックエンド制御部240からの命令が、記憶部340に記憶されていないデータに対する読み出し命令である場合には、ドライブ制御部320はバックエンド制御部240からの命令を読み換えることなく、装填されている光ディスクからデータを読み出す。
インターフェース部290、310がATAインターフェースである場合、バックエンド制御部240からの書き込み命令および読み出し命令は、ATAコマンドとなる。また、本実施形態では、所定の領域に対するデータの書き込み命令を実現するために、記憶部340におけるいずれの領域(後述するマイディスク)に対してデータを書き込むのかを表す情報(書き込み対象領域情報)をATAコマンドに含めてドライブ制御部320に出力するようにすることが好ましい。もちろん、書き込み対象領域情報を含めたATAコマンドを用いる以外にも、書き込み対象領域情報を示すATAコマンドを出力して記憶部340の記録対象領域(対象マイディスク)を指定した後に、書き込み命令および書き込み対象データを表すATAコマンドをドライブ制御部340に出力するようにしてもよい。なお、これは書き込み命令に限るものではなく、読み出し命令についても同様である。
(ディスクドライブ部330)
ディスクドライブ部330は、ドライブ制御部320からの指示に基いて動作し、装填されている光ディスクからのデータの読み出し、または光ディスクに対するデータの書き込みを実行する。
ディスクドライブ部330は、装填されている光ディスクからデータを読み出したり、光ディスク対してデータを書き込んだりするための光ピックアップ部などを備えている。
(記憶部340)
記憶部340は、レコーダ装置100において光ディスクに対して記録するコンテンツデータなどのデータを記憶するデータメモリである。記憶部340におけるコンテンツデータの記録については、下記に詳述するため、ここではその説明を省略する。
なお、記憶部340は、光ディスクよりもデータアクセス速度が速いものであれば特に限定されるものではないが、電源をオフにしても記録内容の消去されない不揮発性メモリであることが好ましい。より具体的にはフラッシュメモリを用いることが好ましい。
(レコーダ装置100の処理動作)
次に、レコーダ装置100の再生動作、録画動作、ダビング動作などについて説明するが、これらのレコーダ装置100における各動作の説明に先立って、レコーダ装置100における事前設定について、図7(a)および(b)および図8(a)および(b)を参照して説明する。レコーダ装置100における事前設定は、記憶部340の初期化処理と、記憶部340に対する光ディスクの登録処理の2つに大別することができる。
<記憶部340の初期化処理>
記憶部340の初期化処理について、図7(a)および(b)を参照しつつ説明する。図7(a)および(b)は、記憶部340の初期化処理を示す図であり、(a)は記憶部340の初期化の際の表示装置における表示の一例を示す図であり、(b)は初期化処理後の記憶部340を模式的に示す図である。
記憶部340の初期化処理とは、記憶部340における記憶領域を、ユーザーの所望する数のパーティションに仮想的に分割する処理である。なお、記憶部340の初期化処理は、記憶部340において記憶領域が仮想的に分割されていない場合にのみ実行される処理であるため、既に記憶部340における初期化処理が行われている場合には初期化処理は実行されない。
初期化処理は、操作入力部を介したユーザーからの初期化処理の実行指示を受けることにより実行される。すなわち、バックエンド制御部240がユーザーからの初期化処理実行指示を受けると、バックエンド制御部240はドライブ制御部320に対して、記憶部340の記憶領域をユーザーの指定する数に仮想的に分割するように指示する。バックエンド制御部240からの指示を受けたドライブ制御部320は、記憶部340を指定された数の領域(パーティション)に仮想的に分割する。記憶部340において分割される領域の数は、登録することができるマイディスクの枚数と一致する。このとき、表示装置には、図7(a)に示すような画像を表示することが好ましい。
なお、記憶部340において仮想的に分割される領域の数は、例えば「n個(枚)」などのようにユーザーにより明示的に指示された数であってもよいし、ユーザーの所望する録画画質に応じて設定される数であってもよい。
図7(b)は、初期化処理後の記憶部340を示している。図7(b)に示すように、記憶部340は、ユーザーの所望するn個の領域(領域1〜領域n)に仮想的に分割されている。また、領域1〜n以外にも記憶部340には、領域1〜領域nを管理する管理情報の記録されている管理領域が設けられている。
管理領域は、図7(b)に示すように、領域1〜領域nを管理するマイディスク管理領域と、マイディスク管理領域を管理するメモリ管理領域と、に分けることができる。
マイディスク管理領域には、領域1〜領域nの各領域を管理する管理情報が記録されている。図7(b)では、便宜上、領域1を管理する管理情報の記録されている領域を「エントリ1」と称し、以下同様に領域2〜nを管理する管理情報の記録されている領域をエントリ2〜nと称する。
領域1を管理するエントリ1には、エントリ番号、割り当てフラグ、メディアID情報、割り当てエリア情報、メディアキー情報およびマップ情報が記録されている。これらの各情報について以下に説明する。
「エントリ番号」は、いずれの領域を管理するのかを示す情報である。例えば、エントリ1は、領域1を管理する管理情報であるため、エントリ番号としては「1」を示す情報が記録されている。
「割り当てフラグ」は、マイディスクが対応付けられている領域であるか否かを示すフラグである。初期化処理直後の状態では、マイディスクの対応付けは行われていないため、割り当てが行われていないことを示す情報(ここでは、「0」)が記録されている。
「メディアID」は、光ディスクのメディアIDを示す情報である。初期化処理段階では、メディアIDの情報は記録されていない。メディアIDの情報の記録については、後述の光ディスクの登録処理において説明する。
「割り当てエリア情報」は、各領域として利用することができる記憶部340の記録領域を表す情報である。割り当てエリア情報の具体例としては、例えば、各領域の開始アドレスおよび終了アドレスを挙げることができる。また、終了アドレスの代わりに、各領域の記録容量が記録されていてもよい。
「メディアキー情報」は、データを光ディスクに対して記録するときの著作権保護に用いられる暗号化を実行するためのキー情報である。メディアキー情報としては、例えば、MKB(Media Key Block)を挙げることができる。
「マップ情報」は、光ディスクに記録されたコンテンツのそれぞれについて、当該コンテンツが記録される光ディスクの領域を示すアドレスである仮想アドレスと、当該コンテンツが記録されている記憶部340上の領域を示すアドレスである物理アドレスとの対応付けを示す情報である。マップ情報として記録されているマップテーブルの詳細については、下記で詳述するため、ここでは説明を省略する。
また、メモリ管理領域には、図7(b)に示すように、「エントリ数情報」および「割り当てエリア情報」が記録されている。「エントリ数」は、記憶部340において仮想的に分割されている領域の数を示す情報である。「割り当てエリア情報」は、記憶部340においてマイディスク管理領域として利用されている領域を表す情報である。
なお、記憶部340を領域1〜領域nに仮想的に分割した時に生じる余りの領域を予備領域として活用するようにしてもよい。
<光ディスクの登録処理>
次に、記憶部340に対する光ディスクの登録処理について、図8(a)および(b)を参照しつつ説明する。図8(a)および(b)は、光ディスクの登録処理を示す図であり、(a)は光ディスクの登録処理の際の表示装置における表示の一例を示した図であり、(b)は光ディスクの登録処理後の記憶部340を模式的に示した図である。
光ディスクの登録処理とは、記憶部340において仮想的に分割されている各領域を管理するエントリに対して、光ディスクのメディアIDを記録する処理である。
光ディスクがドライブ部300に装填されると、ドライブ制御部320は、ディスクドライブ部330に対して、装填された光ディスクから当該光ディスクのメディアIDを読み出すように指示する。ディスクドライブ部330が光ディスクからメディアIDを読み出すと、ドライブ制御部320は、記憶部340において読み出したメディアIDがマイディスク管理領域におけるエントリに既に記録されているメディアIDであるか否かを判定する。
読み出したメディアIDがマイディスク管理領域におけるエントリのいずれにも記録されていない場合、ドライブ制御部320は、マイディスク管理領域におけるエントリのうち、割り当てフラグが光ディスクの割り当てが行われていないことを示す「0」であるエントリに、読み出したメディアIDを記録する。これによって、エントリにおいてメディアID情報が記録される。なお、メディアID情報の記録されたエントリにおける割り当てフラグは、メディアID情報が記録された時点で、割り当てが行われていることを示す「1」に変更される。また、メディアキー情報などの光ディスク固有の情報についても、この時点でメディアID情報を記録したエントリに対して記録される。
なお、上述した光ディスクの登録処理は、読み出したメディアIDが割り当てフラグが「0」であるエントリに自動的に記録される場合を説明しているが、実際にはレコーダ装置100が、当該メディアIDをエントリに記録するか否かをユーザーに問い合わせることが好ましい。この場合、ドライブ制御部320は、レコーダ装置100にメディアIDをエントリに記録するとするユーザーからの指示を受けてメディアIDを記録する。
また、割り当てフラグが「0」であるエントリが複数存在する場合には、いずれのエントリに対してメディアIDを記録するのかをユーザーが選択できるようにしてもよい。この場合、ドライブ制御部320は、ユーザーにより指定されたエントリに対してメディアIDを記録する。
なお、メディアIDをエントリに記録する際には、表示装置に図8(a)に示すような画像を表示するようにすることが好ましい。
図8(b)は、メディアID「aaa」を有する光ディスクをエントリ1に記録した場合における光ディスクの登録後の記憶部340の状態を示している。
光ディスクのメディアIDをエントリ1に記録した場合、図8(b)に示すように、光ディスクはエントリ1により管理される領域1に対して対応付けられることになる。
本明細書等では、記憶部340における各領域に対して対応付けられた光ディスク、すなわち自身の有するメディアIDが記憶部340に記録されている光ディスクを「マイディスク」と称する。また、マイディスクを識別するために、ここでは、領域1に対応付けられたマイディスクを「ディスク1」と称する。以下同様に、領域2〜nに対応付けられたマイディスクを「ディスク2〜n」と称する。
<コンテンツの予約録画動作>
上述した事前設定の完了しているレコーダ装置100におけるコンテンツ録画動作、コンテンツ再生動作、コンテンツ編集動作、およびコンテンツコピー動作について、以下に説明する。
レコーダ装置100におけるコンテンツ録画動作について、図9(a)〜(c)〜図18(a)〜(c)を参照して以下に説明する。なお、ここでは、コンテンツ録画動作として、予約録画処理を例に挙げて説明する。
レコーダ装置100における予約録画処理は、予約登録処理と録画処理との2つに大別することができる。また、録画処理は、マイディスクが装填されている状態での録画処理と、マイディスクが装填されていない状態での録画処理の2つにさらに分けることができる。予約録画処理におけるこれらの処理それぞれについて以下に説明する。
(予約登録処理)
まず、レコーダ装置100における予約登録処理について、図9(a)〜(c)を参照しつつ以下に説明する。図9(a)〜(c)は、レコーダ装置100における予約登録処理を示す図であり、(a)は予約登録処理後の記憶部280の状態を模式的に示した図であり、(b)は予約登録処理後の記憶部340およびマイディスク1の状態を模式的に示した図であり、(c)は予約登録処理の際の表示装置における表示の一例を示した図である。
予約登録処理とは、記憶部280および光ディスクに対して予約情報を登録する処理である。予約登録処理については、記憶部340の領域1に対応付けられたディスク1を装填している場合を例に挙げて説明する。
ユーザーが操作入力部を介して予約情報を入力すると、バックエンド制御部240は、入力された予約情報を記憶部280の予約情報管理領域に記録する。このとき、記憶部280の予約情報管理領域に記録される予約情報は、図9(a)に示すように、「録画チャンネル」、「録画年月日」および「録画時間」と共に、「記録対象マイディスク」の情報を含む。以下、記録対象マイディスク情報として、装填されているマイディスクのメディアIDを例に挙げて説明するが、マイディスクを識別可能な情報であれば他の情報であってもよい。なお、予約情報に含まれる各情報は、ユーザーが入力するようにしてもよいし、電子番組表においてユーザーが選択した番組を表す番組情報に基づいて設定するようにしてもよい。
バックエンド制御部240は、予約情報を記憶部280に記録すると共に、ドライブ制御部320に対して、ドライブ部300に装填されているディスク1に対して予約情報を書き込むように指示する。ドライブ制御部320は、バックエンド制御部240からの指示を受けて、ユーザーの設定した予約情報を、ディスク1に記録するようにディスクドライブ部330に対して指示する。ディスクドライブ部330は、ドライブ制御部320からの指示を受けて、ユーザーの設定した予約情報をディスク1の所定の領域(予約情報管理領域)に記録する(図9(b))。このとき、ディスク1には、既にメディアIDは記録されているため、メディアIDについては記録しなくてもよい。
なお、予約情報の設定の際にユーザーが記録対象マイディスクを選択することができるようにしてもよい。この場合、ユーザーの選択した記録対象マイディスクがドライブ部300に装填されていない場合には、予約情報の登録時点で、対象とするマイディスクをドライブ部300に装填するようにユーザーに対して警告するようにすることが好ましい。
図9(c)には、記憶部340の領域1に対応付けられたディスク1を装填している場合に予約登録した際の表示装置に表示する画像の一例を示している。
(マイディスクが装填されている場合の録画処理)
次に、記憶部280の予約情報管理領域に記録されている予約情報に含まれているメディアIDのマイディスクがドライブ部300に装填されている場合の録画処理について、図10(a)および(b)を参照しつつ以下に説明する。図10(a)および(b)は、マイディスクが装填されている状態での録画処理を示す図であり、(a)は録画処理後の記憶部340およびマイディスク1の状態を模式的に示した図であり、(b)は録画処理後の記憶部280の状態を模式的に示した図である。
コンテンツ1の録画が完了すると、図10(b)に示すように、バックエンド制御部240は、コンテンツ1の予約録画を示す予約情報を記憶部280における予約情報管理領域から消去する。また、コンテンツ1のディスク1への記録が完了すると、ドライブ制御部320はディスク1の予約情報管理領域に記録されている予約情報を消去するようにディスクドライブ部330に対して指示する。
次に、コンテンツ1を記憶部340の領域1およびディスク1に記録した際の記憶部340および記憶部280の状態について図11(a)〜(c)を参照しつつ以下に説明する。図11(a)〜(c)は、コンテンツ1を録画した際の記憶部340および記憶部280の状態を示す図であり、(a)は記憶部340の領域1におけるコンテンツの記録状態に対応するディスク1の記録状態の対応関係を示す図であり、(b)はコンテンツ1を記録した際のマップテーブルを示す図であり、(c)はコンテンツ1を記録した際のタイトル管理テーブルを示す図である。
ここで、一般的には、記憶部340の領域1とディスク1とのデータ容量は異なる。そのため、領域1では、物理アドレスとは別に、ディスク1におけるアドレスと一致するような仮想アドレスが割り当てられている。この仮想アドレスを用いてデータを読み出したり、書き込んだりすることにより、バックエンド部200では、記憶部340に格納されているコンテンツをドライブ部300に装填されているディスク1に記録されているかのように扱うことができる。本明細書等では、記憶部340の各領域に設定された仮想アドレスを用いて表される記憶領域を「仮想ディスクイメージ」と称する。
図11(a)には、記憶部340の領域1における仮想ディスクイメージを示している。図11(a)に示すように、記憶部340の領域1において、物理アドレス「0x000」を先頭アドレスとしてコンテンツ1(データ容量:XGB)が記録されている場合、仮想ディスクイメージ上では、コンテンツ1は仮想アドレス「0x050」を先頭アドレスとして記録されている。すなわち、コンテンツ1をディスク1に対して書き込む場合、ドライブ制御部320は、ディスクドライブ部330に対して、ディスク1のアドレス「0x050」を表すセクタからコンテンツ1を書き込むように指示する。これによって、領域1からディスク1に対するコンテンツの記録を容易に実行することができる。
続いて、図11(a)において示した物理アドレスと仮想アドレスとの関連付けを実現するためのマップテーブルについて、図11(b)を参照しつつ説明する。
マップテーブルは、記憶部340のマイディスク管理領域におけるマップ情報として記録されている。マップテーブルは、図11(b)に示すように、コンテンツ毎に、仮想ディスクイメージにおけるマップを表す仮想ディスクマップと、記憶部340の領域1におけるマップを表すメモリマップとが関連付けられて記録されている。また、コンテンツに対して、当該コンテンツがマイディスクに記録されているか否かを表す同期フラグが関連付けられて記録されている。
なお、本明細書等において記憶部340のある領域に記録されているコンテンツが、当該ある領域に対応付けられたマイディスクに記録されている状態のことを「同期」と称する。同様に、記憶部340のある領域に記録されているコンテンツを、当該ある領域に対応付けられたマイディスクに対して記録される処理を「同期処理」と称する。
マップテーブルは、コンテンツ1が領域1に記録されると共に内容が更新される。記憶部340の領域1が図11(a)に示す状態である場合のマップテーブルを、図11(b)に示す。図11(b)に示すように、マップテーブルは、コンテンツ1における仮想ディスクマップにおける先頭アドレスとして「0x050」が設定され、データサイズとしてXGBが設定され、メモリマップにおける先頭アドレスとして「0x000」が設定され、データサイズとしてXGBが設定されている。また、領域1からディスク1への書き込みが完了すると共に、マップテーブルにおける同期フラグが、コンテンツがマイディスクに記録されていることを表す「1」となる。
このようなマップテーブルを参照することにより、バックエンド制御部240からディスク1への書き込み命令を受けたドライブ制御部320は、バックエンド制御部240から受けたディスク1への書き込み命令を領域1への書き込み命令に変更することができる。また、ディスク1からの読み出し命令の場合も同様に、マップテーブルを参照することにより、領域1からの読み出し命令に変更することができる。
なお、図11(b)におけるエントリパラメータとは、エントリ番号、メディアID情報、割り当てエリア情報などを記録する領域であり、エントリデータ領域とは、メディアキー情報および領域1におけるトラック情報などを記録する領域である。
また、コンテンツ1が領域1に記録されると共に、記憶部280におけるディスク1のタイトル管理領域にタイトル管理情報として記録されているタイトル管理テーブルが更新される。コンテンツ1に関する情報が設定されるコンテンツ管理領域に記録されているタイトル管理テーブルについて、図11(c)を参照して説明する。なお、タイトル管理領域は、記憶部340において仮想的に分割されている領域の数だけ記憶部280に設けられている。
タイトル管理テーブルには、図11(c)に示すように、各コンテンツを示すタイトル名に対して、コンテンツの再生所要時間、コンテンツの再生画質、コンテンツの残りダビング回数(最大で10とする)および同期状態を示す情報が関連付けられて記録されている。なお、コンテンツ1を示すタイトルをタイトル1として表記する。同様に、コンテンツ2〜コンテンツnを示すタイトルをタイトル2〜タイトルnとして表記する。
図11(b)に示したマップテーブルを設定したときのタイトル管理テーブルの一例を、図11(c)に示している。このとき、タイトル1における残りダビング回数は、コンテンツ1をディスク1へ記録したため、残り10回から1回減算されて「9」回となっている。
(マイディスクが装填されていない場合の録画処理)
続いて、記憶部280の予約情報管理領域に記録されている予約情報に含まれているメディアIDのマイディスクがドライブ部300に装填されていない場合の録画処理について、図12(a)および(b)を参照しつつ以下に説明する。図12(a)および(b)は、レコーダ装置100においてマイディスクが装填されていない状態での録画処理を示す図であり、(a)は録画処理後の記憶部340の状態を模式的に示した図であり、(b)は録画処理後の記憶部280の状態を模式的に示した図である。
レコーダ装置100において、記憶部280の予約情報管理領域に記録されている予約情報により録画されるコンテンツ(コンテンツ2)の録画が開始された時点でドライブ部300にディスク1が装填されていない場合であっても、バックエンド制御部240はコンテンツ2をディスク1に対して記録するようにドライブ制御部320に対して指示する。バックエンド制御部240からの指示を受けたドライブ制御部320は、ディスクドライブ部320にディスク1が装填されていないため、バックエンド部240からのディスク1への書き込み命令を記憶部340の領域1への書き込み命令に変換し、コンテンツ2を領域1に記録(仮書き込み)する。このとき、ディスク1はドライブ部300に装填されていないため、ディスク1に対してコンテンツ2を記録する処理は実行されない。
コンテンツ2の録画が終了すると、図12(b)に示すように、バックエンド制御部240は記憶部280における予約情報管理領域からコンテンツ2の予約録画を示す予約情報を消去する。
次に、コンテンツ2を記憶部340の領域1に記録した際の記憶部340および記憶部280の状態について図13(a)〜(c)を参照しつつ以下に説明する。図13(a)〜(c)は、コンテンツ2を録画した際の記憶部340および記憶部280の状態を示す図であり、(a)は記憶部340の領域1におけるコンテンツの記録状態に対応するディスク1の記録状態の対応関係を示す図であり、(b)はコンテンツ2を記録した際のマップテーブルを示す図であり、(c)はコンテンツ2を記録した際のタイトル管理テーブルを示す図である。
図13(a)に示すように、記憶部340の領域1における物理アドレス「0x000」を先頭アドレスとしてコンテンツ1(データ容量:XGB)が記録されているため、コンテンツ2(データ容量:XGB)は、記憶部340の領域1における物理アドレス「0x200」を先頭アドレスとしてコンテンツ1に続けて記録される。このとき、コンテンツ2は、仮想ディスクイメージ上でも、仮想アドレス「0x250」を先頭アドレスとしてコンテンツ1に続けて記録される。ディスク1はドライブ部300に装填されていないため、当然ながらコンテンツ2はディスク1に対して記録されていない。
コンテンツ2が領域1に記録されると共に、記憶部340のエントリ1におけるマップ情報に記録されているマップテーブルも更新される。記憶部340の領域1が図13(a)に示す状態のマップテーブルを、図13(b)に示す。図13(b)に示すように、図11(b)に示したマップテーブルに加えて、コンテンツ2における仮想ディスクマップにおける先頭アドレスとして「0x250」が設定され、データサイズとしてXGBが設定され、メモリマップにおける先頭アドレスとして「0x200」が設定され、データサイズとしてXGBが設定される。このとき、領域1からディスク1への書き込みは実行されないため、マップテーブルにおけるコンテンツ2の同期フラグは、コンテンツがマイディスクに記録されていないことを表す「0」となっている。
また、図13(c)には、図13(b)に示したマップテーブルが設定されたときのタイトル管理テーブルの一例を示している。図13(c)に示すように、タイトル管理テーブルでは、図11(c)に示したコンテンツ1を示すタイトル1のタイトル管理情報に加えて、コンテンツ2を示すタイトル2のタイトル管理情報が加えられる。このとき、タイトル2は、ディスク1に対して記録されていないため、タイトル2における残りダビング回数は「10」回のままであり、同期状態は未同期を示す情報である。
(コンテンツの同期処理)
次に、記憶部340に記録されたコンテンツであってマイディスクに対して記録されていないコンテンツを、マイディスクに対して記録する同期処理について、図14〜図16(a)〜(c)を参照して以下に説明する。
ディスク1がドライブ部300に装填されると、ドライブ制御部320は、エントリ1のマップテーブルを参照して、同期フラグが「0」であるコンテンツがあるか否かを判定する。例えば、同期フラグが「0」であるコンテンツ2が存在する場合、ドライブ制御部320は、記憶部340の領域1に記録されているコンテンツ2を、ディスク1に記録する(書き出す)ようにディスクドライブ部330に対して指示する。ディスクドライブ部330は、ドライブ制御部320からの指示を受けて記憶部340の領域1に記録されているコンテンツ2をディスク1に書き出す(本書き込み)。これによって、記憶部340の領域1に記録されているコンテンツ1およびコンテンツ2がいずれもディスク1にも記録されている状態になる(図14)。すなわち、コンテンツ2は同期状態となる。
ドライブ制御部320は、ディスク1に対するコンテンツ2の書き出しが完了すると、バックエンド部300に対してコンテンツ2の同期処理が完了したことを通知する。バックエンド制御部240は、この通知を受けて、記憶部280におけるディスク1のタイトル管理領域に記録されているタイトル管理テーブルを更新する。
なお、ディスク1に対するコンテンツ2の書き出し(本書き込み)に失敗すると、ドライブ制御部320は、本書き込みに失敗したデータをメモリ14から読み出し、本書き込みに失敗した領域とは異なる領域に書き込むよう、ディスクドライブ部330を制御する。そして、ドライブ制御部320は、ディスク1への本書き込みに成功するまでこれを繰り返し、ディスク1への本書き込みに成功した時点で、最初に本書込みに失敗した領域を指定する失敗領域指定情報と、本書き込みに成功した領域を指定する成功領域指定情報とを含む再配置情報をバックエンド部200に通知する。この通知を受けたバックエンド部200は、予めコピーされたファイルシステム(通常、ディスク1が装填された時点で、ディスク1からバックエンド部200内の不揮発性メモリに吸い上げられている)を、この再配置情報に基づいて更新する。
また、ドライブ制御部320は、ディスク1に対するコンテンツ2の書き出しが完了すると、ディスクドライブ部330に対して、ディスク1に記録されているコンテンツ2を予約録画するための予約情報の消去を指示する。指示を受けたディスクドライブ部330は、ディスク1の予約情報管理領域に記録されているコンテンツ2を予約録画するための予約情報を削除する(図14)。なお、図14は、コンテンツの同期処理後の記憶部340およびディスク1の状態を示す図である。
次に、記憶部340の領域1に記録されているコンテンツ2をディスク1に書き出した際の記憶部340および記憶部280の状態について図15(a)〜(c)を参照しつつ以下に説明する。図15(a)〜(c)は、コンテンツ2を同期処理した際の記憶部340および記憶部280の状態を示す図であり、(a)は記憶部340の領域1におけるコンテンツの記録状態に対応するディスク1の記録状態の対応関係を示す図であり、(b)はコンテンツ2を同期処理させた際のマップテーブルを示す図であり、(c)はコンテンツ2を同期処理させた際のタイトル管理テーブルを示す図である。
図15(a)に示すように、仮想ディスクイメージにおいて、コンテンツ2は、仮想アドレス「0x250」を先頭アドレスとして記録されている。このとき、ディスク1では、「0x250」を先頭アドレスとしてコンテンツ2を記録することができるため、コンテンツ2は、ディスク1のアドレス「0x250」を先頭アドレスとしてディスク1に記録される。
コンテンツ2の同期処理が完了すると、図15(b)に示すように、エントリ1のマップ情報に記録されているマップテーブルの同期フラグが、コンテンツがマイディスクに記録されていることを表す「1」となる。また、図15(c)に示すように、記憶部280に記録されているディスク1のタイトル管理テーブルにおいて、タイトル2における残りダビング回数が1減算されて「9」回となると共に、同期状態が同期を示す情報に変更される。
次に、ディスク1において「0x250」を先頭アドレスとするコンテンツ(コンテンツ3)が既に記録されている場合のコンテンツ2の同期処理について、図16(a)〜(d)を参照して以下に説明する。
図16(a)〜(d)は、コンテンツ2を同期処理した際の記憶部340および記憶部280の状態を示す図であり、(a)は仮想ディスクイメージにおけるコンテンツ2の先頭アドレスを先頭アドレスとするコンテンツ3がディスク1に記録されている状態を示す図であり、(b)はコンテンツ2をコンテンツ3に続くように仮想ディスクイメージを変更した状態を示す図であり、(c)はコンテンツ2を同期処理させた際のマップテーブルを示す図であり、(d)はコンテンツ2を同期処理させた際のタイトル管理テーブルを示す図である。
図16(a)に示すように、仮想ディスクイメージにおけるコンテンツ2の先頭アドレスである「0x250」を先頭アドレスとするコンテンツ3が既にディスク1に記録されている場合、ディスク1のアドレス「0x250」を先頭アドレスとしてコンテンツ2をディスク1に記録することができない。
このとき、ドライブ制御部320は、記憶部340における仮想ディスクイメージを変更することにより、コンテンツ2をディスク1に記録できるようにする。すなわち、ドライブ制御部320は、ディスク1においてアドレス「0x250」を先頭アドレスとして記録されているコンテンツ3を、仮想ディスクイメージにおいても仮想アドレス「0x250」を先頭アドレスとして記録されているように設定し、コンテンツ2をコンテンツ3に続くように仮想アドレス「0x400」を先頭アドレスとして記録されているように設定する。すなわち、ドライブ制御部320は、領域1における仮想ディスクイメージを変更する。これによって、変更された仮想ディスクイメージでは、コンテンツ2の先頭アドレスが「0x400」となるため、「0x400」を先頭アドレスとしてディスク1にコンテンツ2を記録することができる。
このとき、領域1のマップテーブルについても、図16(c)に示すように変更される。すなわち、仮想ディスクマップにおけるコンテンツ2の先頭アドレスは、「0x400」となり、コンテンツがマイディスクに記録されていることを表す「1」となる。また、仮想ディスクマップにおいて、先頭アドレスが「0x250」であり、コンテンツ容量がYGBのコンテンツ3が登録される。コンテンツ3は、領域1には記録されていないコンテンツであるため、メモリマップには先頭アドレスが記録されず、同期フラグについても記録されない。
同様に、図16(d)に示すように、記憶部280におけるディスク1のタイトル管理テーブルにおいてもタイトル2に対応付けられた同期状態が同期を表す情報に変更され、コンテンツ3を示すタイトル3に対応付けられた情報(再生時間および再生画質)が登録される。このとき、コンテンツ3は、ディスク1にのみ記録されているコンテンツであり、ダビングすることはできないため、タイトル3における残りダビング回数は表示されない。
(領域1に記録されているコンテンツの削除)
記憶部340における領域1の空き容量が少なくなった場合には、領域1に記録されているコンテンツを削除するようにすればよい。領域1に記録されているコンテンツの削除は、ユーザーの指示により実行されるようにしてもよいし、領域1における空き容量が所定値以下となった場合に自動的に実行されるようにしてもよい。
図17は、領域1に記録されていたコンテンツ1およびコンテンツ2を削除した後に、新たにコンテンツ4を録画したときの記憶部340およびディスク1の状態を示す図である。なお、図17は、マイディスクが装填されている状態での録画のため、コンテンツ4はディスク1に対しても記録されている。
図17に示す状態、すなわちコンテンツ1およびコンテンツ2を領域1から削除した後に領域1にコンテンツ4を記録したときの記憶部340および記憶部280の状態について図18(a)〜(c)を参照しつつ以下に説明する。図18(a)〜(c)は、コンテンツ4を録画した際の記憶部340および記憶部280の状態を示す図であり、(a)は記憶部340の領域1におけるコンテンツの記録状態に対応するディスク1の記録状態の対応関係を示す図であり、(b)はコンテンツ4を記録した際のマップテーブルを示す図であり、(c)はコンテンツ4を記録した際のタイトル管理テーブルを示す図である。
ドライブ制御部320は、領域1からコンテンツ1およびコンテンツ2が削除されると、記憶部340のエントリ1に記録されているマップテーブルにおけるメモリマップからコンテンツ1およびコンテンツ2に関する情報を削除する。また、ドライブ制御部320は、コンテンツ1およびコンテンツ2に関連付けられた同期フラグについても削除する。ただし、図18(a)に示すように、コンテンツ1およびコンテンツ2は、仮想ディスクイメージ上においては消去されることなく残されている。すなわち、図18(b)に示すように、領域1からコンテンツ1およびコンテンツ2を削除したとしても、マップテーブルにおける仮想ディスクマップからはコンテンツ1およびコンテンツ2の情報は削除されることなく残されることになる。
したがって、ドライブ制御部320は、仮想ディスクイメージにおいて既に記録されているコンテンツ2に続くように、すなわち仮想アドレス「0x650」を先頭アドレスとしてコンテンツ4を記録するようにディスクドライブ部330に指示する。
また、図18(c)に示すように、領域1からコンテンツ1およびコンテンツ2が削除されることに伴って、記憶部280におけるタイトル管理テーブルも変更される。領域1に記録されていたコンテンツ1およびコンテンツ2が削除されると、バックエンド制御部240は、記憶部280におけるタイトル管理テーブルにおけるコンテンツ1およびコンテンツ2の残りダビング回数および同期状態を示す情報を削除する。次に、コンテンツ4が領域1に記録されると、バックエンド制御部240は、コンテンツ4を示すタイトル(タイトル4)に関する情報をタイトル管理テーブルに登録する。
<コンテンツ再生動作>
次に、レコーダ装置100におけるコンテンツの再生動作について、図19〜図22を参照しつつ以下に説明する。
コンテンツの再生処理は、操作入力部を介したユーザーからのコンテンツ再生指示を受けて実行される処理である。例えば、表示装置に表示されているタイトルの再生をユーザーが選択すると、バックエンド制御部240は、選択されたタイトルにより表されるコンテンツの再生指示を受けたとして当該コンテンツの再生処理を実行する。なお、表示装置に表示されているタイトルは、バックエンド部200において認識されているタイトルである。バックエンド部200において認識されているタイトルは、記憶部280のタイトル管理領域に記録されているタイトル管理テーブルに登録されているタイトルと言い換えることができる。
なお、レコーダ装置100におけるコンテンツの再生動作は、マイディスクが装填されている場合の再生処理と、マイディスクが装填されていない場合の再生処理とに大別することができる。各再生処理について以下に説明する。
(マイディスクが装填されている場合の再生処理)
マイディスクが装填されている場合の再生処理について、図19および図20を参照して以下に説明する。図19は、コンテンツ1〜3を記録したディスク1が装填されている場合の記憶部340および記憶部280の状態を示す図である。図20は、マイディスクが装填されている場合において、再生時にコンテンツが読み出される媒体を模式的に示した図である。
図19に示すように、ドライブ部300には、コンテンツ1〜3の記録されているディスク1が装填されており、記憶部340の領域1にコンテンツ1およびコンテンツ2が記録されている。そのため、記憶部280のタイトル管理領域のタイトル管理テーブルには、タイトル1〜3に関する情報が記録されている。すなわち、バックエンド部200では、タイトル1〜3により表されるコンテンツ1〜3を認識することができる。なお、図19では、タイトル管理テーブルの詳細については省略して示している。
マイディスクが装填されている場合の再生処理としては、まず、ディスク1および領域1のいずれにも記録されているコンテンツ1を再生する場合の再生処理について説明した後、ディスク1に記録されているが、領域1には記録されていないコンテンツ3を再生する場合の再生処理について説明する。
バックエンド制御部240は、ディスク1に記録されているコンテンツ1を読み出す命令をインターフェース部290を介してドライブ部300に対して出力する。バックエンド制御部240からの命令を受けたドライブ制御部320は、マップテーブルを参照して、ディスク1に記録されているコンテンツ1が領域1に記録されているか否かを判定する。このとき、コンテンツ1は領域1に記録されているコンテンツであるため、ドライブ制御部320は、バックエンド制御部240から受けたディスク1からの読み出し命令を、マップテーブルを参照して、領域1からの読み出し命令に変換する。すなわち、ドライブ制御部320は、ディスク1のアドレスを、マップテーブルを参照して、領域1の物理アドレスに変換する。
領域1からコンテンツ1を読み出したドライブ制御部320は、読み出したコンテンツ1を、インターフェース部310を介してバックエンド部200に出力する。
このように、読み出しの対象となるコンテンツがマイディスクにも記憶部340にも記録されている場合、図20に示すように、コンテンツは記憶部340から読み出される。
ディスク1に記録されているが、領域1には記録されていないコンテンツ3を再生する場合も同様に、バックエンド制御部240がディスク1に記録されているコンテンツ3を読み出す命令をインターフェース部290を介してドライブ部300に対して出力する。バックエンド制御部240からの命令を受けたドライブ制御部320は、マップテーブルを参照して、ディスク1に記録されているコンテンツ3が領域1に記録されているか否かを判定する。このとき、コンテンツ3は領域1に記録されていないコンテンツであるため、ドライブ制御部320は、バックエンド制御部240から受けたディスク1からの読み出し命令にしたがって、ディスクドライブ部330に対してコンテンツ3を読み出すように指示する。
ディスク1からコンテンツ3が読み出されると、ドライブ制御部320は、読み出したコンテンツ3を、インターフェース部310を介してバックエンド部200に出力する。
このように、読み出しの対象となるコンテンツが記憶部340に記録されていない場合、図20に示すように、コンテンツはマイディスクから読み出される。
(マイディスクが装填されていない場合の再生処理)
続いて、マイディスクが装填されていない場合の再生処理について、図21および図22を参照して以下に説明する。図21は、ドライブ部300に光ディスクが装填されていない場合の記憶部340および記憶部280の状態を示す図である。図22は、マイディスクが装填されていない場合において、再生時にコンテンツが読み出される媒体を模式的に示した図である。
図21に示すように、記憶部340の領域1には、コンテンツ1およびコンテンツ2が記録されている。しかし、図19の場合とは異なり、ドライブ部300には、コンテンツ1〜3の記録されているディスク1が装填されていない。なお、記憶部280のタイトル管理領域のタイトル管理テーブルには、タイトル1〜3に関する情報が記録されている。すなわち、バックエンド部200では、タイトル1〜3により表されるコンテンツ1〜3を認識することができる。なお、図21では、図19と同様に、タイトル管理テーブルの詳細については省略して示している。
図21に示すような状態の場合、バックエンド部200において認識しているタイトル1〜3により表されるコンテンツ1〜3のうち、記憶部340の領域1に記録されているコンテンツ1およびコンテンツ2については再生することができるが、ディスク1にのみ記録されているコンテンツ3については再生することができない。
すなわち、図22に示すように、読み出しの対象となるコンテンツがマイディスクにも記憶部340にも記録されている場合には、マイディスクが装填されている場合と同様の処理により、コンテンツは記憶部340から読み出される。しかし、ディスク1にのみ記録されているコンテンツについては読み出すことはできない。
なお、図22に示すコンテンツ1の読み出し処理は、マイディスクが装填されている場合におけるコンテンツ1の読み出し処理と同様であるため、ここでは説明を省略する。
<コンテンツ編集動作>
次に、レコーダ装置100におけるコンテンツの編集動作について、図23および図24(a)および(b)を参照しつつ以下に説明する。
コンテンツの編集処理は、操作入力部を介したユーザーからのコンテンツ編集指示を受けて実行される処理である。例えば、表示装置に表示されているタイトルの編集をユーザーが選択すると、バックエンド制御部240は、選択されたタイトルにより表されるコンテンツの編集指示を受けたとして、ユーザーにより選択されたコンテンツの編集処理を実行する。なお、表示装置に表示されているタイトルは、バックエンド部200において認識されているタイトルである。バックエンド部200において認識されているタイトルは、記憶部280のタイトル管理領域に記録されているタイトル管理テーブルに登録されているタイトルと言い換えることができる。すなわち、タイトル管理テーブルに登録されているタイトルは、記録されている媒体を問わず編集処理を行うことができる。
レコーダ装置100におけるコンテンツ編集動作も、コンテンツ再生処理と同様に、マイディスクが装填されている場合の編集処理と、マイディスクが装填されていない場合の編集処理とに大別することができる。各編集処理について以下に説明する。
なお、コンテンツの編集処理とは、マイディスクまたは記憶部340に記録されているコンテンツの少なくとも一部のデータを変更する処理であり、具体的には、コンテンツにおけるシーン消去(コンテンツデータの一部変更)、コンテンツの削除およびコンテンツにおけるチャプターの追加を含む処理である。なお、ここではコンテンツにおけるシーン消去を例に挙げて説明するが、他の処理であっても同様に処理することができる。
(マイディスクが装填されている場合の編集処理)
マイディスクが装填されている場合の編集処理について、図19および図23を参照して以下に説明する。図23は、マイディスクが装填されている場合において、コンテンツが編集される媒体を模式的に示した図である。
図19に示すように、ドライブ部300には、コンテンツ1〜3の記録されているディスク1が装填されており、記憶部340の領域1にコンテンツ1およびコンテンツ2が記録されている。また、記憶部280のタイトル管理領域のタイトル管理テーブルには、タイトル1〜3に関する情報が記録されており、バックエンド部200では、タイトル1〜3により表されるコンテンツ1〜3を認識することができる。なお、図19では、タイトル管理テーブルの詳細については省略して示している。
マイディスクが装填されている場合の再生処理としては、まず、ディスク1および領域1のいずれにも記録されているコンテンツ1を編集する場合の処理について説明した後、ディスク1に記録されているが、領域1には記録されていないコンテンツ3を編集する場合の処理について説明する。
バックエンド制御部240は、ディスク1に記録されているコンテンツ1のデータを変更する命令をインターフェース部290を介してドライブ部300に対して出力する。バックエンド制御部240からの命令を受けたドライブ制御部320は、マップテーブルを参照して、ディスク1に記録されているコンテンツ1が領域1に記録されているか否かを判定する。このとき、コンテンツ1は領域1に記録されているコンテンツであるため、ドライブ制御部320は、バックエンド制御部240から受けたディスク1におけるデータを変更する命令を、マップテーブルを参照して、領域1におけるデータを変更する命令に変換する。すなわち、ドライブ制御部320は、マップテーブルを参照して、ディスク1のアドレスを、領域1の物理アドレスに変換するため、実際には、領域1に記録されているコンテンツ1のデータが変更されることになる。
このように、データを変更する対象となるコンテンツがマイディスクにも記憶部340にも記録されている場合、図23に示すように、記憶部340に記録されているコンテンツのデータが変更されることになる。
しかし、このままではディスク1に記録されているコンテンツ1と、領域1に記録されているコンテンツ1とが異なったまま(非同期状態)となってしまうため、ドライブ制御部320は、領域1に記録されているコンテンツ1に対して行ったデータの変更をディスク1に記録されているコンテンツ1に対しても反映させる。ディスク1に記録されているコンテンツ1に対する変更の反映は、ディスク1がドライブ部300から取り出されるまでの間であればいつ行うようにしてもよい。
ディスク1に記録されているが、領域1には記録されていないコンテンツ3のデータを変更する場合も同様に、バックエンド制御部240がディスク1に記録されているコンテンツ3のデータを変更する命令をインターフェース部290を介してドライブ部300に対して出力する。バックエンド制御部240からの命令を受けたドライブ制御部320は、マップテーブルを参照して、ディスク1に記録されているコンテンツ3が領域1に記録されているか否かを判定する。このとき、コンテンツ3は領域1に記録されていないコンテンツであるため、ドライブ制御部320は、バックエンド制御部240から受けたディスク1に記録されているコンテンツ3のデータを変更する命令にしたがって、ディスクドライブ部330に対してコンテンツ3のデータを変更するように指示する。
(マイディスクが装填されていない場合の編集処理)
続いて、マイディスクが装填されていない場合のコンテンツの編集処理について、図21および図24(a)および(b)を参照して以下に説明する。図24(a)および(b)は、マイディスクが装填されていない場合において、コンテンツが編集される媒体を模式的に示した図であり、(a)はディスク1が装填されていないときの編集対象となる媒体を示しており、(b)はディスク1が装填されたときの変更箇所のディスク1への反映を示している。
図21に示すような状態の場合、バックエンド部200において認識しているタイトル1〜3により表されるコンテンツ1〜3のうち、記憶部340の領域1に記録されているコンテンツ1およびコンテンツ2についてはディスク1が装填されている場合と同様の編集処理を行うことができる。
すなわち、図24(b)に示すように、他のレコーダ装置においてディスク1のコンテンツ2が変更されていた場合、ドライブ制御部320は、ディスク1におけるコンテンツ2の変更を領域1に記録されているコンテンツ2に対して反映させる。このとき、エントリ1に記録されているマップテーブルについても併せて更新する。
<コンテンツコピー動作>
次に、レコーダ装置100におけるコンテンツのコピー動作について、図25(a)および(b)を参照しつつ以下に説明する。ここでは、レコーダ装置100における記憶部340内のメモリ内コピー動作を例に挙げて説明する。なお、メモリ内コピー動作とは、レコーダ装置100におけるメモリ内ダビング動作と言い換えることもできる。図25(a)および(b)は、レコーダ装置100におけるメモリ内コピー処理を示す図であり、(a)は、メモリ内コピー処理後の記憶部340の状態を示す図であり、(b)はメモリ内コピー処理後の記憶部280におけるタイトル管理領域の状態を示す図である。
コンテンツのメモリ内コピー処理は、操作入力部を介したユーザーからのコンテンツコピー指示を受けて実行される処理である。例えば、表示装置に表示されているタイトルからユーザーがタイトルを選択し、選択したタイトルをいずれの領域にコピーするのかを決定すると、バックエンド制御部240は、選択されたタイトルにより表されるコンテンツを選択された記憶部340における領域へコピーする指示を受けたとして当該コンテンツのメモリ内コピー処理を実行する。なお、表示装置に表示されているタイトルは、バックエンド部200において認識されているタイトルである。バックエンド部200において認識されているタイトルは、記憶部280のタイトル管理領域に記録されているタイトル管理テーブルに登録されているタイトルと言い換えることができる。
記憶部340の領域1に記録されているコンテンツ2を記憶部340の領域2にコピーするユーザーからの指示を受けたバックエンド制御部240は、ドライブ制御部320に対して、領域1に記録されているコンテンツ2を領域2に記録するように指示する。バックエンド制御部240からの指示を受けたドライブ制御部320は、図25(a)に示すように、コンテンツ2を領域2に記録する。このとき、ドライブ制御部320は、エントリ2に記録されているマップテーブルを更新する。なお、領域2におけるコンテンツ2の記録およびそれに伴うマップテーブルの更新については、録画動作において説明した処理と同様であるため、説明を省略する。
コンテンツ2の領域2への記録が完了すると、バックエンド制御部240は、記憶部280におけるディスク1のタイトル管理領域に記録されているタイトル管理情報におけるコンテンツ2の残りダビング回数を1減算する。また、記憶部280におけるディスク2のタイトル管理領域に記録されているタイトル管理情報におけるコンテンツ2の残りダビング回数を1加算する。これによって、図25(b)に示すように、ディスク1のタイトル管理領域におけるコンテンツ2の残りダビング回数は「8」となり、ディスク2のタイトル管理領域におけるコンテンツ2の残りダビング回数は「1」となる。
なお、図25(a)に示すように、ディスク2はドライブ部300に装填されていないため、領域2に記録されているコンテンツ2の同期状態は、未同期を表す情報である。
<マイディスクの登録解除>
次に、マイディスクの登録解除処理について説明する。ユーザーからのディスク1の登録解除指示を受けたドライブ制御部320は、記憶部340において記録されている、登録を解除するディスク1に対応付けられた領域を管理する管理情報を消去する。すなわち、エントリにおけるメディアID情報、メディアキー情報およびマップ情報を削除すると共に、割り当てフラグを、割り当てが行われていないことを示す「0」に変更する。また、領域にデータが記録されている場合には、記録されているデータも消去する。これによって、記憶部340におけるエントリは、新たなマイディスクの登録が可能な状態となる。
また、ユーザーからのディスク1の登録解除指示を受けたバックエンド制御部240は、記憶部280におけるディスク1のタイトル管理領域に記録されているタイトル管理情報を削除する。これによって、バックエンド部200において、ディスク1に記録されていたコンテンツを示すタイトルを認識することができなくなる。
(マイディスクのファイルシステムの利用)
レコーダ装置100では、マイディスクとして登録されている光ディスクへのデータの書き込みおよび光ディスクからのデータの読み出しには、マイディスクとして登録されている光ディスクから取得したファイルシステムを用いることが好ましい。
ここで、光ディスクのファイルシステムを利用したデータ管理について、図26(a)〜(c)を参照しつつ以下に説明する。図26(a)〜(c)は、ファイルシステムを用いたデータ管理を示す図であり、(a)は記憶部280に記録されているファイルシステムの一例を示し、(b)は領域1におけるコンテンツの記録状態に対応するディスク1の記録状態の対応関係を示し、(c)はファイル毎のマップテーブルを示す図である。
通常、光ディスク内には、光ディスクの種類毎に規格によって定められたファイルシステムが記録されており、そのファイルシステムによって、光ディスクに記録されている各ファイルと各ファイルの記録されているアドレスが関連づけられている。なお、ファイルシステムは、光ディスクの記録領域における先頭部分に記録されていることが多い。
バックエンド部200では、データの読み出し、あるいはデータの書き込みの対象となる光ディスクのアドレスを指定するために、光ディスクから取得したファイルシステムを参照する。ファイルシステムは、光ディスクが装填された時に、メディアIDなどと共に取得され、バックエンド部200の揮発性メモリに保持される。また、予期しない電源断などに対応するために、取得したファイルシステムは、記憶部280にも保持している(図26(a))。バックエンド部200では、光ディスクが装填されるたびに光ディスクからファイルシステムを取得し、取得したファイルシステムと自装置に記録されているファイルシステムとを比較して、ファイルの最新の状態が維持されるようにしている。
すなわち、バックエンド部200は、マイディスクとして登録されている光ディスクから読み出したファイルシステムと、既に記憶部280に記録されているファイルシステム(その光ディスクから直近に読み出したファイルシステム)とを比較することにより、バックエンド部200は光ディスクに記録されていて記憶部340に記録されていないコンテンツの情報(例えば、そのコンテンツの記録されている光ディスクのアドレス、そのコンテンツを示すタイトル情報など)を取得する。
なお、図26(a)には、ディスク1に関するファイルシステムについてのみ示しているが、記憶部280のファイルシステム管理領域には、マイディスクとして登録されているディスクの数だけファイルシステムが記録されている。
このように、マイディスクとして登録している光ディスクのファイルシステムを記憶部280に記録することにより、バックエンド部200は、光ディスクが装填されていない状態であったとしても、記憶部280に記録されているファイルシステムを参照して仮想ディスクイメージ上のファイルへのアクセスが可能となる。すなわち、マイディスクが装填されていない場合であっても、あたかもマイディスクが装填されているかのようにデータを扱うことができる。例えば、記憶部340のマップ情報において、アクセス対象とする仮想アドレスに対応する記憶部340のアドレスが記録されている場合には、記憶部340のアドレスを用いて、当該アドレスに記録されているデータを読み出すことができる。
さらに、図26(b)および(c)に示すように、コンテンツ1が複数の断片化されたファイルに分割されて光ディスクに記録されている場合であっても、バックエンド制御部240は、記憶部280に記録されているファイルシステムにおけるコンテンツ1の配置情報を参照することにより、コンテンツ1に対して的確にアクセスすることができる。
このように、記憶部340に記録されているマップ情報は、本実施形態ではコンテンツごとの配置情報として示しているが、より正確には、図26(c)に示すように、領域(ファイル)ごとの配置情報を示すものである。
また、マイディスクの登録解除の際には、ファイルシステム管理領域に記録されているファイルシステムについても、タイトル管理情報と併せて削除される。
<表示装置における表示例>
最後に、レコーダ装置100に接続された表示装置におけるコンテンツとタイトルリストに記録されている情報との表示例について、図27を参照しつつ以下に説明する。図27は、表示装置500上でのコンテンツおよびタイトルリストに記録されている情報の表示を概略的に示す図である。
操作入力部を介してユーザーがタイトルリストの表示をレコーダ装置100に対して指示すると、表示装置500では、タイトルリストおよびコンテンツが図27に示すように表示される。
すなわち、図27に示すように、表示装置500における表示画面は、これまで視聴していたコンテンツを引き続き表示するコンテンツ表示部510と、タイトルリストを表示するタイトル表示部520との2つの画面に分割されることになる。
タイトルリスト表示部520には、図27に示すように、登録されているマイディスクに対応するタブが表示される。ユーザーがタイトルリストの確認を所望するマイディスクのタブを選択することにより、タイトルリスト表示部520には、ユーザーの選択したマイディスクのタイトルリストが表示されることになる。すなわち、記憶部280における各マイディスクのタイトル管理領域に記録されているタイトル管理テーブルの情報が表示される。
図27では、ディスク1のタブを選択したときのタイトルリストを示している。このとき、選択しているディスクを表す情報(アイコン)を表示部530に表示することが好ましい。また、ユーザーがタイトルリスト表示部520に表示されている各タイトルを選択した場合には、仮選択したタイトルにより示されるコンテンツのサムネイルを表示部530に表示することが好ましい。
(プログラムおよび記録媒体)
第1の実施形態において光ディスクドライブ装置10に含まれているドライブ制御部10は、並びに、第2の実施形態においてレコーダ装置100に含まれているバックエンド制御部240およびドライブ制御部320は、ハードウェアロジックによって構成してもよいし、次のように、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
すなわち、上記各制御部は、各機能を実現するプログラムの命令を実行するMPUなどのCPU、このプログラムを格納したROM(Read Only Memory)、上記プログラムを実行可能な形式に展開するRAM(Random Access Memory)、および、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)を備えている。
そして、本発明の目的は、上記各制御部のプログラムメモリに固定的に担持されている場合に限らず、上記プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、または、ソースプログラム)を記録した記録媒体をレコーダ装置100に供給し、レコーダ装置100が上記記録媒体に記録されている上記プログラムコードを読み出して実行することによっても、達成可能である。
上記記録媒体は、特定の構造または種類のものに限定されない。すなわちこの記録媒体は、たとえば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などとすることができる。
また、上記各制御部(またはレコーダ装置100)を通信ネットワークと接続可能に構成しても、本発明の目的を達成できる。この場合、上記のプログラムコードを、通信ネットワークを介して上記各制御部に供給する。この通信ネットワークは上記各制御部にプログラムコードを供給できるものであればよく、特定の種類または形態に限定されない。たとえばインターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網等であればよい。
この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な任意の媒体であればよく、特定の構成または種類のものに限定されない。たとえばIEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL(Asymmetric Digital Subscriber Line)回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。