JP4551508B2 - 記録装置および方法、記録再生装置および方法、並びに記録媒体 - Google Patents
記録装置および方法、記録再生装置および方法、並びに記録媒体 Download PDFInfo
- Publication number
- JP4551508B2 JP4551508B2 JP23973098A JP23973098A JP4551508B2 JP 4551508 B2 JP4551508 B2 JP 4551508B2 JP 23973098 A JP23973098 A JP 23973098A JP 23973098 A JP23973098 A JP 23973098A JP 4551508 B2 JP4551508 B2 JP 4551508B2
- Authority
- JP
- Japan
- Prior art keywords
- recording
- data
- title
- volume
- unit data
- 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
- Signal Processing For Digital Recording And Reproducing (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
Description
【発明の属する技術分野】
本発明は、記録装置および方法、記録再生装置および方法、並びに記録媒体に関し、特に、データの種類毎に上書き禁止を指定することができるようにして、操作性を改善した、記録装置および方法、記録再生装置および方法、並びに記録媒体に関する。
【0002】
【従来の技術】
光ディスクには、多くのタイトル(番組)を記録することが可能である。ユーザは、光ディスクに記録されたタイトルの中から所望のものを選択し、再生することができる。
【0003】
また、複数のタイトルの内、任意の数のタイトルを組み合わせ、これを1つのプログラムとし、そのプログラム(プログラムとして指定した複数のタイトル)を再生することも可能である。
【0004】
【発明が解決しようとする課題】
しかしながら、従来の光ディスク装置においては、光ディスク自体に対する上書きを禁止したり、タイトル毎に上書きを禁止するようにすることができるようになされているが、例えば、プログラム毎に上書きを禁止するようなことができず、操作性が悪い課題があった。
【0005】
また、従来の光ディスク装置においては、これらのタイトルやプログラムを一旦記録すると、その再生は再生者の自由になってしまい、ディスクに記録したデータを、記録した者がデータを再生する者に合わせて管理することができない課題があった。
【0006】
本発明はこのような状況に鑑みてなされたものであり、複数のデータの組み合わせ毎に上書きの禁止を指定することができるようにし、以て、操作性を改善するようにするものである。また、データを記録したものが、記録したデータの再生を管理することができるようにするものである。
【0007】
【課題を解決するための手段】
請求項1に記載の記録装置は、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止を指定する指定手段と、データの記録が指令されたとき、そのデータによって上書きされるデータについての指定手段による指定を判定する判定手段と、判定手段の判定結果に対応して、データの記録媒体への記録を制御する制御手段とを備えることを特徴とする。
【0008】
請求項7に記載の記録方法は、前記複数の単位データの中の、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定ステップと、データの記録が指令されたとき、そのデータによって上書きされるデータについての前記指定ステップによる指定を判定する判定ステップと、前記判定ステップの判定結果に対応して、前記データの記録媒体への記録を制御する制御ステップとを含むことを特徴とする。
【0009】
請求項8に記載の記録媒体は、前記複数の単位データの中の、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定ステップと、データの記録が指令されたとき、そのデータによって上書きされるデータについての前記指定ステップによる指定を判定する判定ステップと、前記判定ステップの判定結果に対応して、前記データの記録媒体への記録を制御する制御ステップとを含む処理を実行させるコンピュータが読みとり可能なプログラムを記録することを特徴とする。
【0010】
請求項9に記載の記録媒体は、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止を指定する指定情報が記録されていることを特徴とする。
【0011】
請求項10に記載の記録再生装置は、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止を指定する指定情報を記録媒体に記録する記録手段と、記録が指令されたデータに対応する指定情報を記録媒体から再生する再生手段と、再生手段により再生された指定情報を判定する判定手段と、判定手段の判定結果に対応して、データの記録媒体への記録を制御する制御手段とを備えることを特徴とする。
【0012】
請求項11に記載の記録再生方法は、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止を指定する指定情報を記録媒体に記録する記録ステップと、記録が指令されたデータに対応する指定情報を記録媒体から再生する再生ステップと、再生ステップの処理で再生された指定情報を判定する判定ステップと、判定ステップでの判定結果に対応して、データの記録媒体への記録を制御する制御ステップとを含むことを特徴とする。
【0013】
請求項12に記載の記録媒体は、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止を指定する指定情報を記録媒体に記録する記録ステップと、記録が指令されたデータに対応する指定情報を記録媒体から再生する再生ステップと、再生ステップの処理で再生された指定情報を判定する判定ステップと、判定ステップでの判定結果に対応して、データの記録媒体への記録を制御する制御ステップとを含む処理を実行させるコンピュータが読みとり可能なプログラムを記録することを特徴とする。
【0024】
請求項1に記載の記録装置、請求項7に記載の記録方法、請求項8に記載の記録媒体、および請求項9に記載の記録媒体においては、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止が指定され、データの記録が指令されたとき、記録が指令されたデータに対応する指定が判定され、その判定結果に対応して、記録が指令されたデータの記録媒体への記録が制御される。
【0025】
請求項10に記載の記録再生装置、請求項11に記載の記録再生方法、および請求項12に記載の記録媒においては、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止を指定する指定情報が記録媒体に記録され、記録が指令されたデータに対応する指定情報が記録媒体から再生され、再生された指定情報が判定され、その判定結果に対応して、記録が指令されたデータの記録媒体への記録が制御される。
【0030】
【発明の実施の形態】
以下に本発明の実施の形態を説明するが、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態(但し一例)を付加して本発明の特徴を記述すると、次のようになる。但し勿論この記載は、各手段を記載したものに限定することを意味するものではない。
【0031】
請求項1に記載の記録装置は、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止を指定する指定手段(例えば、図18のflags_for_program)と、データの記録が指令されたとき、そのデータによって上書きされるデータについての指定手段による指定を判定する判定手段(例えば、図38のステップS26,S35)と、判定手段の判定結果に対応して、データの記録媒体への記録を制御する制御手段(例えば、図38のステップS30,S32)とを備えることを特徴とする。
【0032】
請求項10に記載の記録再生装置は、複数の単位データの中の、所定の順番で再生される任意の数の単位データの組み合わせに対して、その上書きの禁止を指定する指定情報(例えば、図18のflags_for_program)を記録媒体に記録する記録手段(例えば、図37のステップS10)と、記録が指令されたデータに対応する指定情報を記録媒体から再生する再生手段(例えば、図38のステップS21)と、再生手段により再生された指定情報を判定する判定手段(例えば、図38のステップS26,S35)と、判定手段の判定結果に対応して、データの記録媒体への記録を制御する制御手段(例えば、図38のステップS30,S32)とを備えることを特徴とする。
【0036】
最初に本発明において情報が記録または再生される記録媒体(メディア)上のファイル配置について説明する。メディア上には、図1に示すように、次の7種類のファイルが記録される。
VOLUME.TOC
ALBUM.STR
PROGRAM_$$$.PGI
TITLE_###.VDR
CHUNKGROUP_@@@.CGIT
CHUNK_%%%%.ABST
CHUNK_%%%%.MPEG2
【0037】
ルートディレクトリにはVOLUME.TOCおよびALBUM.STRが置かれる。また、ルートディレクトリ直下のディレクトリ"PROGRAM"には、"PROGRAM_$$$.PGI"(ここで"$$$"はプログラム番号を表す)が置かれる。同様に、ルートディレクトリ直下のディレクトリ"TITLE"には、"TITLE_###.VDR"(ここで"###"はタイトル番号を表す)が、ディレクトリ"CHUNKGROUP"には、"CHUNKGROUP_@@@.CGIT"(ここで"@@@"はチャンクグループ番号を表す)が、ディレクトリ"CHUNK"には、"CHUNK_%%%%.ABST"(ここで"%%%%"はチャンク番号を表す)が、それぞれ置かれる。
【0038】
ルートディレクトリ直下のMPEGAVディレクトリには、更に1つ以上のサブディレクトリが作成され、その下に、"CHUNK_%%%%.MPEG2"(ここで%%%%はチャンク番号を表す)が置かれる。
【0039】
VOLUME.TOCのファイルは、メディア上に1つ有るのが普通である。ただし、ROMとRAMのハイブリッド構造のメディア等、特殊な構造のメディアでは、複数存在することも有り得る。このファイルは、メディアの全体の性質を示すために用いられる。
【0040】
VOLUME.TOCの構造は図2に示すようになっている。先頭にfile_type_idが置かれ、これにより該当ファイルがVOLUME.TOCであることが示される。次にvolume_information()が続き、最後にtext_block()が続く。
【0041】
図3にvolume_information()の構成が示されている。これは、volume_attribute()、resume()、volume_rating()、write_protect()、play_protect()、recording_timer()を含んでいる。
【0042】
volume_attribute()は、logical volumeの属性を記録する領域であり、図4にその詳細な構造が示されている。同図に示すように、この領域には、title_playback_mode_flag, program_playback_mode_flagなどが含まれている。
【0043】
resume()は、メディアの再挿入時に、eject直前の状態を復元するための情報を記録する領域であり、その詳細な構造は、図5に示されている。
【0044】
図3のvolume_rating()は、volume全体に対する視聴年齢制限を年齢やカテゴリに応じて実現するための情報を記録する領域であり、その詳細な構造は、図6に示されている。
【0045】
図3のwrite_protect()は、volume内に記録されているtitle, programに対する変更や、消去操作を制限する情報を記録する領域であり、その詳細な構造は、図7に示されている。
【0046】
図3のplay_protect()は、volume内に記録されているtitle, programに対する再生許可、不許可の設定、あるいは、再生回数を制限する情報を記録する領域であり、その詳細な構造は、図8に示されている。
【0047】
図3のrecording_timer()は、記録時間を制御する情報を記録する領域であり、その詳細な構造は、図9に示されている。
【0048】
図2のVOLUME.TOCのtext_block()の詳細な構造は図10に示されている。このtext_block()には、language_set()とtext_itemが含まれており、その詳細な構造は図11と図12にそれぞれ示されている。
【0049】
図1のALBUM.STRのファイルは、メディア上に1つ有るのが普通である。ただし、ROMとRAMのハイブリッド構造のメディア等、特殊な構造のメディアでは、複数存在することも有り得る。このファイルは、複数のメディアを組み合わせて、あたかも1つのメディアであるような構成にするために使用される。
【0050】
このALBUM.STRの構造は、図13に示すようになっている。先頭にfile_type_idが置かれ、該当ファイルがALBUM.STRであることを示す。次にalbum()が続き、最後にtext_block()が続く。
【0051】
album()は、複数のvolume(複数のメディア)を1つのまとまりとして扱うための情報を記録する領域であり、その詳細な構造は、図14に示されている。
【0052】
図1のTITLE_###.VDRのファイルは、タイトルの数だけ存在する。タイトルとは、例えばcompact discで言うところの1曲や、テレビ放送の1番組を言う。この情報の構造は図15に示すようになっている。先頭にfile_type_idが置かれ、これにより該当ファイルがTITLE_###.VDRであることが示される。次にtitle_info()が続き、最後にtext_block()が続く。###はタイトル番号を示す文字列である。
【0053】
title_info()は、chunkgroup上における、titleの開始点、終了点、その他titleに関する属性を記録するための領域であり、その詳細な構造は、図16に示されている。
【0054】
図1のPROGRAM_$$$.PGIのファイルは、プログラムの数だけ存在する。プログラムは、タイトルの一部(あるいは全部)の領域を指定した複数のカットで構成され、各カットは指定された順番で再生される。この情報の構造は図17に示されている。先頭にfile_type_idが置かれ、該当ファイルがPROGRAM_$$$.PGIであることを示す。次にprogram()が続き、最後にtext_block()が続く。$$$はタイトル番号を示す文字列である。
【0055】
program()は、素材に対して不可逆な編集を施すことなしに、titleの必要な部分を集めて再生するのに必要な情報を記録する領域であり、その詳細な構造は、図18に示されている。
【0056】
図18のprogram()は、1つのplay_listを有している。このplay_list()の詳細は、図19に示されている。
【0057】
play_listには、play_item()が複数置かれている。play_item()の詳細は、図20に示されている。
【0058】
図1のCHUNKGROUP_@@@.CGITのファイルは、チャンクグループの数だけ存在する。チャンクグループはビットストリームを並べるためのデータ構造である。このファイルは、ユーザがVDR(ビデオディスクレコーダ)など、メディアを記録再生する装置を普通に操作している分にはユーザに認識されない。
【0059】
この情報の構造は図21に示すようになっている。先頭にfile_type_idが置かれ、該当ファイルがCHUNKGROUP_@@@.CGITであることを示す。その次にchunkgroup_time_base_flagsとchunkgroup_time_base_offsetが有り、次にchunk_connection_info()、最後にtext_block()が続く。
【0060】
chunkgroup_time_base_flagsは、chunkgroupの基準カウンタに関するflagを示し、chunkgroup_time_base_offsetは、chunkgroup内の基準時間軸の開始時刻を示す。これは、90kHzでカウントアップするカウンタにセットする値であり、32ビットの大きさを有する。chunk_connection_info()は、videoの切換点や、videoとaudioの同期など、特異な点の情報を記憶する領域であり、その詳細な構造は、図22に示されている。
【0061】
このchunk_connection_info()には、チャンクグループに属するチャンクの数だけchunk_arrangement_info()のループが置かれる。図23にこのchunk_arrangement_info()の詳細が示されている。
【0062】
図1のCHUNK_%%%%.ABSTのファイルは、チャンクの数だけ存在する。チャンクはストリームファイル1つに対応する情報ファイルである。この情報の構造は図24に示すようになっている。先頭にfile_type_idが置かれ、これにより、該当ファイルがCHUNK_%%%%.ABSTであることが示される。
【0063】
図1のCHUNK_%%%%.MPEG2のファイルは、ストリームファイルである。このファイルはMPEGのビットストリームを格納しており、この他のファイルが情報のみを記録しているのと異なっている。
【0064】
図25は、以上のようなファイルを有するメディアとしての光ディスクに対して情報を記録または再生する光ディスク装置の構成例を表している。この光ディスク装置では、1枚の書き換え型の光ディスク1に対して1系統の光ヘッド2が設けられており、データの読み出しと書き込みの双方にこの光ヘッド2が共用される。
【0065】
光ヘッド2により光ディスク1から読み出されたビットストリームは、RFおよび復調/変調回路3で復調された後、ECC回路4で誤り訂正が施され、スイッチ5を介して、読み出しレートとデコード処理レートとの差を吸収するための読み出しチャネル用バッファ6に送られる。読み出しチャネル用バッファ6の出力はデコード7に供給されている。読み出しチャネル用バッファ6はシステムコントローラ13から読み書きができるように構成されている。
【0066】
読み出しチャネル用バッファ6から出力されたビットストリームは、デコーダ7でデコードされ、そこからビデオ信号とオーディオ信号が出力される。デコーダ7から出力されたビデオ信号は合成回路8に入力され、0SD(On Screen Display)制御回路9が出力するビデオ信号と合成されたた後、出力端子P1から図示せぬディスプレイに出力され、表示される。デコーダ7から出力されたオーディオ信号は、出力端子P2から図示せぬスピーカに送られて再生される。
【0067】
他方、入力端子P3から入力されたビデオ信号、および入力端子P4から入力されたオーディオ信号は、エンコーダ10でエンコードされた後、エンコード処理レートと書き込みレートとの差を吸収するための書き込みチャネル用バッファ11に送られる。この書き込みチャネル用バッファ11もシステムコントローラ13から読み書きができるように構成されている。
【0068】
書き込みチャネル用バッファ11に蓄積されたデータは、書き込みチャネル用バッファ11から読み出され、スイッチ5を介してECC回路4に入力されて誤り訂正符号が付加された後、RFおよび復調/変調回路3で変調される。RFおよび復調/変調回路3より出力された信号(RF信号)は、光ヘッド2により光ディスク1に書き込まれる。
【0069】
アドレス検出回路12は、光ディスク1の記録または再生するトラックのアドレス情報を検出する。システムコントローラ13は、この光ディスク装置の各部の動作を制御するものであり、各種の制御を行うCPU21、CPU21が実行すべき処理プログラム等を格納したROM22、処理過程で生じたデータ等を一時記憶するためのRAM23、および光ディスク1に対して記録または再生する各種の情報ファイルを記憶するRAM24を有している。CPU21は、アドレス検出回路12の検出結果に基づいて、光ヘッド2の位置を微調整する。CPU21はまた、スイッチ5の切り替え制御を行う。各種のスイッチ、ボタンなどから構成される入力部14は、各種の指令を入力するとき、ユーザにより操作される。
【0070】
次に、基本的な情報ファイルの読み込み動作について説明する。例えば、"VOLUME.TOC"情報ファイルの読み込みを行うとき、システムコントローラ13のCPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、"VOLUME.TOC"が記録されている光ディスク1上の物理アドレスと、その長さを確定する。続いて、CPU21は、この"VOLUME.TOC"のアドレス情報に基づき、光ヘッド2を読み出し位置に移動させる。そしてCPU21は、光ヘッド2、RFおよび復調/変調回路3、並びにECC回路4を読み出しモードに設定するとともに、スイッチ5を読み出しチャネル用バッファ6側に切り替え、さらに光ヘッド2の位置を微調整した後、光ヘッド2による読み出しを開始させる。これにより"VOLUME.TOC"の内容が光ヘッド2により読み出され、RFおよび復調/変調回路3により復調され、さらにECC回路4により誤り訂正が行われた後、読み出しチャネル用バッファ6に蓄積される。
【0071】
読み出しチャネル用バッファ6に蓄積されたデータ量が、"VOLUME.TOC"の大きさと等しいか、あるいはより大きくなった時点で、CPU21は読み出しを停止させる。その後、CPU21は、読み出しチャネル用バッファ6から該当データを読み出し、RAM24に記憶させる。
【0072】
次に、基本的な情報ファイル書込み動作について、"VOLUME.TOC"情報ファイルを書き込む場合を例として説明する。CPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、ファイルシステム(光ディスク1)中に、これから書こうとしている"VOLUME.TOC"と等しいか、より大きい大きさを持つ空き領域を探し、そのアドレスを確定する。
【0073】
次に、CPU21は、RAM24に用意されている、新たに書き込むべき"VOLUME.TOC"を、書き込みチャネル用バッファ11に転送する。続いて、CPU21は、空き領域のアドレス情報に基づき、光ヘッド2を書き込み位置に移動させる。そしてCPU21は、光ヘッド2、RFおよび復調/変調回路3、並びにECC回路4を書き込みモードに設定するとともに、スイッチ5を書き込みチャネル用バッファ11側に切り替え、光ヘッド2の位置を微調整した後、光ヘッド2による書き込みを開始させる。
【0074】
これにより新たに用意した"VOLUME.TOC"の内容が、書き込みチャネル用バッファ11から読み出され、スイッチ5を介してECC回路4に入力され、誤り訂正符号が付加された後、RFおよび復調/変調回路3により変調される。RFおよび復調/変調回路3より出力された信号は、光ヘッド2により光ディスク1に記録される。書き込みチャネル用バッファ11から読み出され、光ディスク1に記録されたデータ量が、"VOLUME.TOC"の大きさと等しくなった時点で、CPU21は書き込み動作を停止させる。
【0075】
最後に、CPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、ファイルシステム(光ディスク1)中の"VOLUME.TOC"を指し示すポインタを、新しく書込んだ位置を指し示すように書き換える。
【0076】
次に、基本的なストリーム再生動作について、図1のCHUNK_0001.MPEG2というストリームを再生する場合を例として説明する。CPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、"CHUNK_0001.MPEG2"が記録されている光ディスク1上の物理アドレスと、その長さを確定する。続いて、CPU21は、この"CHUNK_0001.MPEG2"のアドレス情報に基づき、光ヘッド2を読み出し位置に移動させる。そして光ヘッド2、RFおよび復調/変調回路3、並びにECC回路4を読み出しモードに設定するとともに、スイッチ5を読み出しチャネル用バッファ6側に切り替え、光ヘッド2の位置を微調整した後、光ヘッド2による読み出しを開始させる。
【0077】
光ヘッド2により読み出された"CHUNK_0001.MPEG2"の内容が、RFおよび復調/変調回路3、ECC回路4、並びにスイッチ5を介して読み出しチャネル用バッファ6に蓄積される。読み出しチャネル用バッファ6に蓄積されたデータは、デコーダ7に出力され、デコード処理が施されて、ビデオ信号とオーディオ信号がそれぞれ出力される。オーディオ信号は出力端子P2から出力され、ビデオ信号は、合成回路8を介して出力端子P1から出力される。
【0078】
光ディスク1から読みだされ、デコード、表示されたデータ量が、"CHUNK_0001.MPEG2"の大きさと等しくなった時点で、あるいは、入力部14から読み出し動作の停止が指定された時点で、CPU21は、読み出しおよびデコード処理を停止させる。
【0079】
次に、基本的なストリーム記録動作を、"CHUNK_0001.MPEG2"情報ファイルを書き込む場合を例として説明する。CPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、ファイルシステム(光ディスク1)中にこれから書こうとしている"CHUNK_0001.MPEG2"と等しいか、それより大きい大きさを持つ空き領域を探し、そのアドレスを確定する。
【0080】
入力端子P3から入力されたビデオ信号、および入力端子P4から入力されたオーディオ信号は、エンコーダ10によりエンコードされた後、書き込みチャネル用バッファ11に蓄積される。続いて、CPU21は、空き領域のアドレス情報に基づき、光ヘッド2を書き込み位置に移動させる。そしてCPU21は、光ヘッド2、RFおよび復調/変調回路3、並びにECC回路4を書き込みモードに設定するとともに、スイッチ5を書き込みチャネル用バッファ11側に切り替え、光ヘッド2の位置を微調整した後、光ヘッド2による書き込みを開始させる。これにより新たに用意した"CHUNK_0001.MPEG2"の内容が、書き込みチャネル用バッファ11から読み出され、スイッチ5、ECC回路4、RFおよび復調/変調回路3を介して光ヘッド2に入力され、光ディスク1に記録される。
【0081】
書き込みチャネル用バッファ11から読み出され、光ディスク1に記録されたデータ量が、予め設定した値と等しくなったとき、あるいは入力部14から書き込み動作の停止が指定されたとき、CPU21は書き込み動作を停止させる。最後に、CPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、ファイルシステム(光ディスク1)中の"CHUNK_0001.MPEG2"を指し示すポインタを、新しく書込んだ位置を指し示すように書き換える。
【0082】
いま、光ディスク1に、図26に示すような情報ファイルとストリームファイルが記録されているものとする。この例では、"PROGRAM_001.PGI"という名前の1つのプログラムのファイルが含まれている。また、この光ディスク1には、"TITLE_001.VDR"、"TITLE_002.VDR"、および"TITLE_003.VDR"という名前の3つのタイトルのファイルが含まれている。
【0083】
さらに、この光ディスク1には、"CHUNKGROUP_001.CGIT"と"CHUNKGROUP_002.CGIT"という2つのチャンクグループのファイルが含まれている。また、この光ディスク1には、"CHUNK_0001.MPEG2"、"CHUNK_0011.MPEG2"、および"CHUNK_0012.MPEG2"という名前の3つのストリームのファイルが含まれているとともに、それぞれに対応する情報として、"CHUNK_0001.ABST"、"CHUNK_0011.ABST"、および"CHUNK_0012.ABST"の3つの情報ファイルが置かれている。
【0084】
図26に示した情報ファイルとストリームファイルを有する光ディスク1の論理構造は、図27に示すようになる。この例では、チャンク情報ファイル"CHUNK_0001.ABST"は、ストリームファイル"CHUNK_0001.MPEG2"を、またチャンク情報ファイル"CHUNK_0011.ABST"は、ストリームファイル"CHUNK_0011.MPEG2"を、さらに、チャンク情報ファイル"CHUNK_0012.ABST"は、ストリームファイル"CHUNK_0012.MPEG2"を、それぞれ指定している。具体的には、図24のCHUNK_%%%%.ABST中の、chunk_file_idというフィールドで、ストリームのファイルIDが指定される。
【0085】
さらに、この例では、チャンクグループ情報ファイル"CHUNKGROUP_001.CGIT"は、チャンク情報ファイル"CHUNK_0001.ABST"を、またチャンクグループ情報ファイル"CHUNKGROUP_002.CGIT"は、チャンク情報ファイル"CHUNK_0011.ABST"と"CHUNK_0012.ABST"を、それぞれ指定している。具体的には、図23のchunk_arrangement_info()の中のchunk_info_file_idというフィールドでチャンク情報のファイルIDが指定される。このchunk_arrangement_info()はチャンクグループ情報ファイルの中にあり、該当チャンクグループに属するチャンクの数だけ存在するデータ構造となっている(図23のchunk_arrangement_info()は、図22のchunk_connection_info()に記述されており、このchunk_connection_info()は、図21のCHUNKGROUP_###.CGITに記述されている)。
【0086】
CHUNKGROUP_001には、chunk_arrangement_info()が1つだけあり、その中のchunk_info_file_idがCHUNK_0001を指定している。CHUNKGROUP_002には、chunk_arrangement_info()が2つあり、その中で、それぞれCHUNK_0011とCHUNK_0012が指定されている。このような場合のため、チャンクグループは、複数のチャンクの再生順序等を指定できるようになっている。
【0087】
具体的には、まず、図21のCHUNKGROUP_###.CGIT中のchunkgroup_time_base_offsetにより、該当チャンクグループでの時計の初期値が定められる。次に各チャンクを登録する際に、図23のchunk_arrangement_info()のpresentation_start_cg_countとpresentation_end_cg_time_countが指定される。
【0088】
例えば、図28に示すように、CHUNK_0011の長さ(時間)をA、CHUNK_0012の長さ(時間)をBとする。CHUNK_0011のpresentation_start_cg_countがchunkgroup_time_base_offsetに等しく、presentation_end_cg_countが"chunk_group_time_base_offset+A"に等しい。またCHUNK_0012のpresentation_start_cg_countがchunkgroup_time_base_offset+Aに等しく、presentation_end_cg_countが"chunk_group_time_base_offset+A+B"に等しい。このように設定すると、CHUNKGROUP_002は、CHUNK_0011とCHUNK_0012を連続的に再生させたものとして定義される。
【0089】
なお、CHUNK_0011とCHUNK_0012の再生時刻に重なりがある場合には、時刻をそのようにずらすことで指定ができる。また、図23のchunk_arrangement_info()中のtransition_info()に記述を行うことで、2つのストリーム間の遷移において、特殊効果(フェードイン、フェードアウト、ワイプ等)を指定できるようになっている。
【0090】
図26(図27)の例では、タイトル情報ファイル"TITLE_001.VDR"と"TITLE_002.VDR"は、チャンクグループ情報ファイル"CHUNKGROUP_001.CGIT"を、またタイトル情報ファイル"TITLE_003.VDR"はチャンクグループ情報ファイル"CHUNKGROUP_002.CGIT"を、それぞれ指定している。具体的には、図16のtitle_info()中において、cgit_file_idというフィールドで、チャンクグループのファイルIDを指定し、さらにtitle_start_chunk_group_time_stampとtitle_end_chunk_group_time_stampというフィールドで、チャンクグループ内で該当タイトルが定義される時間的な範囲を指定している。
【0091】
例えば、図27の例では、CHUNKGROUP_001の前半をTITLE_001が、後半をTITLE_002が、それぞれ指し示している。なお、この分割はユーザからの要求により行われたものであり、その位置はユーザにとって任意であり、予め決めておくことはできない。ここでTITLE_001とTITLE_002による分割の位置を、CHUNKGROUP_001の先頭からAだけ離れた位置に設定したとする。
【0092】
TITLE_001はチャンクグループとしてCHUNKGROUP_001を指定し、タイトルの開始時刻として、CHUNKGROUP_001の開始時刻を指定し、タイトルの終了時刻として、ユーザから指定された点の時刻を指定する。
【0093】
つまりTITLE_001のtitle_start_chunk_group_time_stampとして、CHUNKGROUP_001のchunkgroup_time_base_offset(先頭の位置)が設定され、TITLE_001のtitle_end_chunk_group_time_stampとして、CHUNKGROUP_001のchunkgroup_time_base_offsetにAの長さを加えたものが設定される。
【0094】
また、TITLE_002はチャンクグループとしてCHUNKGROUP_001を指定し、タイトルの開始時刻として、ユーザから指定された点の時刻を指定し、タイトルの終了時刻として、CHUNKGROUP_001の終了時刻を指定する。
【0095】
つまりTITLE_002のtitle_start_chunk_group_time_stampとして、CHUNKGROUP_001のchunkgroup_time_base_offset(先頭の位置)にAの長さを加えたものが設定され、TITLE_002のtitle_end_chunk_group_time_stampとして、CHUNKGROUP_001のchunkgroup_time_base_offsetにCHUNKGROUP_001の長さを加えたものが設定される。
【0096】
さらに、TITLE_003はチャンクグループとしてCHUNKGROUP_002を指定し、タイトルの開始時刻としてCHUNKGROUP_002の開始時刻を指定し、タイトルの終了時刻としてCHUNKGROUP_002の終了時刻を指定する。
【0097】
つまりTITLE_003のtitle_start_chunk_group_time_stampとして、CHUNKGROUP_002のchunkgroup_time_base_offsetが設定され、TITLE_003のtitle_end_chunk_group_time_stampとして、CHUNKGROUP_002のchunkgroup_time_base_offsetにCHUNKGROUP_002の長さを加えたものが設定される。
【0098】
さらに、この例では、プログラム情報ファイル"PROGRAM_001.PGI"は、TITLE_001の一部とTITLE_003の一部を、この順番で再生するように指定している。具体的には、図20のplay_item()中のtitle_numberによりタイトルを指定し、各タイトルで定義される時刻で開始点と終了点を定義することで、1つのカットが抜き出される。このようなカットを複数個集めて、プログラムが構成される。
【0099】
次に、光ディスク1に、新たな情報を追記録(アペンド記録)する場合の動作について説明する。この記録は、具体的には、例えば、タイマ録画により、あるいはユーザが入力部14を操作して、光ディスク装置に対してリアルタイムに録画を指令することにより行われる。後者の場合、録画ボタンが押されたようなときは、録画終了時刻を予測することはできないが、ワンタッチ録画機能(操作後、一定時間だけ録画が行われる機能)のボタンが押されたときは、終了時刻を予測することができる。
【0100】
ここではタイマ録画を例にとって説明する。この場合、光ディスク装置のユーザは事前に、録画開始時刻、録画終了時刻、ビットストリームのビットレート、録画を行うチャネル等を指定してあるものとする。また、録画の予約を行った時点で、ビットレートと録画時間に見合う空き容量が光ディスク1に残されていることが、予め確認されているものとする。
【0101】
記録予約時と予約された記録の実行時との間に、光ディスク1に対して更なる記録が行われたような場合、今回予約された番組を、指定されたビットレートで記録する分の容量を確保することができなくなる場合がある。このような場合、CPU21は、ビットレートを、指定された値より下げて、予約された時間分の情報を記録するようにするか、または、ビットレートはそのままにして、記録可能な時間だけ記録するようにする。CPU21は、このとき、更なる記録が行われ、予約した記録に不具合が出た時点でユーザにその旨を伝えるメッセージを発することは言うまでもない。
【0102】
さて、予約された録画の開始時刻が近づくと、CPU21は内蔵するタイマやクロックを使用して、モードを、スリープモードから動作モードに自動的に復帰させる。そしてCPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、予約された番組が記録できるだけの領域を光ディスク1上に確保する。つまり、予約録画の終了時刻から開始時刻を減算した結果(録画時間)にビットレートを乗じた数値が、予約された番組を記録するのに必要な領域の大きさであり、CPU21はこの大きさの領域をまず確保する。その他、この記録に際して、ストリームファイル以外に情報ファイルを記録する必要がある場合、例えば新たなタイトルとして登録するためにタイトル情報ファイル等が必要である場合には、それらの情報ファイルが記録できるだけの容量を光ディスク1に確保しておく必要がある。必要な分の領域を確保することができない場合には、上述したような方法(ビットレートの変更、録画可能な時間内だけの録画などの方法)で対応が取られることになる。
【0103】
なおこのとき、新しいタイトルの記録なので、ユーザは、新たなストリームディレクトリの新たなストリームファイルとして新しいストリームファイルのファイル名を付ける。ここでは、これを、\MPEGAV\STREMS_003\CHUNK_0031とする。つまり、図29に示すように、ルートディレクトリの下のMPEGAVディレクトリの下のSTREAM_003ディレクトリの下のCHUNK_0031.MPEG2という名前のファイルとする。
【0104】
CPU21は、各部に対して記録モードの実行を命令する。例えば、図示せぬチューナから入力端子P3に入力されたビデオ信号、および入力端子P4に入力されたオーディオ信号は、エンコーダ10によりエンコードされた後、書き込みチャネル用バッファ11に蓄積される。続いて、CPU21は、先程確保した領域のアドレス情報に基づき、光ヘッド2を書き込み位置に移動させる。そしてCPU21は、光ヘッド2、RFおよび復調/変調回路3、並びにECC回路4を書き込みモードに設定するとともに、スイッチ5を書き込みチャネル用バッファ11側に切り替え、光ヘッド2の位置を微調整した後、光ヘッド2による書き込みを開始させる。これにより新たに用意した"CHUNK_0031.MPEG2"の内容が、書き込みチャネル用バッファ11から読み出され、スイッチ5、ECC回路4、RFおよび復調/変調回路3、並びに光ヘッド2を介して、光ディスク1に記録される。
【0105】
以上の書き込み動作を続けて、以下のいずれかの条件が発生した時点で、CPU21は、書き込み動作を停止させる。
1)予約された記録の終了時刻になったとき
2)容量不足、その他の原因により光ディスク1に記録ができなくなったとき
3)録画動作の停止が指令されたとき
【0106】
次に、CPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、ファイルシステム中の"CHUNK_0031.MPEG2"を指し示すポインタを新しく書込んだ位置を指し示す値に書き換える。また、CPU21は、チャンク情報、チャンクグループ情報、タイトル情報のそれぞれのファイルを用意し、しかるべき名前をつけて記録する。なお、記録時あるいは予約時に、光ディスク1上に、これらのファイルを記録することができるだけの空き容量を確保しておく必要がある。
【0107】
このようにして、例えば図30に示すように、新たな情報ファイルが作成される。同図において、ファイル名の右肩にアスタリスク(*)をつけたものが、今回新たに作成されたファイルである。
【0108】
図31は、新たにでき上がった情報ファイルの関係を示したものである。TITLE_004はCHUNKGROUP_003を指定し、CHUNKGROUP_003はCHUNK_0031を指定し、CHUNK_0031はSTREAM_0031を指定している。
【0109】
すなわち、新たなストリームはTITLE_004として、情報ファイルに登録されている。ユーザは光ディスク装置のタイトルを確認する機能により、TITLE_004の属性等を知ることができ、また、TITLE_004を再生することができる。
【0110】
次に、図26(図27)に例示するような光ディスク1上に、上書き記録する場合の動作について説明する。上書き記録とは、ビデオテープに信号を記録する場合と同様に、それまでに記録されている番組の上に(その番組を消去して)新たな番組を記録していく動作のことを言う。
【0111】
上書き記録では、上書き記録を開始する位置が重要である。例えばユーザからTITLE_001の先頭から上書き記録を開始することが指定されたとする。この時上書き記録は、TITLE_001、TITLE_002、TITLE_003をそれぞれ順に書き換えながら行われる。TITLE_003の最後まで書き換えてもまだ記録動作が終了しない場合には、光ディスク1上の空き領域に新たな領域を確保して記録が続行される。例えばTITLE_002が記録開始位置とされた場合には、TITLE_001は記録開始位置より前に位置するので、今回の記録動作により書き換えられることはない。
【0112】
いま、TITLE_003の先頭からタイマ録画により上書きするものとする。この場合、光ディスク装置のユーザは事前に、録画開始時刻、終了時刻、ビットストリームのビットレート、録画を行うチャネル等を指定しているものとする。また、上書き記録では重要な記録開始位置がTITLE_003の先頭と指定されたものとする。さらにこの場合においても、録画の予約を行った時点で、ビットレートと録画時間に見合う容量が光ディスク1上に存在することが、予め確認されているものとする。上書き記録の場合には、指定された位置から上書き可能な(複数の)タイトルの総容量と、光ディスク1の空き容量の和が記録可能容量となる。つまり、今回の場合には、TITLE_003が管理するストリームSTREAM_0011とSTREAM_0012の総容量と、光ディスク1上の空き容量の和が記録可能な容量となる。
【0113】
上書き記録では、記録可能な容量分に対して、どのような順番で実際の記録を行なっていくかという選択肢がいくつかある。まず、最初に考えられるのがタイトルで指定されているストリームの順番に記録していく方法である。つまり、今回の場合には、まずSTREAM_0011の先頭から記録を開始し、STREAM_0011の終わりまで記録したら、STREAM_0012の先頭から記録を続行し、STREAM_0012の終わりまで記録したら、今度は空き領域に記録を行なう方法である。もう1つの方法は、まず、空き領域に記録を行い、空き領域が無くなった時点で、現存するストリーム上に記録していく方法である。
【0114】
前者の方法は、ビデオテープのエミュレーションという意味で優れている。つまり、ビデオテープと同様の動作であるという意味で、ユーザから理解され易いという特徴を有する。後者の方法は、既に記録されているストリームの消去が後回しにされるため、記録されているものの保護という点で優れていると言う特徴を有する。
【0115】
なお、記録予約時と予約された記録の実行時との間に、光ディスク1に対して更なる記録が行われた場合に、今回予約された番組を、指定されたビットレートで記録する分の容量を確保することができない場合がある。このような場合、上述した場合と同様に、予約実行時に、ビットレートが自動的に下げられ、予約された時間分だけすべて記録されるか、または、ビットレートはそのままにして、記録可能な時間だけ記録が行われる。
【0116】
予約された録画の開始時刻が近づくと、光ディスク装置はスリープモードから動作モードに復帰する。CPU21は、光ディスク1上の空き容量をすべて確保する。もちろん、この時点で空き容量を確保せず、必要になった時点で確保するという方法もあるが、ここでは説明のために、記録開始以前に必要な領域を確保するものとする。
【0117】
なお、タイマ録画等で、開始時刻、終了時刻、ビットレートが指定されているため、必要な領域の大きさが予め判っている場合には、必要な分だけ(あるいは幾分かのマージンを加えた分だけ)容量を確保するようにしてもよい。この記録に際して情報ファイルを記録する必要がある場合、例えば新たなタイトルとして登録するためにタイトル情報ファイル等が必要である場合、それらの情報ファイルも記録することができるだけの容量を残しておく必要がある。
【0118】
ここでは、新たなストリームディレクトリの新たなストリームファイルとして新しいストリームファイルのファイル名をつけるものとする。つまり、ここでは、ファイル名を、\MPEGAV\STREMS_002\CHUNK_0031とする。すなわち、図32に示すように、ルートディレクトリの下のMPEGAVディレクトリの下のSTREAM_002ディレクトリの下のCHUNK_0031.MPEG2という名前のファイルが作成される。
【0119】
入力端子P3に入力されたビデオ信号、および入力端子P4に入力されたオーディオ信号は、エンコーダ10によりエンコードされた後、書き込みチャネル用バッファ11に蓄積される。続いて、CPU21は、先程確保した領域のアドレス情報に基づき、光ヘッド2を書き込み位置に移動させる。そしてCPU21は、光ヘッド2、RFおよび復調/変調回路3、並びにECC回路4を書き込みモードに設定するとともに、スイッチ5を書き込みチャネル用バッファ11側に切り替え、光ヘッド2の位置を微調整した後、光ヘッド2による書き込みを開始させる。
これにより新たに用意した"CHUNK_0031.MPEG2"の内容が、書き込みチャネル用バッファ11から読み出され、スイッチ5、ECC回路4、RFおよび復調/変調回路3、並びに光ヘッド2を介して、光ディスク1に記録される。
【0120】
この時、まずはストリームファイル"CHUNK_0011.MPEG2"が書き換えられる。そして"CHUNK_0011.MPEG2"の最後まで記録が行われたら、次に、"CHUNK_0012.MPEG2"へ記録が進められ、さらに、"CHUNK_0031.MPEG2"へと記録が進められる。
【0121】
以上の動作を続けて、上述した場合と同様に、3つの条件のいずれかが発生した時点で、CPU21は、書き込み動作を停止させる。
【0122】
次に、CPU21は、予めその処理プログラムに組み込んであったファイルシステム操作命令を使用し、ストリームファイル、チャンク情報、チャンクグループ情報、タイトル情報を更新する。
【0123】
ところで、書き込みが終了したタイミングによって、ファイルの構成が変化する。例えば、CHUNK_0011.MPEG2とCHUNK_0012.MPEG2の2つのストリームの上書きを終了した後、さらにCHUNK_0031.MPEG2に記録が行われた場合、光ディスク1のファイルの構成は、図33に示すようになる。ファイル名の右肩にアスタリスク(*)をつけたものが今回新たに作成されたファイルである。
【0124】
図34は、このようにして新たにでき上がったファイル(図33のファイル)の関係を示したものである。図31と比較して明らかなように、TITLE_003が指定しているCHUNKGROUP_002に含まれるCHUNKとしてCHUNK_0031が増えており、CHUNK_0031はSTREAM_0031を指定している。
【0125】
一方、既存ストリームの上書きの途中で上書き記録が終了した場合、例えば、CHUNK_0011の記録の途中で上書き記録が終了した場合、上書きのために確保したCHUNK_0031のストリームは上書きされなかったので開放される。この場合、特殊なタイトルの処理が行われる。すなわち、TITLE_003の先頭から上書き記録を開始し、その途中で記録が終了した場合には、そこでタイトルが分割される。つまり、図35に示すように、上書き記録開始位置から終了位置までが新たなTITLE_003とされ、それ以降の(元々のTITLE_003の残り部分)はTITLE_004とされる。
【0126】
次に、タイトル再生の動作について説明する。いま、図26に示すようなファイルを有する光ディスク1を光ディスク装置に挿入し、タイトル再生するものとする。まず、光ディスク1が挿入されると、CPU21は情報ファイルを光ディスク1から読み込んで、RAM24に記憶させる。この動作は上述した、基本的な情報ファイルの読み込み動作を繰り返すことで行われる。
【0127】
CPU21は、まず、VOLUME.TOCとALBUM.STRを読み出す。次にCPU21は、ディレクトリ"TITLE"以下に、".VDR"の拡張子を持つファイルがいくつ有るかを調べる。この拡張子を持つファイルは、タイトルの情報を持つファイルであり、そのファイルの数はつまりタイトルの数となる。図26の例ではタイトル数は3となる。次にCPU21は3つのタイトル情報ファイルを読み込み、RAM24に記憶させる。
【0128】
CPU21は、OSD制御回路9を制御して、光ディスク1上に記録されているタイトルの情報を示す文字情報を発生させ、合成回路8によりビデオ信号と合成させ、出力端子P1からディスプレイに出力させ、表示させる。いまの場合、タイトルが3つあること、そして3つのタイトルそれぞれの長さや属性(名前、記録された日時など)が表示される。
【0129】
ここで、ユーザが、例えばTITLE_002の再生を指定したとする。TITLE_002の情報ファイルには(図16のtitle_info()中のcgit_file_idには)、CHUNKGROUP_001を指定するファイルIDが記録されており、CPU21はこれを記憶するとともに、CHUNKGROUP_001をRAM24に格納させる。
【0130】
次に、CPU21は、TITLE_002の開始時刻と終了時刻(図16のtitle_info()中のtitle_start_chunk_group_time_stampとtitle_end_chunk_group_time_stamp)が、どのCHUNKに対応するかを調べる。これは、CHUNKGROUPの情報の中から、それぞれのCHUNKが登録されている情報(図23のchunk_arrangement_info()中のpresentation_start_cg_time_countとpresentation_end_cg_time_count)を比較することで行なわれる。いまの場合、図27に示すように、TITLE_002の開始時刻は、CHUNK_0001の途中に入っていることがわかる。つまり、TITLE_002を先頭から再生するには、ストリームファイル"CHUNK_0001.MPEG2"の途中から再生を開始すれば良いと言うことがわかる。
【0131】
次に、CPU21は、TITLE_002の先頭がストリーム中のどこにあたるかを調べる。すなわち、TITLE_002の開始時刻が、ストリーム中のオフセット時刻(タイムスタンプ)としていくつにあたるのかが計算され、次にCHUNKファイル中の特徴点情報を使用して、開始時刻直前にあたる再生開始点が特定される。これにより、再生開始点のファイル先頭からのオフセット距離が確定できたことになる。
【0132】
次に、CPU21は、予めその処理プログラムに組み込んであるファイルシステム操作命令を使用し、"CHUNK_0001.MPEG2"が記録されている光ディスク1上の物理アドレスと、その長さを確定する。更に、このアドレスに、先程求めた再生開始点のオフセットアドレスが加えられて、TITLE_002の再生開始点のアドレスが最終的に確定される。
【0133】
続いて、CPU21は、この"CHUNK_0001.MPEG2"のアドレス情報に基づき、光ヘッド2を読み出し位置に移動させる。そしてCPU21は、光ヘッド2、RFおよび復調/変調回路3、並びにECC回路4を読み出しモードに設定するとともに、スイッチ5を読み出しチャネル用バッファ6側に切り替え、光ヘッド2の位置を微調整した後、光ヘッド2による読み出しを開始させる。これにより"CHUNK_0001.MPEG2"の内容が読み出しチャネル用バッファ6に蓄積される。
【0134】
読み出しチャネル用バッファ6に蓄積されたデータは、デコーダ7に出力され、デコード処理が施されて、ビデオ信号とオーディオ信号が出力される。光ディスク1から読みだされ、デコードされ、表示されたデータ量が、"CHUNK_0001.MPEG2"の大きさと等しくなった時点で、CPU21は、TITLE_003の再生に移行する。このTITLE_003の再生動作は、TITLE_002の再生動作と同様の動作である。
【0135】
登録されているタイトルの再生が終了したとき、あるいは読み出し動作の停止が指示されたとき、読み出し、デコード処理が停止される。
【0136】
なお、光ディスク装置に、光ディスク1として、新しいディスクが挿入された場合、あるいは、異なるフォーマットのディスクが挿入された場合、CPU21は、ディスクが挿入されたとき、VOLUME.TOCとALBUM.STRを読み出そうとするが、これらのディスクには、このようなファイルが存在しないことになる。このような場合、即ち、VOLUME.TOCとALBUM.STRを読み出すことができない場合、CPU21はメッセージを出力し、ユーザに指示を求める。ユーザは、CPU21に指示し、光ディスク1をイジェクトさせるか(例えば、異なるフォーマットのディスクである場合)、初期化させるか(例えば、同一フォーマットの新しいディスクである場合)、または何らかの方法によりデータを復旧させる(例えば、同一フォーマットのディスクであるが、データが破壊されている場合)。
【0137】
次に、ライトプロテクトについてさらに説明する。光ディスク1のケースには、書き込み禁止ノッチ(図示せず)が設けられており、この書き込み禁止ノッチを操作することで、光ディスク1に対する上書きを禁止することができる。この他、ライトプロテクトに関する情報は、光ディスク1にデータとして記録することも可能である。すなわち、上述したように、VOLUME.TOC(図2)のvolume_infomation()(図3)のwrite_protect()(図7)、または、TITLE_###.VDR(図15)のtitle_info()(図16)のflags_for_title、若しくは、PROGRAM_$$$.PGI(図17)のprogram()(図18)のflags_for_programに、ライトプロテクトに関する情報を書き込むことができるようになされている。
【0138】
このうちの、図7のwrite_protectを例として、ライトプロテクトに関してさらに説明する。図7のwrite_protect()のwrite_protect_lengthは、write_protect()の長さを記録する領域である。volume_write_protect_levelは、図36に示すように、光ディスク1に記録されているすべてのtitle,programに対するwrite protectの設定を行うための情報が記録される領域である。このlevelの0は、write protectが設定されていないことを意味する。すなわち、この場合においては、光ディスク1に対して上書きが自由になされることになる。これに対して、このlevelの1は、volume_write_protect_levelのみの変更が可能であることを表す。このlevelの2は、ALBUM.STR、または0を除くより下位のレベルの変更が可能であることを意味し、その値の3は、VOLUME.TOC、または0を除くより下位のレベルの変更が可能であることを意味する。
【0139】
このlevelの4は、program、または0を除くより下位のレベルの変更が可能であることを意味し、その値の5は、title、または0を除くより下位のレベルの変更が可能であることを意味する。さらに、このlevelの6は、.MPEG2,.ABST、および.CGITのサフィックスが付加されているファイル、または0を除くより下位のレベルの変更が可能であることを意味する。
【0140】
password_enable_flagには、後述するpassword_for_volume_write_protectが有効か無効かを示すフラグが記述される。これが有効になっているとき、write_protect()の変更には、password_for_volume_write_protectに記録されているパスワードの入力が必要となる。ここで変更とは、新規作成、既に存在するものの変更、または消去を意味する。append_only_flagには、volume_write_protect_levelで許可された範囲の変更を、さらに追記のみ可能であるように限定するflagが記述される。このフラグが有効になっているとき、既に存在している情報の書き換えができなくなる。
【0141】
expiration_time_enable_flagには、後述するwrite_protect_expiration_time()が有効であるか否かを示すフラグが記述される。number_of_times_enable_flagは、後述するnumber_of_timesが有効であるか否かを示すフラグが記述される。password_for_volume_write_protectは、write_protect()を変更するためのパスワードが記述される領域である。
【0142】
write_protect_set_time()は、write_protect()が最後に設定または変更された年月日時分秒をBCD表現したものが記述される領域である。write_protect_expiration_time()は、有効期限を示す年月日時分秒の情報が、BCD表現で記述される領域である。パスワードには有効期限が設定でき、この期間を過ぎると、パスワードなしでも、write_protect()に関する情報の変更が可能になる。この期限としては、無期限を設定することも可能である。
【0143】
次に、図37のフローチャートを参照して、write_protectを変更する場合の処理について説明する。最初に、ステップS1において、ユーザが、入力部14を操作して、write_protectの変更を指令すると、ステップS2において、CPU21は、RAM24に記憶されているVOLUME.TOCのvolume_information()のwrite_protect()のpessword_for_volume_write_protectに、所定のパスワードが記録されているか否かを判定する。password_enable_flagが1で、有効なパスワードが記録されている場合には、ステップS3に進み、CPU21は、write_protect()中のwrite_protect_expiration_time()が、現時点において有効であるか否かを判定する。
【0144】
すなわち、このwrite_protect_expiration_time()には、パスワードを有効とする期間が書き込まれており、現在時刻が、このパスワードの有効期間内であるか否かが判定される。パスワードが有効期間内のものであると判定された場合には、ステップS4に進み、CPU21は、OSD制御回路9を制御し、パスワードを入力すべき旨のメッセージを生成させる。このメッセージは、合成回路8、出力端子P1を介してディスプレイに出力され、表示される。ユーザは、このメッセージを見たとき、そのメッセージに従って、ステップS5において、入力部14を操作し、パスワードを入力する。
【0145】
次に、ステップS6において、CPU21は、ステップS5で入力されたパスワードが正しいパスワードであるか否か、すなわち、password_for_volume_write_protectに記録されているパスワードと等しいか否かが判定される。両者が等しいと判定された場合には、ステップS8に進み、CPU21はOSD制御回路9を制御し、write_protectの変更を許可するメッセージを生成させる。このメッセージは、合成回路8、出力端子P1を介してディスプレイに表示される。
【0146】
ユーザは、このメッセージの表示を見て、ステップS9において、入力部14を操作し、write_protectを変更する情報を入力する。この入力が行われたとき、ステップS10において、CPU21は、入力された情報に対応して、write_protectを更新する。すなわち、RAM24に記憶されているwrite_protectの内容を更新するとともに、その更新した内容を光ディスク1に記録させる。
【0147】
ステップS6において、入力されたパスワードが正しいパスワードではないと判定された場合には、ステップS7に進み、CPU21は、write_protectの変更を許容しない旨のメッセージをOSD制御回路9に発生させ、ディスプレイに表示させる。この場合、ステップS8乃至ステップS10の処理はスキップされ、ユーザは、write_protectの内容を更新することができないことになる。
【0148】
一方、ステップS2において、password_for_volume_write_protectにパスワードが記録されていないと判定された場合、並びにステップS3において、write_protect_expiration_time()が、有効ではないと判定された場合、ステップS8に進み、それ以降の処理が実行される。すなわち、この場合には、ユーザは、自由にwrite_protectを更新することができることになる。
【0149】
次に、図38と図39のフローチャートを参照して、光ディスク1に所定のデータを記録する場合の処理について説明する。この処理は、ユーザが入力部14を操作して、所定のデータの記録を指令したとき開始される。最初に、ステップS21において、CPU21は、RAM24に記憶されているwrite_protect()中のvolume_write_protect_levelを読み取る処理を実行する。そして、ステップS22乃至ステップS28において、このvolume_write_protect_levelが0乃至6のいずれの値に設定されているかを判定する。
【0150】
ステップS22において、volume_write_protect_levelが0であると判定された場合、ステップS30に進み、CPU21は、ユーザが入力部14を操作して指令した入力に対応する記録処理を実行する。すなわち、この場合には、上書きが禁止されていないので、ユーザは、自由に記録処理を実行することができる。
【0151】
ステップS23において、volume_write_protect_levelが1であると判定された場合、ステップS31に進み、CPU21は、記録するデータは、volume_write_protect_levelであるか否かを判定する。図36を参照して説明したように、このlevelが1である場合には、このlevel自体の更新は許容されるが、それ以外のデータの上書きは禁止される。従って、ステップS31において、上書きすべきデータとして入力されたのが、このvolume_write_protect_levelであると判定された場合には、ステップS30に進み、その記録(上書き)処理が実行される。
これに対して、ステップS31において、記録すべきデータとして入力されたのが、このvolume_write_protect_levelではないと判定された場合には、ステップS32に進み、CPU21は、OSD制御回路9を制御し、記録の不許可を示すメッセージを生成させ、ディスプレイに表示させる。
【0152】
一方、ステップS24において、volume_write_protect_levelが2であると判定された場合、ステップS33に進み、CPU21は、記録すべきデータとして入力されたのが、ALBUM.STRであるか否かを判定する。このlevelが2である場合には、ALBUM.STRと、それより下位のレベルの更新データであるvolume_write_protect_levelのみが記録可能とされる。従って、入力されたデータがALBUM.STRである場合には、ステップS30に戻り、入力に対応する記録処理が実行される。これに対して、ステップS33において、入力されたデータが、ALBUM.STRではないと判定された場合には、ステップS31に戻り、それ以降の処理が実行される。すなわち、入力されたのが、volume_write_protect_levelである場合には、その記録が許容されるが、それ以外のデータである場合には、記録が禁止される。
【0153】
ステップS25において、volume_write_protect_levelが3であると判定された場合、ステップS34に進み、入力されたデータがVOLUME.TOCであるか否かが判定される。volume_write_protect_levelが3である場合には、VOLUME.TOC,ALBUM.STR、またはvolume_write_protect_levelだけが記録可能とされるので、この場合には、ステップS30に進み、入力に対応する記録処理が実行される。これに対して、ステップS34において、入力されたデータが、VOLUME.TOCではないと判定された場合には、ステップS33に戻り、それ以降の処理が実行される。すなわち、入力されたのが、ALBUM.STR、またはvolume_write_protect_levelである場合には、その記録が許容されるが、それ以外のデータである場合には、記録が禁止される。
【0154】
ステップS26において、volume_write_protect_levelが4であると判定された場合には、ステップS35に進み、入力されたデータがプログラム情報ファイルであるか否かが判定される。volume_write_protect_levelが4である場合には、プログラム情報ファイル、VOLUME.TOC,ALBUM.STR、またはvolume_write_protect_levelだけが記録可能とされる。
【0155】
従って、ステップS35において入力されたのがプログラム情報ファイルであると判定された場合には、ステップS30に戻り、入力対応する記録処理が実行されるが、入力されたデータがプログラム情報ファイルではないと判定された場合には、ステップS34に戻り、それ以降の処理が実行される。すなわち、この場合には、入力されたデータが、VOLUME.TOC,ALBUM.STR、またはvolume_write_protect_levelであるとき、入力に対応する記録処理が実行されるが、それ以外のデータが入力された場合には、記録が禁止される。
【0156】
ステップS27において、volume_write_protect_levelが5であると判定された場合には、ステップS36に進み、入力されたデータが、タイトル情報ファイルであるか否かが判定される。volume_write_protect_levelが5である場合には、タイトル情報ファイル、プログラム情報ファイル、VOLUME.TOC,ALBUM.STR、またはvolume_write_protect_levelだけが記録可能とされる。そこで、ステップS36において、入力されたデータがタイトル情報であると判定された場合には、ステップS30に戻り、入力に対応する記録処理が実行されるが、入力されたデータがタイトル情報ファイルではないと判定された場合には、ステップS35に戻り、それ以降の処理が実行される。すなわち、この場合には、入力されたデータが、プログラム情報ファイル、VOLUME.TOC,ALBUM.STR、またはvolume_write_protect_levelであるとき、その記録が許容されるが、それ以外のデータであるとき、記録が禁止される。
【0157】
ステップS28において、volume_write_protect_levelが6であると判定された場合、ステップS37に進み、入力されたデータが、ストリームファイルまたはチャンクグループ情報ファイルであるか否かが判定される。volume_write_protect_levelが6である場合には、ストリームファイル、チャンクグループ情報ファイル、タイトル情報ファイル、プログラム情報ファイル、VOLUME.TOC,ALBUM.STR、またはvolume_write_protect_levelだけが記録可能とされる。そこで、ステップS37において、入力されたデータが、ストリームファイルまたはチャンクグループ情報ファイルであると判定された場合には、ステップS30に戻り、入力に対応する記録処理が実行されるが、入力されたデータが、ストリームファイルまたはチャンクグループ情報ファイルではないと判定された場合には、ステップS36に戻り、それ以降の処理が実行される。すなわち、この場合、入力されたデータが、タイトル情報ファイル、プログラム情報ファイル、VOLUME.TOC,ALBUM.STR、またはvolume_write_protect_levelであると判定されたとき、そのデータの記録が許容されるが、それ以外のデータであるとき、その記録が禁止される。
【0158】
ステップS28において、volume_write_protect_levelが6ではないと判定された場合には、ステップS29に進み、エラー処理が実行される。すなわち、図36に示したように、volume_write_protect_levelは、0乃至6のいずれかの値に設定されており、7乃至15の値は、さしあたって使用されていない。従って、この場合には、エラー処理が実行される。
【0159】
以上のvolume_write_protect_levelの関係を図示すると、図40に示すようになる。同図に示すように、各levelにおいて、自分自身と、それより内側のデータ(より下位のデータ)の更新は許容されるが、自分より外側のデータ(上位のデータ)の更新は禁止される。
【0160】
以上においては、write_protect()について説明したが、flags_for_title、またはflags_for_programにも同様のライトプロテクトに関する情報が記録されており、同様の処理が実行される。
【0161】
なお、光ディスク1のケースに設けられた書き込み禁止ノッチ、VOLUME.TOCのwrite_protect()、flags_for_title、またはflags_for_programのそれぞれのライトプロテクトに関する情報の論理和により、書き込み禁止の制御が行われる。
すなわち、これらのいずれか1つに書き込み禁止が規定されている場合には、その書き込みが禁止される。
【0162】
次に、図8のplay_protect()についてさらに説明する。このplay_protect()には、その光ディスクに記録されている全てのtitleあるいは全てのprogramに対する再生時のプロテクト情報を設定することができる。個々のtitle,programに対する再生時のプロテクト情報は、図16のtitle_info()のflags_for_title、あるいは図18のprogram()のflags_for_programに記録される。
【0163】
play_protect_lengthは、play_protect()の長さをbyte単位で表したものが記述される領域である。volume_play_protect_flagは、volume(光ディスク1)全体の再生、protectの状況を表すflagが記述される領域であり、図41に示すように、4種類の状態が設定できるようになされている。
【0164】
すなわち、このflagの00は、全てのtitleとprogramの再生の許容を意味する。このflagの01は、programの再生は許容するが、titleの再生は禁止することを意味する。このflagの10は、逆にtitleの再生は許容するが、programの再生は禁止することを意味する。さらに、このflagの11は、programとtitleの両方の再生が禁止であることを意味する。
【0165】
password_enable_flagは、password_for_volume_play_protectが有効か無効かを示すflagである。
【0166】
expiration_time_enable_flagは、後述するplay_protect_expiration_time()が有効であるかを示すflagである。このflagが有効になっているとき、password_for_volume_play_protectはplay_protect_expiration_time()に示された有効期限を有する。
【0167】
number_of_times_enable_flagは、後述するnumber_of_timesが有効であるか否かを示すflagである。
【0168】
password_for_volume_play_protectは、プロテクトのレベルまたは有効期限を変更するためのパスワードを記述する領域である。
【0169】
play_protect_set_time()は、設定時間を年月日時分秒で表す領域であり、BCDにより表現される。
【0170】
play_protect_expiration_time()は、有効期限を記述する領域であり、年月日時分秒で記述され、BCDにより表現される。パスワードには、有効期限を設定できる。この期限を過ぎると、play_protect情報がパスワードなしでも変更可能になる。有効期限として無期限も設定可能である。
【0171】
number_of_timesは、回数情報が記述される領域である。
【0172】
次に、図42のフローチャートを参照して、play_protectを変更する場合の処理について説明する。最初に、ステップS51において、ユーザが、入力部14を操作して、play_protectの変更を指令すると、ステップS52において、CPU21は、RAM24に記憶されているVOLUME.TOCのvolume_information()のplay_protect()のpessword_for_volume_play_protectに、所定のパスワードが記録されているか否かを判定する。パスワードが記録されている場合には、ステップS53に進み、CPU21は、play_protect()中のplay_protect_expiration_time()が、現時点において有効であるか否かを判定する。
【0173】
すなわち、このplay_protect_expiration_time()には、パスワードを有効とする期間が書き込まれており、現在時刻が、このパスワードの有効期間内であるか否かが判定される。パスワードが有効期間内のものであると判定された場合には、ステップS54に進み、CPU21は、OSD制御回路9を制御し、パスワードを入力すべき旨のメッセージを生成させる。このメッセージは、合成回路8、出力端子P1を介してディスプレイに出力され、表示される。ユーザは、このメッセージを見たとき、そのメッセージに従って、ステップS55において、入力部14を操作し、パスワードを入力する。
【0174】
次に、ステップS56において、CPU21は、ステップS55で入力されたパスワードが正しいパスワードであるか否か、すなわち、password_for_volume_play_protectに記録されているパスワードと等しいか否かが判定される。両者が等しいと判定された場合には、ステップS58に進み、CPU21はOSD制御回路9を制御し、play_protectの変更を許可するメッセージを生成させる。このメッセージは、合成回路8、出力端子P1を介してディスプレイに表示される。
【0175】
ユーザは、このメッセージの表示を見て、ステップS59において、入力部14を操作し、play_protectを変更する情報を入力する。この入力が行われたとき、ステップS60において、CPU21は、入力された情報に対応して、play_protectを更新する。すなわち、RAM24に記憶されているplay_protectの内容を更新するとともに、その更新した内容を光ディスク1に記録させる。
【0176】
ステップS56において、入力されたパスワードが正しいパスワードではないと判定された場合には、ステップS57に進み、CPU21は、play_protectの変更を禁止する旨のメッセージをOSD制御回路9に発生させ、ディスプレイに表示させる。この場合、ステップS58乃至ステップS60の処理はスキップされ、ユーザは、play_protectの内容を更新することができないことになる。
【0177】
一方、ステップS52において、password_for_volume_play_protectに有効なパスワードが記録されていないと判定された場合、並びにステップS53において、play_protect_expiration_time()が、有効ではないと判定された場合、ステップS58に進み、それ以降の処理が実行される。すなわち、この場合には、ユーザは、自由にplay_protectを更新することができることになる。
【0178】
次に、図43のフローチャートを参照して、再生時の動作について説明する。
この処理は、入力部14をユーザが操作して、光ディスク1の再生を指令したとき開始される。
【0179】
最初に、ステップS71において、CPU21は、RAM24に記憶されているvolume_play_protect_flagを読み取る。このflagは、VOLUME.TOCのvolume_information()のplay_protect()に含まれている。
【0180】
次に、ステップS72乃至ステップS75において、CPU21は、ステップS71で読み取ったvolume_play_protect_flagが、00,01,10または11のいずれの値であるかを判定する。
【0181】
ステップS72において、volume_play_protect_flagが00であると判定された場合、ステップS77に進み、CPU21は、ユーザからの指令に対応して、再生処理を実行する。すなわち、この場合、再生に制限が存在しないので、ユーザが指定したとおりの再生が行われる。
【0182】
ステップS73において、volume_play_protect_flagが01であると判定された場合、ステップS78に進み、CPU21は、いまユーザから指令されている再生は、titleの再生であるか否かを判定する。いま再生が指令されているのがtitleである場合、ステップS79に進み、CPU21は、OSD制御回路9を制御し、titleの再生は禁止されている旨を表すメッセージを生成させ、それを、合成回路8、出力端子P1を介して、ディスプレイに出力、表示させる。
【0183】
これに対して、いま再生が指令されているのがtitleではないと判定された場合には、ステップS77に戻り、ユーザの指令に対応する再生が実行される。例えば、programの再生ならば実行される。
【0184】
ステップS74において、volume_play_protect_flagが10であると判定された場合、ステップS80に進み、いま再生が指令されているのが、programであるか否かが判定される。再生が指令されているのがprogramである場合には、ステップS79に戻り、CPU21は、OSD制御回路9を制御し、programの再生禁止のメッセージを生成させ、ディスプレイに表示させる。これに対して、ステップS80において、再生が指令されているのがprogramではないと判定された場合(例えば、titleであると判定された場合)、ステップS77に戻り、CPU21は、ユーザの指令に対応して、その再生を実行する。
【0185】
ステップS75において、volume_play_protect_flagが11であると判定された場合、ステップS81に進み、CPU21は、再生が指令されているのが、titleまたはprogramであるか否かを判定する。再生の指示されているデータがtitleまたはprogramである場合には、ステップS79に戻り、CPU21は、その再生禁止のメッセージを表示させる。これに対して、ステップS81において、再生が指令されているのがtitleまたはprogramではないと判定された場合、ステップS77に戻り、CPU21は、そのデータの再生を実行させる。
【0186】
ステップS75において、volume_play_protect_flagが11ではないと判定された場合、ステップS76に進み、CPU21は、エラー処理を実行する。すなわち、このflagは、00,01,10,11のいずれかの値とされているので、そのいずれでもないと判定された場合には、エラー処理が実行される。
【0187】
以上においては、volume_play_protect_flagの内容に対応して、titleまたはprogramの再生を制御するようにしたが、このflagが再生を禁止している場合、さらにパスワードが入力されたとき、その再生を許容するようにすることも可能である。図44のフローチャートは、この場合の処理例を表している。
【0188】
すなわち、図44のステップS91乃至ステップS104の処理は、基本的に、図43のステップS71乃至ステップS81の処理と同様の処理であるが、ステップS98(図43のステップS78に対応する)、ステップS103(図43のステップS80に対応する)、またはステップS104(図43のステップS81に対応する)において、再生の指令がvolume_play_protect_flagにより禁止されているデータに対してなされたと判定された場合、ステップS99に進み、CPU21は、OSD制御回路9を制御し、パスワードを入力すべきメッセージを生成し、ディスプレイに表示させる。ユーザは、このメッセージに対応して、入力部14を操作し、パスワードを入力する。
【0189】
そこで、ステップS100において、CPU21は、パスワードが入力されたか否かを判定し、パスワードが入力された場合には、ステップS101において、入力されたパスワードが正しいパスワードであるか否か、すなわち、password_for_volume_play_protectに記録されているパスワードと一致するパスワードであるか否かを判定する。パスワードが正しいと判定された場合、ステップS97に戻り、CPU21は、volume_play_protect_flagの記述に反して、そのデータの再生を実行させる。
【0190】
これに対して、ステップS101において、入力されたパスワードが正しくないと判定された場合、ステップS102(図43のステップS79に対応する)に進み、CPU21は、OSD制御回路9を制御し、再生が禁止されている旨のメッセージを生成させ、ディスプレイに表示させる。ステップS100において、パスワードが入力されなかった場合にも、再生禁止のメッセージが表示される。
【0191】
その他の処理は、図43における場合と同様である。
【0192】
programを作成または編集したものは、そのprogramに対して適宜プレイプロテクト情報を記録することで、例えば各ユーザが個々のtitleを個別に再生することは自由とさせるが、programとして複数のtitleを所定の順番に組み合わせたものの再生を禁止させるようにすることができる。
【0193】
次に、図6のvolume_rating()についてさらに説明する。rating(格付け)とは、play_protectと同じく、再生制限をする機能の一つに分類されるものである。ここではratingの実現方法の一例として、volume_rating()を取り上げる。volume_rating()は、光ディスクに記録されているすべてのtitleあるいはすべてのprogramに対する、ratingによる視聴制限の設定をするための情報である。その他にprogram,title毎にratingを設定することも可能であるが、ここではvolume全体に効力がおよぶvolume_rating()を例として説明する。
【0194】
volume_rating_idは、以下に続く情報がvolume_rating()であることを表す識別子である。volume_rating_lengthは、volume_rating()の長さをbyte単位で表したものを記録するための領域である。volume_rating_typeは、ratingの設定方法を表すflagが記述される領域である。ここでは図45に示すような、3種類のratingの方法が選択できるものとしている。
【0195】
すなわち、このflagの00は、各年齢に対応して視聴許可・不許可の判定をするratingの方法を選択することを意味し、このflagの01は、MPAA(Motion Picture Association of America)による、CARAと呼ばれる分類に従ったratingの方法で視聴制限をすることを意味する。このflagの10は、RSAC(Recreational Software Advisory Council)によるcategoryに従ったratingの方法で視聴制限をすることを意味する。
【0196】
volume_rating_passwordは、このvolume_rating()の情報を変更する際に必要となるpasswordを記録するための領域である。
【0197】
volume_rating_typeが00の場合、年齢により視聴許可・不許可の判定を行うことになる。county_code_for_ratingは、どの国に対するratingであるかを表すための領域で、国を表すcountrycodeが設定される。age_for_volume_ratingで表される年齢は、この年齢以上であれば、このvolume_rating()が記録されているvolumeに含まれる映像を視聴することが可能であるものとする。
【0198】
volume_rating_typeが01の場合、CARAによる作品分類の方法に従ったratingを設定する。CARA_categoryは、volumeに含まれる映像が図46に示す4種類(G,PG,PG−13,NC−17)のカテゴリの、どれに属するかを示している。
【0199】
volume_rating_typeが10の場合、RSACによる作品分類の方法に従ったratingを設定する。RSAC_categoryで図47に示すcategory(Violence Rating,Nudity Rating,Sex Rating,Language Rating)を定め、図48に示すようにRSAC_level(0乃至4)で各categoryにおけるlevelを設定する。
【0200】
次に、図49のフローチャートを参照して、volume_ratingを設定する場合の処理について説明する。最初に、ステップS111において、ユーザが入力部14を操作して、volume_ratingの変更を指令すると、ステップS112において、CPU21は、volume_rating_passwordの入力をユーザに促す。ユーザは、そのメッセージに従って、入力部14を操作し、パスワードを入力する。
【0201】
入力されたpasswordと、volume_rating_passwordが一致したか否かがステップS113で判定され、一致した場合にはステップS114に進み、CPU21はOSD制御回路9を制御し、volume_ratingの変更が可能である旨のメッセージを生成させる。このメッセージは、合成回路8、出力端子P1を介してディスプレイに出力され、表示される。ステップS114においては、ユーザにvolume_rating_typeの選択をさせる。
【0202】
ステップS113において、入力されたパスワードがvolume_rating_passwordと一致しなかったと判定された場合には、ステップS118に進み、CPU21は、volume_ratingの変更を禁止する旨のメッセージをOSD制御回路9に発生させ、ディスプレイに表示させる。この場合、ステップS114乃至ステップS117の処理はスキップされ、ユーザはvolume_ratingの内容を更新することができないことになる。
【0203】
ステップS115において、入力されたvolume_rating_typeがage_limitedであると判定された場合、ステップS119に進み、CPU21は、OSD制御回路9を制御し、視聴可能年齢の問い合わせをユーザに対して行う。ユーザは入力部14を操作して視聴可能年齢を指定する。CPU21は、ユーザの指示に対応してage_for_volume_ratingの設定を行い、さらにcountry_code_for_ratingの設定を行う。以上の処理が終わったら、ステップS123に進む。
【0204】
ステップS115において、入力されたvolume_rating_typeがage_limitedでないと判定された場合には、ステップS116に進む。ステップS116において、入力されたvolume_rating_typeがCARAであると判定された場合には、ステップS120に進む。ステップS120では、CPU21は、OSD制御回路9を制御し、どのカテゴリに設定するかをユーザに対して問い合わさせ、ユーザが入力部14を操作して指令した通りにCARA_categoryの設定を行う。以上の処理が終わったら、ステップS123に進む。
【0205】
ステップS116において、入力されたvolume_rating_typeがCARAではないと判定された場合には、ステップS117に進む。ステップS117において、入力されたvolume_rating_typeがRSACであると判定された場合には、ステップS121に進む。ステップS121では、CPU21は、OSD制御回路9を制御し、RSACで定義されているどのカテゴリに設定するかをユーザに対して問い合わさせ、ユーザが入力部14を操作して指令した通りにRSAC_categoryの設定を行う。さらにステップS122では、CPU21は、OSD制御回路9を制御し、RSACで定義されているどのlevelに設定するかをユーザに対して問い合わせ、ユーザが入力部14を操作して指令した通りにRSAC_levelを設定する。以上の処理が終わったら、ステップS123に進む。
【0206】
ステップS123では、CPU21は、OSD制御回路9を制御し、volume_rating_passwordの変更を行うかユーザに問い合わせる。入力部14を操作して入力されたユーザからの指令がYESである場合、ステップS124に進み、CPU21は、OSD制御回路9を制御し、新しいパスワードの入力をユーザに促し、ユーザは入力部14を操作して指令した通りにパスワードの変更を行う。ステップS123において、入力部14を操作して入力されたユーザからの指令がNOである場合には、volume_rating_passwordを変更せずに、volume_ratingの変更処理を完了する。
【0207】
ステップS117において、入力されたvolume_rating_typeがRSACではないと判定された場合には、ステップS118に進み、CPU21はエラー処理を行う。すなわち、volume_rating_typeは、age_limited,CARA,RSACのいずれかの値を示すとされているので、そのいずれでもないと判定された場合には、エラー処理が実行される。
【0208】
次に、図50と図51のフローチャートを参照して、再生時のrating処理について説明する。ユーザが光ディスク装置にディスクを挿入すると、CPU21は他の処理とともに、ディスクに記録されたvolume_rating()の読み取り処理を行う。すなわち、ステップS131において、CPU21は光ヘッド2を制御し、光ディスク1を再生させる。再生されたデータは、光ヘッド2、RFおよび復調/変調回路3、ECC回路4、スイッチ5を介して読み出しチャネル用バッファ6に供給され、記憶される。記憶されたデータは、読み出しチャネル用バッファ6から読み出され、RAM24に記憶される。CPU21は、RAM24に記憶されたデータからvolume_rating()を読み取る。
【0209】
ステップS132において、CPU21はvolume_rating()中のvolume_rating_typeがage_limitedを表しているか否かを判定する。volume_rating_typeのbitがage_limitedを表しているならば、ステップS136に進む。ステップS136では、CPU21は、volume_rating()中のcountry_code_for_ratingとage_for_volume_ratingを読み取り、光ディスク装置に設定されているcountry codeに対応した、age_for_volume_ratingを選択する。ステップS137で、光ディスク装置に設定されている視聴可能年齢とage_for_volume_ratingを比較する。ステップS142で光ディスク装置に設定されている視聴可能年齢で、そのディスクが再生可能であるならば、ステップS146に進む。ユーザが光ディスク装置に対して設定した視聴可能年齢では、そのディスクを再生することができない場合には、ステップS145に進み、再生不許可のメッセージを表示して、再生処理を停止する。
【0210】
ステップS132において、volume_rating()中のvolume_rating_typeがage_limitedでないと判定された場合には、CPU21はステップS133に進む。
【0211】
ステップS133において、CPU21はvolume_rating()中のvolume_rating_typeがCARAを表しているか否かを判定する。volume_rating_typeのbitがCARAを表しているならば、ステップS138に進む。ステップS138では、volume_rating()中のCARA_categoryを読み取り、ステップS139で、光ディスク装置に設定されているCARAのカテゴリと比較をする。ステップS143で光ディスク装置に設定されているCARAのカテゴリで、そのディスクが再生可能であると判定されたならば、ステップS146に進む。ユーザが光ディスク装置に対して設定したCARAのカテゴリでは、そのディスクを再生することができない場合には、ステップS145に進み、再生不許可のメッセージを表示して、再生処理を停止する。
【0212】
ステップS133において、volume_rating()中のvolume_rating_typeがCARAでないと判定された場合には、CPU21はステップS134に進む。ステップS134において、CPU21はvolume_rating()中のvolume_rating_typeがRSACを表しているか否かを判定する。volume_rating_typeのbitがRSACを表しているならば、ステップS140に進む。ステップS140では、CPU21は、volume_rating()中のRSAC_categoryとRSAC_levelを読み取り、ステップS141で、光ディスク装置に設定されているRSACのカテゴリおよびレベルと比較をする。ステップS144で光ディスク装置に設定されているRSACのカテゴリおよびレベルで、そのディスクが再生可能であるならば、ステップS146に進む。ユーザが光ディスク装置に対して設定したRSACのカテゴリおよびレベルでは、そのディスクを再生することができない場合には、ステップS145に進み、再生不許可のメッセージを表示して、再生処理を停止する。
【0213】
ステップS146においては、図43と図44に示された処理と同様にvolume_play_protect_flagのチェックを行う。すなわち、再生制限機能として、play_protectに加えてratingも導入した場合には、図43と図44の処理の前にratingのチェックを行う。そして、ratingとplay_protectともに再生許可の判定が出たときにはじめて、指定のタイトルあるいはプログラムが再生可能となる。言い換えると、ratingによる再生許可判定処理とplay_protectによる再生許可判定処理のどちらか一方で再生禁止の判定がでたときには、指定のタイトルあるいはプログラムの再生は禁止される。
【0214】
ステップS146において、図43と図44と同様の処理で、再生が許可されているか、禁止されているかを判定する。その結果に基づき、ステップS147において、play_protectで再生が禁止されていればステップS145に進み、再生が許可されていれば、ステップS148に進む。
【0215】
ステップS148に進んだ段階で、指定されたタイトルあるいはプログラムは再生許可であると最終的に判定されたので、そのまま再生処理を続行する。
【0216】
以上においては、本発明を光ディスク装置に応用した場合を例として説明したが、本発明は、その他の記録媒体に情報を記録または再生する場合にも適用することが可能である。
【0217】
なお、上記したような処理を行うコンピュータプログラムをユーザに提供する提供媒体としては、磁気ディスク、CD-ROM、固体メモリなどの記録媒体の他、ネットワーク、衛星などの通信媒体を利用することができる。
【0218】
【発明の効果】
以上の如く、請求項1に記載の記録装置、請求項7に記載の記録方法、請求項8に記載の記録媒体、および請求項9に記載の記録媒体によれば、操作性を改善することが可能となる。
【0219】
請求項10に記載の記録再生装置、請求項11に記載の記録再生方法、および請求項12に記載の記録媒体によれば、データを記録または再生する装置において、操作性を改善することが可能となる。
【図面の簡単な説明】
【図1】ディレクトリの構造を説明する図である。
【図2】 VOLUME.TOCを説明する図である。
【図3】 volume_information()を説明する図である。
【図4】 volume_attribute()を説明する図である。
【図5】 resume()を説明する図である。
【図6】 volume_rating()を説明する図である。
【図7】 write_protect()を説明する図である。
【図8】 play_protect()を説明する図である。
【図9】 recording_timer()を説明する図である。
【図10】 text_block()を説明する図である。
【図11】 language_set()を説明する図である。
【図12】 text_item()を説明する図である。
【図13】 ALBUM.STRを説明する図である。
【図14】 album()を説明する図である。
【図15】 TITLE_###.VDRを説明する図である。
【図16】 title_info()を説明する図である。
【図17】 PROGRAM_$$$.PGIを説明する図である。
【図18】 program()を説明する図である。
【図19】 play_list()を説明する図である。
【図20】 play_item()を説明する図である。
【図21】 CHUNKGROUP_###.CGITを説明する図である。
【図22】 chunk_connection_info()を説明する図である。
【図23】 chunk_arrangement_info()を説明する図である。
【図24】 CHUNK_%%%%.ABSTを説明する図である。
【図25】本発明を適用した光ディスク装置の構成例を示すブロック図である。
【図26】ディレクトリの構造を説明する図である。
【図27】ディレクトリの論理構造を説明する図である。
【図28】 offsetを説明する図である。
【図29】ディレクトリの構造を説明する図である。
【図30】ディレクトリの構造を説明する図である。
【図31】ディレクトリの論理構造を説明する図である。
【図32】ディレクトリの構造を説明する図である。
【図33】ディレクトリの構造を説明する図である。
【図34】ディレクトリの論理構造を説明する図である。
【図35】ディレクトリの論理構造を説明する図である。
【図36】 volume_write_protect_levelを説明する図である。
【図37】 write_protect変更処理を説明するフローチャートである。
【図38】記録処理を説明するフローチャートである。
【図39】記録処理を説明するフローチャートである。
【図40】 volume_write_protect_levelの関係を説明する図である。
【図41】 volume_play_protect_flagを説明する図である。
【図42】 play_protect変更処理を説明するフローチャートである。
【図43】再生処理を説明するフローチャートである。
【図44】他の再生処理を説明するフローチャートである。
【図45】 volume_rating_typeを説明する図である。
【図46】 CARA_categoryを説明する図である。
【図47】 RSAC_categoryを説明する図である。
【図48】 RSAC_levelを説明する図である。
【図49】 volume_ratingの変更処理を説明するフローチャートである。
【図50】 volume_ratingの実行処理を説明するフローチャートである。
【図51】 volume_ratingの実行処理を説明するフローチャートである。
【符号の説明】
1 光ディスク, 2 光ヘッド, 3 RFおよび復調/変調回路, 4 ECC回路, 6 読み出しチャネル用バッファ, 7 デコーダ, 8 合成回路, 9 OSD制御回路, 10 エンコーダ, 11 書き込みチャネル用バッファ, 12 アドレス検出回路, 13 システムコントローラ, 14 入力部, 21 CPU, 22 ROM, 23,24 RAM
Claims (12)
- 少なくともタイトルの一部の領域を指定したカットを単位データとし、前記単位データを複数個記録媒体に記録させる記録装置において、
前記複数の単位データの中の、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定手段と、
データの記録が指令されたとき、そのデータによって上書きされるデータについての前記指定手段による指定を判定する判定手段と、
前記判定手段の判定結果に対応して、前記データの記録媒体への記録を制御する制御手段と
を備えることを特徴とする記録装置。 - 前記単位データは階層構造を構成し、前記指定手段は、前記階層構造のうち所定の階層より下位のレベルのデータの変更を可能とするように前記指定を行う
ことを特徴とする請求項1に記載の記録装置。 - 前記指定手段は、ファイル単位で前記指定を行う
ことを特徴とする請求項1に記載の記録装置。 - 前記指定手段は、前記上書きを禁止する有効期限をさらに指定する
ことを特徴とする請求項1に記載の記録装置。 - 前記制御手段は、前記上書きが禁止されているとき、入力されたパスワードに基づいて、前記データの前記記録媒体への記録を制御する
ことを特徴とする請求項1に記載の記録装置。 - 前記指定手段による指定を前記記録媒体に記録する記録手段を
さらに備えることを特徴とする請求項1に記載の記録装置。 - 少なくともタイトルの一部の領域を指定したカットを単位データとし、前記単位データを複数個記録媒体に記録させる記録装置の記録方法において、
前記複数の単位データの中の、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定ステップと、
データの記録が指令されたとき、そのデータによって上書きされるデータについての前記指定ステップによる指定を判定する判定ステップと、
前記判定ステップの判定結果に対応して、前記データの記録媒体への記録を制御する制御ステップと
を含むことを特徴とする記録方法。 - 少なくともタイトルの一部の領域を指定したカットを単位データとし、前記単位データを複数個記録媒体に記録させる記録装置に、
前記複数の単位データの中の、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定ステップと、
データの記録が指令されたとき、そのデータによって上書きされるデータについての前記指定ステップによる指定を判定する判定ステップと、
前記判定ステップの判定結果に対応して、前記データの記録媒体への記録を制御する制御ステップと
を含む処理を実行させるコンピュータが読みとり可能なプログラムを記録することを特徴とする記録媒体。 - 少なくともタイトルの一部の領域を指定したカットを単位データとし、前記単位データが複数個記録されている記録媒体において、
前記複数の単位データの中の、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定情報が記録されている
ことを特徴とする記録媒体。 - 少なくともタイトルの一部の領域を指定したカットを単位データとし、前記単位データを複数個記録媒体に記録または再生する記録再生装置において、
前記複数の単位データの中の、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定情報を前記記録媒体に記録する記録手段と、
記録が指令されたデータに対応する前記指定情報を前記記録媒体から再生する再生手段と、
前記再生手段により再生された前記指定情報を判定する判定手段と、
前記判定手段の判定結果に対応して、前記データの記録媒体への記録を制御する制御手段と
を備えることを特徴とする記録再生装置。 - 少なくともタイトルの一部の領域を指定したカットを単位データとし、前記単位データを複数個記録媒体に記録または再生する記録再生装置の記録再生方法において、
前記複数の単位データの中の、任意に指定された、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定情報を前記記録媒体に記録する記録ステップと、
記録が指令されたデータに対応する前記指定情報を前記記録媒体から再生する再生ステップと、
前記再生ステップの処理で再生された前記指定情報を判定する判定ステップと、
前記判定ステップでの判定結果に対応して、前記データの記録媒体への記録を制御する制御ステップと
を含むことを特徴とする記録再生方法。 - 少なくともタイトルの一部の領域を指定したカットを単位データとし、前記単位データを複数個記録媒体に記録または再生する記録再生装置に、
前記複数の単位データの中の、任意に指定された、所定の順番で再生される任意の数の前記単位データの組み合わせに対して、その上書きの禁止を指定する指定情報を前記記録媒体に記録する記録ステップと、
記録が指令されたデータに対応する前記指定情報を前記記録媒体から再生する再生ステップと、
前記再生ステップの処理で再生された前記指定情報を判定する判定ステップと、
前記判定ステップでの判定結果に対応して、前記データの記録媒体への記録を制御する制御ステップと
を含む処理を実行させるコンピュータが読みとり可能なプログラムを記録することを特徴とする記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23973098A JP4551508B2 (ja) | 1997-10-21 | 1998-08-26 | 記録装置および方法、記録再生装置および方法、並びに記録媒体 |
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9-288182 | 1997-10-21 | ||
JP28818297 | 1997-10-21 | ||
JP4685998 | 1998-02-27 | ||
JP10-46859 | 1998-04-21 | ||
JP10-114568 | 1998-04-24 | ||
JP11456698 | 1998-04-24 | ||
JP11456898 | 1998-04-24 | ||
JP10-114566 | 1998-04-24 | ||
JP23973098A JP4551508B2 (ja) | 1997-10-21 | 1998-08-26 | 記録装置および方法、記録再生装置および方法、並びに記録媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000011522A JP2000011522A (ja) | 2000-01-14 |
JP2000011522A5 JP2000011522A5 (ja) | 2005-09-08 |
JP4551508B2 true JP4551508B2 (ja) | 2010-09-29 |
Family
ID=27522579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23973098A Expired - Fee Related JP4551508B2 (ja) | 1997-10-21 | 1998-08-26 | 記録装置および方法、記録再生装置および方法、並びに記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4551508B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1686518A4 (en) | 2003-10-16 | 2008-12-17 | Sharp Kk | CONTENT USER CONTROL DEVICE, RECORDING DEVICE, PLAYING DEVICE, RECORDING MEDIUM AND CONTENT USER CONTROL METHOD |
KR101229493B1 (ko) * | 2005-10-26 | 2013-02-04 | 삼성전자주식회사 | 기록 방지 기능을 효과적으로 수행할 수 있는 정보 저장매체, 기록/재생 장치 및 기록/재생 방법 |
-
1998
- 1998-08-26 JP JP23973098A patent/JP4551508B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000011522A (ja) | 2000-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0911825B1 (en) | Recording apparatus, recording method, recording medium | |
KR100940155B1 (ko) | 정보 처리 장치, 기록 매체 및 데이터 구조, 재생 장치 및 방법과 프로그램 | |
EP0926670B1 (en) | Recording apparatus, recording method, playback apparatus, playback method, recording/playback apparatus, recording/playback method, presentation medium and recording medium | |
JP3997367B2 (ja) | 記録再生装置および方法、並びに記録媒体 | |
JPH11213627A (ja) | 記録予約情報を記録再生できる記録媒体と記録再生装置 | |
US6385152B1 (en) | Recording/playback apparatus, recording/playback method, presentation medium and recording medium | |
KR100565874B1 (ko) | 기록 재생 장치 및 방법, 제공 매체 및 기록 매체 | |
JP3787827B2 (ja) | 記録装置および方法、再生装置および方法、記録再生装置および方法、並びに提供媒体 | |
JP2000021130A (ja) | 情報処理装置および方法、記録媒体、並びに提供媒体 | |
JP4551508B2 (ja) | 記録装置および方法、記録再生装置および方法、並びに記録媒体 | |
US6339572B1 (en) | Recording apparatus, recording method, playback apparatus, playback method, recording/playback apparatus, recording/playback method, recording medium and presentation medium | |
JP4135109B2 (ja) | 記録装置および記録方法、並びに記録媒体 | |
JP4200451B2 (ja) | 情報処理装置、記録媒体およびデータ構造、再生装置および方法、並びにプログラム | |
US20010028786A1 (en) | Recording apparatus and method, reproducing apparatus and method, recording /reproducing apparatus and method, storage medium and program offering medium | |
JP2000137973A (ja) | 記録装置および方法、再生装置および方法、記録再生装置および方法、記録媒体、並びに提供媒体 | |
JP2000137940A (ja) | 記録装置および方法、再生装置および方法、記録再生装置および方法、記録媒体、並びに提供媒体 | |
JP2007250180A (ja) | 記録再生装置および方法、並びに記録媒体 | |
JP2000021132A (ja) | 情報処理装置および方法、情報記録媒体、並びに提供媒体 | |
JP2005018982A (ja) | 情報記録再生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050311 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070109 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070312 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070411 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070611 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20070622 |
|
A912 | Removal of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20070713 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100601 |
|
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: 20100712 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130716 Year of fee payment: 3 |
|
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 |