近年、映像や音声などのデータを記録して再生する記録再生装置として、パーソナルコンピュータ、DVDレコーダー、およびデジタルカメラなどが普及している。
これらの記録再生装置には、記録した映像や音声などを、編集機能により任意の区間をユーザが指定することで再生する、プレイリスト機能がある。以下、映像や音声などのストリームデータ(請求項では、ユーザデータとして表現)において、ユーザが任意に指定した区間のことを指定区間と呼ぶ。プレイリスト機能は、上記指定区間の位置情報を管理しており、複数のストリームデータの指定区間だけを再生することができる。
特許文献1は、記録した映像などを、編集機能により任意の区間を指定することで再生する、プレイリスト機能を実現するデータ記録装置が記載されている。
また、記録した映像などを、他の記録媒体に複製するダビング機能が公知である。ダビング機能は、記録したファイルをそのままダビングする方法と、映像や音声の品質を変更し、異なるデータサイズに変換してダビングする方法とがある。
上記プレイリスト機能で編集したストリームデータをダビングする場合、ダビング先の記録媒体に、記録するデータサイズ分の空き領域が存在するかを、事前に確認する必要がある。そのためには、プレイリスト機能により、再生対象となっているストリームデータの、指定区間の位置情報を取得し、該指定区間のデータサイズを取得しなければならない。
図11は、記録媒体に記録されているデータの、従来のデータ構造を示す模式図である。
尚、特許文献1におけるプレイアイテムは、図11ではプレイブロックとして記載している。
記録媒体に記録されている従来のデータ構造は、図11に示すように、論理管理情報800とデータ領域801とから構成されている。
論理管理情報800は、FAT(File Allocation Table)やUDF(Universal Disk Format)などのファイルシステムにより管理されている管理情報である。また、上記論理管理情報800には、データ領域801に記録されているファイルを、参照するための情報が格納されている。データ領域801は、論理管理情報800により管理されているファイルが記録されている領域である。
データ領域801には、記録されているプレイリストファイルの数を示すプレイリストファイル数824と、プレイリストファイル#1(802)、プレイリストファイル#2(803)、プレイリストファイル#3(804)と、動画、静止画、音声、テキストなどのストリームデータであるストリームファイル#1(805)、ストリームファイル#2(806)、ストリームファイル3(図示せず)との複数のファイルが記録されている。空き領域807は、何もデータが記録されていない領域である。
動画、静止画、音声などのデータは、データを再生するための管理情報であるデータ管理情報(図11では、プレイリストファイルに相当)とともに、データ領域801に記録される。
ここで、プレイリストファイル、プレイブロック、およびストリームファイルの関係を簡単に説明する。
映画やテレビ番組等の連続したストリームデータを記録媒体に記録する際、記録媒体には、ひとまとまりの連続したストリームデータである、ストリームファイルが記録媒体に記録される。このとき、該ストリームファイルをユーザが参照するための情報として、プレイリストファイルが生成される。このプレイリストファイル内には、対応する連続したストリームデータの管理情報である、プレイブロックが格納される。
ここで、記録媒体に記録されたストリームファイルに対して、編集機能などにより、ユーザが任意に特定の区間を指定することがある。具体的には、記録媒体に記録したテレビ番組の内、コマーシャル部分を除く番組内容だけを指定して、編集した場合などである。
このとき、編集した内容をユーザが参照および管理するためのプレイリストファイルが新たに作成される。このプレイリストファイル内には、編集によって指定された指定区間ごとにプレイブロックが格納される。このプレイブロックは、上記指定区間に対応する連続したストリームデータの管理情報を格納している。
つまり、編集によって指定された指定区間が複数区間ある場合には、対応する複数のプレイブロックが、上記プレイリストファイル内に格納される。
上記のように、記録媒体に記録された番組等のストリームファイルを、編集した場合に、該ストリームファイルを記録媒体に記録した時に作成されるプレイリストファイルとは別に、編集後の管理情報を示す、新たに作成されたプレイリストファイルは、バーチャルプレイリストと呼ばれる。
具体的には、編集前のプレイブロックを格納するプレイリストファイルと、編集後のプレイブロックを格納するプレイリストファイルとは、異なるものとなる。
これに対し、ストリームファイルを編集した場合に、編集前のプレイブロックを格納するプレイリストファイルに対して、編集前のプレイブロックを削除して、編集後のプレイブロックを記録する場合がある。つまり、編集により、新たにプレイリストファイルは作成されることはなく、編集前のプレイリストファイルを更新して、編集後のプレイリストファイルを生成する。このとき、編集後のプレイブロックを格納するプレイリストファイルは、リアルプレイリストと呼ばれる。
なお、録画等で、記録媒体にストリームファイルを新たに記録した場合、該ストリームファイルに対応するプレイリストファイルは、リアルプレイリストとして記録媒体に記録される。
以下では、上記バーチャルプレイリストと、リアルプレイリストとを、特に区別しない場合は、単にプレイリストファイルと称する。
次に、プレイリストファイル内のデータ構造を説明する。図11に示す、プレイリストファイル#3(804)を代表的なデータ構造として説明する。プレイリストファイル#3(804)には、データ管理情報に記録される管理情報(プレイブロック)を参照するためのヘッダー808と、ユーザにより指定された指定区間を示すプレイブロック#1(809)、プレイブロック#2(810)が格納されている。
ヘッダー808には、プレイリストファイルであることを示す識別子タイプ811と、各プレイリストファイルの独自の番号であるディスクナンバー825と、各プレイリストファイルのファイル名であるプレイリストファイルネーム826と、プレイリストファイル#3(804)に対応する、ユーザが記録したタイトルの文字情報であるタイトル情報812と、プレイリストファイル#3(804)に格納されているプレイブロックの数を示す、プレイブロック数813とが格納されている。
なお、上記プレイリストファイルネーム826は、該当するプレイリストファイルがバーチャルプレイリストかリアルプレイリストかを判別するための識別子の役割も担っている。
プレイブロック#1(809)は、プレイブロック#1(809)が参照するストリームファイル#1(805)を示すストリームファイルネーム1(814)と、ユーザにより指定された指定区間における、ストリームファイル内の時間軸上の開始点を示すインタイム1(815)と、上記指定区間における、ストリームファイル内の時間軸上の終了点を示すアウトタイム1(816)と、参照するストリームファイル#1(805)の先頭位置から、上記インタイム1(815)が示すデータ位置までの、データサイズを示す、オフセット値であるオフセット817と、プレイブロック#1(809)が参照するストリームファイル#1(805)の記録品質レートを示すデータレート818とが格納されている。
上記オフセット値はバイト数であってもよいし、パケット単位のサイズであってもよい。
同様に、プレイブロック#2(810)は、参照するストリームファイルを示すストリームファイルネーム2(819)と、プレイリスト機能により指定された指定区間における、ストリームファイル内の時間軸上の開始点を示すインタイム2(820)と、上記指定区間における、ストリームファイル内の時間軸上の終了点を示すアウトタイム2(821)と、参照するストリームファイル2(806)の先頭位置から、上記指定区間内における、インタイム2(820)が示すデータ位置までの、データサイズを示すオフセット値であるオフセット822と、プレイブロック#2(810)が参照するストリームファイル#2(806)の記録品質レートを示すデータレート823とが格納されている。
上記オフセット値はバイト数であってもよいし、パケット単位のサイズであってもよい。
次に、上記プレイリスト機能で作成したデータに対する、ダビング処理を述べる。
図12〜図14は、図11に示したデータ構造に対する、ダビング処理の工程を示すフローチャート図である。
図12は、ダビング処理開始から、ダビング処理終了までにおける、ダビングの元データのデータサイズ取得工程と、ダビングの元データのデータサイズと、ダビング先の空き領域との比較工程とを示す、メインのフローチャート図である。
ダビングの元データを取得するためには、該ダビングの元データのデータ管理情報であるプレイリストファイル(図11ではプレイリストファイル#3(804))を、ダビングを行う記録再生装置のメモリに読み込む(ステップ901:以下S901のように略称する)。
次に、該プレイリストファイル#3(804)内のヘッダー811に格納されているプレイブロック数813を取得する(S902)。
ここで、取得したプレイブロック数813に対応するプレイブロックは、プレイブロック#1(809)、プレイブロック#2(810)となる。
次に、各プレイブロックに対応するストリームデータ(図11では、ストリームファイル#1(805)の一部と、ストリームファイル#2(806)の一部)のデータサイズを求める(S904)。
ここで、各プレイブロックに対応するストリームデータのデータサイズを求めるためには、各プレイブロックに対応する指定区間のデータ先頭位置と、データ終端位置とを検出する必要がある。
図11のデータ構造を用いて説明すると、まず、プレイブロック#1(809)に格納されるインタイム1(815)より、該プレイブロックで指定する指定区間の先頭位置を示す、イン点のストリーム位置情報を取得する(S905)。
次に、プレイブロック#1(809)に格納されるアウトタイム1(816)より、プレイブロック#1(809)で指定する指定区間の終端位置を示す、アウト点のストリーム位置情報を取得する(S906)。
上記の動作を、プレイブロック#2(810)に対しても同様に行う。
まず、プレイブロック#2(810)に格納されるインタイム2(820)より、該プレイブロックで指定する指定区間の先頭位置を示す、イン点のストリーム位置情報を取得する(S905)。
次に、プレイブロック#2(810)に格納されるアウトタイム2(821)より、プレイブロック#2(810)で指定する指定区間の終端位置を示す、アウト点のストリーム位置情報を取得する(S906)
上記プレイブロック内の情報から取得したイン点、アウト点のストリーム位置情報より、該プレイブロックで指定する指定区間内のストリームデータのデータサイズを演算する(S907)。
プレイリストファイル#3(804)に格納されている、すべてのプレイブロックに対応する、指定区間内のデータのデータサイズを求め、それらの各データサイズを加算する。
上記で加算されたデータサイズの合計値が、プレイリスト#3(804)に対応する、ダビングの元データのデータサイズとなる(S908)。
次に、ダビング先となる記録媒体の空き領域サイズを取得する(S909)。S908で合計して求められた、ダビングの元データのデータサイズと、S909で取得したダビング先の空き領域サイズとを比較する(S910)。
ここで、上記ダビングの元データのデータサイズよりも、ダビング先となる記録媒体の空き領域サイズのほうが大きいか同じであれば、上記空き領域にダビングの元データを記録する、ダビング処理(S911)を行う。
一方、上記ダビングの元データのデータサイズよりも、ダビング先となる記録媒体の空き領域サイズのほうが小さければ、ダビングは行わずにエラー処理を行う(S912)。
上記エラー処理は、ダビングを行うユーザに対して、ダビングが不可である旨を通知することなどである。
図12はプレイブロック内に、指定区間のストリームデータの位置情報を、格納している場合の処理手順である。
しかしながら、特許文献1に示すように、プレイブロックにストリーム管理ファイルを格納し、ストリーム管理ファイル内にストリーム位置情報を格納している構成も存在する。このような場合には、イン点またはアウト点のストリーム位置情報の取得処理はより複雑になる。
以下に、プレイブロックに、上記ストリーム管理ファイルを格納している場合の、ストリーム位置情報の取得処理を示す。
図13はイン点のストリーム位置情報の取得処理を示すフローチャート図である。まず、ストリーム管理ファイルを、記録再生装置内のメモリに読み込む(S921)。次に、ストリーム管理ファイルに格納されているイン点のストリーム情報を取得する(S922)。上記イン点のストリーム情報は、対応するストリームデータの時間軸上の開始点を示す。
したがって、S922のストリーム情報より、イン点のストリーム位置情報を取得する(S923)。
図14はアウト点のストリーム位置情報取得処理であり、イン点のストリーム位置情報取得処理と同様の処理となる。
まず、ストリーム管理ファイルを、記録再生装置内のメモリに読み込む(S931)。次に、ストリーム管理ファイルに格納されているアウト点のストリーム情報を取得する(S922)。上記アウト点のストリーム情報は、対応するストリームデータの時間軸上の終了点を示す。
したがって、S933のストリーム情報より、アウト点のストリーム位置情報を取得する(S933)。
図13、図14に示す各ステップの処理を行うことで、イン点・アウト点のストリーム位置情報を取得することができる。
なお、上記インタイム・アウトタイムの時間情報より、上記ストリーム位置情報を取得する詳細な方法については、特許文献1を参照。
WO2002−075739号公報(2002年9月26日国際公開)
以下、図面を参照して、本発明に係るデータ構造、記録媒体、データ管理方法、および記録再生装置の実施の形態を説明する。
本発明の実施の形態に係る記録再生装置の構成を図7に示す。
上記記録再生装置は、オーディオ信号が入力されるオーディオ入力部750と、ビデオ信号が入力されるビデオ入力部751とを備える。ここで、上記各信号はアナログまたはデジタル信号であり、アナログ信号の場合には、オーディオ入力部750およびビデオ入力部751が、デジタル信号への変換を行う。
そして、オーディオ入力部750およびビデオ入力部751からのデジタル信号は、符号化・復号処理部752により、MPEG2などの符号化されたビデオデータおよびオーディオデータに変換する。圧縮する形式は、上記MPEG2のほかにMPEG1やMPEG4であってもよいし、入力された信号がビデオデータのみの場合には、JPEG(Joint Photographic Expert Group)、JPEG2000であってもよい。
また、符号化・復号処理部752により圧縮された信号は、誤り訂正処理部753により誤り訂正信号が付加され、変・復調部754(特許請求の範囲に記載の記録再生部に相当)に送られる。次に変・復調部754は、上記訂正信号が付加された信号を変調し、記録媒体755に対して、前記変調されたビデオ、オーディオデータを記録する。
また、記録媒体755がディスクメディアの場合には、制御マイコン757の指示によって、サーボ処理部756が上記ディスクメディアに対する記録動作を制御している。なお、制御マイコン757は、図8に示すように、システムマイコン758内のディスク制御部768により制御されている。
次に、ユーザからの指示により、記録されたデータを再生または表示する構成について、同図を用いて説明する。
まず、ユーザからの指示が入力部764に入力され、システムマイコン758内の命令制御部769において、入力の指示を処理する。ディスク制御部768は、制御マイコン757に再生の指示を行う。次に、制御マイコン757の指示によって、サーボ処理部756は、記録媒体755の再生のため、ディスクメディアに対する再生動作の制御を行う。
記録媒体755から読み出されたデータは、変・復調部754を経て復調される。復調されたデータは、誤り訂正処理部753により誤り訂正を行い、符号化・復号処理部752により復号される。
復号されたデータのうち、オーディオデータは、オーディオ出力部762によりオーディオ信号に変換され出力される。
また、復号されたデータのうち、ビデオデータは、インデックス画面であるOSD(On−Screen Display)との合成を行うため、ビデオ合成部761によりビデオデータとOSDデータとの合成処理、あるいは切り換え処理を行い、ビデオ出力部763によりビデオ信号として出力される。
上記インデックス画面は、システムマイコン758内のユーザデータ制御部767により処理される。ユーザデータ制御部767の処理により作成された、インデックス情報やインデックス画像(サムネイル)データは、メモリ759に格納される。メモリ759に格納されるインデックス情報やインデックス画像データは、OSD処理部760により、ビデオ表示画面へ変換された後、符号化・復号処理部752で復号されたビデオデータと合成される。この合成されたビデオデータは、ビデオ出力部763によりビデオ信号として出力される。
ビデオ合成部761は、記録したビデオデータとインデックス画面とを同時に表示する場合に、ビデオデータとインデックス画面とを合成する機能を有するブロックである。また、ビデオ合成部761は、ビデオデータとインデックス画面との、どちらか一方の画像を出力する機能も有する。すなわち、入力部764からのユーザの指示により、システムマイコン758内の命令制御部769が切り換え制御を行うことにより、指定された画面を出力することが可能となる。
上記構成による記録媒体は、光ディスク、メモリ、ハードディスクなどの書き込み可能な記録媒体、CDやDVD−Videoなどのような読み出し専用記録媒体、CD−RやDVD−Rなどのような一回のみ書き込み可能な記録媒体のいずれであってもよい。
ここで、本発明に係る記録媒体に記録されたデータは、記録した映像や音声(以下、ストリームデータとする)に対して、ユーザが任意の区間を指定することで再生する、プレイリスト機能を有する記録再生装置によって、記録されている。
また、上記記録媒体には、ユーザが任意に指定した区間(以下、指定区間と呼ぶ)に対応するストリームデータを管理する、データ管理情報も記録される。このデータ管理情報は、上記指定区間に対応するストリームデータを再生するときに、利用される。
また、データ管理情報は、システムマイコン758内の管理情報制御部765により、プレイリストファイル(後述)としてディスク755に記録される。
記録媒体755に記録したユーザデータを編集する場合には、システムマイコン758内の命令制御部769により、記録されている上記プレイリストファイルをメモリ759に読み込む。
該プレイリストファイルに格納される、該プレイリストファイルに対応するストリームデータの時間情報と、データ領域におけるユーザデータのデータ位置情報とを参照して、記録再生装置はディスク755からユーザデータを取得する。
プレイリストファイルに格納される各情報については、後述する。
ここで、ユーザの入力部764からの指示により、ストリームデータを編集するときに、新たにプレイリストファイルを作成し、編集対象のストリームデータの時間と、ユーザデータのデータ位置とを、その作成したプレイリストファイルに格納する。その後、編集によって指定された指定区間に対応する、ユーザデータを管理する管理情報を、該プレイリストファイル内に格納する。
上記編集後の管理情報を格納するプレイリストファイルを、ディスク755に記録することで、ストリームデータの編集が完了する。また、このとき編集されたストリームデータのファイルを、ディスク755に記録してもよい。
上記でユーザデータを録画または編集した場合に生成される、映像や音声を録画したデータを管理するプレイリストファイルと、映像や音声などのストリームデータとを、記録媒体に記録した際のデータ構造を図5に示す。
記録媒体に記録されているデータは、図5に示すように、論理管理情報700とデータ領域701とにより構成されている。
論理管理情報700は、FAT(File Allocation Table)やUDF(Universal Disk Format)などのファイルシステムにより管理されている管理情報である。また、上記論理管理情報700には、データ領域701に記録されているファイルを参照するための情報が格納されている。データ領域701は、論理管理情報700により管理されているファイルが記録される領域である。
ここで、同図に示すデータ構造においては、データ領域701には、記録されているプレイリストファイルの数を示すプレイリストファイル数724と、データ領域701に記録さているストリームデータを管理する、プレイリストファイル#1(702)、プレイリストファイル#2(703)、プレイリストファイル#3(704)とが記録されている。
さらに、新たに映像、静止画、音声、テキストなどのストリームデータを記録媒体755(図7を参照)に記録した場合は、プレイリストファイルは新たに生成され、記録媒体755に記録される。また、データ領域701に記録されるストリームファイルを編集した場合に、プレイリストファイルは新たに生成され、記録媒体755に記録される。
上記のように、編集によって新たに生成されたプレイリストファイルは、バーチャルプレイリストと呼ばれる。
これに対し、ストリームファイルを編集した場合に、編集前のプレイリストファイルの管理情報を削除し、編集後の管理情報を該プレイリストファイルに記録する場合もある。
上記のように、編集によって新たなプレイリストファイルを生成するのではなく、編集前のプレイリストファイルを更新して生成されたプレイリストファイルは、リアルプレイリストと呼ばれる。
なお、録画等で、記録媒体755にストリームファイルを新たに記録した場合、該ストリームファイルに対応するプレイリストファイルは、リアルプレイリストとして記録媒体755に記録される。
以下では、上記バーチャルプレイリストと、リアルプレイリストとを、特に区別しない場合は、単にプレイリストファイルと称する。
上記ストリームファイルとは、連続したひとかたまりストリームデータである。
また、動画、静止画、音声、テキストなどのストリームデータであるストリームファイル#1(705)、ストリームファイル#2(706)、ストリームファイル#3(図示せず)が記録媒体755に記録されている。空き領域707は、データが記録されていない領域である。
ここでも同様に、新たにストリームデータを記録媒体755に記録することにより、データ領域701に、新たなストリームファイルが記録される。
動画、静止画、音声などのストリームデータは、ストリームデータを再生するための管理情報であるデータ管理情報(図5では、プレイリストファイルに相当)とともに、データ領域701に記録される。
同図は、ストリームファイル#1(705)の一部のデータと、ストリームファイル#2(706)の一部のデータとが、前述のユーザ指示による編集処理により、繋ぎ合わされている様子を示している。
また、この編集された状態を管理する情報として、プレイリストファイル#3(704)がデータ領域701に記録されている状態も示している。
プレイリストファイル#3(704)には、データ管理情報(プレイリストファイル)に格納される管理情報(プレイブロック)を参照するための情報であるヘッダー708と、動画を再生するための動画管理情報であり、且つ、上記編集処理により指定されたストリームファイル#1(705)に対する指定区間のストリームデータの管理情報であるプレイブロック#1(709)と、上記編集処理により指定されたストリームファイル#2(706)に対する指定区間のストリームデータの管理情報であるプレイブロック#2(710)とが格納される。
上記ヘッダー708は、プレイリストファイル#3(704)がプレイリストファイルであることを示す識別子であるタイプ711と、プレイリストファイル#3(704)の独自の番号であるディスクナンバー725と、プレイリストファイル#3(704)のファイル名であるプレイリストファイルネーム726と、該プレイリストファイル#3(704)が管理するストリームデータのタイトルの文字情報であるタイトル情報712と、プレイリストファイル#3(704)に対応するストリームデータのデータサイズであるオールデータサイズ727と、プレイリストファイル#3(704)に格納されているプレイブロックの数を示すプレイブロック数713とを格納している。
ここで、プレイリストファイル#3(704)に格納されるプレイブロック#1(709)には、編集処理によって指定された指定区間における、ストリームデータ(ストリームファイル#1(705)の一部分)に対しての管理情報が格納されている。
詳細には、プレイブロック#1(709)は、参照するストリームファイル(同図はで、ストリームファイル#1(705))を示すストリームファイルネーム1(714)と、ストリームファイル#1(705)内の上記指定区間に対応するストリームデータの開始時刻を示すインタイム1(715)と、ストリームファイル#1(705)内の上記指定区間に対応するストリームデータの終了時刻を示すアウトタイム1(716)とを格納している。
さらに、ストリームファイル#1(705)の先頭位置から、上記指定区間に対応するストリームデータの先頭位置までのデータサイズを示す、オフセット値であるオフセット717も、プレイブロック#1(709)は格納している。上記オフセット値はバイト数であってもよいし、パケット単位のサイズであってもよい。
さらに、プレイブロック#1(709)が参照する、ストリームファイル#1(705)の記録品質レートを示すデータレート728も、プレイブロック#1(709)は格納している。
また、プレイブロック#1(709)には、本発明の重要なポイントとして、データサイズ1(718)が格納されている。上記データサイズ1(718)には、プレイブロック#1(709)に対応する上記指定区間におけるストリームデータのデータサイズの値が格納される。
つまり、データサイズ1(718)に格納される情報は、編集処理によって指定された指定区間におけるストリームファイル#1(705)の一部分のデータサイズである。また、データサイズ1(718)に格納される値は、バイト数であってもよいし、パケット単位のサイズであってもよい。
同様に、プレイリストファイル#3(704)に格納されるプレイブロック#2(710)には、編集処理によって指定された指定区間における、ストリームデータ(ストリームファイル#2(706)の一部分)に対しての管理情報が格納されている。
詳細には、プレイブロック#2(710)は、参照するストリームファイル(同図では、ストリームファイル#2(706))を示すストリームファイルネーム2(719)と、ストリームファイル#2(706)内の上記指定区間に対応するストリームデータの開始時刻を示すインタイム2(720)と、ストリームファイル#2(706)内の上記指定区間に対応するストリームデータの終了時刻を示すアウトタイム2(721)とを格納している。
さらに、ストリームファイル#2の先頭位置から、上記指定区間に対応するストリームデータの先頭位置までのデータサイズを示す、オフセット値であるオフセット722も、プレイブロック#2(710)は格納している。上記オフセット値はバイト数であってもよいし、パケット単位のサイズであってもよい。
さらに、プレイブロック#2(710)が参照する、ストリームファイル#2(706)の記録品質レートを示すデータレート729も、プレイブロック#2(710)は格納している。
また、プレイブロック#2(710)には、データサイズ2(723)が格納されている。上記データサイズ2(723)には、プレイブロック#2(710)に対応する上記指定区間におけるストリームデータのデータサイズの値が格納される。
つまり、データサイズ2(723)に格納される情報は、編集処理によって指定された指定区間におけるストリームファイル#2(706)の一部分のデータサイズである。また、データサイズ2(723)に格納される値は、バイト数であってもよいし、パケット単位のサイズであってもよい。
次に、録画または編集した場合に生成される、映像や音声であるストリームデータを管理するプレイリストファイルと、映像や音声などのストリームデータとの関係を、図1〜図3に示す。
図1は、プレイリストファイルとストリームファイルの最も一般的な構造を示したものである。
番組などを録画した場合には、ストリームデータが、ストリームファイル1(111)として、記録媒体に記録される。また、ストリームファイル1(111)を記録媒体に記録した際に、ストリームファイル1(111)の管理情報を格納するプレイリストファイル1(100)も記録媒体に記録される。
このとき、ストリームファイル1(111)は連続したPresentation time(PST)区間であるため、言い換えれば、連続して録画されたストリームデータであるため、ストリームファイル1(111)を管理するプレイリストファイル1(100)には、1つのプレイブロック1(101)が構築される。
上記ストリームファイル1(111)をダビングする際には、ストリームファイル1(111)のデータサイズである、データサイズ1(121)をプレイブロック1(101)から取得し、ダビング先の記録媒体に、上記データサイズ1(121)分の空き容量があるかを判断しなければならない。
プレイブロック(同図では、プレイブロック1(101))は、連続したストリームデータごとに、プレイリストファイル(同図では、プレイリストファイル1(100))内に構築される。
よって、1つのストリームファイルを、編集などにより、2つの指定区間に分けた場合は、各指定区間に対応する連続したストリームデータごとに、2つのプレイブロックが構築される。
上記のように、1つのストリームファイルを、編集などにより、2つの指定区間に分けた場合における、プレイリストファイルとストリームファイルとの関係を、図2によって説明する。
図2は、録画途中に録画を一時停止した場合や、編集などにより、録画した番組の中間のストリームデータを削除した場合の、プレイリストファイルとストリームファイルとの、最も一般的なデータ構造を示したものである。
番組などを録画した場合には、ストリームファイルであるストリームファイル2(211)が記録媒体に記録される。ここで、編集操作などによりストリームファイル2の一部分のデータを削除した場合、プレイリストファイル2(200)には、削除されたデータ以外の連続した区間を示すプレイブロック#1(201)と、プレイブロック#2(202)とが構築される。
なお、編集後の管理情報であるプレイブロックを格納するプレイリストファイル2(200)が、ストリームファイル2を記録媒体に記録した際に生成された、言い換えれば、編集前のストリームファイル2に対応するプレイリストファイルとは異なる、新たに生成されたプレイリストファイルである場合、プレイリストファイル2(200)は、バーチャルプレイリストとなる。
これに対し、プレイリストファイル2(220)が、編集前のストリームファイル2に対応するプレイリストファイルを、更新して生成されたプレイリストファイルである場合、プレイリストファイル2(200)は、リアルプレイリストとなる。
上記のように、中間部分を削除されたストリームファイル2を、他の記録媒体にダビングする際には、編集後のストリームファイル2(211)のデータサイズである、サイズ2−1(221)およびサイズ2−2(222)を、プレイブロック#1(201)およびプレイブロック#2(202)のそれぞれから取得し、取得したサイズの合計を計算して求める。その後、ダビング先の記録媒体に、この上記データサイズの合計分の空き容量があるかを判断しなければならない。
図3は、録画した複数の番組の一部を、編集機能などにより連結した場合の、プレイリストファイルとストリームファイルとの、最も一般的な構造を示したものである。
2つの番組などを録画した場合には、2つのストリームファイルであるストリームファイル1(311)およびストリームファイル2(312)が記録媒体に記録される。
ここで、編集機能などにより、上記2つのストリームファイルのそれぞれに対して、指定区間を指定し、該指定区間のストリームデータを連結した場合、編集により連結されたストリームデータに対応するプレイリストファイル3(300)が生成される。
さらに、編集などにより連結された、上記2つのストリームデータ各々の管理情報であるプレイブロック#1(301)と、プレイブロック#2(302)とが、プレイリストファイル3(300)内に構築される。
上記プレイブロック#1(301)は、ストリームファイル1(311)における、上記指定区間に対応する管理情報である。また、プレイブロック#2(302)は、ストリームファイル2(312)における、上記指定区間に対応する管理情報である。
ここで、編集された上記ストリームデータ、言い換えれば、プレイリストファイル3(300)が管理をするストリームデータを、ダビングする際には、以下の処理が必要となる。
まず、プレイリストファイル3(300)が管理をするストリームデータのデータサイズを求める。そのためには、ストリームファイル1(311)における、上記指定区間に対応するストリームデータのデータサイズであるサイズ3(321)をプレイブロック#1(301)から取得するとともに、ストリームファイル2(312)における、上記指定区間に対応するストリームデータのデータサイズであるサイズ4(322)をプレイブロック#2(302)から取得する必要がある。
上記2つのサイズ3(321)とサイズ4(322)とを合計したデータサイズは、プレイリストファイル3(300)が管理するストリームデータのデータサイズとなる。
プレイリストファイル3(300)が管理するストリームデータのデータサイズと、ダビング先となる記録媒体の空き容量サイズを比較し、ダビングが可能であるかを判断しなければならない。
以上の説明から明らかなように、本発明に係るデータ構造によれば、各プレイブロックに対応するストリームデータのデータサイズを、ストリームデータの記録時または編集処理時において、各プレイブロック内に個々に格納している。
したがって、ダビング開始をユーザから指示された場合、各プレイブロックに対応するストリームデータのデータサイズは、該プレイブロックを参照することで、容易に取得することがきる。よって、ダビング処理を速やかに行うことが可能となる。
以下に、図9を参照して、編集処理開始から、編集処理終了までの間に、ストリームデータのデータサイズをプレイブロックに格納する処理を述べる。
ユーザからの指示により編集処理が開始する。ユーザは、記録媒体に記録される複数のストリームファイルから、任意のストリームファイルを選択し、編集を行う。
このとき、編集機能によって、ユーザは、選択したストリームファイルの指定区間を指定する(ステップ1;以下S1のように略記する)。さらに、ユーザが選択するストリームファイルおよび、指定する指定区間は、複数であってもよい。
編集処理によって生成されるストリームデータを管理するために、新しくプレイリストファイルが管理情報制御部765(図8を参照)によって生成される(S2)。
編集処理によって指定された、指定区間に対応するストリームデータに対して、プレイブロックが管理情報制御部765によって生成される(S3)。
このプレイブロック内には、上記指定区間に対応するストリームデータの管理情報が、管理情報制御部765によって格納される(S4)。
上記管理情報とは、編集されたストリームデータが格納されているストリームファイルのストリームファイルネーム(図5における、ストリームファイルネーム1(714)に相当)、該ストリームデータの開始時刻を示す情報(図5における、インタイム1(715)に相当)、該ストリームデータの終了時刻を示す情報(図5における、アウトタイム1(716)に相当)、および該ストリームファイルの先頭位置から該ストリームデータの先頭位置までのデータサイズを示す情報(図5における、オフセット717に相当)である。
次に、ストリームデータについて、ダビングが許可されたデータかどうかを、ユーザデータ制御部767(図8を参照)が判別する(S5)。ここで、編集したストリームデータが、ダビングを許可されたデータであるならば、処理はS6に移行する。一方、編集したストリームデータが、ダビングを禁止されたデータであるならば、処理はS10に移行する。
ここで、上記のダビングが許可されたストリームデータであるかの判断は、編集時におけるユーザからの指示であってもよいし、編集前のストリームデータがダビング禁止のデータであるか否かで判断してもよい。
S5で、指定区間に対応するストリームデータが、ダビングを許可されたデータであると判断した場合、S4でプレイブロックに格納された、指定区間に対応するストリームデータの開始時刻の情報(イン点;図5における、インタイム1(715)に相当)から、該ストリームデータの先頭位置のデータ位置情報を、管理情報制御部765が取得する(S6)。
次に、S4でプレイブロックに格納された、指定区間に対応するストリームデータの終了時刻の情報(アウト点:図5における、アウトタイム1(716)に相当)から、該ストリームデータの終端位置のデータ位置情報を、管理情報制御部765が取得する(S7)。
上記S6およびS7で取得した、指定区間に対応するストリームデータの先頭位置および終端位置の2つのデータ位置情報から、該ストリームデータのデータサイズを、データサイズ算出部766(図8を参照)が算出する(S8:特許請求の範囲に記載の第1のステップに相当)。
S8で算出した上記データサイズを、管理情報制御部765が、対応するプレイブロック内に格納する(S9:特許請求の範囲に記載の第2のステップに相当)。
S5で指定区間に対応するストリームデータが、ダビングを禁止されたデータであると判断した場合、S9でデータサイズを格納したプレイブロック内の領域に、データサイズが無効であることを示す情報を、管理情報制御部765が格納する(S10)。ここで、データサイズが無効であることを示す情報を、ゼロとすることもある。
上記S3〜S10を、S1でユーザが指定した指定区間の数だけ繰り返す。
次に、それぞれの指定区間に対応する各プレイブロックを、S1で生成したプレイリストファイルに、管理情報制御部765が格納する(S11)。
上記S11のプレイリストファイルは、変・復調部754によって、記録媒体に記録される(S12:特許請求の範囲に記載の、第3のステップに相当)。
これにより、編集されたストリームデータを管理する、プレイリストファイルを記録媒体に記録することとなる。
次に、図4を参照して、プレイリストファイルに格納される情報について述べる。
図4は、本実施の形態における、プレイリストファイルに格納されている、管理情報の構造を示す表である。
タイプは、プレイリストファイルであることを示す識別子を格納している。このタイプは、最大16ビットの情報で表現される。
ディスクナンバーは、記録再生装置が個々のプレイリストファイルを認識するために用いる、プレイリストファイルの独自の番号を格納している。このディスクナンバーは、最大32ビットの情報で表現される。
プレイリストファイルネームは、記録媒体に記録されている各プレイリストファイルのファイル名を格納している。このプレイリストファイルネームは、最大8×10ビットの情報で表現される。
上記プレイリストファイルのファイル名は、プレイリストファイルがバーチャルプレイリストかリアルプレイリストかを判別するための識別子の役割も担う。
タイトル情報は、番組情報やユーザが指定したタイトル名などを格納している。このタイトル情報は、最大256ビットの情報で表現される。
オールデータサイズは、各プレイブロックに対応する複数の指定区間のデータサイズを合算した値を格納している。このオールデータサイズは、最大64ビットの情報で表現される。
プレイブロック数は、プレイリストファイル内のプレイブロックの数を格納している。このプレイブロック数は、最大8ビットの情報で表現される。
ストリームファイルネームには、プレイリストファイル内の各プレイブロックが参照するストリームファイルのファイル名を格納している。このストリームファイルネームは、最大8×10ビットの情報で表現される。
インタイムは、プレイリストファイル内の各プレイブロックに対応する、ストリームデータの時間情報(例えばPresentation timeなど)である開始時刻の情報を格納している。このインタイムは、最大32ビットの情報で表現される。
アウトタイムは、プレイリストファイル内のプレイブロックに対応する、ストリームデータの時間情報(例えばPresentation timeなど)である終了時刻の情報を格納している。このアウトタイムは、最大32ビットの情報で表現される。
オフセットは、プレイリストファイル内のプレイブロックが参照するストリームファイル先頭位置から、該プレイブロックに対応するストリームデータの先頭位置までのデータサイズを格納している。このオフセットは、最大32ビットの情報で表現される。
データレートは、プレイブロックが参照するストリームファイルの記録品質レートを格納している。このデータレートは、最大32ビットの情報で表現される。
データサイズは、プレイリストファイル内のプレイブロックに対応する、ストリームデータのデータサイズを格納している。このデータサイズは、最大32ビットの情報で表現される。
図6は、複数のプレイリストファイルが記録媒体に記録されている場合の、管理情報の構造を示す表である。
プレイリストファイル数は、記録媒体に記録されている、プレイリストファイルの数を格納している。このプレイリストファイル数は、最大8ビットの情報で表現される。
タイプは、プレイリストファイルであることを示す識別子を格納している。このタイプは、最大16ビットの情報で表現される。
ディスクナンバーは、記録再生装置が個々のプレイリストファイルを認識するために用いる、プレイリストファイルの独自の番号を格納している。このディスクナンバーは、最大32ビットの情報で表現される。
プレイリストファイルネームは、記録媒体に記録されている各プレイリストファイルのファイル名を格納している。このプレイリストファイルネームは、最大8×10ビットの情報で表現される。
上記プレイリストファイルのファイル名は、プレイリストファイルがバーチャルプレイリストかリアルプレイリストかを判別するための識別子の役割も担う。
タイトル情報は、番組情報やユーザが指定したタイトル名などを格納している。このタイトル情報は、最大256ビットの情報で表現される。
オールデータサイズは、各プレイブロックに対応する複数の指定区間のデータサイズを合算した値を格納している。このオールデータサイズは、最大64ビットの情報で表現される。
プレイブロック数は、プレイリストファイル内のプレイブロックの数を格納している。このプレイブロック数は最大8ビットの情報で表現される。
ストリームファイルネームには、プレイリストファイル内の各プレイブロックが参照するストリームファイルのファイル名を格納している。このストリームファイルネームは、最大8×10ビットの情報で表現される。
インタイムは、プレイリストファイル内の各プレイブロックに対応する、ストリームデータの時間情報(例えばPresentation timeなど)である開始時刻の情報を格納している。このインタイムは、最大32ビットの情報で表現される。
アウトタイムは、プレイリストファイル内のプレイブロックに対応する、ストリームデータの時間情報(例えばPresentation timeなど)である終了時刻の情報を格納している。このアウトタイムは、最大32ビットの情報で表現される。
オフセットは、プレイリストファイル内のプレイブロックが参照するストリームファイル先頭位置から、該プレイブロックに対応するストリームデータの先頭位置までのデータサイズを格納している。このオフセットは、最大32ビットの情報で表現される。
データレートは、プレイブロックが参照するストリームファイルの記録品質レートを格納している。このデータレートは、最大32ビットの情報で表現される。
データサイズは、プレイリストファイル内のプレイブロックに対応する、ストリームデータのデータサイズを格納している。このデータサイズは、最大32ビットの情報で表現される。
図10は、本発明に係る、ダビング処理開始からダビング処理終了までにおける、ダビングの元データのデータサイズ取得処理と、ダビングの元データのデータサイズとダビング先の空き領域との比較処理とを示す、フローチャート図である。
記録媒体に記録されたストリームファイルをダビングするにあたっては、ダビングが可能かどうかを判断するため、ダビングの元データのデータサイズと、ダビング先となる記録媒体の空き領域の容量とを比較する必要がある。
まず、ダビングの元データのデータサイズを取得するために、記録媒体755からすでに取得しておいたダビングの元データに対応するプレイリストファイルを、ダビングを行う記録再生装置のメモリ759に、命令制御部769が読み込む(S941)。
次に、S941でメモリに読み込んだプレイリストファイルを参照して、該プレイリストファイル内のヘッダーに格納されているプレイブロック数を、管理情報制御部765が取得する(S942)。S942で取得したプレイブロック数のプレイブロックに対し、該プレイブロックに対応するストリームデータのデータサイズを、管理情報制御部765が取得する(S944)。
ここで、上記データサイズを取得するためには、上記ストリームデータに対応するプレイブロックを参照することで、プレイブロック内に格納されている、ストリームデータのデータサイズを取得することができる(S945)。これは、各プレイブロックには、編集または記録媒体への記録の際に、予め対応するストリームデータのデータサイズを格納しているためである。
次に、S945で取得したデータサイズが、データサイズが無効であることを示す不定データ、またはゼロであるかを、管理情報制御部765が判定する(S946)。ここで、該データサイズが、不定データまたはゼロであった場合は、S947に処理を進める。
S946で、データサイズが不定データまたはゼロであった場合とは、該データサイズに対応するストリームデータが、ダビング禁止となるデータであることになる。したがって、ダビングが禁止されたストリームデータであることを、ユーザに通知する等のエラー処理を、命令制御部769が行う(S947)。
S946で取得したデータサイズが、不定データまたはゼロ以外の値であれば、S942で取得したプレイブロック数分の、各プレイブロックのデータサイズを、管理情報制御部765が取得する。
次に、S945で取得した、各プレイブロックに対応するストリームデータのデータサイズをすべて加算して、該プレイリストファイルが管理するダビングの元データのデータサイズを、データサイズ算出部766が算出する(S948)。
また、ダビング先となる記録媒体の空き領域の容量を取得する(S949)。ここで、S948で算出したダビングの元データのデータサイズと、S949で取得したダビング先となる記録媒体の空き領域の容量とを、命令制御部769が比較する(S950)。
該プレイリストファイルが管理するダビングの元データのデータサイズよりも、ダビング先となる記録媒体の空き領域の容量が大きいか、または同じであれば、ダビング処理を行う(S951)。一方、該プレイリストファイルが管理するダビングの元データのデータサイズよりも、ダビング先となる記録媒体の空き領域の容量が小さければ、ダビングは行わずにエラー処理を行う(S952)。
S952におけるエラー処理とは、ダビングを行うだけの空き領域が、ダビング先の記録媒体にない旨を、ユーザに通知することなどである。
以上の方法によれば、ダビングの元データのデータサイズを取得するにあたり、ダビングの元データを管理するプレイリスト内のプレイブロックを参照するだけで、該プレイブロックに対応するストリームデータのデータサイズを容易に取得することが可能となる。
これは、図9に示したように、ストリームデータの編集または記録媒体への記録の際、該ストリームデータに対応するプレイブロック内に、該ストリームデータのデータサイズを予め格納しているためである。
上記各プレイブロック内のデータサイズを合計することにより、該プレイブロックを格納するプレイリストが管理する、ストリームデータのデータサイズを取得することが可能となる。その結果、該プレイリストが管理する、ダビングの元データのデータサイズを容易に取得することとなり、ダビング処理を速やかに行うことが可能となる効果を奏する。
ここで、S948における、各プレイブロックに対応するストリームデータのデータサイズの合計について、各プレイブロックを格納するプレイリストファイル内に、該データサイズの合計値を格納しておいてもよい。
この場合、ダビング処理の際に、S945における、各プレイブロックのデータサイズを、各々取得する必要がなく、予めプレイリストファイル内に格納されるデータサイズの合計値を参照するだけで、該プレイリストファイルが管理するストリームデータのデータサイズを取得することが可能となる。これは、各々のプレイブロックを参照する必要がなくなる分、ダビング処理における、さらなる速やかな処理を可能とすることができる。
また、ダビングの元データがダビング禁止のストリームデータであった場合は、該ストリームデータに対応する各プレイブロック内の、データサイズを格納する領域に、データサイズが無効であることを示す不定データが格納さている。よって、S946にて、データサイズを格納する領域に、不定データが格納されていることを検出した場合は、ダビングの元データがダビング禁止のデータであると、容易に認識することが可能となる。
さらに、上記データサイズが無効であることを示す不定データを、ゼロとしていることが好ましい。これは、ダビングが可能なストリームデータの場合、プレイブロックに格納されるデータサイズは、少なくともゼロ以外の値となる。
したがって、ダビングが禁止されたストリームデータである場合に、プレイブロックに格納される不定データを、ゼロとすることで、該プレイブロックに対応するストリームデータは、ダビングが禁止されたデータであると明確に判別することが可能となる。
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
なお、本発明の記録再生装置、データ管理方法、および記録媒体を、以下のように構成することもできる。
・オーディオデータを入力するオーディオ入力部と、ビデオデータを入力するビデオ入力部と、入力されたビデオデータを符号化および符号化したデータを復号する符号化・復号処理部と、記録媒体に記録するための記録・再生部と、復号したオーディオデータを出力するオーディオ出力部と、復号したビデオデータを出力するビデオ出力部と、ユーザによる指示を入力する入力部を備えた記録再生装置において、
記録した任意のデータを再生した際の再生時間から任意の区間を指定する区間指定手段と、区間指定手段により指定された区間に対応するデータのデータサイズを取得するデータサイズ取得手段と、データサイズ取得手段により取得したデータサイズを記録媒体に記録することを特徴とする記録再生装置。
・前記任意の区間に対応するデータのサイズを示す管理情報は、データを構成する管理単位であることを特徴とする請求項1記載の記録再生装置。
・前記任意の区間に対応するデータのサイズを示す管理情報が1つ以上存在する場合には、各区間のデータのサイズを合計したサイズを示す管理情報を該記録媒体に記録することを特徴とする記録再生装置。
・前記任意の区間に対応するデータのサイズを示す管理情報が不定データであることを示す管理情報を該記録媒体に記録することを特徴とする請求項1乃至請求項3記載の記録再生装置。
・前記任意の区間に対応するデータのサイズを示す管理情報が0の場合には、不定データであることを示すことを特徴とする請求項1乃至請求項3記載の記録再生装置。
・記録媒体に記録したデータの任意の区間に対応するデータのデータサイズを取得するための管理方法であって、
任意の区間に対応するデータのサイズを示す管理情報を該記録媒体に記録することを特徴とするデータ管理方法。
・オーディオデータを入力するオーディオ入力部と、ビデオデータを入力するビデオ入力部と、入力されたビデオデータを符号化および符号化したデータを復号する符号化・復号処理部と、記録媒体に記録するための記録・再生部と、復号したオーディオデータを出力するオーディオ出力部と、復号したビデオデータを出力するビデオ出力部と、ユーザによる指示を入力する入力部を備えた記録再生装置において、
記録した任意のデータを再生した際の再生時間から任意の区間を指定する区間指定手段と、区間指定手段により指定された区間に対応するデータのデータサイズを取得するデータサイズ取得手段と、データサイズ取得手段により取得したデータサイズを記録した記録媒体。