以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が、本明細書に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
更に、この記載は、本明細書に記載されている発明の全てを意味するものでもない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。
請求項1に記載の記録再生装置は、
追記可能な記録媒体(例えば、図1の光ディスク51)にデータを記録する記録再生装置(例えば、図1の記録再生装置1)であって、
前記記録媒体に第1のデータ(例えば、図2のデータ)を記録する記録手段(例えば、図1のアナログフロントエンド部20、モータアンプ部21、光学ヘッド22、スピンドルモータ23、およびスレッドモータ24)と、
ランダムな値であるランダム値を生成するランダム値生成手段(例えば、図1のランダム値生成部41)と、
前記記録手段により前記記録媒体に記録されている前記第1のデータに含まれるデータであって、前記記録手段により前記記録媒体に記録されるたびに変化する第2のデータ(例えば、図9の管理用テーブルTVとVMGIとをあわせたデータ)と、前記ランダム値生成手段により生成された前記ランダム値とからなるデータ(例えば、図9のランダム値、管理用テーブルTV、およびVMGIをあわせたデータ列)に、所定の関数を適用することにより、前記記録装置が前記記録媒体に前記第1のデータを記録したことを示す第1の識別コード(例えば、ディスク識別コード)を演算する演算手段(例えば、図1のディスク識別コード演算部42)とを備え、
前記記録手段は、前記ランダム値生成手段により生成された前記ランダム値と、前記演算手段により演算された前記第1の識別コードとを、前記第1のデータに含めるように前記記録媒体にさらに記録する
ことを特徴とする。
請求項2に記載の記録再生装置は、
前記記録手段により前記記録媒体に記録された前記第1のデータを読み出す読み出し手段(例えば、図1のアナログフロントエンド部20、モータアンプ部21、光学ヘッド22、スピンドルモータ23、およびスレッドモータ24)と、
前記読み出し手段により読み出された前記第1のデータのうちの特定のデータ(例えば、図12のステップS115の処理で読み出される画像データ)に基づいて所定の処理を実行し、第3のデータ(例えば、サムネイル画像)を生成するデータ生成手段(例えば、図1の画像処理部31)と、
前記データ生成手段により生成された前記第3のデータと、それに対応する第1の識別コードとを記憶する記憶手段(例えば、図1のフラッシュメモリ26)と、
前記記憶手段により記憶された前記第3のデータが有効である場合(例えば、図7のステップS59でYESと判定された場合)に、前記第3のデータに基づく処理を実行する実行手段(例えば、図8のステップS63または図12のステップS114の処理を実行するマイコン14)と
をさらに備え、
前記演算手段は、前記読み出し手段により読み出された第1のデータに含まれる前記第2のデータと前記ランダム値とからなるデータに、所定の関数を適用することにより、第2の識別コードを演算し、
前記実行手段は、前記演算手段により演算された前記第2の識別コードと、前記読み出し手段により読み出された前記第1の識別コードとが一致し(例えば、図7のステップS57の処理でYESと判定され)、かつ、前記第1の識別コードと前記記憶手段に記憶された前記第1の識別コードとが一致する場合(例えば、図7のステップS59でYESと判定された場合)、前記記憶手段により記憶された前記第3のデータを有効とし、前記第3のデータに基づく処理を実行する(例えば、図8のステップS63または図12のステップS114)
ことを特徴とする。
請求項3に記載の記録再生装置の前記演算手段は、前記第2のデータと前記ランダム値とからなるデータよりデータ量を少なくする関数を適用することにより、前記第1の識別コードを演算する
ことを特徴とする。
請求項4に記載の記録再生装置の前記演算手段は、前記第2のデータと前記ランダム値とからなるデータにハッシュ関数を適用することにより、前記第1の識別コードを演算する
ことを特徴とする。
請求項5に記載の記録再生装置の前記第2のデータは、前記記録装置のみにより記録されるデータ(例えば、図9の管理用テーブルTV)を少なくとも含む
ことを特徴とする。
請求項6に記載の記録再生装置の前記第2のデータは、前記記録媒体のプログラムエリアを管理するデータ(例えば、図9の管理用テーブルTV)と、前記記録媒体の制御データ(例えば、図9のVMGI)とを含む
ことを特徴とする。
請求項7に記載の記録再生方法は、
追記可能な記録媒体(例えば、図1の光ディスク51)にデータを記録する記録再生装置(例えば、図1の記録再生装置1)の記録再生方法であって、
前記記録媒体に第1のデータ(例えば、図2のデータ)を記録する第1の記録ステップ(例えば、図3のステップS17)と、
ランダムな値であるランダム値を生成するランダム値生成ステップ(例えば、図14のステップS142)と、
前記第1の記録ステップの処理により前記記録媒体に記録された前記第1のデータに含まれるデータであって、前記第1の記録ステップの処理により前記記録媒体に記録されるたびに変化する第2のデータ(例えば、図9の管理用テーブルTVとVMGIとをあわせたデータ)と、前記ランダム値生成ステップの処理により生成された前記ランダム値とからなるデータ(例えば、図9のランダム値、管理用テーブルTV、およびVMGIをあわせたデータ列)に、所定の関数を適用することにより、前記記録装置が前記第1のデータを記録したことを示す第1の識別コード(例えば、ディスク識別コード)を演算する演算ステップ(例えば、図14のステップS144)と、
前記ランダム値生成ステップの処理により生成された前記ランダム値と、前記演算ステップの処理により演算された前記第1の識別コードとを、前記第1のデータに含めるように前記記録媒体にさらに記録する第2の記録ステップ(例えば、図14のステップS147)と
を含むことを特徴とする。
請求項8に記載のプログラムは、
追記可能な記録媒体(例えば、図1の光ディスク51)にデータを記録するプログラムであって、
前記記録媒体に第1のデータ(例えば、図2のデータ)を記録する第1の記録ステップ(例えば、図3のステップS17)と、
ランダムな値であるランダム値を生成するランダム値生成ステップ(例えば、図14のステップS142)と、
前記第1の記録ステップの処理により前記記録媒体に記録された前記第1のデータに含まれるデータであって、前記第1の記録ステップの処理により前記記録媒体に記録されるたびに変化する第2のデータ(例えば、図9の管理用テーブルTVとVMGIとをあわせたデータ)と、前記ランダム値生成ステップの処理により生成された前記ランダム値とからなるデータ(例えば、図9のランダム値、管理用テーブルTV、およびVMGIをあわせたデータ列)に、所定の関数を適用することにより、前記記録装置が前記第1のデータを記録したことを示す第1の識別コード(例えば、ディスク識別コード)を演算する演算ステップ(例えば、図14のステップS144)と、
前記ランダム値生成ステップの処理により生成された前記ランダム値と、前記演算ステップの処理により演算された前記第1の識別コードとを、前記第1のデータに含めるように前記記録媒体にさらに記録する第2の記録ステップ(例えば、図14のステップS147)と
を含む処理をコンピュータに実行させることを特徴とする。
図1は、本発明を適用した記録再生装置1の構成例を示すブロック図である。
この記録再生装置1は、例えば、携帯型のビデオレコーダであり、DVD(Digital Versatile Disk)である光ディスク51に、撮像した結果(画像データ)を記録できるようになされている。また、光ディスク51は、追記可能なDVDとされている。
図1において、記録再生装置1には、画像データ入力部11、音声データ入力部12、圧縮伸長処理部13、マイコン(マイクロコントローラ)14、エンコーダ15、RAM(Random Access Memory)16、ヘッダ情報処理部17、信号処理部18、RAM19、アナログフロントエンド部20、モータアンプ部21、光学ヘッド22、スピンドルモータ23、スレッドモータ24、出力部25、およびフラッシュメモリ26が設けられている。
すなわち、この記録再生装置1においては、画像データ入力部11は、図示せぬ撮像部(例えば、CCD(Charge Coupled Device))により得られる撮像結果である画像信号、または、外部機器から入力される画像信号の入力を受け付け、受け付けた画像信号を、アナログディジタル変換処理し、画像データを出力する。例えば、画像データ入力部11は、画像データを、エンコーダ15、出力部25、または圧縮伸長処理部13の画像処理部31に出力する。なお、記録再生装置1に内蔵される図示せぬ撮像部は、マイコン14による制御により、動画像(複数の静止画像からなる動画像)や静止画像を出力するようになされており、これにより画像データ入力部11においては、マイコン14による撮像部への制御に応じて、動画像や静止画像による画像データを選択的に出力するようになされている。
音声データ入力部12は、図示せぬマイクにより取得される音声信号、または外部入力による音声信号の入力を受け付け、受け付けた音声信号を、アナログディジタル変換処理し、音声データを出力する。例えば、音声データ入力部12は、音声データを、エンコーダ15、出力部25、または圧縮伸長処理部13の音声処理部32に出力する。
圧縮伸長処理部13は、マイコン14のからの制御に基づいて動作を切り換え、記録するデータを処理したり、再生するデータを処理する。また、圧縮伸長処理部13は、処理に必要なデータを、適宜RAM16に記憶させたり、フラッシュメモリ26に記憶させる。具体的には、圧縮伸長処理部13は、画像データ入力部11から供給される画像データと、音声データ入力部12から供給される音声データを光ディスク51に記録する場合、RAM16を用いて、画像データと音声データとを圧縮し、これを多重化する。その後、圧縮伸長処理部13は、多重化したデータを、ヘッダ情報処理部17に出力する。一方、光ディスク51に記録されているデータを再生する場合、圧縮伸長処理部13は、同様にRAM16を用いて、ヘッダ情報処理部17から供給されるデータを画像データと音声データとに分離した後、それぞれデータ伸長し、伸長した画像データと音声データとを出力する。RAM16は、圧縮伸長処理部13からの制御に基づいて、適宜、データを記憶する。また、圧縮伸長処理部13は、画像データに基づいてサムネイル画像を生成し、これを、フラッシュメモリ26に記憶させる。フラッシュメモリ26は、サムネイル画像の他、光ディスクを識別するディスク識別コードなども記憶する。なお、フラッシュメモリ26に記憶されるデータの詳細は後述する。
また、圧縮伸長処理部13には、画像処理部31、音声処理部32、および多重化処理部33が設けられている。
すなわち、圧縮伸長処理部13の画像処理部31は、マイコン14からの制御に基づいて、記録時、画像データ入力部11から供給される画像データをデータ圧縮して出力する。このとき、この画像データが動画像を構成する画像データである場合、画像処理部31は、画像データを、MPEG(Moving Picture Expert Group)2の規格に基づいてデータ圧縮するのに対し、この画像データが静止画像を構成する画像データである場合、JPEG(Joint Photographic Expert Group)の規格に基づいてデータ圧縮する。また、再生時、画像処理部31は、多重化処理部33から供給される画像データをこの画像データのデータ圧縮フォーマット(例えば、MPEG2またはJPEG)に対応してデータを伸長し、出力する。さらに、画像処理部31は、画像データに基づいて、サムネイル画像を生成する。
圧縮伸長処理部13の音声処理部32は、記録時、音声データ入力部12から供給される音声データをMPEG、ドルビーオーディオ、またはリニアPCM等のフォーマットに基づいてデータ圧縮し、これを出力する。またこれとは逆に、再生時、音声処理部32は、多重化処理部33から供給される音声データを、この音声データのデータ圧縮フォーマットに対応してデータを伸長し、出力する。
圧縮伸長処理部13の多重化処理部33は、記録時、画像処理部31から供給される画像データと、音声処理部32から供給される音声データとを、時分割多重化してヘッダ情報処理部17に供給する。ここで、画像データと音声データとが時分割多重化されたデータを、以下においては、時分割多重化データと称する。またこれとは逆に、再生時、多重化処理部33は、ヘッダ情報処理部17から供給される時分割多重化データから画像データと音声データとを分離し、それぞれ画像処理部31と音声処理部32に供給する。
エンコーダ15は、画像データ入力部11から供給される画像データおよび音声データ入力部12から供給される音声データ、または、圧縮伸長処理部13から出力される画像データおよび音声データを、所定のフォーマットによりデータ圧縮して外部機器に出力する。これにより、この記録再生装置1においては、撮像結果や再生結果を、外部機器(図示せぬ)に出力(モニタ)できるようになされている。
出力部25は、画像データ入力部11から供給される画像データおよび音声データ入力部12から供給される音声データ、または、圧縮伸長処理部13から供給される画像データおよび音声データを出力するための、表示部とスピーカなどにより構成されている。これにより、この記録再生装置1では、撮像結果を出力する(すなわち、画像を表示し、音声を出力する)ことができる。すなわち、この記録再生装置1によれば、再生結果をモニタすることができる。
ヘッダ情報処理部17は、記録時、圧縮伸長処理部13から供給される時分割多重化データを受け付け、マイコン14からの制御に基づいて、光ディスク51(DVD)に固有のヘッダ情報、拡張ファイルのヘッダ情報等を付加して出力する。また、ヘッダ情報処理部17は、マイコン14からの情報により、UDF(Universal Disk Format)、VMG(Video Manager)、VTSI(Video Title Set Information)等のデータを生成し、信号処理部18に出力する。また、再生時等において、ヘッダ情報処理部17は、信号処理部18から供給されたデータから、記録時に付加したヘッダ情報を分離して圧縮伸長処理部13に出力する。また、ヘッダ情報処理部17は、この分離したヘッダ情報を、マイコン14に通知する。なお、ここで拡張ファイルとは、この光ディスク51について規格化されたフォーマットであるDVDビデオフォーマットで定義されていないファイルである。例えば、拡張ファイルは、静止画のファイル(JPEGの規格に基づいて圧縮されたファイル)とされる。
信号処理部18は、記録時、RAM19を用いて、ヘッダ情報処理部17から出力(供給)されたデータに基づいてエラー訂正符号を生成し、このエラー訂正符号を、ヘッダ情報処理部17から出力されたデータに付加する。また、信号処理部18は、スクランブル処理、8/16変調等の処理を実行し、その処理結果によるデータ列をシリアルデータ列によりアナログフロントエンド部20に出力する。これに対して再生時、信号処理部18は、記録時とは逆に、アナログフロントエンド部20から出力されたデータを復号処理、デスクランブル処理、およびエラー訂正処理し、処理結果をヘッダ情報処理部17に出力する。また信号処理部18は、マイコン14から供給されるスピンドル制御用、トラッキング制御用、フォーカス制御用、およびスレッド制御用の各種駆動情報を、ディジタルアナログ変換処理してこれらの駆動信号を生成し、これら駆動信号をモータアンプ部21に出力する。
アナログフロントエンド部20は、光学ヘッド22から光ディスク51に照射するレーザビームについて、光量制御信号を生成して出力する。アナログフロントエンド部20は、再生時、この光量制御信号により光学ヘッド22から光ディスク51に照射するレーザビームの光量を再生用の一定光量に保持するのに対し、記録時、信号処理部18からの出力データに応じてこの光量制御信号の信号レベルを変化させる。これにより、アナログフロントエンド部20は、この信号処理部18からの出力データに応じてレーザビームの光量を再生時の光量から記録の光量に間欠的に立ち上げる。
また、アナログフロントエンド部20は、光学ヘッド22から供給される戻り光の受光結果を増幅して演算処理を実行することにより、光ディスク51に形成されたピット列に対応して信号レベルが変化する再生信号を生成し、この再生信号に対して信号処理を実行することで、この再生信号の2値識別結果である再生データを、信号処理部18に出力する。またアナログフロントエンド部20は、この演算処理により、トラッキングエラー量、フォーカスエラー量に応じて信号レベルが変化するトラッキングエラー信号、フォーカスエラー信号等を生成し、これらの信号をディジタル信号によりマイコン14に出力する。
モータアンプ部21は、信号処理部18から出力される各種駆動信号により、それぞれ対応する機構を駆動する。すなわちモータアンプ部21は、これらの駆動信号のうち、スピンドル制御用の駆動信号、スレッド制御用の駆動信号によりスピンドルモータ23、スレッドモータ24を回転駆動する。また、モータアンプ部21は、トラッキング制御用の駆動信号、フォーカス制御用の駆動信号により光学ヘッド22に搭載されているアクチュエータを駆動する。
スピンドルモータ23は、光ディスク51をチャッキングして所定の回転速度により回転駆動する。スレッドモータ24は、光学ヘッド22を光ディスク51の半径方向に可動させる。
光学ヘッド22は、アナログフロントエンド部20から出力される光量制御信号に基づいて、内蔵する半導体レーザからレーザビームを出射し、対物レンズ(いずれも図示せず)を介してこのレーザビームを光ディスク51の情報記録面に集光する。また、光学ヘッド22は、このレーザビームの照射により光ディスク51から得られる戻り光をこの対物レンズを介して所定の受光素子に導き、その受光素子の受光結果をアナログフロントエンド部20に出力する。光学ヘッド22は、この対物レンズがトラッキング制御用の駆動信号、フォーカス制御用の駆動信号により駆動されるアクチュエータにより可動するようになされており、これによりトラッキング制御、フォーカス制御できる。また、レーザビームの光量が光量制御信号により間欠的に立ち上げられるので、光ディスク51の情報記録面を局所的に温度上昇させて所望のデータを記録するようになされている。
マイコン14は、この記録再生装置1の全体の動作を制御するコンピュータであり、各種の処理を実行する。マイコン14は、この記録再生装置1に事前にインストールされた処理プログラムを実行することにより各種の処理を実行する。例えば、マイコン14は、図示せぬ操作部を介して得られるユーザからの操作や、アナログフロントエンド部20で検出される各種信号等に基づいて、各種の処理を実行する。すなわち、マイコン14は、アナログフロントエンド部20で検出されるトラッキングエラー信号、フォーカスエラー信号により、トラッキング制御用、フォーカス制御用の駆動情報を生成し、信号処理部18でアナログ信号に変換させてモータアンプ部21に出力させる。これにより、マイコン14は、トラッキング制御や、フォーカス制御の処理を実行する。また、マイコン14は、ヘッダ情報処理部17で検出されるヘッダ情報等によりレーザビーム照射位置を検出し、この検出結果よりスレッド制御用の駆動情報を生成して信号処理部18に出力させ、これによりシーク等の処理を実行する。また、マイコン14は、同様にしてスピンドル制御の処理を実行する。
また、マイコン14には、ランダム値生成部41、ディスク識別コード演算部42、およびRAM43が設けられている。ここで、マイコン14の内部ではデータの授受が可能とされている。ランダム値生成部41は、ランダムな値であるランダム値を生成する。例えば、ランダム値生成部41は、管理用テーブルTVを記録するごとに、ランダム値を生成する。ディスク識別コード演算部42は、光ディスク51に、最後に記録を行った記録再生装置が、自機であるか、または他機であるかを判別(識別)するための情報であるディスク識別コードを演算する。すなわち、ディスク識別コードとは、記録再生装置1が、光ディスク51にデータを記録したことを示すコードである。なお、ディスク識別コードの詳細は、図10を用いて後述する。RAM43には、マイコン14が各種の処理を実行する上で適宜必要なデータが記憶される。ここで、自機とは、記録再生装置1そのものを示す。すなわち、記録再生装置1と同じ仕様の装置(すなわち、同じ機種の装置)であっても、記録再生装置1と異なる装置であれば他機とされる。なお、勿論、記録再生装置1と異なる仕様の装置は、他機とされる。
図2は、DVDビデオフォーマットによる光ディスク51の論理フォーマットの例を説明する図である。このフォーマットによる光ディスク51は、情報記録面が、先頭側である最内側よりリードイン(Lead in)、データゾーン(Data Zone)、リードアウト(Lead out)に区切られ、データゾーンには、所望の画像データや音声データ等が記録される。
ここでデータゾーンは、リードイン側より、UDF(Universal Disk Format)領域(ファイルシステムエリア)、管理用テーブルTV領域(図中においては、TVと記述する)、ディスク識別コード領域、ランダム値領域、VMG(Video Manager )領域(DVD管理用情報エリア)、拡張ファイルの案内情報TE領域(図中においては、TEと記述する)、およびリアルタイムデータ記録エリアに区分される。UDF領域、管理用テーブルTV領域、VMG領域、および拡張ファイルの案内情報TE領域は、この光ディスク51に記録されたデータによるファイルを管理する管理用情報記録領域である。具体的には、案内情報TEは、拡張ファイルが記録された領域の全体を管理する情報であり、上述したようにRMAの管理テーブルに記録位置が定義されるようになされている。より詳細には、案内情報TEは、管理用テーブルTVに含まれる(図示せぬ)データにより記録されているか否かを判定できるようになされ、また先頭アドレス、サイズが定義されるようになされている。
VMG領域は、DVDを管理する情報を記録する領域であり、リアルタイムデータ記録エリアに記録された画像データ全体を管理する管理用情報であるTOCの情報が記録される。これに対してUDF領域は、コンピュータによるファイル管理システムに対応する領域であり、コンピュータにおけるファイルシステムとの互換を図るフォーマットによりリアルタイムデータ記録エリアに記録したデータ全体を管理する管理用情報が記録される。
管理用テーブルTV領域には、光ディスクのプログラムエリアを管理するテーブルを示す管理用テーブルTVが記録される。具体的には、管理用テーブルTV領域には、リアルタイムデータ記録エリアに記録したVTSの先頭アドレスと末尾のアドレスや、拡張ファイルの案内情報TE領域の先頭アドレスなどを記録できるようになされており、再生専用のDVD再生装置(DVDプレーヤ)ではアクセスしない領域が割り当てられるようになされている。管理用テーブルTVの内容は、光ディスクへのデータの追加、削除、または編集などが行なわれた場合に、適宜、変化するものとされる。
また、この管理用テーブルTV領域には、管理用テーブルTVの他に、自由にデータを記録することができる領域(フリーゾーン)が設けられている。本発明においては、この管理用テーブルTV領域に設けられているフリーゾーンに、光ディスク51に対して最後に記録処理を行った記録再生装置1を識別するためのディスク識別コードと、ランダム値が記録される。ディスク識別コードは、その光ディスク51に最後に記録した記録再生装置が、自機種であるか他機種であるかを示すコード(データ)である。さらに言えば、ディスク識別コードは、その光ディスク51に最後に記録した記録再生装置が、自機であるかをも判断するコード(データ)となる。本実施の形態においては、管理用テーブルTVのデータとランダム値とDVDビデオフォーマット上の(VMGの)VMGIとに基づいて、ディスク識別コードが生成される。ランダム値は、管理用テーブルが更新される毎に、記録再生装置1により生成されるランダムな値である。記録再生装置1は、装填された光ディスク51にデータを記録した後、自らがデータを記録したことを示すために、ディスク識別コードとランダム値とを書き込む。このようにすることで、記録再生装置1から光ディスク51が取り出された後、その光ディスク51が再び記録再生装置1に装填された場合に、光ディスク51の管理用テーブルTV領域(管理用テーブルTV領域のフリーゾーン)に記録されているディスク識別コードを確認することで、この光ディスク51が、自機により記録されたものであるか否かを判断することができる。
リアルタイムデータ記録エリアは、実データを記録するプログラムエリアであり、VTS(Video Title Set )(以下、適宜、タイトルと呼ぶ)を単位にして、画像データが記録される他、拡張ファイルである静止画のファイルEFや中間管理用情報DKなどが記録される。拡張ファイルEFと中間管理用情報DKによれば、その拡張ファイルEFの位置等が特定され、再生可能とされている。
ここでVMGは、先頭側より、VMGI(Video Manager Information)、VMGM VOBS (Video Object Set for VMG Menu)、およびVMGI BUP(Backup of VMGI)が配置される。VMGIには、DVDのビデオゾーン全体についての制御情報が記録され、VMGM VOBSには、タイトルを選択するためのメニューに関連する情報が記録され、VMGI BUPには、VMGIと一致する情報が、バックアップとして記録される。また、VTSは、先頭側より、VTSI(Video Title Set Information )、VTSM VOBS(VideoObject Set for the VTSM )、VTSTT VOBS(Video ObjectSetFor Titl es in a VTS)、VTSI BUP(Backup of VTSI)が配置される。ここでは、1つのVTSは、1つのタイトルに対応している。VTSTT VOBSには、実データであるMPEG2のフォーマットによる画像データが記録され、VTSIには、この実データによる画像データを管理する管理用情報である記録位置情報等が、VTSM VOBS には、ビデオデータのタイトルメニューが記録される。なお、VTSMVOBSは、オプションである。VTSI BUPは、VTSIのバックアップである。
コンピュータ用の管理用情報であるUDFについては、拡張ファイルについても認識してアクセスできるように、管理用情報が記録されるのに対し、DVD再生用の管理用情報であるVMGについては、拡張ファイルに係る情報は何ら記録しないようなされている。このように、コンピュータによりアクセスする場合は、UDFにより所望するファイルを検索して再生することができるようになされ、DVDの記録再生装置によりアクセスする場合には、VMGにより所望する動画のファイルを検索して再生することができるようになされている。UDFは、コンピュータのファイル管理システムに対応して光ディスクに記録されたビデオデータの管理用情報を構成するのに対し、VMGは、DVD記録再生装置に対応して、光ディスク51に記録された動画データの管理用情報を構成するようになされている。拡張ファイルの記録については動画の再生に何ら影響を与えることなく、確実にDVDビデオフォーマットによる再生を行えるように構成されている。
なお、光ディスク51にデータを書き込む方式として、本実施の形態においては、ROW(Restricted Over Write)方式が使用される。ROW方式は、上書き可能(追記可能)な光ディスクに適用される方式である。ただし、ROW方式においても、未記録領域にデータを記録する場合には、シーケンシャルにビデオデータを記録する。なお、ROW方式においては、リードインの内周側に設けられたRMA(Recording Management Area)により、後述するパディング等による領域が管理されるようになされている。また、光ディスク51への記録の手順や、図2の管理用テーブルTV領域以外の領域(RMA,lead in,UDF,VMG,TE,VTS#1乃至VTS#n(EF,DK),lead out)については、基本的には特開2003−331563号公報に記載されている方式と同様であるので、その詳細な説明については省略する。なお、光ディスク51へのデータの記録手順は、特開2003−331563号公報に記載されている方式に限らず、他の記録手順であってもよい。
次に、図3のフローチャートを参照して、図1の記録再生装置1における記録再生処理を説明する。なお、この処理は、ユーザにより(図示せぬ操作部を介して)記録再生装置1の電源のオンが指令されたとき開始される。
ユーザにより記録再生装置1の電源のオンが指令されると、ステップS11において、記録再生装置1は、電源をオンする。ステップS12において、マイコン14は、図示せぬ光ディスク51の検出機構による検出結果により、光ディスク51が(ドライブに)装填されたか否かを判定し、装填されるまで処理は待機される。すなわち、光ディスク51が記録再生装置1の図示せぬドライブに挿入(装填)されるまで処理は待機される。なお、このステップS12の繰り返しにおいて、電源がオフされた(立ち下げられた)場合には、処理はステップS13に進む。
ステップS12において、光ディスク51が装填されたと判定された場合、ステップS13において、マイコン14は、スレッドモータ24を駆動させて光学ヘッド22を光ディスク51の最内周に移動させ、この最内周側の再生結果を、信号処理部18を介して取得することにより、光ディスク51の記録再生に必要な管理用情報を取得する。具体的には、マイコン14は、光ディスク51の最内周側の再生結果を、信号処理部18を介して取得することにより、ファイナライズ処理されている光ディスク51については、VMGのデータを取得し、ファイナライズ処理されていない場合にはRMAのデータを取得する。また、マイコン14は、このRMAの情報により、光ディスク51のリアルタイムデータ記録エリアに既にデータが記録されている場合には、光ディスク51をサーチして各VTSのVTSI、VTSTT VOBSのデータを取得する。このように、マイコン14は、通常のDVDを記録再生する記録再生装置と同様に、光ディスク51の記録再生に必要な光ディスク51の管理用情報を取得する。なお、このステップS13の処理において、マイコン14は、VMGのデータに加えて、UDFのデータも併せて取得する。また、マイコン14は、リアルタイムデータ記録エリアの再生において、中間管理用情報DKが記録されている場合(図2)には、この中間管理用情報DKも併せて取得する。これにより、マイコン14は、DVD−ビデオフォーマットで定義されていない拡張ファイルに関しても、光ディスク51から再生ができるように、この拡張ファイルの管理用情報についても併せて取得するようになされている。マイコン14は、このようにして取得した一連の管理用情報をRAM43(図1)に記録して保持する。
より詳細に説明すると、マイコン14による信号処理部18、モータアンプ部21を介したスレッドモータ24の駆動により、光学ヘッド22を光ディスク51の内周側に移動させる。光学ヘッド22は、光ディスク51にレーザビームを照射し、戻り光の光学ヘッド22による受光結果が、アナログフロントエンド部20とマイコン14で順次処理され、このマイコン14の処理による信号処理部18、モータアンプ部21を介した光学ヘッド22の制御により、トラッキング制御、フォーカス制御の処理が実行される。また受光結果の信号処理部18による処理により、光ディスク51に記録されたデータが再生される。記録再生装置1では、この一連の処理により、光ディスク51の内周側に記録された各種情報がマイコン14で取得され、マイコン14に内蔵のメモリに保持される。なお、以下においても各種の再生処理における手順は同様であるので、その説明は適宜省略する。
ステップS14において、記録再生装置1は、自機記録の判別処理を実行する。この処理は、光ディスク51に最後に記録した装置が、自機であるかを、ディスク識別コード領域に記録されているディスク識別コード(図2)に基づいて判定する処理である。なお、この処理の詳細は図7と図8を参照して後述する。なお、まだ光ディスク51に何も記録されていない場合には、このステップS14の処理はスキップされる。
ステップS15において、マイコン14は、光ディスク51の取り出しが(ユーザにより)指令されたか否かを判定する。具体的には、マイコン14は、光ディスク51の排出(Eject)がユーザにより指令されたか否かを判定する。ステップS15において、光ディスク51の取り出しが指令されたと判定された場合には、後述するステップS20に進む。
ステップS15において、光ディスク51の取り出しが指令されていないと判定された場合、処理はステップS16に進み、マイコン14は、ユーザにより記録が指令されたか否かを判定する。具体的には、マイコン14は、ユーザにより図示せぬ操作部を介して記録が指令されたか、再生が指令されたか否かを判定する。ステップS15において、記録が指令された場合には、ステップS17に進み、記録再生装置1は、記録処理を実行する。なお、この処理の詳細は、図11を参照して後述する。
ステップS16において、記録が指令されていないと判定された場合、すなわち、再生が指令された場合、処理はステップS18に進み、記録再生装置1は、再生処理を実行する。具体的には、ユーザからの再生の指令が動画の再生に係るものである場合、マイコン14は、内蔵するメモリ(図1のRAM43)に記憶してある管理用情報(ステップS13で取得した管理用情報)に基づいて、再生が指令された動画のファイルを再生するように全体の動作を制御する。なお、この処理の詳細は、図12を参照して後述する。なお、この処理は再生の停止が指令されるまで実行され続ける。ユーザにより再生の停止が指令された場合には、マイコン14は、再生の動作を終了するよう制御し、再生を停止する。
ステップS17の処理の後、またはステップS18の処理の後、処理はステップS19に進み、マイコン14は、ユーザにより電源オフが指令されたか否かを判定する。ユーザにより電源オフが指令されていないと判定された場合、処理はステップS15に戻り、それ以降の処理が繰り返される。
ステップS15において、ディスクの取り出しが指令された場合、処理はステップS20に進み、マイコン14は、管理用テーブルTVを光ディスク51に記録する。具体的には、マイコン14は、内蔵するRAM43に保持している管理用テーブルTVを光ディスク51に記録する。
ステップS21において、記録再生装置1は、ディスク識別コード記録処理を実行する。具体的には、記録再生装置1は、ランダム値を生成し、生成したランダム値、管理用テーブルTV、およびVMGIのデータに、ハッシュ関数プログラムを適用させることで、記録再生装置1が光ディスク51に対してデータを記録したことを示すディスク識別コードを演算し、これを、図2に示されるようにディスク識別コードとして記録する。また、記録再生装置1は、生成したランダム値を、図2に示されるように記録する。これにより、再度、この光ディスク51が記録再生装置1に装填された場合に、上述したステップS14の処理により自機記録の判断処理を実行することができる。なお、この処理の詳細は、図14を参照して後述する。
ステップS22において、マイコン51は、図示せぬローディング機構に光ディスク51の排出を指令する。これにより、光ディスク51が排出される。ステップS22の処理の後、処理はステップS12に戻り、それ以降の処理が繰り返される。すなわち、再び光ディスクが装填されるまで処理は待機される。
ステップS19において、電源オフが指令された場合、処理はステップS23に進み、マイコン14は、電源オフ処理(電源立ち下げの処理)を実行し、処理を終了する。
ここで、管理用テーブルTV領域(図2)に記録されるデータの構成例について説明する。
管理用テーブルTV領域には、管理用テーブルTV、ディスク識別コード、およびランダム値が記録される。具体的には、管理用テーブルTV領域に、管理用テーブルTVが記録され、管理用テーブルTVのフリーゾーンに、ディスク識別コードとランダム値とが記録される。管理用テーブルTVは、上述した図3の処理において適宜RAM43(図1)に保持されるとともに、ステップS20の処理で更新され、ディスク識別コードとランダム値とは、ステップS21のディスク識別コード記録処理で更新される。
図4は、管理用テーブルTVの簡単な構成例を示す図である。図4においては、管理用テーブルTVには、タイトル数(VTSの数)、各VTSの始点アドレス、1つのタイトルに含まれる複数のチャプタの始点と終点のアドレス(各チャプタの始点と終点のアドレス)が含まれている。図4の例の場合、タイトル数(VTS)は2つであり、各タイトルの始点のアドレスが含まれる。すなわち、2つのタイトルは「VTS#1」と「VTS#2」とされる。また、図4の例の場合、VTS#1に10個のチャプタが含まれるとともに、10個の各チャプタの始点と終点のアドレスが含まれる。また、VTS#2に20個のチャプタが含まれるとともに、20個の各チャプタの始点と終点のアドレスが含まれる。なお、管理用テーブルTVには、この他にも、拡張ファイルの案内情報TE領域の先頭アドレスなどの各種の情報も含まれるが、ここでは省略している。
図5は、図3のステップS17の記録処理が終了した後にメモリの管理用テーブルTV領域に保持されているデータの例を示す図である。
図5において、管理用テーブルTVのための領域には、管理用テーブルTVが記録され、残りはフリーゾーン(空き領域)とされている。ここで、ステップS21のディスク識別コード記録処理において、マイコン14は、図5の管理用テーブルTVとランダム値とVMGのVMGIとに基づいて、図6に示されるディスク識別コードを生成し、記録するとともに、内蔵するメモリ(図1のRAM43)に保持しているランダム値を記録する。このように、光ディスク51の取り出しが指令された場合(ステップS15でYESと判定された場合)には、管理用テーブルTV領域に、ディスク識別コードとランダム値とが記録される。
次に、図7と図8のフローチャートを参照して、図3のステップS14の自機記録の判断処理の詳細を説明する。
ステップS51において、マイコン14は、光ディスク51の管理用テーブルTV領域に管理用テーブルTVが存在するか否かを判定する。例えば、マイコン14は、スレッドモータ24を駆動させて光学ヘッド22を光ディスク51の最内周に移動させ、この最内周側の再生結果を、信号処理部18を介して取得することにより、光ディスク51に管理用テーブルTVが記録されているか否かを判定する。記録再生装置1の記録においては、データを更新する場合に、管理用テーブルTVも更新されるので、管理用テーブルTVが存在しないということは、光ディスク51に最後に記録処理を行った記録再生装置が図1の記録再生装置1とは異なることを示す。すなわち、管理用テーブルTVが存在しない場合、記録再生装置1とは異なる機種(他機種)により光ディスク51にデータが記録されたものと判断される。
ステップS51において、管理用テーブルTVが存在すると判定された場合、ステップS52に進み、マイコン14は、管理用テーブルTV領域にディスク識別コードが存在するか否かを判定する。例えば、図6に示されるように、管理用テーブルTV領域にディスク識別コードが記録されている場合には、YESと判定される。記録再生装置1から光ディスク51が取り出される場合には、図3のステップS21で上述したように、ディスク識別コードとランダム値とが管理用テーブルTV領域に記録されるので、ディスク識別コードが存在しない場合には、光ディスク51に最後に記録処理を行った装置が、記録再生装置1とは異なる機種(他機種)の装置であると判定される。
ステップS52において、ディスク識別コードが存在すると判定された場合、ステップS53において、マイコン14は、光ディスク51の管理用テーブルTV領域からディスク識別コードを読み出す。図6の例の場合、マイコン14は、管理用テーブルTVのための領域から、ディスク識別コードを読み出す。
ステップS54において、マイコン14は、光ディスク51の管理用テーブルTV領域とVMG領域とから、管理用テーブルTV、ランダム値、およびVMGI(図2または図6参照)を読み出す。
ステップS55において、マイコン14は、読み出した管理用テーブルTV、ランダム値、およびVMGIを連続したデータ列とする。具体的には、マイコン14は、図6の管理用テーブルTVとランダム値とVMGのVMGIとを、図9に示されるように、連続したデータ列とする。すなわち、管理用テーブルTVのデータとランダム値とVMGIのデータとを合わせて1つのデータとする。なお、図9の例の場合、ランダム値のうしろに管理用テーブルTVを加え、さらにうしろにVMGIを加えるようにしているが、その順番は(あらかじめ定めるようにすれば)問わない。
ステップS56において、マイコン14のディスク識別コード演算部42は、ステップS55の処理で生成したデータ列のハッシュ値を演算し、これを「ディスク識別コード'」とする。具体的には、ディスク識別コード演算部42は、図10に示されるように、ランダム値と管理用テーブルTVとVMGIとにより構成されるデータ列に対して、ハッシュ関数プログラムを用いて(適用して)ハッシュ値を演算し、その演算結果を、ディスク識別コードとする。ハッシュ関数としては、例えば、MD(Message Digest)5のプログラムが用いられる。ハッシュ関数プログラムは、任意のデータ長のデータのハッシュ値が固定長(例えば、128bit)となるような値を演算する特徴を有している。また、ハッシュ関数プログラムによって求めた値から、入力されたデータ列(管理用テーブルTVとVMGIとランダム値とをあわせたデータ列)を算出することができないという特徴(不可逆性の特徴)を有している。さらに、ハッシュ関数の出力値の出現確率は、その出力値が取りうる値の範囲において一様であるという特徴を有している。
ステップS57において、マイコン14は、ステップS53の処理で光ディスク51から読み出したディスク識別コードと、ステップS56の処理で演算した「ディスク識別コード'」とが一致するか否かを判定する。ステップS53の処理で光ディスク51から読み出されたディスク識別コードは、前回記録再生装置1と同じ機種により記録処理が行われて光ディスク51が取り出される場合に記録されたものである。このとき、前回記録再生装置1と同じ機種の記録再生装置1(すなわち、自機種)により光ディスク51に記録が行われた場合には、光ディスク51に記録されているディスク識別コードと、ステップS55の処理で演算された「ディスク識別コード'」とが一致する。
ステップS57において、読み出したディスク識別コードと演算したディスク識別コード'とが一致しないと判定された場合、ステップS51において管理用テーブルTVが存在しないと判定された場合、または、ステップS52においてディスク識別コードが存在しないと判定された場合、光ディスク51に前回記録処理を行った装置が、本発明を適用した記録再生装置1ではない、すなわち他機種の記録再生装置であるので、処理をステップS58に進める。
ステップS58において、マイコン14は、この光ディスク51は、他機種で記録された光ディスクであると判断する。例えば、1回目の記録処理において記録再生装置1(自機種)により記録が行われ、ディスク識別コードとランダム値とが記録された後、2回目の記録処理において他の記録再生装置(他機種)により記録が行われた場合、ディスク識別コードやランダム値の更新がなされない。また、VMGのVMGIは更新されるが、管理用テーブルTVのデータやランダム値は、更新されたり、更新されなかったりする。そのため、3回目の記録処理において、再び記録再生装置1(自機種)にこの光ディスク51が装填された場合に、管理用テーブルTV、ランダム値、およびVMGIに基づいて演算された「ディスク識別コード'」は、2回目の記録処理で他機種により記録が行われた結果、管理用テーブルTV、ランダム値、またはVMGIのうちの少なくともいずれか1つが1回目の記録処理が終了した後のデータとは異なるので、光ディスク51に1回目の記録処理で記録されたディスク識別コードと異なることになる。このようにして、前回光ディスク51に記録した装置が自機種であるか他機種であるかを迅速に判定することができる。ステップS58の処理の後、処理は終了される。
ステップS57において、読み出したディスク識別コードと、演算したディスク識別コード'とが一致すると判定された場合、ステップS59に進み、マイコン14は、ディスク識別コードがフラッシュメモリ26に記憶されているか否かを判定する。詳細は後述するが、フラッシュメモリ26は、ディスク識別コードが光ディスク51に記録される場合に、記録されるディスク識別コードと同じディスク識別コードを記憶する(後述する図15の右側)。すなわち、ディスク識別コードは、光ディスク51の取り出しが行なわれる場合に記録されるので(図3のステップS21)、フラッシュメモリ26は、ディスク識別コードを、光ディスク51の取り出しが行なわれるタイミングで記憶する。また、フラッシュメモリ26は、マイコン14からの制御に基づいて、光ディスク51に記録されている画像データ(データ)に基づいて生成されたサムネイル画像をキャッシュしており、対応するディスク識別コードを、キャッシュしているサムネイル画像に関連付けて(対応付けて)記憶する。
ステップS59において、ディスク識別コードがフラッシュメモリ26に記憶されていないと判定された場合、処理はステップS60に進み、マイコン14は、この光ディスク51は、他機(自機種)で記録された光ディスク51であると判断する。すなわち、マイコン14は、記録再生装置1と同じ機種であり、他機(すなわち、異なる記録再生装置)で記録された光ディスク51であると判断する。例えば、記録再生装置1において再生処理が行われた場合、再生処理で生成されたサムネイル画像が、対応するディスク識別コードとともにフラッシュメモリ26に記憶されているはずであるが、このステップS59の処理でディスク識別コードがフラッシュメモリ26に記憶されていないと判定されたということは、自機種ではあるが、自機ではない記録再生装置1により最後に記録処理が行われていることになる。ステップS60の処理の後、処理は終了される。
ステップS59において、ディスク識別コードがフラッシュメモリ26に記憶されていると判断された場合、処理はステップS61に進み、マイコン14は、光ディスク51が自機記録されたディスクであると判断する。すなわち、マイコン14は、光ディスク51に最後に記録した装置が、自分自身(記録再生装置1)であると判断する。
ステップS62において、マイコン14は、装填している光ディスク51のディスク識別コードと、フラッシュメモリ26にキャッシュしているデータに関連付けたディスク識別コードが一致するデータを検索する。例えば、フラッシュメモリ26は、再生時に生成されたサムネイル画像データと、管理用テーブルTVの更新後に生成されるディスク識別コードとを関連付けて記憶しているので、マイコン14は、フラッシュメモリ26にキャッシュされているデータに基づいて、ステップS56の処理で演算したディスク識別コードと一致するディスク識別コードに関連付けられたデータ(例えば、サムネイル画像データ)を検索する。
ステップS63において、マイコン14は、ディスク識別コードが一致した(演算したディスク識別コード'とフラッシュメモリ26に保持されていたディスク識別コードが一致した)データ(例えば、サムネイル画像データ)を、適宜利用する。その後、処理は終了される。
図7と図8の処理により、光ディスク51に最後に記録した装置が、自機種であるか他機種であるかを迅速に判断することができる。また、光ディスク51に最後に記録した装置が、自機(自分自身)であるかを迅速に判断することができる。さらに、光ディスク51に最後に記録した装置が自機である場合には、ディスク識別コードに関連付けておいた、キャッシュしていたデータを適宜利用することができる。
具体的には、図7のステップS51、ステップS52、およびステップS57の処理でNOと判定された場合には、光ディスク51に最後に記録した装置が自機種ではない(他機種である)と判断し、ステップS59の処理でNOと判定された場合には、光ディスク51に最後に記録した装置が自機種ではあるが自分自身ではない(自機ではない)と判断し、ステップS51、ステップS52、ステップS57、およびステップS59の全てにおいてYESと判定された場合には、光ディスク51に最後に記録した装置が自機であるので、キャッシュしておいたデータを適宜利用することができる。
このように、光ディスク51に最後に記録した記録再生装置1が自機種であるか他機種であるかを判別することができるとともに、さらに、光ディスク51に最後に記録した記録再生装置1が自機であるか他機であるかを判別することができる。
次に、図11のフローチャートを参照して、図3のステップS17の記録処理の詳細について説明する。
ステップS81において、マイコン14は、光ディスク51に対してファイナライズするか否かを判定する。例えば、マイコン14は、ユーザにより図示せぬ操作部を介して、ファイナライズ処理が指令されたか否かを判定する。ファイナライズ処理とは、図2のUDF、VMG、リードイン(lead in)、およびリードアウト(lead out)などを更新することで、記録処理を完了させる処理である。
ステップS81においてファイナライズしないと判定された場合、ステップS82において、画像データ入力部11と音声データ入力部12は、記録するデータの入力を受け付ける。例えば、図示せぬ撮像部やマイクなどにより取り込まれた画像データや音声データが受け付けられる。
ステップS82において、マイコン14は、各部を制御して、入力データを、記録フォーマットに合わせて記録用データに変換する。具体的な例としては、マイコン14は、圧縮伸長処理部13(画像処理部31と音声処理部32)を制御して、画像データと音声データを圧縮させるとともに、画像データと音声データとを時分割多重化させ、ヘッダ情報処理部17を制御して、光ディスク51に固有のヘッダ情報、拡張ファイルのヘッダ情報などを付加させる。また、マイコン14は、信号処理部18を制御して、ヘッダが付加された時分割多重化データに、エラー訂正符号が付加された後、インターリーブ処理、符号化処理が施される。このようにすることで、入力データが記録用データに変換される。
ステップS83において、マイコン14は、記録用データをディスクに記録させる。具体的には、記録用データに従って光学ヘッド22から光ディスク51に照射するレーザビームの光量がアナログフロントエンド部20により立ち上げられ、これにより光ディスク51に順次ピット列が形成されて動画による画像データが順次記録される。このとき、マイコン14は、内蔵するメモリ(RAM43)で保持している管理用テーブルTVのデータについても適宜更新するとともに、光ディスク51の管理用テーブルTV領域の管理用テーブルTVも更新する(図6)。
ステップS85において、マイコン14はユーザからの図示せぬ操作部への操作に基づいて、記録を終了するか否かを判定する。記録を終了しないと判定された場合、処理はステップS82に戻り、それ以降の処理が繰り返される。すなわち、再び記録するデータの入力が受け付けられ、記録用データが光ディスク51に記録される処理が、記録の終了が指令されるまで繰り返される。
ステップS85において、記録を終了すると判定された場合、処理はステップS86に進み、マイコン14は、終了処理を実行する。このとき、ステップS82以降の処理で、記録するデータが動画像の記録に係るものである場合、ステップS86において、実データの記録が完了することで、VTSTT VOBSの記録が完了され、さらにVTSI BUP、VTSI、VTSM VOBSが順次形成される。これにより1つのVTSの記録が完了される。このように、記録再生装置1では、ユーザにより記録が停止指示されると、圧縮伸長処理部13等における一連の処理がマイコン14により停止制御されて画像データの記録が中止され、続いてこのようにして記録した動画によるファイルの管理用情報が光ディスクに記録される。すなわち、記録再生装置1では、動画像の位置情報、ファイルサイズの情報、記録日時等の情報よりマイコン14により管理用情報が生成され、画像データに続いて記録するように、この管理用情報が信号処理部18に出力されて光ディスク51に記録され、これによりVTSI BUPの領域が形成され、続いてパディングにより、続くVTSのVTSI、VTSM VOBSを生成する領域が確保され、先に確保したVTSI、VTSM VOBSの領域に光学ヘッド22がシークし、この領域において、同様の管理用情報が信号処理部18に出力されて光ディスク51に記録され、これによりVTSI、VTSM VOBSの領域が形成される。記録再生装置1では、これにより動画による画像データが1タイトル記録される。これらにより記録再生装置1では、動画によるファイルを記録する場合、VTSIによる管理用情報、VTSM VOBSによる管理用情報、ファイル、VTSI BUPによる管理用情報が連続するフォーマットであるDVDビデオフォーマットにより管理用情報、ファイルが記録される。記録再生装置1では、続いてユーザにより動画の記録が指示された場合、同様の処理の繰り返しにより順次光ディスク51にタイトルが記録される。
これに対して、ステップS82以降の処理で、記録するデータが静止画像の記録に係るものである場合、所定のタイミングで得られた静止画像データが記録され、ステップS87において、静止画ファイルによる拡張ファイルが記録されるとともに、中間管理用情報DK等が記録される。具体的には、光ディスク51がバージンディスクである場合には、画像データ入力部11より入力される静止画による画像データが圧縮伸長処理部13の画像処理部31でJPEGの規格によりデータ圧縮され、記録される。記録再生装置1においては、動画の記録においては、始めにVTSI、VTSM VOBSの領域を確保して実データを記録するのに対し、この静止画の記録においては、パディングにより確保した領域の先頭に戻って、このような領域を確保することなく静止画による実データを記録する。また、ユーザにより続く静止画の記録が指示されると、同様にして、続く静止画が光ディスク51に記録される。またこれらの記録毎に、各ファイルの記録位置等がメモリに記録される。
記録再生装置1では、このようにして所望するファイル数だけ静止画によるファイルを光ディスクに記録してユーザによる動作モードの切り換え等により静止画の記録停止が指示されると、メモリに保持した記録位置等による管理用情報がこれら複数ファイル分、続く領域に、ファイナライズまでの一時的な中間管理用情報DKとして記録される。これにより記録再生装置1では、動画以外のファイルを記録する場合には、ファイル、対応する管理用情報の順となるように、ファイル及び管理用情報が記録され、記録するファイルの属性によりファイル及び管理用情報の記録フォーマットが切り換えられる。
記録再生装置1では、このような中間管理用情報DK(図2)が、連続して記録した複数ファイルでまとめられて、全体を管理する管理情報が記録された後、各ファイルの先頭位置、ファイル名を示す個別情報が記録されて形成され、この中間管理用情報DKの先頭アドレスが拡張ファイルの案内情報TEとして光ディスク51の内周側、固定した領域に記録される。さらにこの拡張ファイルの案内情報TEの記録位置情報が、管理用テーブルTVに記録される。
これにより、このような動画以外のファイルをもサポートする記録再生装置1によれば、静止画のファイルについても再生することが可能となる。すなわち、このような光ディスク51が装填された場合、記録再生装置1では、管理用テーブルを基準にした光ディスク51のサーチにより、VTS、VTSM VOBSのデータだけでなく、静止画ファイルの中間管理用情報DKについても光ディスク51より再生され、マイコン14のメモリに保持される。これにより、例えばユーザの指示により光ディスク51に記録された動画および静止画のタイトル等をユーザに提供することができる。またユーザによる再生の指示により、ユーザが動画の再生を指示した場合、VTS、VTSM VOBSのデータにより再生専用の光ディスクについて上述したと同様にして対応する動画ファイルを再生することができる。
一方、ステップS81において、ファイナライズすると判定された場合、処理はステップS87に進み、マイコン14は、UDFとVMGを生成する。具体的には、マイコン14は、管理用テーブルTVに基づいて光ディスク51から取得して内蔵するメモリに保持した管理用情報、動画および静止画の記録により作成してメモリに保持した管理用情報、並びに、中間管理用情報をヘッダ情報処理部17に供給し、ヘッダ情報処理部17に、コンピュータ用のUDFのデータを生成させる。また、マイコン14は、動画ファイルの管理用情報をヘッダ情報処理部17に供給し、ヘッダ情報処理部17に、DVDプレーヤ用のVMGデータを生成させる。
ステップS88において、マイコン14は、各部を制御して、生成したUDF、VMGを光ディスク51に記録させる。UDFとVMGとは、光ディスク51に確保された内周側領域に記録され、またリードイン、リードアウトが形成される。これにより、この光ディスク51は、通常のDVDフォーマットのみに対応するDVDプレーヤでも再生可能に設定される。ステップS86の処理の後、またはステップS88の処理の後、処理は終了される。
図11の処理により、光ディスク51にデータが記録される。また、ファイナライズする場合には、通常のDVDフォーマットのみに対応するDVD再生装置であっても、再生可能な光ディスク51とすることができる。また、光ディスク51に記録された拡張ファイルをも再生可能とすることができる。
次に、図12のフローチャートを参照して、図3のステップS18の再生処理の詳細を説明する。
ステップS111において、マイコン14は、ユーザからの再生の指令が、動画像ファイルの再生であるか否かを判定する。動画像ファイルの再生であると判定された場合、ステップS112において、マイコン14は、ユーザからの指令に基づいて、サムネイル画像を表示するか否かを判定する。例えばユーザが、再生する動画像ファイルを選択するためにサムネイル画像の表示を指令した場合には、サムネイル画像を表示すると判定される。また、例えばユーザが、再生する動画像ファイルをサムネイル画像の表示を省いて指令した場合には、処理はステップS119に進む。
ステップS112においてサムネイル画像を表示すると判定された場合、処理はステップS113に進み、マイコン14は、利用可能なサムネイル画像があるか否かを判定する。ここでは、上述した図7のステップS59の処理で、ディスク識別コードがフラッシュメモリ26に記憶(キャッシュ)されていると判定された場合に、図8のステップS62の処理で検索された、ディスク識別コードが一致するデータが、利用可能なデータとされる。すなわち、図12の例の場合、ディスク識別コードと一致するデータが、サムネイル画像とされる。換言すれば、図8のステップS62の処理で検索されたデータがある場合に、ステップS113の処理ではYESと判定される。
ステップS113において、利用可能なサムネイル画像があると判定された場合、ステップS114に進み、マイコン14は、フラッシュメモリ26に記憶(キャッシュ)されているサムネイル画像を読み込む。このサムネイル画像は、後述する図12の処理で生成されたものとなる。
ステップS113において、利用可能なサムネイル画像がないと判定された場合、ステップS115において、マイコン14は、対応する画像データを、光ディスク51から読み出す。具体的には、RAM43に保持した管理用情報を基準としてVMGのデータに基づいて、対応する画像データ(サムネイル画像を生成するための画像データ)を読み出す。
ステップS116において、圧縮伸長処理部13の画像処理部31は、マイコン14からの制御に基づいて、ステップS115の処理で読み出された画像データに基づきサムネイル画像を生成する。
ステップS114の処理の後、またはステップS116の処理の後、処理はステップS117において、出力部25は、マイコン14からの制御に基づいて、サムネイル画像を表示する。例えば、出力部25としての表示部は、マイコン14からの制御に基づいて、ステップS114の処理で読み込まれたサムネイル画像、または、ステップS116の処理で生成されたサムネイル画像を表示する。このとき、サムネイル画像がフラッシュメモリ26に記憶されていた場合、すなわち、上述した図7と図8の処理で自機記録されたと判定された場合には、サムネイル画像を再度生成する必要がなく、フラッシュメモリ26に記憶されているデータを流用すればよいので、より、サムネイル画像の表示を迅速に行うことができる。また、サムネイル画像の生成処理を省略することができる。このとき、表示部としての出力部25には、例えば、図13に示されるようなサムネイル画像が表示される。
図13の例の場合、表示部としての出力部25には、6つのサムネイル画像111−1乃至111−6、左方向を示す矢印121、並びに、右方向を示す矢印122が表示されている。矢印121は、出力部25に表示されている画面より前の画面(6つのサムネイル画像からなる画面)を選択するための矢印であり、矢印122は、出力部25に表示されている画面より後の画面(6つのサムネイル画像からなる画面)を選択するための矢印である。
このように、ステップS116の処理においては、画像処理部31が、6つの動画像ファイルの先頭(必ずしも先頭である必要はない)の画像データに基づいて、それぞれサムネイル画像を生成し、これを、ステップS117の処理で出力部25に表示させる。また、ステップS113の処理で利用可能なサムネイル画像がフラッシュメモリ26に記憶されていた場合には、ステップS114でフラッシュメモリ26に記憶されている6つのサムネイルが読み出され、ステップS117の処理で出力部25に表示される。ユーザは、図13に示されるような、複数のサムネイル画像を見て、再生する動画像ファイルを選択する。なお、図13の例の場合、表示するサムネイル画像を6つとしたが、この数はこれに限定されない。また、例えば、矢印121や矢印122が表示された場合、フラッシュメモリ26に対応するサムネイル画像が記憶されていればフラッシュメモリ26に記憶されているサムネイル画像が読み出されて表示され、フラッシュメモリ26に対応するサムネイル画像が記憶されていない場合には、サムネイル画像が生成され、表示される。このように、ステップS113乃至ステップS118の処理は、ユーザからの指令に基づいて適宜繰り返し行われる。
ステップS118において、マイコン14は、ステップS117の処理で表示させたサムネイル画像をキャッシュさせる。すなわち、マイコン14は、生成または読み出されたサムネイル画像をフラッシュメモリ26に記憶させる(後述する図15の光ディスク51に関連するデータの欄参照)。これにより、次回、同じサムネイル画像の表示が指令された場合には、フラッシュメモリ26に記憶されたサムネイル画像を用いて表示を行うことができる。なお、ステップS113の処理でYESと判定された場合には、既に表示させるサムネイル画像がフラッシュメモリ26に記憶されているので、再びフラッシュメモリ26に記憶させる必要は必ずしもないが、その更新頻度や利用頻度によって、図18に後述するように適宜サムネイル画像の削除処理も行われるので、更新されるようにしてもよい。
ステップS112において、サムネイル画像を表示しないと判定された場合、またはステップS118の処理の後、処理はステップS119に進み、マイコン14は、ユーザにより再生が指令された動画像ファイルのデータを読み出す。
ステップS120において、出力部25は、マイコン14からの制御に基づき、動画像ファイルのデータに基づいて、動画像を表示する。
一方、ステップS111において、ユーザにより再生が指令されたファイルが動画像ファイルではない(例えば、拡張ファイルの再生である)と判定された場合、ステップS121において、マイコン14は、再生が指令されたファイルのデータを読み出す。例えば、マイコン14は、RAM43に保持したUDFのデータにより対応するファイルの記録位置を検出し、この記録位置からの再生を記録再生装置1の各部に指示し、データを読み出す。なお、光ディスク51がファイナライズ処理されていない光ディスク51である場合には、マイコン14は、RAM43に保持した管理テーブルの記録、案内情報の記録、対応する中間管理情報より対応するファイルの記録位置を検出し、この記録位置からの再生を記録再生装置1の各部に指示し、データを読み出す。
ステップS122において、出力部25は、マイコン14からの制御に基づき、読み出されたデータ(静止画像ファイルのデータ)に基づいて、静止画像を表示する。
ステップS120の処理の後、またはステップS122の処理の後、処理はステップS123に進み、マイコン14は、ユーザからの指令に基づいて、再生を終了するか否かを判定する。再生を終了しないと判定された場合、処理はステップS111に戻り、それ以降の処理が繰り返される。すなわち、再生を終了する指令がユーザに入力されるまで、再生処理が繰り返される。
ステップS123において、再生を終了すると判定された場合、処理はステップS124に進み、マイコン14は、各部を制御して終了処理を実行し、処理を終了する。
図12の処理により、再生処理が実行される。また、図7と図8の処理により、光ディスク51に最後に記録処理を行った機器が自機(すなわち、自分自身)であると判定された場合には、ディスク識別コードで関連付けられたデータ(サムネイル画像)を流用することができ、もって、サムネイル画像の生成処理を省略することができる。
なお、本実施の形態では、フラッシュメモリ26にキャッシュしておくデータを、サムネイル画像のデータとしたが、これに限定されず、光ディスク51から読み出されて何らかの処理が施されるようなデータ(光ディスク51に記録されているデータのうちの、特定のデータ)であれば他のものでもよい。
次に、図14のフローチャートを参照して、図3のステップS21のディスク識別コード記録処理の詳細を説明する。
ステップS141において、マイコン14のディスク識別コード演算部42は、VMGIと、その時点において有効な管理用テーブルTVを読み込む。マイコン14のディスク識別コード演算部42は、図5のVMGのVMGIと、例えばマイコン14のRAM43に保持しておいた管理用テーブルTVのデータ(または、光ディスク51から読み出した管理用テーブルTVのデータ)を読み込む。このとき読み込まれる(有効な)管理用テーブルTVのデータは、最新の管理用テーブルTVのデータとされる。
ステップS142において、マイコン14のランダム値生成部41は、ランダム値を生成する。このとき生成されるランダム値のビット数などは特に限定されない。
ステップS143において、マイコン14のディスク識別コード演算部42は、ステップS142の処理で生成されたランダム値、ステップS141の処理で読み出した管理用テーブルTVおよびVMGIを、連続したデータ列とする。具体的には、ディスク識別コード演算部42は、上述した図9に示されるように、ランダム値と管理用テーブルTVとVMGIのデータとを連続したデータ列とする。
ステップS144において、マイコン14のディスク識別コード演算部42は、データ列のハッシュ値を演算し、これをディスク識別コードとする。例えば、ディスク識別コード演算部42は、図10に示されるように、データ列(ランダム値と管理用テーブルTVとVMGIとからなるデータ列)にハッシュ関数プログラムを用いてハッシュ値を演算し、演算結果をディスク識別コードとする。ここでは、データ列は任意長とされているが、ハッシュ関数プログラムにより演算された結果、ディスク識別コードは固定長となる。
ステップS145において、マイコン14は、装填している光ディスク51に関連するデータと、演算したディスク識別コードとを関連付けてフラッシュメモリ26に記憶させる。本実施の形態においては、装填している光ディスク51に関連するデータがサムネイル画像とされる。すなわち、マイコン14は、上述した図12の再生処理で生成され、フラッシュメモリ26に記憶されているサムネイル画像と、ステップS144の処理で演算して得られたディスク識別コードとを関連付けてフラッシュメモリ26に記憶させる。このとき演算されたディスク識別コードをディスク識別コードAとすると、マイコン14は、例えば、図15の左側に示されるようなデータをフラッシュメモリ26に記憶に記憶させる。
図15の例の場合、ディスク識別コードAに、サムネイル画像111−1乃至111−6が関連付けられている。このサムネイル画像111−1乃至111−6は、上述した図12のステップS118の処理でフラッシュメモリ26に記憶されているものである。また、各サムネイル画像111−1乃至111−6には、それぞれ、最後に利用した日時と利用頻度とが関連付けられている。図15の例の場合、サムネイル画像111−1乃至111−6の全てを最後に利用した日時が2004/10/15とされ、利用頻度は2回とされている。利用日時や利用頻度は、例えば、フラッシュメモリ26に記憶されているデータを削除する場合に用いられる。この処理の詳細は図17および図18を参照して後述する。
ステップS146において、マイコン14は、ディスク識別コードをフラッシュメモリ26に記憶させる。具体的には、マイコン14は、図15の右側に示されるように、ディスク識別コードとして、ステップS144の処理で求められたディスク識別コードAをフラッシュメモリ26に記憶させる。このときフラッシュメモリ26に記憶されるディスク識別コードは、上述した図7のステップS59の判断に利用される。
ステップS145とステップS146の処理により、フラッシュメモリ26には、図15に示されるデータが保持されたことになる。
ステップS147において、マイコン14は、ステップS144の処理で演算されたディスク識別コードと、ステップS142の処理でランダム値生成部41により生成されたランダム値とを、管理用テーブルTV領域のフリーゾーンに書き込む。具体的には、マイコン14は、ディスク識別コードとランダム値を、図5の管理用テーブルTVのための領域のフリーゾーンに書き込む。これにより、図6に示されるように、管理用テーブルTV領域に、ディスク識別コードと、ランダム値とが記録される。ステップS147の処理の後、処理は終了される。
図14の処理により、光ディスク51が記録再生装置1から取り出される場合には、ランダム値が生成され、生成されたランダム値とVMGIと管理用テーブルTVとに基づいて、ディスク識別コードが演算され、光ディスク51に記録される。また、記録再生装置1により生成されたランダム値が記録される。これにより、再び、光ディスク51が記録再生装置1に装填された場合には(上述した図3のステップS12でYESと判定された場合には)、フラッシュメモリ26にキャッシュしておいたディスク識別コードを用いて、最後に光ディスク51に記録した装置が自機であるかを判定することができる。また、最後に光ディスク51に記録した装置が自機である場合には、フラッシュメモリ26に保持されている、光ディスク51に関連するデータを用いて、より迅速に各種の処理を実行する(例えば、サムネイル画像の再生成の手間を省いてサムネイル画像を表示する)ことができる。
また、図14の処理において、ランダム値を生成するようにしたので、同じ機種の記録再生装置1が、偶然に(同じタイミングで)同じ管理用テーブルTVとVMGIとを用いてディスク識別コードを生成する場合においても、ランダム値の値は異なるため、より確実に自機記録であるか否かを識別することができる。
次に、以上の処理を用いて記録や再生処理が行われた場合の具体例を、図16を参照して説明する。
記録再生装置Aと記録再生装置Bとは、ともに、本発明を適用した記録再生装置1であるとする。すなわち、記録再生装置Aと記録再生装置Bは、図1に示される機能を有する。
最初に記録再生装置Aにおいて、データaが記録された後(例えば、図3のステップS17の処理の後)、光ディスク51の取り出しが指令された場合(例えば、図3のステップS15でYESとされた場合)、ディスク識別コードαが生成され、記録される(例えば、図3のステップS21)。具体的には、記録再生装置Aがランダム値を生成し、生成したランダム値、VMGI、および有効な管理用テーブルTVのデータからなるデータ列に、ハッシュ関数プログラムを適用することでディスク識別コードαを演算する。
次に、その光ディスク51が、記録再生装置Bに装填された場合、記録再生装置Bにおいて、自機記録の判断処理が行われる(例えば、図3のステップS14)。この場合、光ディスク51に最後に記録処理を行った記録再生装置が記録再生装置Aであるので、自機記録ではないと判断される。そして、記録再生装置Bにおいて、各種の処理が実行されることで、記録再生装置Bのフラッシュメモリ26には、光ディスク51に関連するデータ(サムネイル画像のデータ)であるデータb、データc、およびデータdが記憶される(例えば、図3のステップS18)。そして、光ディスク51の取り出しが指令された場合(例えば、図3のステップS15でYESとされた場合)、ディスク識別コードβが生成され、記録される(例えば、図3のステップS21)。具体的には、記録再生装置Bがランダム値を生成し、生成したランダム値、VMGI、および管理用テーブルTVのデータからなるデータ列に、ハッシュ関数プログラムを適用することでディスク識別コードβを演算する。
さらに、その光ディスク51が取り出された後、その光ディスク51に対して記録処理が行われないまま(再生は行われてもよい)再び記録再生装置Bに装填された場合、記録再生装置Bにおいて自機記録の判断処理が行われる(例えば、図3のステップS14)。この場合、光ディスク51に最後に記録処理を行った記録再生装置が記録再生装置B、すなわち、自機であるので、自機記録であると判断される。より詳細には、光ディスク51に記録されている管理用テーブルTV、ランダム値、およびVMGIを用いて演算したディスク識別コード'と、光ディスク51に記録されているディスク識別コードとが一致すると判断され、さらに、フラッシュメモリ26に記憶されているディスク識別コードとも一致すると判断されるため、自機記録であると判断される。そして、記録再生装置Bにおいて、各種の処理が実行される場合に、フラッシュメモリ26に記憶しておいた、ディスク識別コードβに関連付けられている、光ディスク51に関連するデータ(サムネイル画像のデータ)であるデータb、データc、およびデータdが流用される(例えば、図12のステップS114およびステップS117)。例えば、記録再生装置Bにおいてサムネイル画像のデータであるデータbの表示を行う場合には、再度サムネイル画像のデータbを生成する必要がなく、フラッシュメモリ26に記憶されているデータbを用いて表示を行うようにする。このように、ディスク識別コードが一致する場合に、フラッシュメモリ26に保持しておいたデータを流用することができるので、より、光ディスク51の再生(サムネイル画像の表示)を迅速に行うことができる。また、光ディスク51の処理にかかる負荷を抑えることができる。
なお、以上の処理を繰り返すことで、フラッシュメモリ26に記憶されるデータが多くなってしまう場合がある。そのため、以下の図17や図18の処理を適宜行うようにしてもよい。
図17は、ディスク識別コード削除処理を説明するフローチャートである。なお、この処理は、上述した処理の合間(すなわち、処理に負荷がかかっていない場合)などに、実行される処理である。
ステップS181において、マイコン14は、フラッシュメモリ26に記憶されているディスク識別コードの数が、あらかじめ設定されている閾値を超えるか否かを判定する。例えば、マイコン14には、フラッシュメモリ26に保持するディスク識別コードの数の閾値があらかじめ設定されているので、この閾値を超えるか否かが判定される。例えば、閾値が10である場合、マイコン14は、フラッシュメモリ26に記憶されているディスク識別コードの数が10個を超えるか否かを判定する。図15の例の場合、右側に示されるディスク識別コードの数に基づいて判定が行われる。
ステップS181において、ディスク識別コードの数が閾値を超えると判定された場合、処理はステップS182に進み、マイコン14は、利用されていないディスク識別コードのうち、古く記録されたディスク識別コードをフラッシュメモリ26から削除する。例えば、ディスク識別コードがフラッシュメモリ26に11個記憶されており、閾値が10個である場合、マイコン14は、フラッシュメモリ26に記憶されているディスク識別コードのうち、もっとも古く(過去)に記録されたディスク識別コードを削除する。例えば、マイコン14は、図15の左側のディスク識別コードに対応付けられたサムネイル画像111−1の「最後に利用した日時」に基づいて判定する。なお、図15の右側のディスク識別コードそのものに、記録された日時を対応付けておくようにし、これに基づいてマイコン14が判定するようにしてもよい。
ステップS181において、ディスク識別コードの数が閾値を超えないと判定された場合、またはステップS182の処理の後、処理は終了される。
図17の処理により、ディスク識別コードの数が閾値を超える場合には、古いディスク識別コードが削除される。これにより、フラッシュメモリ26に記憶させるデータの増大(飽和)を防ぎ、フラッシュメモリ26の容量を確保することができる。
図18は、サムネイル画像データ削除処理を説明するフローチャートである。なお、この処理は、図17の処理と同様に、上述した処理の合間(すなわち、処理に負荷がかかっていない場合)などに、実行される処理である。
ステップS211において、マイコン14は、フラッシュメモリ26のメモリ容量が、あらかじめ設定されている閾値を超えるか否かを判定する。例えば、マイコン14には、フラッシュメモリ26に記憶させるメモリの容量の閾値があらかじめ設定されているので、この閾値を超えるか否かが判定される。具体的な例としては、フラッシュメモリ26のメモリ容量に対して80%を閾値として、フラッシュメモリ26のメモリ容量に対して80%を超えるデータがフラッシュメモリ26に記憶されている場合には、閾値を超えると判定される。
ステップS211において、メモリ容量が閾値を超えると判定された場合、処理はステップS212に進み、マイコン14は、利用されていないサムネイル画像のデータのうち、古く記録された(最も利用されていない)サムネイル画像のデータをフラッシュメモリ26から削除する。例えば、マイコン14は、フラッシュメモリ26に記憶されているサムネイル画像に対応する、「最後に利用した日時」(図15の左側参照)に基づいて、古く記録されたサムネイル画像を、閾値を超えなくなるまで削除する。例えば、マイコン14は、フラッシュメモリ26に記憶されているサムネイル画像を6個削除する。なお、削除対象のサムネイル画像の判断に、利用頻度などを考慮するようにしてもよい。
ステップS211においてメモリ容量が閾値を超えないと判定された場合、またはステップS212の処理の後、処理は終了される。
図18の処理により、メモリ容量が閾値を超える場合には、利用されていないサムネイル画像のデータ(光ディスク51に関連するデータ)が削除される。これにより、フラッシュメモリ26に記憶させるデータの増大(飽和)を防ぎ、フラッシュメモリ26の容量を確保することができる。このように、記録再生装置1によれば、利用されなくなったキャッシュデータを、適切なタイミングで破棄することができる。
以上によれば、取り外し可能な光ディスク51の記録再生装置1において、光ディスク51にデータを書き込む(記録する)場合に、自分自身がそのデータを書き込んだことを示すディスク識別コードを付加して記録することにより、装填された光ディスク51が自機種により(最後に)記録されたものであるか、他機種によって(最後に)記録されたメディアであるかを高速に判別することができる。
また、1つの光ディスク51に複数の機種によりデータを書き込んだ場合であっても、その光ディスク51に最後にデータを書き込んだ装置が自機種であるか他機種であるかを、ディスク識別コードを参照することで、迅速に判断することができる。
さらに、記録再生装置1のフラッシュメモリ26に、ディスク識別コードを記憶(キャッシュ)しておくようにしたので、記録再生装置1に最後に記録処理を行った装置が、自機種であるかだけでなく、自機(自分自身)であるか否かをも判断することができる。
また、光ディスク51に関連するデータを、ディスク識別コードに関連付けてフラッシュメモリ26に保持(キャッシュ)するようにしたので、光ディスク51の装填時、ディスク識別コードが一致した場合(すなわち、ディスク識別コードが有効である場合)に、フラッシュメモリ26に保持していた光ディスク51に関連するデータを流用して、より光ディスク51の再生を迅速に行うことができる。また、フラッシュメモリ26にキャッシュしていたサムネイル画像を用いることで、ユーザに、迅速にサムネイル画像を提示することができる。
さらに、ディスク識別コード演算部42が、ディスク識別コードを生成する場合に、ハッシュ関数を用いて情報量を圧縮するようにしているので、入力値の情報量(本実施の形態では、ランダム値、管理用テーブルTV、およびVMGIのデータのデータ量)に対して、ディスク識別コードを少ない情報量とすることができる。また、ハッシュ関数を用いてディスク識別コードを演算するようにしたので、ディスク識別コードの記憶領域を固定長とすることができる。さらに、ハッシュ関数で演算するための入力値(データ列)は、光ディスク51に記録されているデータの一部に基づいて生成しているので、自機記録であるか他機記録であるかの判定を誤る確率を低下させることができる。
このとき、ランダム値生成部41がランダム値を生成して、生成されたランダム値をディスク識別コードの演算に用いるようにしたので、同じ機種の記録再生装置において全く同じタイミングで記録開始と記録停止が行なわれて、偶然に、VMGIと管理用テーブルTVの内容が一致した場合であっても、ランダム値は異なるものとなるので、ディスク識別コードの誤認識の確率をより低くすることができる。すなわち、管理用テーブルTVのデータと、VMGIのデータが同一であった場合においても、異なるランダム値を用いれば異なるディスク識別コードを生成することができる。
また、装填された光ディスク51に最後に記録を行った機器が自機であるか他機であるかを迅速に判別することができる。
さらに、自機である場合に、フラッシュメモリ26に記憶していた光ディスク51に関連するデータを流用することができるので、光ディスク51に対する処理を迅速に行うことができる。
以上の例のまとめを以下に記載する。
記録再生装置1において、光ディスク51にデータの記録が完了した後(図3のステップS17の処理の後)、光ディスク51の取り出しが指令された場合(図3のステップS15でYESと判定された場合)、ランダム値を生成し、生成したランダム値、管理用テーブルTVのデータ、およびVMGのVMGIのデータに基づいて、ディスク識別コードを生成し、これとランダム値とを光ディスク51の管理用テーブルTV領域のフリーゾーンに記録させ、光ディスク51を取り出す。このディスク識別コードの生成の具体的な例としては、記録再生装置1が、ランダム値と光ディスク51の管理用テーブルTVのデータとVMGのVMGIのデータとからなるデータ列のハッシュ値を演算することでディスク識別コードを生成する。このようにして記録された光ディスク51が再び記録再生装置1に装填された場合(例えば、図3のステップS12でYESと判定された場合)、記録再生装置1は、装填された光ディスク51に最後に記録を行った機器が自機であるか否かを、光ディスク51の管理用テーブルTV領域のデータに基づいて判別する(図3のステップS14)。具体的には、記録再生装置1は、光ディスク51のランダム値と管理用テーブルTVのデータとVMGのVMGIのデータとからなるデータ列のハッシュ値を演算することで、「ディスク識別コード'」を演算し、演算した「ディスク識別コード'」と、光ディスク51の管理用テーブルTV領域に記録されているディスク識別コードとが一致する場合、かつ、記録再生装置1のフラッシュメモリ26に記憶されているディスク識別コードが一致する場合には、その光ディスク51に最後にデータを書き込んだ(または編集した)機器は、自機であると判定する。
このとき、1回目の記録処理(削除処理、または編集処理)で記録再生装置1(仮に、記録再生装置Aとする)が上述したディスク識別コードを光ディスク51の管理用テーブルTV領域のフリーゾーンに記録して光ディスク51が取り出された後に、2回目の記録処理(削除処理、または編集処理)で他機種の記録再生装置(仮に、記録再生装置Bとする)が管理用テーブルTV領域のフリーゾーン(すなわち、ディスク識別コードとランダム値)を書き換えなかったとする。この場合、管理用テーブルTV領域の管理用テーブルTVのデータ以外の領域(すなわち、図5のフリーゾーン)には変化が無くとも、管理用テーブルTVおよびVMGIの少なくともいずれか一方の内容は変化する(管理用テーブルTVだけが変化するか、VMGIだけが変化するか、または、管理用テーブルTVとVMGIの両方が変化する)。このため、記録再生装置1(記録再生装置A)にその光ディスク51が再び装填された場合、記録再生装置1(記録再生装置A)は、記録再生装置Bから取り外した時点での光ディスク51のランダム値と管理用テーブルTVとVMGIとから求めた「ディスク識別コード'」(ステップS56で演算されたディスク識別コード)と、管理用テーブルTV領域のフリーゾーンに記録されているディスク識別コード(ステップS53で読み出されたディスク識別コード)とが異なる。従って、記録再生装置1(記録再生装置A)は、この光ディスク51に最後に記録した機器は他機種であると判別する。
また、光ディスク51の管理テーブルTVの内容を更新するように構成されている記録再生装置Bであれば、光ディスク51へのデータの追加、削除、編集などを行ったときに、管理用テーブルTVの内容が変化する。そのため、本実施の形態においては、この管理用テーブルTVの内容と、DVDビデオフォーマット上のVMGIとランダム値とに基づいてディスク識別コードを生成し、記録することで、ディスク識別コードの偶然の一致(誤判定)を防ぐことができる。
また、例えば、2回目の記録処理(削除処理、または編集処理)で他機種の記録再生装置Bが管理用テーブルTV領域のフリーゾーン(すなわち、ディスク識別コードとランダム値)を書き換えたとする。この場合、1回目の記録処理で記録再生装置1(記録再生装置A)が書き込んだディスク識別コードが失われる。そのため、2回目の記録処理の後に、記録再生装置1(記録再生装置A)にその光ディスク51が再び装填された場合、記録再生装置1(記録再生装置A)は、ディスク識別コードが存在しないと判定し(図7のステップS52でNOと判定し)、装填されている光ディスク51が他機種により最後に記録されたと判断する(ステップS58)。
なお、記録再生装置Bが管理テーブルTVの内容を更新しないようになされている記録再生装置であった場合、光ディスク51上には管理用テーブルTVが存在しないか、管理用テーブルTVが更新されずに、記録再生装置1(記録再生装置A)からその光ディスク51が取り出された時点の内容のままとなる。管理用テーブルTVが光ディスク51上に存在しない場合には、その光ディスク51は他機種記録されたと容易に判別できる(ステップS51)。また、記録再生装置Bが管理用テーブルTVを更新しなかった場合においても、VMGIの内容は記録再生装置Bによって更新される。そのため、ランダム値、管理用テーブルTV領域およびVMGIから求めたディスク識別コードと、管理用テーブルTV領域のフリーゾーンに記録されているディスク識別コードとは異なる。このことから、記録再生装置1(記録再生装置A)は、その光ディスク51が他機種により最後に記録されていることを確実に判断することができる。
なお、本実施の形態では、図14のステップS147のタイミングでランダム値を光ディスク51に書き込むようにしたが、これに限らず、管理用テーブルTVの更新時(例えば、図3のステップS20)に、光ディスク51に書き込むようにしてもよい。
このように、本発明を適用することで、自機種記録と他機種記録とが混合している光ディスク51においても、最後に記録処理を行った記録再生装置が自機種であるか他機種であるかを容易に判別することができる。さらに、フラッシュメモリ26に保持しておいたディスク識別コードを用いれば、最後に光ディスク51に記録処理を行った記録再生装置が自機であるかを容易に判別することができる。また、最後に光ディスク51に記録処理を行った記録再生装置が自機である場合には、フラッシュメモリ26に保持されている光ディスク51に関連するデータを用いて処理を実行することができる。
なお、ランダム値、管理用テーブルTV、およびVMGIのデータのそのものを管理用テーブルTV領域のフリーゾーンに記録するようにした場合、そのデータ量がフリーゾーンの領域を超えてしまうが、ランダム値、管理用テーブルTVおよびVMGIのデータをそのまま記録するのではなく、ランダム値、管理用テーブルTVおよびVMGIのデータとを(ハッシュ関数プログラムを用いて)圧縮するようにしたので、管理用テーブルTV領域のフリーゾーンに、圧縮されたデータ(ディスク識別コード)を記録することができる。
また、記録再生装置1は、ディスク識別コードの生成に、ハッシュ関数プログラムを用いる。これにより、より多くの情報をディスク識別コードに含めることができる。例えば、光ディスク51に記録されている全体のデータ(リアルタイムデータ記録エリア全体のデータ)をハッシュ関数プログラムで演算する対象としてもよい。また、このように、より多くの情報を、ディスク識別コードを生成する対象のデータ列とすることができるので、光ディスク51に対して編集を行ったとき(例えば削除後の記録)、編集前と編集後にディスク識別コードが偶然一致する確率を低下させることができる。
なお、ディスク識別コード演算部42は、ハッシュ関数プログラムを用いて演算するようにしたが、その関数は、これに限定されない。ハッシュ関数では、非可逆圧縮であるが、可逆圧縮の関数であっても非可逆圧縮の関数であってもよい。また、入力値(管理用テーブルTVとVMGIのデータ列とランダム値)を圧縮する関数であれば、他の関数プログラムであってもよいが、光ディスク51の既存のフォーマットの自由領域や予約領域を使用することを考慮すると、圧縮の結果は固定長のデータになるのが望ましい。すなわち、演算の対象となるデータ(記録されるたびに変化するデータ)よりデータ量を少なくする関数を適用することで、ディスク識別コードを演算するようにすればよい。例えば、演算の対象となるデータを所定の関数で除算したり、間引くことで、データ量を少なくするようにしてもよい。このように、光ディスク51に記録されるたびに変化するデータに、所定の関数を適用することにより、記録再生装置1が光ディスク51にデータを記録したことを示すディスク識別コードを演算するようにしたので、光ディスク51に最後に記録した記録再生装置が自機種であるか他機種であるかを容易に判別することができる。
また、ディスク識別コード演算部42への入力値は、管理用テーブルTVとVMGIとランダム値からなるデータ列に限らず、光ディスク51上に記録されている全てのデータであってもよいし、管理用テーブルTVとVMGIとは異なる光ディスク51上に記録されている一部のデータ(光ディスク51上の特定の情報)でもよい。この場合、圧縮する(ディスク識別コードを演算するための)対象となるデータには、記録、削除、編集処理ごとに変化する光ディスク51上のデータであるのが望ましい。また、異なる入力値に対しては、異なる出力値が得られる関数(圧縮関数)を用いるのが望ましい。
このような点から、本実施の形態においては、ディスク識別コードを演算するための関数としてハッシュ関数を用いるようにした。このことは、一般的に、ハッシュ関数の出力値の出現確率が、その出力値が取りうる値の範囲において一様であることと、出力値の値域が広い関数(例えば128bitを出力する関数)を用いることで、異なる入力(本実施の形態においてはランダム値、管理用テーブルTV、およびVMGI)に対する出力値が偶然に一致する可能性を限りなく0に近づけることができるからである。
ハッシュ関数を用いて情報を圧縮する(ハッシュ値を演算する)と、そのデータはもとに復元することはできないが、本発明においては、ディスク識別コードとしてハッシュ値を比較することで判別を行うため、圧縮後のデータから、演算前のデータが得られなくても問題はない。
なお、特開2003−331563号公報に沿って、光ディスク51にデータを書き込む場合、VMGIが光ディスク51に記録されない場合もあるが、この場合には、VMGIのデータの代わりのデータ(例えば、NULLデータ)を用いるようにすればよい。このような場合においても、ディスク識別コードを、光ディスク51上に記録されているデータに基づいて生成しているので、自機種による記録であるか他機種による記録であるかの判定を誤る確率を低下させることができる。
このように、図1の記録再生装置1によれば、装填された光ディスク(DVD)がその記録再生装置1と同じ機種(自機種)により最後に記録されたものであるかを判断することができるので、例えば、ユーザにその光ディスクが他機種によって記録されたディスクであることを知らせることができる。
なお、以上の例では、記録再生装置1が光ディスク51に記録する場合について説明したが、光ディスク51に限らず、光磁気ディスク、メモリカード、およびメモリスティック(商標)などの記録媒体であれば他のものであってもよい。
また、以上の例では、光ディスク51の装填時にサムネイル画像を表示することを例として記載したが、例えば、静止画が記録されたメモリカードを再装填する場合に、メモリカードに記録されている静止画を表示するときに、装置のキャッシュを利用するようにしてもよい。これにより、メモリカードに記録された静止画を高速に表示することができる。
さらに、以上の例では、ディスクが取り出される場合に、ディスク識別コードを記録するようにしたが、ディスクが取り出されずとも、1回の記録処理(例えば、ステップS17の処理)を終える毎に判別コードをディスクに記録するようにしてもよい。また、1つのタイトルを閉じる処理が行われる毎にディスク識別コードを記録するようにしてもよい。
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。この場合、上述した一連の処理は、図19に示されるようなパーソナルコンピュータ250により実行される。
図19において、CPU251は、ROM252に記憶されているプログラム、または、記憶部258からRAM253にロードされたプログラムに従って各種の処理を実行する。RAM253にはまた、CPU251が各種の処理を実行する上において必要なデータなどが適宜記憶される。
CPU251、ROM252、およびRAM253は、内部バス254を介して相互に接続されている。この内部バス254にはまた、入出力インターフェース255も接続されている。
入出力インターフェース255には、キーボード、マウスなどよりなる入力部256、CRT,LCDなどよりなるディスプレイ、スピーカなどよりなる出力部257、ハードディスクなどより構成される記憶部258、並びに、モデム、ターミナルアダプタなどより構成される通信部259が接続されている。通信部259は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行う。
入出力インターフェース255にはまた、必要に応じてドライブ261が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどによりなるリムーバブルメディア271が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部258にインストールされる。
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
この記録媒体は、図19に示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されているリムーバブルメディア271よりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM252や記憶部258が含まれるハードディスクなどで構成される。
なお、本明細書において、コンピュータプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
1 記録再生装置, 11 画像データ入力部, 12 音声データ入力部, 13 圧縮伸長処理部, 14 マイコン, 15 エンコーダ, 16 RAM, 17 ヘッダ情報処理部, 18 信号処理部, 19 RAM, 26 フラッシュメモリ, 31 画像処理部, 32 音声処理部, 33 多重化処理部, 41 ランダム値生成部, 42 ディスク識別コード演算部, 43 RAM, 51 光ディスク