(57)【要約】【課題】記録媒体に情報を記録する際に、ＶＯＢＵの再生所要時間が可変であってもＦＷＤＩを生成することができるようにする。【解決手段】リアルタイム映像信号をエンコードして生成されたＶＯＢＵをストリームバッファに順次蓄積し、該ストリームバッファに蓄積されたＶＯＢＵのＰＣＩに含まれた、該ＶＯＢＵの再生開始時刻と再生終了時刻からその再生所要時間を取得しながら保持する。その再生開始時刻が注目データブロックの再生完了時刻の前にある対象データブロックから、注目データブロックまでの各データブロックの再生所要時間の総和を求める。該総和が、対象データブロックの再生開始時刻から記録フォーマットにより定められた所定時間後の時点が注目データブロックの再生期間に含まれることを示すとき、注目データブロックの再生位置を示す情報を対象データブロックのフォーワード位置情報として生成する。【選択図】図３
2008131547.tif 000002
【特許請求の範囲】
【請求項１】
再生時の最小制御単位であり、記録媒体に記録するデータストリームを構成するデータブロックであって、該データブロックの再生開始時刻と再生終了時刻からなる再生時間情報が含まれた前記データブロックに対してフォーワード位置情報を生成する際に、
データブロックをストリームバッファに順次蓄積し、
該ストリームバッファに蓄積されたデータブロックの再生時間情報からその再生所要時間を取得しながら保持し、
その再生開始時刻が注目データブロックの再生完了時刻の前にある対象データブロックから、前記注目データブロックまでの各データブロックの再生所要時間の総和を求め、
該総和が、前記対象データブロックの再生開始時刻から記録フォーマットにより定められた所定時間後の時点が前記注目データブロックの再生期間に含まれることを示すとき、前記注目データブロックの再生位置を示す情報を前記対象データブロックのフォーワード位置情報として生成することを特徴とするフォーワード位置情報生成方法。
【請求項２】
リアルタイム映像信号からデータストリームを生成して記録媒体に記録する際に、
再生時の最小制御単位であり、前記データストリームを構成するデータブロックであって、該データブロックの再生開始時刻と再生終了時刻からなる再生時間情報を含む制御情報フィールドが設けられた前記データブロックを、リアルタイム映像信号に対してエンコードすることによって順次生成し、
生成された前記データブロックをストリームバッファに蓄積し、
該ストリームバッファに蓄積されたデータブロックの再生時間情報からその再生所要時間を取得しながら保持し、
その再生開始時刻が注目データブロックの再生完了時刻の前にある対象データブロックから、前記注目データブロックまでの各データブロックの再生所要時間の総和を求め、
該総和が、前記対象データブロックの再生開始時刻から記録フォーマットにより定められた所定時間後の時点が前記注目データブロックの再生期間に含まれることを示すとき、前記注目データブロックの再生位置を示す情報を前記対象データブロックのフォーワード位置情報として生成して該対象データブロックの制御情報フィールドに書き込み、
前記フォーワード位置情報が書き込まれた対象データブロックを記録媒体に記録することを特徴とする記録方法。
【請求項３】
前記所定時間は、記録フォーマットにより１つのデータブロックに対して複数定められており、
複数の該所定時間に対応するフォーワード位置情報が全て書き込まれた前記対象データブロックを記録媒体に記録することを特徴とする請求項２に記載の記録方法。
【請求項４】
再生時の最小制御単位であり、記録媒体に記録するデータストリームを構成するデータブロックであって、該データブロックの再生開始時刻と再生終了時刻からなる再生時間情報が含まれた前記データブロックに対してフォーワード位置情報を生成するフォーワード位置情報生成装置であって、
データブロックを順次蓄積するストリームバッファと、
該ストリームバッファに蓄積されたデータブロックの再生時間情報からその再生所要時間を取得しながら保持し、
その再生開始時刻が注目データブロックの再生完了時刻の前にある対象データブロックから、前記注目データブロックまでの各データブロックの再生所要時間の総和を求め、
該総和が、前記対象データブロックの再生開始時刻から記録フォーマットにより定められた所定時間後の時点が前記注目データブロックの再生期間に含まれることを示すとき、前記注目データブロックの再生位置を示す情報を前記対象データブロックのフォーワード位置情報として生成する生成実行部とを備えることを特徴とするフォーワード位置情報生成装置。
【請求項５】
リアルタイム映像信号からデータストリームを生成して記録媒体に記録する記録装置であって、
再生時の最小制御単位であり、前記データストリームを構成するデータブロックであって、該データブロックの再生開始時刻と再生終了時刻からなる再生時間情報を含む制御情報フィールドが設けられた前記データブロックを、リアルタイム映像信号に対してエンコードすることによって順次生成するエンコーダと、
生成された前記データブロックを蓄積するストリームバッファと、
該ストリームバッファに蓄積されたデータブロックの再生時間情報からその再生所要時間を取得しながら保持し、
その再生開始時刻が注目データブロックの再生完了時刻の前にある対象データブロックから、前記注目データブロックまでの各データブロックの再生所要時間の総和を求め、
該総和が、前記対象データブロックの再生開始時刻から記録フォーマットにより定められた所定時間後の時点が前記注目データブロックの再生期間に含まれることを示すとき、前記注目データブロックの再生位置を示す情報を前記対象データブロックのフォーワード位置情報として生成する生成実行部と、
該生成実行部により生成されたフォーワード位置情報を前記対象データブロックの制御情報フィールドに書き込む書込部と、
前記フォーワード位置情報が書き込まれた対象データブロックを記録媒体に記録する記録実行部とを備えることを特徴とする記録装置。
【請求項６】
前記所定時間は、記録フォーマットにより１つのデータブロックに対して複数定められており、
前記記録実行部は、複数の該所定時間に対応するフォーワード位置情報が全て書き込まれた前記対象データブロックを記録媒体に記録することを特徴とする請求項５に記載の記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フォーワード位置情報具体的には記録媒体に情報を記録する際のフォーワード位置情報の生成技術および記録技術に関する。
【背景技術】
【０００２】
動画像をデジタル信号化しデジタルデータとして記録媒体に記録して再生に供する技術が注目されており、そのための規格も多数定められている。
【０００３】
たとえば、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）に記録するアプリケーションフォーマットとしてＤＶＤ−ＶｉｄｅｏやＤＶＤ＋ＲＷ（ＤＶＤ＋ＲｅＷｒｉｔａｂｌｅ）Ｖｉｄｅｏフォーマットなどがある。これらの規格において、ビデオ映像などの１つのタイトルは１つ以上の連結されたＰＧＣで構成される。ＰＧＣ（Ｐｒｏｇｒａｍ  Ｃｈａｉｎ）はリアル・タイム・データの再生単位であるセルの再生順位を指定するものであり、１つのＰＧＣは１つ以上のセルの再生順位を指定する。
【０００４】
セルは、さらにＶＯＢＵ（Ｖｉｄｅｏ  Ｏｂｊｅｃｔ  Ｕｎｉｔ）により構成される。図４はセルとＶＯＢＵの構成を示す。図示のように、セルは、１つ以上のＶＯＢＵから構成され、各ＶＯＢＵは、先頭にＮＶ＿ＰＣＫ（Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋ：ナビゲーションパック）が設けられており、それに続きＧＯＰ（Ｇｒｏｕｐ  Ｏｆ  Ｐｉｃｔｕｒｅ）整数個分のビデオデータ（図中Ｖ）、オーディオデータ（図中Ａ）、サブピクチャデータ（図中Ｓ）などがパック化されて時分割で挿入されている。ＮＶ＿ＰＣＫは、さらにＰＣＩ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｃｏｎｔｒｏｌ  Ｉｎｆｏｒｍａｔｉｏｎ）とＤＳＩ（Ｄａｔａ  Ｓｅａｒｃｈ  Ｉｎｆｏｒｍａｔｉｏｎ）の２つのパケットから構成される。
【０００５】
ＮＶ＿ＰＣＫはリアルタイムの制御情報であり、ＶＯＢＵの先頭に必ず設けられている。ＤＶＤビデオプレーヤは可変レート再生とシームレス再生を実現するために、ピックアップとデコーダの間にトラックバッファと呼ばれる大容量メモリを持つ。そのため、ピックアップが読み取っている信号とデコードされて再生表示されている画像や音声との間に時間ずれが生じる。そこで、リアルタイムの制御情報をＰＣＩとＤＳＩの２つのパケットに分割し、ＰＣＩには再生表示に関する制御情報、ＤＳＩにはアクセスに関する制御情報を格納し、プレーヤはＤＳＩとＰＣＩをそれぞれトラックバッファの前と後で処理する。
【０００６】
なお、ＤＶＤに記録されたデータを再生する際に、再生位置の決定など再生に関する制御はＶＯＢＵ単位まででき、ＶＯＢＵは再生時の最小制御単位である。
【０００７】
ＰＣＩに含まれる情報として、たとえば当該ＶＯＢＵの再生開始時刻（ＶＯＢＵ＿Ｓ＿ＰＴＭ）とＶＯＢＵの再生終了時刻（ＶＯＢＵ＿Ｅ＿ＰＴＭ）がある。また、ＤＳＩに含まれる情報としては、たとえば早送りのための、当該ＶＯＢＵより後のＶＯＢＵの位置を示すフォーワード位置情報ＦＷＤＩがある。
【０００８】
ＦＷＤＩは、このＶＯＢＵの先頭から、Ｋ×０．５秒後の再生位置を示す情報である。Ｋは１〜２４０の整数値であり、規格によってその数および値が決められている。たとえば、ＤＶＤ−Ｖｉｄｅｏでは、ＦＷＤＩとして、１９個のＫに対応する再生位置情報が決められており、これらのＫは、それぞれ１〜１５、２０、６０、１２０、２４０である。
【０００９】
図５は、ＤＶＤ−Ｖｉｄｅｏの規格におけるＶＯＢＵ＃１のＦＷＤＩの例を示す。これは、各ＶＯＢＵの再生時間を０．５秒に固定した場合の例である。
【００１０】
図５において、「ＦＷＤＩ＃」の後の数字は、Ｋであり、図示のように、ＶＯＢＵ＃１のＦＷＤＩとして、ＦＷＤＩ＃１〜ＦＷＤＩ＃１５、ＦＷＤＩ＃２０、ＦＷＤＩ＃６０、ＦＷＤＩ＃１２０、ＦＷＤＩ＃２４０の計１９個のフォーワード位置情報がある。たとえば、ＦＷＤＩ＃１は、ＶＯＢＵ＃１の先頭から「Ｋ×０．５秒（Ｋ＝１）」すなわち０．５後の再生位置としてＶＯＢＵ＃２の位置精確にはＶＯＢＵ＃２の先頭位置である。
【００１１】
ここでＶＯＢＵ＃１とＶＯＢＵ＃２の再生所要時間がともに０．４秒である場合におけるＶＯＢＵ＃１のＦＷＤＩ＃１とＦＷＤＩ＃２を考える。
【００１２】
ＶＯＢＵ＃１の再生所要時間が０．４秒であるとき、ＶＯＢＵ＃１の先頭から０．５秒後の再生位置が、ＶＯＢＵ＃２の先頭から０．１秒後の位置になる。すなわちＦＷＤＩ＃１は、ＶＯＢＵ＃２の先頭から０．１秒後の再生位置を示すものであると考えられる。ところで、前述したように、ＶＯＢＵは、最小制御単位であり、早送りなどの場合においてこのＶＯＢＵ単位で制御するため、ＦＷＤＩ＃１は、ＶＯＢＵ＃２の先頭から０．１秒後の位置を示すものではなく、ＶＯＢＵ＃２の先頭を示す位置情報である必要がある。すなわち、ＶＯＢＵのＦＷＤＩは、正確には、このＶＯＢＵの先頭からＫ×０．５秒後の再生位置が属するＶＯＢＵの先頭を示す位置情報である。このように、ＶＯＢＵ＃１のＦＷＤＩ＃１は、ＶＯＢＵ＃２の先頭を示す位置情報になる。
【００１３】
同様に、ＦＷＤＩ＃２は、ＶＯＢＵ＃１の先頭から１．０秒後の再生位置が属するＶＯＢＵ＃３の先頭を示す位置情報となる。
【００１４】
ところで、ＶＯＢＵ＃１の再生所要時間が０．４秒であり、ＶＯＢＵ＃２の再生所要時間が１．０秒である場合において、ＶＯＢＵ＃１のＦＷＤＩ＃１は、上記の場合と同じようにＶＯＢＵ＃２の先頭を示す位置情報となるが、ＶＯＢＵ＃２の再生所要時間が１秒であるとき、ＶＯＢＵ＃２の末尾がＶＯＢＵ＃１の先頭から１．４秒後になるため、ＶＯＢＵ＃１のＦＷＤＩ＃２は、ＶＯＢＵ＃１の先頭から１．０秒後の再生位置が属するＶＯＢＵ＃２の先頭を示す位置情報となる。
【００１５】
すなわち、ＶＯＢＵの再生所要時間によって、ＦＷＤＩが示すＶＯＢＵの位置情報が変わるものである。
【００１６】
なお、ＦＷＤＩにより示される再生位置は、起点から離れたデータの量で表わされる。このデータ量の単位はたとえば２０４８バイトを示すブロックであり、ＦＷＤＩは、起点から離れたブロック数である。
【００１７】
特許文献１は、ＤＶＤに情報を記録する際にＦＷＤＩを生成する手法を開示している。この手法は、各ＶＯＢＵの再生所要時間が固定値になるようにエンコードし、この固定値を持用いてＫ×０．５秒後の再生位置が何個後のＶＯＢＵに該当するかを算出することによってＦＷＤＩを生成している。
【００１８】
一方、ＶＯＢＵの再生所要時間が固定時間ではなく、可変になることも生じ得る。たとえば、特許文献２に記載されたように、フレームレートが２４フレーム／秒の映画タイトルをテレビ放送するときに、テレビ放送のフレームレートが３０フレーム／秒であるため、一部のフレームをリピートして足りない分を補うことがなされている。このような放送映像をＤＶＤに録画する際に、特許文献２に記載の逆３：２プルダウン処理を行い、リピートしているフレームを検出して間引きすれば、他のフレームに間引いた分の符号量を割り当てることができる。このとき、リピートしているフレームの有無、リピートしているフレームの量に応じて各ＶＯＢＵの再生所要時間が可変する。
【特許文献１】特開２００２−５６６０９号公報
【特許文献２】特開２００６−１４８２７５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
すなわち、前述したように、ＶＯＢＵの再生所要時間は規格によって０．４秒〜１秒の範囲内に定められおり、この範囲内であればいかなる値もとり得るとともに、ＶＯＢＵの再生所要時間が可変にされるニーズもある。ＶＯＢＵの再生所要時間が可変する場合には、特許文献１に記載された手法では、ＦＷＤＩを生成することができない。
【課題を解決するための手段】
【００２０】
本発明の一つの態様は、フォーワード位置情報生成方法である。フォーワード位置情報は、記録媒体に記録するデータストリームを構成する、再生時の最小制御単位であるデータブロックに対して、該データブロックの再生開始時刻から記録フォーマットにより定められた所定時間後の再生位置を示すものである。なお、データブロックには、このデータブロックの再生開始時刻と再生終了時刻からなる再生時間情報が含まれている。
【００２１】
この方法は、データブロックをストリームバッファに順次蓄積し、蓄積されたデータブロックの再生時間情報からその再生所要時間を取得しながら保持する。そして、再生開始時刻が注目データブロックの再生完了時刻の前にある対象データブロックから、注目データブロックまでの各データブロックの再生所要時間の総和を求める。この総和が、対象データブロックの再生開始時刻から記録フォーマットにより定められた所定時間後の時点が注目データブロックの再生期間に含まれることを示すとき、注目データブロックの再生位置を示す情報をこの対象データブロックのフォーワード位置情報として生成する。
【００２２】
本発明の別の態様は、記録方法である。この方法は、映像信号をエンコードして、データストリームを構成するデータブロックを順次生成する。このデータブロックは、再生時の最小制御単位であり、その再生開始時刻と再生終了時刻からなる再生時間情報を含む制御情報フィールドが設けられている。これらのデータブロックをストリームバッファに蓄積し、蓄積されたデータブロックの再生時間情報からその再生所要時間を取得しながら保持する。そして、再生開始時刻が注目データブロックの再生完了時刻の前にある対象データブロックから、注目データブロックまでの各データブロックの再生所要時間の総和を求める。該総和が、対象データブロックの再生開始時刻から記録フォーマットにより定められた所定時間後の時点が注目データブロックの再生期間に含まれることを示すとき、注目データブロックの再生位置を示す情報を対象データブロックのフォーワード位置情報として生成して該対象データブロックの制御情報フィールドに書き込む。最後に、フォーワード位置情報が書き込まれた対象データブロックを記録媒体に記録する。
【００２３】
なお、上記方法を装置やシステム並びにプログラムとして表現したものも、本発明の態様としては有効である。
【発明の効果】
【００２４】
本発明の技術によれば、記録媒体に情報を記録する際に、ＶＯＢＵの再生所要時間が可変であってもＦＷＤＩを生成することができる。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照して本発明の実施の形態について説明する。
図１は、本発明の実施の形態にかかる録画装置１００を示す。録画装置１００は、リアルタイムの映像信号を録画するものであり、エンコーダ１１０と、メモリ１２０と、制御ＣＰＵ１３０と、記録媒体１４０を備える。
【００２６】
なお、例として、録画装置１００は、ＤＶＤ−Ｖｉｄｅｏの記録フォーマットに準拠して録画する。
【００２７】
エンコーダ１１０は、リアルタイム映像信号に対してエンコードをし、データストリームを生成する。このデータストリームは、図４に示す階層構造を有し、再生時の最小制御単位となるＶＯＢＵから構成される。各ＶＯＢＵの先頭には制御情報フィールドであるＮＶ＿ＰＣＫがあり、ＮＶ＿ＰＣＫにはＰＣＩフィールドとＤＳＩフィールドに分けられている。
【００２８】
エンコーダ１１０により生成されたＶＯＢＵのＰＣＩフィールドには、このＶＯＢＵの再生開始時刻ＶＯＢＵ＿Ｓ＿ＰＴＭと再生終了時刻ＶＯＢＵ＿Ｅ＿ＰＴＭが書き込まれている。なお、ＶＯＢＵ＿Ｓ＿ＰＴＭとＶＯＢＵ＿Ｅ＿ＰＴＭは、９０ｋＨｚのカウンタ値により表されている。また、ＤＳＩフィールドには、このＶＯＢＵのフォーワード位置情報ＦＷＤＩ＃Ｋ（Ｋ：規格により定められた複数の整数値）を書き込むエリアがあるが、フォーワード位置情報が現在のＶＯＢＵより後に生成されるＶＯＢＵの位置情報であるため、エンコーダ１１０は、ＶＯＢＵを出力する際に、そのフォーワード位置情報としてたとえば予め決められたデフォルト値を書き込む。
【００２９】
ここで、録画装置１００は、ＤＶＤ−Ｖｉｄｅｏ規格に準拠して録画するものであるので、１つのＶＯＢＵに対して、そのＦＷＤＩは１９個のＦＷＤＩ＃Ｋ（Ｋ：１〜１５、２０、６０、１２０、２４０）を含む。
【００３０】
前述したように、フレームレートが２４フレーム／秒の映画タイトルをテレビ放送するときに、テレビ放送のフレームレートが３０フレーム／秒であるため、一部のフレームをリピートして足りない分を補うことがなされている。録画装置１００のエンコーダ１１０は、このような映像信号をエンコードする際に、逆３：２プルダウン処理を行い、リピートしているフレームを検出して間引きし、他のフレームに間引いた分の符号量を割り当てる。その結果、エンコーダ１１０により生成されたデータストリームの各ＶＯＢＵの再生所要時間がＤＶＤ−Ｖｉｄｅｏ規格により定められた０．４秒〜１秒の範囲内で互いに異なることはあり得る。
【００３１】
エンコーダ１１０は、映像信号をエンコードしてセル毎にＶＯＢＵを順次生成して、メモリ１２０に設けられたストリームバッファ１２４に出力する。また、エンコーダ１１０は、各ＶＯＢＵをストリームバッファ１２４に出力する際に、このＶＯＢＵを出力する通知も制御ＣＰＵ１３０に通知する。なお、例として出力通知の内容はセル番号、ＶＯＢＵの番号ＶＯＢＵ＃と、ＶＯＢＵのサイズ（例えば２０４８バイトを１ブロックとするブロック数）である。
【００３２】
メモリ１２０のストリームバッファ１２４は、エンコーダ１１０からのＶＯＢＵを一時的に蓄積する。
【００３３】
制御ＣＰＵ１３０は、ストリームバッファ１２４に蓄積されたＶＯＢＵを記録媒体１４０に出力させる制御と、ストリームバッファ１２４に蓄積されたＶＯＢＵのＦＷＤＩを生成して当該ＶＯＢＵのＤＳＩフィールドに書き込むものであり、ＦＷＤＩの生成実行部および書込部と、ＶＯＢＵを記録媒体に記録させる記録部として機能する。
【００３４】
制御ＣＰＵ１３０は、エンコーダ１１０から出力通知を受ける度に、該出力通知によりその出力が知らされるＶＯＢＵを含むストリームバッファ１２４内のＶＯＢＵに対してＦＷＤＩを生成して該当するＶＯＢＵのＤＳＩフィールドのＦＷＤＩを書き換える。
【００３５】
メモリ１２０には、演算データバッファ１２８が設けられている。演算データバッファ１２８は、制御ＣＰＵ１３０がＦＷＤＩを生成するためのデータ（以下演算データという）を一時的に記憶する。
【００３６】
図２は、演算データバッファ１２８に記憶された演算データを示す。図示のように、演算データバッファ１２８において、セル番号毎に、ＶＯＢＵの再生所要時間とＶＯＢＵのデータサイズがＶＯＢＵの番号と対応付けて記憶されている。なお、詳細については後述するが、演算データバッファ１２８は、まだ書き換えがなされてないＦＷＤＩ＃ＫがあるＶＯＢＵについてのデータのみを記憶しており、制御ＣＰＵ１３０は、あるＶＯＢＵに対してその最後のＦＷＤＩ＃Ｋ（Ｋ：２４０）を書き換えた際に、このＶＯＢＵについてのデータを演算データバッファ１２８から削除する。
【００３７】
ここで図３のフローチャートを参照して、録画装置１００において、ＶＯＢＵのＦＷＤＩの生成についての動作の流れを具体的に説明する。図３におけるステップＳ１０〜Ｓ１２はエンコーダ１１０の動作を示し、ステップＳ２０からは制御ＣＰＵ１３０の動作を示す。なお、図３は、セルの更新が無い場合すなわちエンコーダ１１０から出力されたＶＯＢＵが同じセルのＶＯＢＵである場合の動作を示すものである。
【００３８】
エンコーダ１１０は、映像信号をデコードしＶＯＢＵを順次生成する。ここでＶＯＢＵ＃ｎ（ｎ：１以上の整数）が生成されたとする（Ｓ１０）。エンコーダ１１０は、生成したＶＯＢＵ＃ｎをメモリ１２０のストリームバッファ１２４に出力するとともに、ＶＯＢＵ＃ｎの出力を制御ＣＰＵ１３０に通知する（Ｓ１２）。このステップにおいて、ＶＯＢＵ＃ｎの番号とデータサイズ（ブロック数）およびセル番号が制御ＣＰＵ１３０に知らせられる。
【００３９】
制御ＣＰＵ１３０は、エンコーダ１１０からの出力通知を受信すると、メモリ１２０の演算データバッファ１２８に、知らせられたセル番号、ＶＯＢＵの番号とデータサイズを入力する。なお、ｎが２以上である場合には、演算データバッファ１２８には、ＶＯＢＵ＃ｎ以前のＶＯＢＵの演算データが既に記憶されている。
【００４０】
制御ＣＰＵ１３０は、そしてストリームバッファ１２４にアクセスし、ＶＯＢＵ＃ｎのＮＶ＿ＰＣＫのＰＣＩフィールドから、９０ｋＨｚのカウンタ値により表される、このＶＯＢＵの再生時間情報となる再生開始時刻ＶＯＢＵ＿Ｓ＿ＰＴＭと再生終了時刻ＶＯＢＵ＿Ｅ＿ＰＴＭを読み出す。読み出した２つの時刻を用いて、下記の式（１）にしたがってＶＯＢＵ＃ｎの再生所要時間Ｔｎ（単位：秒）を算出する（Ｓ２０）
Tn =(VOBU_E_PTM - VOBU_S_PTM)/90000          （１）
そして、制御ＣＰＵ１３０は、ストリームバッファ１２４に記憶されたＶＯＢＵのＦＷＤＩを生成する（Ｓ２２〜Ｓ５２）。制御ＣＰＵ１３０は、ＦＷＤＩを生成する際に、ＶＯＢＵについては最後に演算データバッファ１２８に出力されたＶＯＢＵから、ＫについてはＫ＝１、２、３、・・・、１５、２０、６０、１２０、２４０の順でＦＷＤＩ＃Ｋを生成する。
【００４１】
具体的には、まず、ＶＯＢＵ＃ｎ、すなわち最後にストリームバッファ１２４に出力されたＶＯＢＵのＦＷＤＩ＃１を生成する。そのために、制御ＣＰＵ１３０は、まず、下記の式（２）により、最後に入力されたＶＯＢＵ（ＶＯＢＵ＃ｎ）から、そのＦＷＤＩが生成されるＶＯＢＵ（ＶＯＢＵ＃ｘ，ｘ：ＦＷＤＩが生成されるＶＯＢＵの番号）までのすべてのＶＯＢＵの再生所要時間の総和Ｓｘを求める。
Sx ＝ Tx ＋ Tx+1 +・・・+ Tn                    （２）
制御ＣＰＵ１３０は、演算データバッファ１２８に記憶された演算データから式（２）に用いられる各再生所要時間Ｔを取得して総和Ｓｘを算出する。
【００４２】
ここで、ＶＯＢＵ＃ｘは、ＶＯＢＵ＃ｎであるため、総和ＳｘはＳｎ＝Ｔｎとなる。
【００４３】
そして、制御ＣＰＵ１３０は、ステップＳ２８に示される処理として、下記式（３）で示す条件が満たされるか否かを判定する。
（Sx - Tn） ＜= (K×0.5) ＜ Sx              （３）
式（３）の意味について考える。Ｓｘは、式（２）に示すように、ＶＯＢＵ＃ｘからＶＯＢＵ＃ｎまでの各ＶＯＢＵの再生所要時間の総和を示すため、ＶＯＢＵ＃ｘの先頭を始点とすると、（Ｓｘ−Ｔｎ）は、ＶＯＢＵ＃ｎの先頭の再生時刻となり、ＳｘはＶＯＢＵ＃ｎの末尾の再生時刻となる。そのため、式（３）を満たすことは、ＶＯＢＵ＃ｘの先頭から（Ｋ×０．５）秒後の再生時刻が、ＶＯＢＵ＃ｎの先頭から末尾までの再生時刻範囲に含まれることを意味する。すなわち、ＶＯＢＵ＃ｘのＦＷＤＩ＃Ｋは、ＶＯＢＵ＃ｎとなる。
【００４４】
制御ＣＰＵ１３０は、このようにして、ステップＳ２８において式（３）が満たされるか否かを判定し、満たされていれば、ＶＯＢＵ＃ｎを示す位置をＶＯＢＵ＃ｘのＦＷＤＩ＃Ｋとして生成して、ストリームバッファ１２４に蓄積されたＶＯＢＵ＃ｘのＤＳＩフィールドにあるＦＷＤＩ＃Ｋを書き換える（Ｓ２８：Ｙｅｓ、Ｓ３０）。なお、ＶＯＢＵ＃ｎを示す位置は、ＶＯＢＵ＃ｎの先頭がＶＯＢＵ＃Ｘの先頭から離れたブロック数であり、制御ＣＰＵ１３０は、メモリ１２０の演算データバッファ１２８に記憶されたＶＯＢＵ＃ＸからＶＯＢＵ＃（ｎ−１）までのすべてのＶＯＢＵのサイズを加算して得た和をＶＯＢＵ＃ｘのＦＷＤＩ＃Ｋとして書き込む。
【００４５】
制御ＣＰＵ１３０は、ステップＳ３２にＶＯＢＵ＃Xに対して書き込んだＦＷＤＩ＃Ｋの「Ｋ」が規格で定められた最後のＫ（ＤＶＤ−Ｖｉｄｅｏでは２４０である）であるか否かを確認し、最後のＫであればＶＯＢＵ＃Ｘの演算データを演算データバッファ１２８から削除する（Ｓ３４：Ｎｏ、Ｓ３６）。そして、次のＶＯＢＵ＃Ｘに対してＦＷＤＩを生成する処理をすべくステップＳ５０へ進める。なお、最後のＫではなければ、制御ＣＰＵ１３０は、Ｋの値を次のＫにしたうえで処理をステップＳ２４に戻す（Ｓ３４：Ｙｅｓ、Ｓ４２、Ｓ２８〜）。
【００４６】
ＶＯＢＵ＃ＸのＦＷＤＩ＃ＫはＫの小さい順から生成、書き換えがなされるので、最後のＫについてのＦＷＤＩ＃Ｋが書き換えられたＶＯＢＵ＃Ｘは、すべてのＦＷＤＩが書き換えられたことになる。制御ＣＰＵ１３０は、最後のＦＷＤＩ＃Ｋが書き換えられたＶＯＢＵ＃Ｘに対して、その演算データを演算データバッファ１２８から削除することによって、演算データバッファ１２８には、まだ書き換えられていないＦＷＤＩ＃Ｋを有するＶＯＢＵの演算データのみが記憶されることになる。
【００４７】
ＶＯＢＵ＃ｎのＦＷＤＩ＃１の例に戻る。ＶＯＢＵ＃ｎのＦＷＤＩ＃１を求めるために算出されたＳｘ（ｘ：ｎ）がＴｎと同じであり、（Ｋ×０．５）秒は０．５秒であるため、ＶＯＢＵ＃ｎの再生所要時間Ｔｎが０．５秒より大きければ、式（３）が満たされることになる。そのため、ＶＯＢＵ＃ｎのＦＷＤＩ＃１はＶＯＢＵ＃ｎ自身を示すものであり、０ブロックとなる。一方、ＶＯＢＵ＃ｎの再生所要時間Ｔｎが０．５秒以下であれば、（Ｓｎ＝Ｔｎ＜＝０．５）の結果になり、式（３）が満たされないため、ＶＯＢＵ＃ｎのＦＷＤＩ＃１がここでは生成されないことになる（Ｓ２８：Ｎｏ）。
【００４８】
ここまではＦＷＤＩ＃１についての処理である。制御ＣＰＵ１３０は、ＦＷＤＩ＃１についての処理が終わると、次のＫがあるか否かを確認する（Ｓ４０）、Ｋは１〜１５、２０、６０、１２０、２４０の１９個があるため、制御ＣＰＵ１３０は、Ｋの値を次の２にして、ＶＯＢＵ＃ｎのＦＷＤＩ＃２についての処理をする（Ｓ４０：Ｙｅｓ、Ｓ４２、Ｓ２８〜）。
【００４９】
制御ＣＰＵ１３０は、このようにしてＶＯＢＵ＃ｎに対して、各Ｋの値についてステップＳ２８からの処理を繰り返す。なお、ＶＯＢＵ＃ｎの再生所要時間が０．５秒より大きいときには、ＶＯＢＵ＃ｎのＦＷＤＩ＃１が０ブロックに書き換えられ、ＦＷＤＩ＃２からＦＷＤＩ＃２４０までは、生成されないことになる。
【００５０】
制御ＣＰＵ１３０は、ＶＯＢＵ＃ｎの各ＦＷＤＩ＃Ｋについての処理が終わる（Ｓ４０：Ｎｏ、またはＳ３４：Ｎｏ、Ｓ３６）と、ｘを１つデクリメントして（Ｓ５０）、１つ前のＶＯＢＵのＦＷＤＩについての処理をする。すなわち、ステップＳ２６からの処理は、ＶＯＢＵ＃ｘ（ｘ：ｘ−１）に対して行われる。
【００５１】
制御ＣＰＵ１３０は、演算データバッファ１２８にＶＯＢＵ＃ｘ（ｘ：ｘ−１）の演算データがあるか否かを確認し、ある場合にはこのＶＯＢＵに対してステップＳ２４からの処理を繰り返す（Ｓ５２：Ｙｅｓ、Ｓ２４〜）。一方、演算データバッファ１２８にＶＯＢＵ＃ｘ（ｘ：ｘ−１）の演算データが無ければすなわちＶＯＢＵ＃ｘより前の全てのＶＯＢＵは、それらの最後のＦＷＤＩ＃Ｋが既に書き換えられていた場合には（Ｓ５２：Ｎｏ）、ＶＯＢＵ＃ｎについて、その前のＶＯＢＵに対するＦＷＤＩ関連の処理を終了する。
【００５２】
このような処理は、新しいＶＯＢＵがエンコーダ１１０からストリームバッファ１２４に出力される度に行われる。
【００５３】
前述したように、図３は、セルの更新が無い場合の処理を示すものである。ＤＶＤ−Ｖｉｄｅｏでは、ＦＷＤＩはセル内部に閉じられた情報であり、すなわち、ＶＯＢＵのＦＷＤＩ＃Ｋは、このＶＯＢＵが属するセル内のＶＯＢＵのうちの、（Ｋ×０．５）秒の再生位置に該当するＶＯＢＵの再生位置である。そのため、セルの後部に位置するＶＯＢＵのＦＷＤＩ＃Ｋが示す位置がこのセルの後の他のセル内の再生位置になることは生じ得る。このような場合は、このＶＯＢＵのＦＷＤＩ＃Ｋは「対象データ無し」を示すことにされる。本実施の形態の録画装置１００において、制御ＣＰＵ１３０は、エンコーダ１１０から出力通知を受ける度に、この出力通知に含まれたセル番号が、演算データバッファ１２８に記憶された直前のセル番号と同じであるか否かを確認する。２つのセル番号が同じであればすなわち今出力されたＶＯＢＵが１つ前に出力されたＶＯＢＵと同じセルに属している場合には、制御ＣＰＵ１３０は図３に示す処理をする一方、２つのセル番号が異なればすなわち今出力されたＶＯＢＵが１つ前に出力されたＶＯＢＵと異なるセルに属する場合には、制御ＣＰＵ１３０は、演算データバッファ１２８にその演算データが記憶されており（すなわちまだ書換えがなされていないＦＷＤＩ＃Ｋがある）、今出力されたＶＯＢＵ以外の各ＶＯＢＵに対して、それらのまだ書き換えられていないＦＷＤＩ＃Ｋをデフォルト値から「対象データ無し」に書き換える。そして、これらのＶＯＢＵに関する演算データを演算データバッファ１２８から削除する。すなわち、図２に示す例では、セル番号が２であるセルのＶＯＢＵ＃１がストリームバッファ１２４に出力されると、制御ＣＰＵ１３０は、演算データバッファ１２８にその演算データが記憶されている、セル番号が１である各ＶＯＢＵのまだ書き換えられていないＦＷＤＩ＃Ｋを「対象データ無し」に書き換えるとともに、これらのＶＯＵＢの演算データを演算データバッファ１２８から削除する。その後、セル番号が２であるＶＯＢＵ＃２がストリームバッファ１２４に出力されるまで、演算データバッファ１２８に、セル番号が２であるＶＯＢＵ＃１の演算データのみが記憶されることになる。
【００５４】
なお、エンコーダ１１０からＶＯＢＵを出力する際に、ＦＷＤＩ＃Ｋのデフォルト値を「対象データ無し」にすることが好ましい。こうすれば、セルが更新された場合に、制御ＣＰＵ１３０は、該当するＶＯＢＵのデータを演算データバッファ１２８から削除するのみでよく、デフォルト値からの書換え処理が不要である。
【００５５】
ＦＷＤＩの書換えについて説明した。次いで、ストリームバッファ１２４に蓄積されたＶＯＢＵを記録媒体１４０への記録について説明する。
【００５６】
ＤＶＤ−Ｖｉｄｅｏでは、最小制御単位のＶＯＢＵによりセルを構成し、さらに整数個のセルより上位の制御単位ＶＯＢ（Ｖｉｄｅｏ  Ｏｂｊｅｃｔ）を構成する。各ＶＯＢＵの先頭に設けられたＮＶ＿ＰＣＫのＤＳＩフィールドには、このＶＯＢＵが属するＶＯＢの再生開始時刻を示すＶＯＢ＿Ｓ＿ＰＴＭと、このＶＯＢの再生終了時刻を示すＶＯＢ＿Ｅ−ＰＴＭを書き込む必要がある。本実施の形態の録画装置１００において、ＶＯＢＵを出力する際に、そのＤＳＩフィールドにＶＯＢ＿Ｓ＿ＰＴＭを書き込んで出力する。一方、ＶＯＢの最後のＶＯＢＵを除き、同じＶＯＢ内の他のＶＯＢＵについてはＶＯＢ＿Ｅ＿ＰＴＭが分からないので、エンコーダ１１０は、他のＶＯＢＵについてたとえば「未知」などを示すデフォルト値を入力して出力し、最後のＶＯＢＵについてのみ真のＶＯＢ＿Ｅ＿ＰＴＭを書き込んで入力する。なお、このＶＯＢ＿Ｅ＿ＰＴＭは、そのＶＯＢＵの再生終了時刻ＶＯＢ＿Ｅ＿ＰＴＭと同じ値になる。
【００５７】
制御ＣＰＵ１３０は、エンコーダ１１０から出力されたＶＯＢＵのＰＣＩフィールドに書き込まれたＶＯＢＵ＿Ｅ＿ＰＴＭと、同じＶＯＢＵのＤＳＩフィールドに書き込まれたＶＯＢ＿Ｅ＿ＰＴＭとを比較することによって、このＶＯＢＵがＶＯＢの最後のＶＯＢＵであるか否かを判定する。最後のＶＯＢＵである場合には、制御ＣＰＵ１３０は、ストリームバッファ１２４に蓄積されたすべてのＶＯＢＵに対して、それらのＶＯＢ＿Ｅ＿ＰＴＭ（デフォルト値）を、最後のＶＯＢＵのＶＯＢ＿Ｅ＿ＰＴＭと同じ値に書き換えるとともに、このＶＯＢに含まれたすべてのＶＯＢＵを、ストリームバッファ１２４から記録媒体１４０に出力させる。
【００５８】
このように、本実施の形態の録画装置１００によれば、エンコーダ１１０により生成されたＶＯＢＵの再生所要時間が可変な場合であっても、記録フォーマットに準拠して記録することができる。
【００５９】
以上、実施の形態をもとに本発明を説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、さまざまな変更、増減を加えてもよい。これらの変更、増減が加えられた変形例も本発明の範囲にあることは当業者に理解されるところである。
【００６０】
たとえば、録画装置１００において、エンコーダ１１０から制御ＣＰＵ１３０に知らせる態様で制御ＣＰＵ１３０がエンコーダ１１０から直接各ＶＯＢＵのサイズを取得している。たとえば、制御ＣＰＵ１３０は、ストリームバッファ１２４に蓄積された当該ＶＯＢＵにアクセスしてそのヘッダ情報などから取得してもよい。
【００６１】
また、録画装置１００は、本発明の技術をＤＶＤ−Ｖｉｄｅｏの場合に適用した場合の例であるが、ＶＯＢＵのような再生時の最小制御単位から構成され、各ＶＯＢＵ内にこのＶＯＢＵの再生所要時間を示し得る情報が付属されているデータストリームであれば、本発明の技術によってこれらのＶＯＢＵのＦＷＤＩの生成が可能である。
【図面の簡単な説明】
【００６２】
【図１】本発明の実施の形態にかかる録画装置を示す図である。
【図２】図１に示す録画装置における演算データバッファに記憶された演算データの例を示す図である。
【図３】図１に示す録画装置の動作を示すフローチャートである。
【図４】本発明が対象とする記録フォーマットの例を示す図である。
【図５】図４に示す記録フォーマットにおけるＶＯＢＵのＦＷＤＩの例を示す図である。
【符号の説明】
【００６３】
１００  録画装置
１１０  エンコーダ
１２０  メモリ
１２４  ストリームバッファ
１２８  演算データバッファ
１３０  制御ＣＰＵ
１４０  記録媒体
【図１】
2008131547.tif 000003
【図２】
2008131547.tif 000004
【図３】
2008131547.tif 000005
【図４】
2008131547.tif 000006
【図５】
2008131547.tif 000007