(57)【要約】【課題】フレーム間圧縮を用いて圧縮符号化されたビデオデータの編集処理を適切に行う。【解決手段】編集対象のビデオストリームが格納されたストリームファイルから、当該ファイルを記録した装置を識別する識別情報を抽出する。抽出された識別情報が編集装置のエンコーダの対応可能な属性と同じ属性でエンコードできる装置であることを示していれば、必要最小区間のみをデコードし再エンコードする手法を用いて編集処理を行う。そうでない場合には、編集対象のビデオストリームの全体をデコードし、再エンコードする手法を用いて編集処理を行う。必要最小区間のみをデコードし再エンコードする手法を用いた編集処理が可能か否かを、ビデオストリーム中の所定の識別情報のみに基づき判断できる。【選択図】  図７
2008047983.tif 000002
【特許請求の範囲】
【請求項１】
フレーム間圧縮を用いて圧縮符号化されたビデオデータを編集する編集装置において、
フレーム間圧縮を用いて圧縮符号化されたビデオデータからなるデータストリームが入力される入力部と、
上記データストリームに埋め込まれた、該データストリームを生成した装置を識別する識別情報を該データストリームから抽出する抽出部と、
上記データストリームをデコードするデコード部と、
ビデオデータをフレーム間圧縮を用いた圧縮符号化により、所定の属性で以てエンコードするエンコード部と、
上記データストリームに対して設定された編集点に基づき、該データストリームに対して上記デコードおよび上記エンコードを行い該データストリームを編集するようにした編集部と
を備え、
上記編集部は、
上記抽出部で上記ストリームデータから抽出された上記識別情報が、上記エンコード部による上記エンコードの際の上記所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、上記編集点を含む所定区間を上記デコードおよび上記エンコードすることで編集を行う
ことを特徴とする編集装置。
【請求項２】
請求項１に記載の編集装置において、
上記編集部は、上記抽出部で上記ストリームデータから抽出された上記識別情報が、上記エンコード部による上記エンコードの際の上記所定の属性と同一の属性でエンコード可能な装置を示していないと判断したら、上記データストリームの全体を上記デコードおよび上記エンコードすることで編集を行う
ことを特徴とする編集装置。
【請求項３】
請求項１に記載の編集装置において、
上記識別情報は、上記装置のメーカを識別する情報と、上記装置の機種または型番を識別する情報とからなる
ことを特徴とする編集装置。
【請求項４】
請求項１に記載の編集装置において、
上記属性は、上記ビデオデータの画枠サイズ、アスペクト比、フレームレート、フレーム構造およびクローズドキャプション情報の有無を含む
ことを特徴とする編集装置。
【請求項５】
請求項１に記載の編集装置において、
上記抽出部は、上記ストリームデータに埋め込まれた、該ストリームデータをデコードする際のバッファ畜量情報をさらに抽出し、上記エンコード部は、上記抽出部で抽出された該バッファ畜量情報に基づき上記エンコードを行うようにした
ことを特徴とする編集装置。
【請求項６】
フレーム間圧縮を用いて圧縮符号化されたビデオデータを編集する編集方法において、
フレーム間圧縮を用いて圧縮符号化されたビデオデータからなるデータストリームに埋め込まれた、該データストリームを生成した装置を識別する識別情報を該データストリームから抽出する抽出のステップと、
上記データストリームをデコードするデコードのステップと、
ビデオデータをフレーム間圧縮を用いた圧縮符号化により、所定の属性で以てエンコードするエンコードのステップと、
上記データストリームに対して設定された編集点に基づき、該データストリームに対して上記デコードおよび上記エンコードを行い該データストリームを編集するようにした編集のステップと
を備え、
上記編集のステップは、
上記抽出部で上記ストリームデータから抽出された上記識別情報が、上記エンコードのステップによる上記エンコードの際の上記所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、上記編集点を含む所定区間を上記デコードおよび上記エンコードすることで編集を行う
ことを特徴とする編集方法。
【請求項７】
フレーム間圧縮を用いて圧縮符号化されたビデオデータを編集する編集方法をコンピュータ装置に実行させる編集プログラムにおいて、
上記編集方法は、
フレーム間圧縮を用いて圧縮符号化されたビデオデータからなるデータストリームに埋め込まれた、該データストリームを生成した装置を識別する識別情報を該データストリームから抽出する抽出のステップと、
上記データストリームをデコードするデコードのステップと、
ビデオデータをフレーム間圧縮を用いた圧縮符号化により、所定の属性で以てエンコードするエンコードのステップと、
上記データストリームに対して設定された編集点に基づき、該データストリームに対して上記デコードおよび上記エンコードを行い該データストリームを編集するようにした編集のステップと
を備え、
上記編集のステップは、
上記抽出部で上記ストリームデータから抽出された上記識別情報が、上記エンコードのステップによる上記エンコードの際の上記所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、上記編集点を含む所定区間を上記デコードおよび上記エンコードすることで編集を行う
ことを特徴とする編集プログラム。
【請求項８】
ビデオデータをフレーム間圧縮を用いて圧縮符号化して記録媒体に記録し、記録媒体から再生されたフレーム間圧縮を用いて圧縮符号化されたビデオデータを編集する編集システムにおいて、
ビデオデータをフレーム間圧縮を用いた圧縮符号化により所定の属性で以てエンコードしてデータストリームとして出力する第１のエンコード部と、
上記第１のエンコード部から出力された上記データストリームをストリームファイルとして記録媒体に記録する記録部と
を備え、
上記データストリームに対して装置自体を識別する識別情報を埋め込んで上記記録媒体に記録する
ようにした記録装置と、
上記記録媒体に記録された上記ストリームファイルを読み出して上記データストリームを取り出す再生部と、
上記データストリームから上記識別情報を抽出する抽出部と、
上記データストリームをデコードするデコード部と、
ビデオデータをフレーム間圧縮を用いた圧縮符号化により、上記所定の属性で以てエンコードする第２のエンコード部と、
上記データストリームに対して設定された編集点に基づき、該データストリームに対して上記デコードおよび上記エンコードを行い該データストリームを編集するようにした編集部と
を備え、
上記編集部は、
上記抽出部で上記ストリームデータから抽出された上記識別情報が、上記第２のエンコード部による上記エンコードの際の上記所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、上記編集点を含む所定区間を上記デコードおよび上記エンコードすることで編集を行う
ようにした編集装置と
を有する
ことを特徴とする編集システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、フレーム間圧縮を用いて圧縮符号化されたビデオデータの編集をより高速に行う編集装置、編集方法、編集プログラムおよび編集システムに関する。
【背景技術】
【０００２】
従来から、記録可能で記録再生装置から取り外し可能とされると共に、記録容量が比較的大きく、ビデオデータとオーディオデータとからなるＡＶ(Audio/Video)データを記録するのに適した記録媒体として、４．７ＧＢ(Giga Byte)以上の記録容量を有するＤＶＤ(Digital Versatile Disc)が普及している。特許文献１には、記録可能なタイプのＤＶＤに対してＤＶＤ−Ｖｉｄｅｏフォーマットで記録する撮像装置が記載されている。
【特許文献１】特開２００４−３５０２５１
【０００３】
この記録可能なタイプのＤＶＤは、ファイルシステムにＵＤＦ(Universal Disk Format)が用いられており、ＵＤＦに対応するコンピュータ装置でアクセスが可能となっている。ＵＤＦは、ＩＳＯ(International Organization for Standarization)９６６０によるフォーマットを含んでおり、コンピュータ装置に用いられる様々なファイルシステムでアクセス可能なようになっている。この記録可能なタイプのＤＶＤに対し、例えば撮像装置で撮像されたビデオデータと撮像に伴い得られたオーディオデータとをファイルとして記録することで、撮像装置とコンピュータ装置などの他の装置との親和性が増し、記録されたデータをより有効に活用することが可能となる。
【０００４】
ところで、ビデオデータは、データ容量が膨大となるため、所定の方式で圧縮符号化されて記録媒体に記録されるのが一般的である。ビデオデータの圧縮符号化方式としては、ＭＰＥＧ２(Moving Picture Experts Group 2)方式が標準的な方式として知られている。また、近年では、ＭＰＥＧ２の圧縮符号化方式をさらに推し進めて効率的な符号化を行えるようにした、ＩＴＵ−Ｔ(International Telecommunication Union-Telecommunication Standarization Sector)勧告Ｈ．２６４あるいはＩＳＯ(International Organization for Standarization)／ＩＥＣ(International Electrotechnical Commission)国際標準１４４９６−１０（ＭＰＥＧ−４パート１０）Advanced Video Coding（以下、Ｈ．２６４｜ＡＶＣと略称する）も、普及してきている。
【０００５】
これらＭＰＥＧ２およびＨ．２６４｜ＡＶＣにおいては、直交変換などを用いたフレーム内符号化を行うと共に、動き補償を用いた予測符号化によるフレーム間符号化をさらに行い、圧縮率を高めている。以下、ＭＰＥＧ２方式を例にとって、予測符号化によるフレーム間圧縮について説明する。
【０００６】
先ず、ＭＰＥＧ２によるデータストリーム構造について、概略的に説明する。ＭＰＥＧ２は、動き補償を用いた予測符号化と、ＤＣＴによる圧縮符号化とを組み合わせたものである。ＭＰＥＧ２のデータ構造は、階層構造をなしており、下位から、ブロック層、マクロブロック層、スライス層、ピクチャ層、ＧＯＰ層およびシーケンス層となっている。ブロック層は、ＤＣＴを行う単位であるＤＣＴブロックからなる。マクロブロック層は、複数のＤＣＴブロックで構成される。スライス層は、ヘッダ部と、１以上のマクロブロックより構成される。ピクチャ層は、ヘッダ部と、１以上のスライスとから構成される。ピクチャは、１画面に対応する。各層の境界は、それぞれ所定の識別符号で識別可能なようになっている。
【０００７】
ＧＯＰ層は、ヘッダ部と、フレーム内符号化に基づくピクチャであるＩ(Intra-coded)ピクチャと、予測符号化に基づくピクチャであるＰ(Predictive-coded)ピクチャＢ(Bi-directionally predictive coded)ピクチャとから構成される。Ｉピクチャは、それ自身の情報のみでデコードが可能であり、ＰおよびＢピクチャは、基準画像として前あるいは前後の画像が必要とされ、単独ではデコードされない。例えばＰピクチャは、自身より時間的に前のＩピクチャまたはＰピクチャを基準画像として用いてデコードされる。また、Ｂピクチャは、自身の前後のＩピクチャまたはＰピクチャの２枚のピクチャを基準画像として用いてデコードされる。最低１枚のＩピクチャを含むそれ自身で完結したグループをＧＯＰ(Group Of Picture)と呼び、ＭＰＥＧのストリームにおいて独立してアクセス可能な最小の単位とされる。
【０００８】
ＧＯＰは、１または複数のピクチャから構成される。以下では、ＧＯＰは、複数のピクチャから構成されるものとする。ＧＯＰにおいて、ＧＯＰ内で完全にデコードが可能な、ＧＯＰで閉じた構造を持つクローズドＧＯＰと、デコードの際に符号化順で１つ前のＧＯＰの情報を用いることができるオープンＧＯＰとの２種類がある。オープンＧＯＰは、クローズドＧＯＰと比較して、より多くの情報を用いてデコードできるため高画質を得られ、一般的に用いられている。
【０００９】
図１６を用いて、フレーム間圧縮を行ったデータのデコード処理について説明する。ここでは、１ＧＯＰが１枚のＩピクチャ、４枚のＰピクチャおよび１０枚のＢピクチャの、計１５枚のピクチャから構成されるものとし、ＧＯＰのタイプは、オープンＧＯＰであるものとする。ＧＯＰ内のＩ、ＰおよびＢピクチャの表示順は、図１６Ａに一例が示されるように、「Ｂ0Ｂ1Ｉ2Ｂ3Ｂ4Ｐ5Ｂ6Ｂ7Ｐ8Ｂ9Ｂ10Ｐ11Ｂ12Ｂ13Ｐ14」のようになる。なお、添え字は表示順を示す。
【００１０】
この例では、最初の２枚のＢ0ピクチャおよびＢ1ピクチャは、１つ前のＧＯＰにおける最後尾のＰ14ピクチャと、このＧＯＰ内のＩ2ピクチャを用いて予測されデコードされたピクチャである。ＧＯＰ内の最初のＰ5ピクチャは、Ｉ2ピクチャから予測されデコードされたピクチャである。他のＰ8ピクチャ、Ｐ11ピクチャおよびＰ14は、それぞれ１つ前のＰピクチャを用いて予測されデコードされたピクチャである。また、Ｉピクチャ以降の各Ｂピクチャは、それぞれ前後のＩおよび／またはＰピクチャから予測されデコードされたピクチャである。
【００１１】
一方、Ｂピクチャは、時間的に前後のＩまたはＰピクチャを用いて予測されデコードされるため、ストリームや記録媒体上におけるＩ、ＰおよびＢピクチャの並び順は、デコーダにおけるデコードの順序を考慮して決める必要がある。すなわち、ＢピクチャをデコードするためのＩおよび／またはＰピクチャは、当該Ｂピクチャよりも常に先にデコードされていなければならない。
【００１２】
上述の例では、ストリームや記録媒体上の各ピクチャの配列は、図１６Ｂに例示されるように、「Ｉ2Ｂ0Ｂ1Ｐ5Ｂ3Ｂ4Ｐ8Ｂ6Ｂ7Ｐ11Ｂ9Ｂ10Ｐ14Ｂ12Ｂ13」のようになり、この順でデコーダに入力される。なお、添え字は、図１６Ａに対応し、表示順を示す。
【００１３】
デコーダにおけるデコード処理は、図１６Ｃに示されるように、先ずＩ2ピクチャをデコードし、デコードされたこのＩ2ピクチャと１つ前のＧＯＰにおける最後尾（表示順）のＰ14ピクチャとによりＢ0ピクチャおよびＢ1ピクチャを予測しデコードする。そして、Ｂ0ピクチャおよびＢ1ピクチャをデコードされた順にデコーダから出力し、次にＩ2ピクチャを出力する。Ｂ1ピクチャが出力されると、次にＰ5ピクチャがＩ2ピクチャを用いて予測されデコードされる。そして、Ｉ2ピクチャおよびＰ5ピクチャを用いてＢ3ピクチャおよびＢ4ピクチャが予測されデコードされる。そして、デコードされたＢ3ピクチャおよびＢ4ピクチャをデコードされた順にデコーダから出力し、次にＰ5ピクチャを出力する。
【００１４】
以下、同様にして、Ｂピクチャの予測に用いるＰまたはＩピクチャをＢピクチャより先にデコードし、このデコードされたＰまたはＩピクチャを用いてＢピクチャを予測してデコードし、デコードされたＢピクチャを出力してから、当該Ｂピクチャをデコードするために用いたＰまたはＩピクチャを出力する処理が繰り返される。記録媒体上やストリームにおける図１６Ｂのようなピクチャ配列は、一般的に用いられるものである。
【００１５】
なお、Ｈ．２６４｜ＡＶＣ方式においても、ビデオデータのエンコードおよびデコード処理は、概略的には、ＭＰＥＧ２方式における処理と略同様にして行われる。Ｈ．２６４｜ＡＶＣ方式においては、より柔軟にピクチャを用いてフレーム間予測を行うことできるようにされている。また、Ｈ．２６４｜ＡＶＣ方式においては、ＭＰＥＧ２方式におけるＩピクチャに相当する、ランダムアクセス可能なピクチャをＩＤＲ(Instantaneous Decoding Refresh)ピクチャと呼ぶ。以下では、符号化方式をＭＰＥＧ２方式に代表させて説明する。
【００１６】
ここで、ＭＰＥＧ２方式のようにフレーム間圧縮を用いる符号化方式により圧縮符号化されたビデオデータを編集する場合について考える。編集処理の一例として、ビデオ映像における中間部のシーンを削除し、削除した区間の前後を結合する場合について説明する。例えば、図１７Ａに一例が示されるように、ＧＯＰ＃１、ＧＯＰ＃２、・・・、ＧＯＰ＃９、・・・のようにＧＯＰ構造が連なったビデオストリームに対し、削除するシーンに対応する区間Ａ−Ｂを指定する。ここで、区間Ａ−Ｂの前端の編集点Ａと、後端の編集点Ｂは、それぞれＧＯＰ＃３およびＧＯＰ＃７の中間部分のピクチャであるものとする。編集により当該区間Ａ−Ｂのピクチャを削除して、編集点Ａおよび編集点Ｂを結合し、編集された１本のビデオストリームを得る（図１７Ｂ）。
【００１７】
このような編集を行う場合、単純に区間Ａ−Ｂ内のピクチャを削除したのでは、結合後に結合部分を含むＧＯＰ＃３＋７においてＧＯＰ構造が破壊されてしまい、正常に再生できなくなるという不都合が生じる。そのため、フレーム精度での編集が行えず、編集がＧＯＰ単位での処理となってしまう。
【００１８】
また、ＧＯＰ単位で編集処理を行う例として、削除対象の区間Ａ−Ｂに含まれるＧＯＰ＃４〜ＧＯＰ＃６を削除し、ＧＯＰ＃３の後端とＧＯＰ＃７の先頭とを結合する方法が考えられる。しかしながら、ＧＯＰがオープンＧＯＰ構造を取る場合、前側のＧＯＰが削除されるＧＯＰ＃７において、先頭側のＢピクチャ群（図１６の例ではＢピクチャ0およびＢ1ピクチャ）がデコードできなくなってしまうという不都合が生じる。
【００１９】
上述した不都合を解決するために、編集対象のビデオストリームを一旦デコードし、その上でフレーム精度での編集を行い、再びエンコードする方法が考えられる。しかしながら、対象となるビデオストリームの全体をデコードし、再エンコードする処理を編集の度毎に行うのでは、処理時間が膨大となる。また、一旦エンコードされたビデオストリームの全体をデコードし再エンコードするのでは、ビデオストリームの全体にわたって画質劣化を招いてしまう。
【００２０】
また、これらの不都合は、複数のビデオストリームを結合する際にも発生するものである。
【００２１】
そこで、従来から、編集点付近の必要最小区間のみをデコードし再エンコードする手法が知られている。すなわち、削除や結合を行う部分のＧＯＰおよび当該ＧＯＰが変化することにより影響を受けるＧＯＰのみをデコードおよび再エンコードし、それ以外のＧＯＰについては、ＧＯＰ単位でコピーを行う。この編集点付近の必要最小区間のみをデコードし再エンコードする手法の代表的な例としては、スマートレンダリングと呼ばれる手法が一般的に知られている。
【００２２】
上述した図１７を用いて、編集点付近の必要最小区間のみをデコードし再エンコードする一例の処理について、概略的に説明する。編集点Ａおよび編集点Ｂによる区間Ａ−Ｂを削除する場合、編集点Ａ側においてデコードが必要な部分は、編集点Ａを含むＧＯＰ＃３と、ＧＯＰ＃３の直前のＧＯＰ＃２となる。ＧＯＰがオープンＧＯＰである場合、編集点Ａを含むＧＯＰ＃３の直前のＧＯＰ＃２は、ＧＯＰ＃３の表示順で先頭のＢ0ピクチャおよびＢ1ピクチャをデコードするために必要である。また、編集点Ｂ側においてデコードが必要な部分は、編集点Ｂを含むＧＯＰ＃７と、ＧＯＰ＃７の直後のＧＯＰ＃８となる。オープンＧＯＰでは、ＧＯＰ＃８の表示順で先頭のＢピクチャ群をデコードするためには、ＧＯＰ＃７のデータを用いる必要がある。
【００２３】
図１７Ａの状態において、例えば先ずＧＯＰ＃４〜ＧＯＰ＃６を削除し、次にＧＯＰ＃２およびＧＯＰ＃３、ならびに、ＧＯＰ＃７およびＧＯＰ＃８をそれぞれデコードする。そして、ＧＯＰ＃３においては、デコードされたピクチャのうち編集点Ａ以降のピクチャを削除する。同様に、ＧＯＰ＃７においては、デコードされたピクチャのうち編集点Ｂ以前のピクチャを削除する。そして、編集点Ａおよび編集点Ｂを結合し、新たに作成されたＧＯＰ＃３＋７を、前後のＧＯＰ＃２およびＧＯＰ＃８の符号量を参照しながら再エンコードする（図１７Ｂ）。ＧＯＰ＃３＋７の先頭のＢ0ピクチャおよびＢ1ピクチャは、デコードされたＧＯＰ＃２の最後のＰ15ピクチャと、デコードされたＧＯＰ＃３のＩ3ピクチャとを用いてエンコードする。ＧＯＰ＃２およびＧＯＰ＃８については、デコード前のＧＯＰ＃２およびＧＯＰ＃８をメモリに記憶しておき、これを用いることができる。
【００２４】
このような処理は、複数のビデオストリームを結合するような編集の際にも、同様にして適用可能である。
【発明の開示】
【発明が解決しようとする課題】
【００２５】
ところで、上述したような再エンコードを用いた編集を行うためには、結合するビデオストリームは、幾つかの制約を満足している必要がある。上述したように、ビデオストリームは、ファイルに格納されて記録媒体に記録される。このとき、１のファイルに記録されるビデオストリームに関する所定のパラメータについては、１ファイル中で値が固定的である必要がある。
【００２６】
例えば、あるパラメータについて異なる値を有するビデオストリームを、編集により１のビデオストリームに結合して１のファイルに格納し、このファイルに格納されたビデオストリームを再生機で再生する際に、この属性の値が再生中に変化した場合、再生機のデコーダがこのパラメータの値の変化に対応できない可能性がある。
【００２７】
値が固定的であることが必要なパラメータの例としては、垂直および水平方向それぞれの画枠サイズ、アスペクト比（１６：９または４：３など）、フレームレート（２９.９７Ｈｚ、５９.９４Ｈｚなど）、フレームの構造、クローズドキャプションのデータの有無などがある。編集により再エンコードを行う際には、再エンコード区間において結合される前後のビデオストリームで、これらのパラメータの値が全て一致している必要がある。
【００２８】
編集装置において、これらのパラメータの全てに対応するエンコードが可能であれば、これらの属性に合わせて所定の値を設定してエンコードすればよい。しかしながらこの場合、編集装置は、ビデオストリームのフォーマットに規定される各パラメータについて、パラメータが取り得る値の全ての組み合わせに対応している必要があり、エンコーダの規模の増大や、コストの増大を招くことになるという問題点があった。
【００２９】
これを避けるために、編集装置側で、ある特定の記録装置で記録されたビデオストリームに対してのみ、編集が可能であるとすることも考えられる。このように編集対象のビデオストリームを制限することで、編集装置側では、その記録装置が対応しているパラメータのみに対応していればよい。ところがこの場合、この編集装置に対して他の記録装置で記録されたビデオストリームを供給した場合に、編集装置が誤動作してしまう可能性があるという問題点があった。
【００３０】
したがって、この発明の目的は、フレーム間圧縮を用いて圧縮符号化されたビデオデータの編集処理を適切に行うことができるようにした編集装置、編集方法、編集プログラムおよび編集システムを提供することにある。
【課題を解決するための手段】
【００３１】
上述した課題を解決するために、第１の発明は、フレーム間圧縮を用いて圧縮符号化されたビデオデータを編集する編集装置において、フレーム間圧縮を用いて圧縮符号化されたビデオデータからなるデータストリームが入力される入力部と、データストリームに埋め込まれた、データストリームを生成した装置を識別する識別情報をデータストリームから抽出する抽出部と、データストリームをデコードするデコード部と、ビデオデータをフレーム間圧縮を用いた圧縮符号化により、所定の属性で以てエンコードするエンコード部と、データストリームに対して設定された編集点に基づき、データストリームに対してデコードおよびエンコードを行いデータストリームを編集するようにした編集部とを備え、編集部は、抽出部でストリームデータから抽出された識別情報が、エンコード部によるエンコードの際の所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、編集点を含む所定区間をデコードおよびエンコードすることで編集を行うことを特徴とする編集装置である。
【００３２】
また、第２の発明は、フレーム間圧縮を用いて圧縮符号化されたビデオデータを編集する編集方法において、フレーム間圧縮を用いて圧縮符号化されたビデオデータからなるデータストリームに埋め込まれた、データストリームを生成した装置を識別する識別情報をデータストリームから抽出する抽出のステップと、データストリームをデコードするデコードのステップと、ビデオデータをフレーム間圧縮を用いた圧縮符号化により、所定の属性で以てエンコードするエンコードのステップと、データストリームに対して設定された編集点に基づき、データストリームに対してデコードおよびエンコードを行いデータストリームを編集するようにした編集のステップとを備え、編集のステップは、抽出部でストリームデータから抽出された識別情報が、エンコードのステップによるエンコードの際の所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、編集点を含む所定区間をデコードおよびエンコードすることで編集を行うことを特徴とする編集方法である。
【００３３】
また、第３の発明は、フレーム間圧縮を用いて圧縮符号化されたビデオデータを編集する編集方法をコンピュータ装置に実行させる編集プログラムにおいて、編集方法は、フレーム間圧縮を用いて圧縮符号化されたビデオデータからなるデータストリームに埋め込まれた、データストリームを生成した装置を識別する識別情報をデータストリームから抽出する抽出のステップと、データストリームをデコードするデコードのステップと、ビデオデータをフレーム間圧縮を用いた圧縮符号化により、所定の属性で以てエンコードするエンコードのステップと、データストリームに対して設定された編集点に基づき、データストリームに対してデコードおよびエンコードを行いデータストリームを編集するようにした編集のステップとを備え、編集のステップは、抽出部でストリームデータから抽出された識別情報が、エンコードのステップによるエンコードの際の所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、編集点を含む所定区間をデコードおよびエンコードすることで編集を行うことを特徴とする編集プログラムである。
【００３４】
また、第４の発明は、ビデオデータをフレーム間圧縮を用いて圧縮符号化して記録媒体に記録し、記録媒体から再生されたフレーム間圧縮を用いて圧縮符号化されたビデオデータを編集する編集システムにおいて、ビデオデータをフレーム間圧縮を用いた圧縮符号化により所定の属性で以てエンコードしてデータストリームとして出力する第１のエンコード部と、第１のエンコード部から出力されたデータストリームをストリームファイルとして記録媒体に記録する記録部とを備え、データストリームに対して装置自体を識別する識別情報を埋め込んで記録媒体に記録するようにした記録装置と、記録媒体に記録されたストリームファイルを読み出してデータストリームを取り出す再生部と、データストリームから識別情報を抽出する抽出部と、データストリームをデコードするデコード部と、ビデオデータをフレーム間圧縮を用いた圧縮符号化により、所定の属性で以てエンコードする第２のエンコード部と、データストリームに対して設定された編集点に基づき、データストリームに対してデコードおよびエンコードを行いデータストリームを編集するようにした編集部とを備え、編集部は、抽出部でストリームデータから抽出された識別情報が、第２のエンコード部によるエンコードの際の所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、編集点を含む所定区間をデコードおよびエンコードすることで編集を行うようにした編集装置とを有することを特徴とする編集システムである。
【００３５】
上述したように、第１、第２および第３の発明は、フレーム間圧縮を用いて圧縮符号化されたビデオデータからなるデータストリームに埋め込まれた、データストリームを生成した装置を識別する識別情報をデータストリームから抽出し、データストリームに対して設定された編集点に基づき、データストリームに対してデコードおよびエンコードを行いデータストリームを編集するようにされ、編集時に、抽出部でストリームデータから抽出された識別情報が、ビデオデータをフレーム間圧縮を用いた圧縮符号化によりなされるエンコードの際の所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、編集点を含む所定区間をデコードおよびエンコードすることで編集を行うようにしているため、データストリームに埋め込まれた、データストリームを生成した装置を識別する識別情報を見るだけで、編集点を含む所定区間のデコードおよびエンコードによる編集が可能か否かを判断することができる。
【００３６】
また、第４の発明は、記録装置は、ビデオデータをフレーム間圧縮を用いた圧縮符号化により所定の属性で以てエンコードして出力されたデータストリームをストリームファイルとして記録媒体に記録し、その際に、データストリームに対して装置自体を識別する識別情報を埋め込んで記録媒体に記録するようにされ、編集装置は、記録媒体に記録されたストリームファイルを読み出してデータストリームを取り出してデータストリームから識別情報を抽出し、データストリームに対して設定された編集点に基づき、データストリームに対してデコードおよびフレーム間圧縮を用いた圧縮符号化により所定の属性で以てエンコードを行ってデータストリームを編集するようにされ、編集の際に、ストリームデータから抽出された識別情報が、編集装置でのエンコードの際の所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、編集点を含む所定区間をデコードおよびエンコードすることで編集を行うようにしているため、編集装置は、データストリームを記録した装置を識別する識別情報に基づき、対応する記録装置で記録されたデータストリームであるか否かを知ることができ、対応する記録装置で記録されたデータストリームであると判断された場合に、編集点を含む所定区間のデコードおよびエンコードによる編集を行うことができる。
【発明の効果】
【００３７】
第１、第２および第３の発明は、上述したように、フレーム間圧縮を用いて圧縮符号化されたビデオデータからなるデータストリームに埋め込まれた、データストリームを生成した装置を識別する識別情報をデータストリームから抽出し、データストリームに対して設定された編集点に基づき、データストリームに対してデコードおよびエンコードを行いデータストリームを編集するようにされ、編集時に、抽出部でストリームデータから抽出された識別情報が、ビデオデータをフレーム間圧縮を用いた圧縮符号化によりなされるエンコードの際の所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、編集点を含む所定区間をデコードおよびエンコードすることで編集を行うようにしているため、データストリームに埋め込まれた、データストリームを生成した装置を識別する識別情報を見るだけで、編集点を含む所定区間のデコードおよびエンコードによる編集が可能か否かを判断することができる効果がある。
【００３８】
また、第４の発明は、上述したように、記録装置は、ビデオデータをフレーム間圧縮を用いた圧縮符号化により所定の属性で以てエンコードして出力されたデータストリームをストリームファイルとして記録媒体に記録し、その際に、データストリームに対して装置自体を識別する識別情報を埋め込んで記録媒体に記録するようにされ、編集装置は、記録媒体に記録されたストリームファイルを読み出してデータストリームを取り出してデータストリームから識別情報を抽出し、データストリームに対して設定された編集点に基づき、データストリームに対してデコードおよびフレーム間圧縮を用いた圧縮符号化により所定の属性で以てエンコードを行ってデータストリームを編集するようにされ、編集の際に、ストリームデータから抽出された識別情報が、編集装置でのエンコードの際の所定の属性と同一の属性でエンコード可能な装置を示しているか否かを判断し、示していると判断したら、編集点を含む所定区間をデコードおよびエンコードすることで編集を行うようにしているため、編集装置は、データストリームを記録した装置を識別する識別情報に基づき、対応する記録装置で記録されたデータストリームであるか否かを知ることができ、対応する記録装置で記録されたデータストリームであると判断された場合に、編集点を含む所定区間のデコードおよびエンコードによる編集を行うことができる効果がある。
【発明を実施するための最良の形態】
【００３９】
以下、この発明の実施の一形態を、図面を参照しながら説明する。先ず、理解を容易とするために、この発明に適用可能な一例のフォーマット（以下、ＡＶＣＨＤフォーマットと呼ぶ）について説明する。ＡＶＣＨＤフォーマットは、ビデオデータとオーディオデータとが所定に多重化されたＡＶ(Audio/Video)ストリームを記録可能な記録媒体に記録する記録フォーマットであって、ＡＶストリームを記録媒体にファイルとして記録し、記録されたＡＶストリームを、クリップ単位でプレイリストを用いて管理可能としている。
【００４０】
ＡＶＣＨＤにおいては、符号化方式として、例えばＩＴＵ−Ｔ(International Telecommunication Union-Telecommunication Standarization Sector)勧告Ｈ．２６４あるいはＩＳＯ(International Organization for Standarization)／ＩＥＣ(International Electrotechnical Commission)国際標準１４４９６−１０（ＭＰＥＧ−４パート１０）Advanced Video Coding（以下、Ｈ．２６４｜ＡＶＣと略称する）に規定される符号化方式を用い、ＭＰＥＧ２システムズの規定に従いビデオデータおよびオーディオデータを多重化する。
【００４１】
Ｈ．２６４｜ＡＶＣ方式で符号化され、ＭＰＥＧ２システムズに従い多重化されたビットストリームは、クリップＡＶストリーム（またはＡＶストリーム）と称される。クリップＡＶストリームは、所定のファイルシステムによりファイルとして記録媒体に記録される。以下では、クリップＡＶストリームが記録されるファイルを、ストリームファイルと呼ぶ。
【００４２】
このＡＶＣＨＤフォーマットによるデータ構造は、Ｈ．２６４｜ＡＶＣに規定されるビットストリーム構造に準ずる。ここで、Ｈ．２６４｜ＡＶＣに規定されるビットストリーム構造を概略的に説明する。Ｈ．２６４｜ＡＶＣにおいては、動画像符号化処理そのものを扱うＶＣＬ(Video Coding Layer)と、符号化された情報の伝送や蓄積を行う下位システムとの間にあるＮＡＬ(Network Abstraction Layer)とが規定され、ＶＣＬとＮＡＬとが分離された構造とされる。また、シーケンスやピクチャのヘッダ情報に相当するパラメータセットも、ＶＣＬで生成した情報から分離して扱えるようになっている。
【００４３】
Ｈ．２６４｜ＡＶＣによるビットストリームの下位システム、例えばＭＰＥＧ２システムズに対するマッピングは、ＮＡＬの一区切りであるＮＡＬユニットを単位として行われる。図１は、ＮＡＬユニットの一例の構成を示す。ＮＡＬユニットは、ＮＡＬヘッダおよびＲＢＳＰ(Raw Byte Sequence Payload)から構成される。ＮＡＬヘッダは、１ビットのデータ長を有する固定ビット部分に続けて、２ビットのデータ長を有する情報nal_ref_idcと、５ビットのデータ長を有する情報nal_unit_typeとが配される。情報nal_ref_idcは、このＮＡＬユニットに参照ピクチャとなり得るスライスが格納されているか否かを示す。情報nal_unit_typeは、このＮＡＬユニットの種類を示す。ＲＢＳＰは、動画像の圧縮符号化された生データが格納される。
【００４４】
なお、ＲＢＳＰトレイリングビットは、このＮＡＬユニットのビット長を８ビットの倍数に調整するための調整用ビットである。ＲＢＳＰトレイリングビットは、"１"から始まりその後ろに"０"が連なる構成とされており、最初のビット"１"を検出することにより、ＲＢＳＰの最後のビット位置を特定することができる。また、"０"の後ろに"１"が検出されると、その位置がＮＡＬユニットの先頭であることが分かる。
【００４５】
情報nal_unit_typeにより示されるＮＡＬユニットの種類には、符号化された各種ピクチャのスライス、ＳＥＩ(Supplemental Enhancement Information)、ＳＰＳ(Sequence Parameter Set)、ＰＰＳ(Picture Parameter Set)、ＡＵ(Access Unit)デリミタ、シーケンスの終了(End Of Sequence：ＥＯＳ)、ストリームの終了(End Of Stream：ＥＯＳ)などがあり、情報nal_unit_typeの値により、ＲＢＳＰに格納される情報がこれらのうち何れであるかが示される。
【００４６】
ＳＥＩは、補足的な付加情報であって、ＶＣＬの復号化に必須ではない付加情報が示される。ＳＥＩとしては、仮想参照デコーダに関連する各ピクチャのタイミング情報、パン・スキャン機能に関する情報、ランダムアクセスのために用いられる情報、ユーザの独自定義による情報（ユーザデータ）などが定義される。ＳＰＳは、シーケンス全体の符号化に関わる情報が含まれたヘッダである。ＰＰＳは、ピクチャ全体の符号化モードに関わる情報が含まれたヘッダである。また、ＡＵデリミタは、後述するアクセスユニットの先頭を示す。
【００４７】
ビットストリーム中の情報をピクチャ単位でアクセスするために、幾つかのＮＡＬユニットを纏めた一区切りを、アクセスユニットと呼ぶ。図２は、アクセスユニットの一例の構成を示す。図２に示されるアクセスユニットの構成のうち、主ピクチャの各スライスに相当するＮＡＬユニットを除いた他の情報は、必ずしもアクセスユニットに存在している必要のない、オプションの情報である。これらオプションの情報を用いる場合には、図２に示されるように、ＡＵデリミタ、ＳＰＳ、ＰＰＳ、ＳＥＩ、主ピクチャ、冗長ピクチャ、ＥＯＳ(End Of Sequence)およびＥＯＳ(End Of Stream)の順序で並んでいる必要がある。各ＮＡＬユニットは、ＮＡＬヘッダの情報に基づき識別される。なお、冗長ピクチャに関しては、この発明との関わりが薄いので、説明を省略する。
【００４８】
図３は、この発明の実施の一形態に適用可能なビデオデータの一例の構造を、概略的に示す。この実施の一形態においては、ビデオデータは、ＧＯＰ(Group Of Picture)構造をとり、ＧＯＰは、少なくとも１枚のＩピクチャと、それぞれ１乃至複数枚のＰピクチャおよびＢピクチャとからなる。
【００４９】
ＧＯＰ毎に、ヘッダが設けられる。ヘッダは、図２に示したＡＵデリミタ、ＳＰＳ、ＰＰＳおよびＳＥＩに対応し、少なくともＡＵデリミタおよびＳＥＩを含む。ＳＥＩは、Ｈ．２６４｜ＡＶＣの規定において複数の名称が定義され、名称毎に異なる情報を伝送するようにされている。この発明の実施の一形態では、特に、ＳＥＩのうちユーザ独自の定義が可能とされたＳＥＩである"User Data Unregistered SEI"に対して、記録装置固有の情報を格納するようにしている。
【００５０】
図４は、このＳＥＩ"User Data Unregistered SEI"に格納される情報の一例の構造を表すシンタクスを示す。ここでは、シンタクスをコンピュータ装置などのプログラムの記述言語として用いられるＣ言語の記述法に基づき示す。これは、他のシンタクスを表す図において、同様である。
【００５１】
このＳＥＩ"User Data Unregistered SEI"は、図４の最初の行に"user_data_unregistered(payloadSize)"として示されるように、ペイロードサイズ、すなわち、このＳＥＩ"User Data Unregistered SEI"の全体のデータ長が指定されて参照される。図４において、１２８ビットのデータ長を有するフィールドuuid_iso_iec_11578は、所定の識別情報が格納される。次のデータ長が３２ビットのフィールドtype_indicatorは、このＳＥＩ"User Data Unregistered SEI"のタイプを示す。フィールドtype_indicatorの値が"0x47413934"で、if文に従い、クローズドキャプションのデータが格納されるブロックcc_data()が配される。クローズドキャプションに関しては、この発明と関わりが薄いので、説明を省略する。
【００５２】
なお、数値の記述において"0x"は、その数値が１６進表記されていることを示す。これは、以下の同様な表記について共通である。
【００５３】
フィールドtype_indicatorの値が"0x4D44504D"であれば、if文における"else if"の記述に従い、ブロックModifiedDVPackMeta()が記述される。このブロックModifiedDVPackMeta()は、このデータを記録した記録装置固有の情報が格納される。ブロックModifiedDVPackMeta()において、８ビットのデータ長を有するフィールドnumber_of_modified_dv_pack_entriesは、このブロックModifiedDVPackMeta()に格納されるデータmodified_dv_packの数を示す。次のforループ文に従い、このフィールドnumber_of_modified_dv_pack_entriesに示される数だけ、データmodified_dv_packすなわちブロックone_modified_dv_pack()が格納される。
【００５４】
ブロックone_modified_dv_pack()は、８ビットのデータ長を有するフィールドmpd_idと、３２ビットのデータ長を有するフィールドmpd_dataとからなる。図５は、ブロックone_modified_dv_pack()の構成の例を表すシンタクスを示す。図５Ａは、ブロックone_modified_dv_pack()が、このデータを記録した記録装置を示す情報が格納されるブロックMAKER & MODEL ID pack()である例である。また、図５Ｂは、ブロックone_modified_dv_pack()が、記録時の画質モードを示す情報が格納されるブロックMAKER OPTION pack()である例である。
【００５５】
図５ＡのブロックMAKER & MODEL ID pack()について説明する。フィールドmpd_idは、８ビットのデータ長を有し、このブロックone_modified_dv_pack()の種別を示す。すなわち、フィールドmpd_idが所定の値で、このブロックone_modified_dv_pack()がこのデータを記録した記録装置を示す情報が格納されるブロックMAKER & MODEL ID pack()であることが示される。図４で示したフィールドmpd_dataは、このブロックMAKER & MODEL ID pack()においては、それぞれ１６ビットのデータ長を有するフィールドmaker_IDと、フィールドmaker_model_codeとに分けられている。フィールドmaker_IDは、このデータを記録した記録装置のメーカを識別するための識別情報を示す。フィールドmaker_model_codeは、当該記録装置の型番や機種を識別する識別情報を示す。
【００５６】
図５ＢのブロックMAKER OPTION pack()について説明する。このブロックMAKER OPTION pack()には、上述のように、記録時の画質モードを示す情報が格納される。すなわち、映像や音声を記録再生する装置において、ビットレートを段階的に切り換えることで記録時間と、画質または音質を切り換えることができるようにすることは、一般的に行われている。一例として、最もビットレートが高く高画質（または高音質）が得られるが、記録可能時間が短いＨＱ(High Quarity)モード、実用上十分な画質と記録可能時間とが保証され、ビットレートが中程度なＬＰ(Long Play)モード、画質は実用上差し支えない程度とし、長時間記録を優先した、ビットレートが低いＳＰ(Standard Play)モードが設定される。
【００５７】
一方、このような記録時の画質モードは、映像および音声の記録フォーマット上、必ずしも表現できる訳ではなく、例えばメーカや装置の型番、機種に固有の仕様である場合も多い。また、ユーザに対しては、再生時に、再生しようとするコンテンツがどのような記録モードで記録されたのかを通知可能とされていることが望ましい。
【００５８】
そこで、メーカや型番、機種に固有の記録モードを記述可能なブロックMAKER OPTION pack()を定義することが考えられる。このブロックMAKER OPTION pack()は、例えば上述したブロックMAKER & MODEL ID pack()と並列的に用いるとより好ましい。一例として、ＳＥＩ"User Data Unregistered SEI"に対して、ブロックMAKER & MODEL ID pack()とブロックMAKER OPTION pack()とを併記する。
【００５９】
図５Ｂにおいて、フィールドmpd_idは、８ビットのデータ長を有し、このブロックone_modified_dv_pack()の種別を示す。すなわち、フィールドmpd_idが所定の値で、このブロックone_modified_dv_pack()がこのデータを記録した際の画質に関する記録モードを示す情報が格納されるブロックMAKER OPTION pack()であることが示される。
【００６０】
図４で示したフィールドmpd_dataは、このブロックMAKER OPTION pack()においては、例えば３２ビットのデータ長を有するフィールドREC_MODEに、このブロックMAKER OPTION pack()が格納されるＳＥＩ"User Data Unregistered SEI"を含むビデオデータが記録された際の、画質に関する記録モードが記述される。例えば、フィールドREC_MODEの値が"０"でＨＱモード、"１"でＳＰモード、"２"でＬＰモードを示す。記録モードは、この３種類に限らず、さらに多くてもよいし、ＨＱモードとＳＰモードの２種類のみなど少なくてもよい。
【００６１】
このように、ビデオデータに対して、ＳＥＩ"User Data Unregistered SEI"に当該ビデオデータを記録した際の画質に関する記録モードが記述されるブロックMAKER OPTION pack()と、当該ビデオデータを記録した記録機のメーカや型番、機種が記述されるブロックMAKER & MODEL ID pack()とを併記することで、当該ビデオデータを再生時に、ブロックMAKER & MODEL ID pack()から当該ビデオデータが自機あるいは自機と同メーカ、同機種、型番の記録機で記録されたか否かが判別できる。当該ビデオデータが自機あるいは自機と同メーカ、同機種、型番の記録機で記録されたと判別できれば、当該記録機に特有のデータの解釈や、処理を行うことができる。
【００６２】
一例として、再生時に、ブロックMAKER OPTION pack()から、再生されるビデオデータが記録された際の画質に関する記録モードを読み取り、例えば表示することができる。また、別の例として、画質に関する記録モードを、ＳＥＩ"User Data Unregistered SEI"に格納されるブロックone_modified_dv_pack()に対して定義することで、当該記録モードを示す情報がビデオデータのストリーム中に埋め込まれるため、当該ビデオデータに対して編集作業を行った場合でも、記録モード情報を引き継ぐことができる。
【００６３】
次に、この発明の実施の一形態について説明する。編集点付近の必要最小区間のみを再エンコードすることで編集を行う際には、編集対象のビデオストリームに含まれる所定のパラメータの値がストリームファイル中で固定的である必要がある。例えば、ＡＶＣＨＤフォーマットにおいては、１のストリームファイル内で以下のパラメータ（１）〜（６）が一定でなければならないとして規定されている。
パラメータ（１）：画枠の水平方向のサイズを示すパラメータ
パラメータ（２）：画枠の垂直方向のサイズを示すパラメータ
パラメータ（３）：表示画像のアスペクトを示すパラメータ
パラメータ（４）：フレームレートを示すパラメータ
パラメータ（５）：フレームの構造を示すパラメータ
パラメータ（６）：クローズドキャプションデータの有無を示すパラメータ
【００６４】
なお、ＡＶＣＨＤにおけるこれらパラメータ（１）〜（６）の具体的は、Ｈ．２６４｜ＡＶＣの規定に基づき、下記のようになる。パラメータ（１）は、ＳＰＳにおいてコードpic_width_in_mbs_minus1として記述される。パラメータ（２）は、ＳＰＳにおいてコードpic_height_in_map_units_minus1として記述される。パラメータ（５）は、ＳＰＳにおいてコードframe_mbs_only_flagとして記述される。また、パラメータ（３）は、ＳＰＳにおいてコードaspect_ratio_idcとして記述される。パラメータ（４）は、例えばＳＰＳにおけるコードvideo_formatに基づき求められる。これらコードaspect_ratio_idcおよびコードvideo_formatは、ＳＰＳにおいてオプションとして記述される。さらに、パラメータ（６）は、上述のＳＥＩ"User Data Unregistered SEI"において、フィールドtype_indicatorの値に基づき判断できる。すなわち、フィールドtype_indicatorの値が"0x47413934"のときに、クローズドキャプションのデータが存在すると判断される。
【００６５】
ここで、編集対象のストリームファイル中のこれらのパラメータ（１）〜（６）の取り得る値の全てについて編集装置側がエンコード可能であれば、常に編集点付近の必要最小区間のみを再エンコードする方法での編集方法を適用して編集処理を高速に行うことができる。ところが、編集装置をパラメータ（１）〜（６）の取り得る値の全てに対して対応可能なように設計すると、エンコーダの規模が大きくなるのが避けられず、また、コストも嵩んでしまう。
【００６６】
そこで、この発明では、ビデオストリームを編集する際に、編集対象のビデオストリームの所定位置に配置された、当該ビデオストリームを生成した記録装置を示す情報を抽出し、編集対象のビデオストリームを生成した記録装置が特定の記録装置であるか否かを判断する。
【００６７】
特定の記録装置とは、例えば、その記録装置で生成されたビデオストリームにおける上述のパラメータ（１）〜（６）それぞれの値に示される属性と同等の属性でのエンコードが、編集装置側で可能な値であるような記録装置である。特定の記録装置を示す情報は、例えば、図４および図５を用いて説明したＳＥＩ"User Data Unregistered SEI"において、ブロックModifiedDVPackMeta()に格納されるブロックMAKER & MODEL ID pack()に、フィールドmaker_IDおよびフィールドmaker_model_codeとして記述される。
【００６８】
判断の結果、編集対象のビデオストリームを生成した記録装置が特定の記録装置であるとされれば、編集点付近の必要最小区間のみを再エンコードする手法を用いてビデオストリームの編集を行う。若し、編集対象のビデオストリームを生成した記録装置が特定の記録装置ではないと判断されたら、編集対象のビデオストリームの全体をデコードし、デコードされたビデオデータに対してフレーム単位での編集を行い、編集されたビデオデータの全体を、再エンコードする。
【００６９】
この発明によれば、ビデオストリームの編集時に、編集点付近の必要最小区間のみを再エンコードする手法が適用可能かを、編集対象のビデオストリーム中の情報に基づき容易に判断することできる。また、編集装置側では、特定の記録装置で記録されたストリームファイルを主な編集対象とする場合、編集装置のエンコーダは、対象となる特定の記録装置と同等のパラメータのみに対応するだけで、必要最小区間を再エンコードする手法を用いた編集処理を行うことができる。
【００７０】
この発明の実施の一形態によるビデオストリームの一例の編集方法について説明する。図６Ａに例示されるように、ＧＯＰ＃１〜ＧＯＰ＃９の９個のＧＯＰからなるビデオストリームファイルを考える。ＧＯＰ＃１〜ＧＯＰ＃９に対して、ヘッダ＃１〜ヘッダ＃９がそれぞれ付加されている。ヘッダ＃１〜ヘッダ＃９のそれぞれには、上述した、このファイルを記録した記録装置の情報を示すデータmodified_dv_packを含むブロックModifiedDVPackMeta()が記述されるＳＥＩ"User Data Unregistered SEI"が格納されている。
【００７１】
このファイルに格納されるビデオストリームに対して、図６Ｂに一例が示されるように、ＧＯＰ＃３内のあるピクチャに編集点Ａを設定し、ＧＯＰ＃７内のあるピクチャに編集点Ｂを設定し、編集点Ａおよび編集点Ｂの間の区間Ａ−Ｂに含まれるピクチャを削除して編集点Ａおよび編集点Ｂを結合する編集処理を行うものとする。編集結果は、図６Ｃに一例が示されるように、編集点Ａおよび編集点Ｂ間のＧＯＰ＃４〜ＧＯＰ＃６が削除され、編集点Ａを含むＧＯＰ＃３と、編集点Ｂを含むＧＯＰ＃７とが編集点Ａおよび編集点Ｂで結合されたＧＯＰ＃３＋７が生成され、全体として、ＧＯＰ＃１、ＧＯＰ＃２、ＧＯＰ＃３＋７、ＧＯＰ＃８およびＧＯＰ＃９の５個のＧＯＰからなるビデオストリームが生成される。なお、図６Ｂおよび図６Ｃでは、繁雑さを避けるためにヘッダの記載を省略している。
【００７２】
図７は、この発明の実施の一形態による編集方法による一例の編集処理を示すフローチャートである。編集対象のファイルが指定されると、ステップＳ１０で、編集対象とされたストリームファイルから、このファイルを記録した記録装置の情報を示すデータmodified_dv_packのブロックMAKER & MODEL ID pack()（図４および図５参照）が検索される。
【００７３】
例えば、図６Ａを参照し、編集対象とされたストリームファイルに格納されるビデオストリームの先頭のヘッダ＃１のＮＡＬユニットが解析され、ＳＥＩ"User Data Unregistered SEI"が抽出される。そして、ＳＥＩ"User Data Unregistered SEI"から、このファイルを記録した記録装置の情報を示すデータmodified_dv_packを含むブロックModifiedDVPackMeta()が検索され、さらに、ブロックModifiedDVPackMeta()から、フィールドmpd_idの値に基づきブロックMAKER & MODEL ID pack()が検索される。
【００７４】
次のステップＳ１１で、ブロックMAKER & MODEL ID pack()に格納されるフィールドmaker_IDおよびフィールドmaker_model_codeがそれぞれ取得され、同じ属性でエンコードできる機種のデータが存在するか否かが判断される。なお、同じ属性とは、例えば、上述したパラメータ（１）〜（６）について、同一のパラメータ値で以てエンコード可能であることを意味する。
【００７５】
例えば、編集装置は、予めＲＯＭ(Read Only Memory)やハードディスクドライブなどの記憶手段に、当該編集装置が対応可能なパラメータでエンコードを行う記録装置の特定情報（フィールドmaker_IDおよびフィールドmaker_model_codeの値）を記憶しておき、記憶されているフィールドmaker_IDおよびフィールドmaker_model_codeの値のうち、編集対象のビデオストリームから取得されたフィールドmaker_IDおよびフィールドmaker_model_codeの値が一致するものが存在するか否かが判断される。
【００７６】
若し、ステップＳ１１で、同じ属性でエンコードできる機種のデータが存在すると判断されたら、処理はステップＳ１２に移行され、編集対象のビデオストリームの、編集点付近の必要最小区間のみを再エンコードする手法を用いて編集を行う一方、ステップＳ１１で、同じ属性でエンコードできる機種のデータが存在しないと判断されたら、処理はステップＳ１３に移行され、編集対象のビデオストリームの全区間を再エンコードする手法を用いて編集を行う。
【００７７】
なお、複数のストリームファイルを編集対象とする場合、例えば２つのストリームファイルのそれぞれに編集点を設けて、編集点に基づき当該２ファイルを結合する編集を行う場合、編集対象のそれぞれについて、ステップＳ１０およびステップＳ１１の処理を行う。例えば、編集対象の２ファイルについてそれぞれブロックMAKER & MODEL ID pack()を検索し（ステップＳ１０）、それぞれのブロックMAKER & MODEL ID pack()におけるフィールドmaker_IDおよびフィールドmaker_model_codeの値についての判断がなされる（ステップＳ１１）。
【００７８】
そして、編集対象の２ファイルにいおけるフィールドmaker_IDおよびフィールドmaker_model_codeの値が、共に、編集装置に記憶されている値に一致していれば、ステップＳ１２の編集点付近の必要最小区間のみの再エンコード処理を行うものとする。
【００７９】
ステップＳ１２による、編集点付近の必要最小区間のみを再エンコードする手法による一例の編集処理について、図８を用いて概略的に説明する。なお、図８に例示されるビデオストリームの構成は、上述した図６に対応し、９個のＧＯＰ＃１〜ＧＯＰ＃９からなる。このビデオストリームに対して、上述したようにしてＧＯＰ＃３内に編集点Ａを指定し、ＧＯＰ＃７内に編集点Ｂを指定し、区間Ａ−Ｂを削除する編集を行う。
【００８０】
先ず、図８Ａに例示されるように、編集点Ａを含むＧＯＰ＃３の直後のＧＯＰ＃４から、編集点Ｂを含むＧＯＰ＃７の直前のＧＯＰ＃６までがＧＯＰ単位で削除される。編集点Ａを含むＧＯＰ＃３と、当該ＧＯＰ＃３の直前のＧＯＰ＃２とがデコードされる。同様に、編集点Ｂを含むＧＯＰ＃７およびＧＯＰ＃７の直後のＧＯＰ＃８がデコードされる。
【００８１】
次に、図８Ｂに例示されるように、デコード済みのＧＯＰ＃３において、編集点ＡからＧＯＰ＃３の終端までがフレーム単位で削除される。同様に、デコード済みのＧＯＰ＃７において、ＧＯＰ＃７の先頭から編集点Ｂまでがフレーム単位で削除される。そして、図８Ｃに例示されるように、編集点Ａと編集点Ｂとが結合され、ＧＯＰ＃２、ＧＯＰ＃３＋７およびＧＯＰ＃８が再エンコードされる。
【００８２】
なお、上述の図８Ａの状態においてデコード前のＧＯＰ＃２をメモリなどに保持しておき、再エンコードをＧＯＰ＃３＋７およびＧＯＰ＃８に対して行い、保持されているデコード前のＧＯＰ＃２をエンコードされたＧＯＰ＃３＋７の直前に上書き複写することも考えられる。
【００８３】
ステップＳ１３による、編集対象のビデオストリームの全区間を再エンコードする手法による一例の編集処理について、図９を用いて概略的に説明する。編集対象のビデオストリームの構成は、上述の図６および図８と同等とする。この場合、図９Ａに例示されるように、編集対象のビデオストリームの全体（図９の例ではＧＯＰ＃１〜ＧＯＰ＃９）を対象としてデコードを行い、編集点Ａから編集点Ｂまでをフレーム単位で削除して編集点Ａおよび編集点Ｂを結合する。編集点Ａおよび編集点Ｂを結合した結果、ＧＯＰ＃３＋７が生成される。ＧＯＰ＃３＋７が生成されたら、編集結果のＧＯＰ＃１、ＧＯＰ＃２、ＧＯＰ＃３＋７、ＧＯＰ＃８およびＧＯＰ＃９の全体を再エンコードする（図９Ｂ）。
【００８４】
上述では、１のストリームファイルに格納されたビデオストリームに対して編集点Ａおよび編集点Ｂを設定して編集する例について説明したが、上述の処理は、２つのストリームファイルに格納されたビデオストリームに対してそれぞれ編集点Ａおよび編集点Ｂを設定して編集する場合についても、同様に適用可能である。
【００８５】
図１０は、２つのストリームファイルに格納されるビデオストリームに対して行う編集処理を概略的に示す。ＧＯＰ＃ｍを終端とするビデオストリーム１００が格納される第１のストリームファイルと、ＧＯＰ＃１を先頭とするビデオストリーム１０１が格納される第２のストリームファイルとを考える（図１０Ａ）。ビデオストリーム１００のＧＯＰ＃ｍ−１内に編集点Ａを設定し、ビデオストリーム１０１のＧＯＰ＃２内に編集点Ｂを設定する。そして、ビデオストリーム１００の編集点Ａから終端までを削除すると共に、ビデオストリーム１０１の先頭から編集点Ｂを削除し（図１０Ｂ）、編集点Ａおよび編集点Ｂを結合して１本のビデオストリーム１０２を作成する（図１０Ｃ）。
【００８６】
上述のステップＳ１２による、２つのストリームファイルに格納されるビデオストリームに対して編集を行う場合の、編集点付近の必要最小区間のみを再エンコードする手法による一例の編集処理について、図１１を用いて概略的に説明する。なお、図１１に例示されるビデオストリームの構成や編集点Ａおよび編集点Ｂの設定、編集箇所などは、上述した図１０と同等とする。
【００８７】
先ず、図１１Ａに例示されるように、ビデオストリーム１００において、編集点Ａを含むＧＯＰ＃ｍ−１の直後のＧＯＰ＃ｍがＧＯＰ単位で削除され、ＧＯＰ＃ｍ−１および直前のＧＯＰ＃ｍ−２とがデコードされる。同様に、ビデオストリーム１０１において、編集点Ｂを含むＧＯＰ＃２の直前のＧＯＰ＃１がＧＯＰ単位で削除され、ＧＯＰ＃２と直後のＧＯＰ＃３とがデコードされる。
【００８８】
次に、図１１Ｂに例示されるように、ビデオストリーム１００のデコード済みのＧＯＰ＃ｍ−１において、編集点ＡからＧＯＰ＃ｍ−１の終端までがフレーム単位で削除される。同様に、ビデオストリーム１０１のデコード済みのＧＯＰ＃２において、ＧＯＰ＃２の先頭から編集点Ｂまでがフレーム単位で削除される。そして、図１１Ｃに例示されるように、編集点Ａと編集点Ｂとが結合され、ＧＯＰ＃ｍ−２、ＧＯＰ＃（ｍ−１）＋（２）およびＧＯＰ＃３が再エンコードされ、１本のビデオストリーム１０２が作成される。
【００８９】
なお、上述の図１１Ａの状態においてデコード前のＧＯＰ＃２をメモリなどに保持しておき、再エンコードをＧＯＰ＃３＋７およびＧＯＰ＃８に対して行い、保持されているデコード前のＧＯＰ＃２をエンコードされたＧＯＰ＃３＋７の直前に上書き複写することも考えられる。
【００９０】
上述のステップＳ１３による、２つのストリームファイルに格納されるビデオストリームに対して編集を行う場合の、編集対象の全区間を再エンコードする手法による一例の処理について、図１２を用いて概略的に説明する。なお、図１２に例示されるビデオストリームの構成や編集点Ａおよび編集点Ｂの設定、編集箇所などは、上述した図１０と同等とする。この場合、図１２Ａに例示されるように、編集対象のビデオストリーム１００の全体と、ビデオストリーム１０１の全体とをそれぞれを対象としてデコードを行い、ビデオストリーム１００においては、編集点Ａから終端までをフレーム単位で削除し、ビデオストリーム１０１においても同様に、先頭から編集点Ｂまでをフレーム単位で削除する。そして、図１２Ｂに例示されるように、編集点Ａと編集点Ｂとを結合して全体を再エンコードし、１本のビデオストリーム１０２を得る。
【００９１】
ここで、図８および図９、ならびに、図１１および図１２を用いて説明した各例のように、編集点Ａおよび編集点Ｂを結合して新たなＧＯＰを生成する際に、編集点Ａおよび編集点ＢのＧＯＰ内での位置によっては、当該新たなＧＯＰに含まれるピクチャ数が所定数に満たない場合や、所定数を超える場合が起こり得る。このような場合には、ピクチャの複製や間引きなどを行い、当該新たなＧＯＰ内のピクチャ数を所定数に収めることが考えられる。
【００９２】
なお、図８および図１１を用いて説明した、編集点付近の必要最小区間のみを再エンコードする手法の手順は、この発明の実施の一形態を実施可能とするための一例であって、この方法に限定されるものではない。
【００９３】
また、上述では、図７のステップＳ１１における、同じ属性でエンコードできる機種のデータが存在するか否かの判断の結果、データが存在しないとされ、処理がステップＳ１３に移行した際に、編集対象の全区間を再エンコードする手法を用いて編集を行うように説明したが、これはこの例に限定されない。例えば、編集対象のビデオストリームが装置に対応していない可能性がある旨を、所定の表示手段などを用いて警告するようにしてもよい。
【００９４】
図１３は、この発明の実施の一形態に適用可能な記録装置１の一例の構成を示す。この記録装置は、入力されたビデオデータおよびオーディオデータを所定の方式で圧縮符号化し、圧縮符号化されたビデオデータおよびオーディオデータを多重化して１本のデータストリームとし、このデータストリームをファイルとして記録媒体に記録するようにしている。
【００９５】
この図１３に例示される記録装置１は、例えば、光学系や撮像素子などを備えたカメラブロックと組み合わせ、撮像した撮像信号に基づくビデオデータを記録媒体に記録する、ビデオカメラ装置の記録ブロックとして用いられるものである。これに限らず、記録装置１は、外部から入力されるビデオデータおよびオーディオデータを記録媒体に記録する、単独の記録装置として用いることもできる。
【００９６】
適用可能な圧縮符号化や多重化の方式としては、様々に考えられる。例えば、Ｈ．２６４｜ＡＶＣに規定される方式を、この発明の実施の一形態の圧縮符号化として適用することができる。また、多重化方式は、例えばＭＰＥＧ２システムズが適用される。
【００９７】
データを記録する記録媒体２０は、例えば記録可能なタイプのＤＶＤ(Digital Versatile Disc)を用いることができる。記録媒体２０として、より大容量を実現したＢｌｕ−ｒａｙ  Ｄｉｓｃ（ブルーレイディスク：登録商標）を適用することも考えられる。これに限らず、記録媒体２０として、半導体メモリを適用することもできるし、ハードディスクドライブを適用することもできる。
【００９８】
制御部５は、例えばＣＰＵ(Central Processing Unit)、ＲＡＭ(Random Access Memory)およびＲＯＭ(Read Only Memory)などからなり（図示しない）、ＲＯＭに予め記憶されたプログラムやデータに基づき、ＲＡＭをワークメモリとして用いてこの記録装置１の全体を制御する。また、制御部５上で動作するプログラムにより、この記録装置で用いられるファイルシステムが提供される。例えば、制御部５は、このファイルシステムに基づき、データが記録媒体２０に記録される際の、記録媒体２０の物理的なアドレスと当該データが格納されるファイルとの関連付けを行うと共に、各データが格納されるファイルの論理的な管理情報を生成する。
【００９９】
ＵＩ(User Interface)部６は、この記録装置の動作をユーザが操作するための操作子が所定に設けられ、操作子に対する操作に応じた制御信号を出力する。この制御信号は、制御部５に供給される。制御部５は、ユーザ操作に応じてＵＩ部６から供給された制御信号に基づきなされるプログラムの処理により、記録装置１の各部の動作を制御する。例えば、ＵＩ部６に対してなされた操作に応じて、記録装置による記録動作の開始および停止の動作が制御部５により制御される。
【０１００】
ベースバンドのディジタルビデオデータが端子１０から入力され、ビデオエンコーダ１１に供給される。ビデオエンコーダ１１は、複数フレームのビデオデータを格納可能なバッファメモリを有し、供給されたベースバンドのディジタルビデオデータをバッファメモリに溜め込んで、所定の方式で以て圧縮符号化する。ＡＶＣＨＤフォーマットすなわちＨ．２６４｜ＡＶＣに規定される方式に準じて圧縮符号化がなされるこの例では、例えば、ＤＣＴ(Discrete Cosine Transform)と画面内予測とによりフレーム内圧縮を行うと共に、動きベクトルを用いたフレーム間圧縮を行い、さらにエントロピー符号化を行い圧縮効率を高める。
【０１０１】
ビデオエンコーダ１１は、さらに、圧縮符号化されたビデオデータに基づきＳＰＳ、ＰＰＳ、ＳＥＩなどの付加情報を所定に生成する。このとき、この記録装置１のメーカ名を識別する識別情報と、機種や型番を識別する識別情報とを、ＳＥＩ"User Data Unregistered SEI"のブロックMAKER & MODEL ID pack()におけるフィールドmaker_IDおよびフィールドmaker_model_codeの値として生成する。これらメーカ名や、機種、型番の識別情報は、記録装置１が有する図示されないＲＯＭに予め記憶される。ビデオエンコーダ１１は、圧縮符号化されたビデオデータや、これらＳＰＳ、ＰＰＳ、ＳＥＩなどの付加情報からＮＡＬユニットを形成し、Ｈ．２６４｜ＡＶＣエレメンタリストリーム（ＥＳ）として出力する。
【０１０２】
なお、Ｈ．２６４｜ＡＶＣの規定によれば、デコーダモデルにおいて、デコーダの入力側のバッファである符号化ピクチャバッファ(ＣＰＢ：Coded Picture Buffer)と、出力側のバッファである復号ピクチャバッファ(ＤＰＢ：Decoded Picture Buffer)とがそれぞれ定義され、エンコーダは、これらＣＰＢおよびＤＰＢを破綻させないように、ビットストリーム（エレメンタリストリーム）を生成しなければならないとされている。ビデオエンコーダ１１は、発生される符号量がこの規定を満たすように、ビデオデータの符号化処理を制御する。
【０１０３】
その際、発生した符号量に基づき、ＣＰＢすなわちデコーダの入力側のバッファに対する畜量情報を求め、符号化で得られたエレメンタリストリームに所定に挿入することができる。例えば、ＮＡＬユニットにおいて、ＳＰＳのオプションとされているコードbit_rate_scale、コードcpb_size_scale、コードbit_rate_value_minus1、コードcpb_size_value_minus1などに、バッファの畜量情報を記述することができる。この畜量情報は、ピクチャ毎に記述してもよいし、ＧＯＰ毎に記述してもよい。
【０１０４】
マルチプレクサ（ＭＵＸ）１２は、ビデオエンコーダ１１から出力されたエレメンタリストリームと、図示されないオーディオエンコーダから出力されたオーディオデータのエレメンタリストリームを所定の方式で多重化し、１本のデータストリームとして出力する。ＭＰＥＧ２システムズに準じて多重化が行われるこの例では、ＭＰＥＧ２のトランスポートストリームを用いて、供給されたビデオデータのエレメンタリストリームと、オーディオデータのエレメンタリストリームとを時分割で多重化する。
【０１０５】
例えば、マルチプレクサ１２は、バッファメモリを有し、供給されたエレメンタリストリームを一旦バッファメモリに格納する。バッファメモリに格納されたエレメンタリストリームは、所定サイズ毎に分割されヘッダが付加されて、ＰＥＳ(Packetized Elementary Stream)パケット化される。ヘッダには、パケットに格納されるデータの再生時刻を示すＰＴＳや復号時刻を示すＤＴＳといった、ＭＰＥＧ２システムズに規定される所定の情報が格納される。
【０１０６】
ＰＥＳパケットは、さらに分割されてトランスポートパケット（ＴＳパケット）のペイロードに詰め込まれる。ＴＳパケットのヘッダには、ペイロードに詰め込まれたデータ種別などを識別するためのＰＩＤ(Packet Identification)が格納される。ＴＳパケットに対してさらに所定データ長のヘッダが付加され、ソースパケットが形成される。マルチプレクサ１２は、このソースパケットを連ねて１本のデータストリームとして出力する。
【０１０７】
マルチプレクサ１２から出力されたデータストリームは、ストリームバッファ１３に一時的に格納される。ストリームバッファ１３に対するデータストリームの書き込みのタイミングと、ストリームバッファ１３からのデータストリームの読み出しのタイミングとをソースパケット単位で所定に制御することで、記録媒体２０に対するアクセス速度と、オーディオおよびビデオデータのエンコードの信号処理速度との間の整合性がとられる。
【０１０８】
ストリームバッファ１３から読み出されたソースパケットは、データストリームとして記録処理部１４に供給される。記録処理部１４は、供給されたデータに対してエラー訂正符号化処理および記録符号化処理を施し、得られたディジタルデータを所定に変調して記録媒体２０に記録する。このとき、記録処理部１４は、制御部など上位からの命令に基づき、指定されたアドレスに対してデータを書き込む。
【０１０９】
図１４は、この発明の実施の一形態に適用可能な編集装置２の一例の構成を示す。この編集装置２は、例えば上述した記録装置１で記録媒体２０に記録されたストリームファイルに格納されるビデオストリームを編集可能とされている。すなわち、編集装置２は、記録媒体２０に記録されたストリームファイルを再生してビデオストリームを取り出し、所定にデコードおよびエンコードを行って再び記録媒体２０に記録するようにされている。なお、編集装置２は、記録側の構成として上述した記録装置１と同様の構成を有するもので、図１３と共通する部分には同一の符号を付し、詳細な説明を省略する。
【０１１０】
この編集装置２の全体は、図示されない制御部により、プログラムに従い制御される。制御部は、ＣＰＵ(Central Processing Unit)、ＲＯＭ(Read Only Memory)およびＲＡＭ(Random Access Memory)を有し、ＲＯＭに予め格納されるプログラムやデータに基づき、ＲＡＭをワークメモリとして動作し、編集装置２の各部とコマンドやステータス、データなどのやりとりを行い、編集装置２の動作を制御する。また、制御部上で動作するプログラムにより、この編集装置２で用いられるファイルシステムが提供される。例えば、制御部は、ＵＩ部４１に対する所定の操作に応じて、ファイルシステムにより記録媒体２０に記録されたファイルにアクセスすることができるようにされている。
【０１１１】
再生処理部３０は、記録媒体２０に記録されたデータの再生を制御する。すなわち、再生処理部３０は、制御部など上位からの命令に基づき記録媒体２０の指定されたアドレスからデータの読み出しを行う。再生処理部３０は、このデータの読み出しにより記録媒体２０から再生された再生信号を復調して再生ディジタルデータとし、再生ディジタルデータの記録符号を復号化すると共にエラー訂正符号を復号してエラー訂正を行い、再生データストリームを得る。この再生データストリームは、ソースパケットが連なって１本のストリームをなしているものである。
【０１１２】
再生処理部３０から出力されたデータストリームは、ストリームバッファ３１に一時的に格納される。ストリームバッファ３１に対するデータストリームの書き込みのタイミングと、ストリームバッファ３１からのデータストリームの読み出しのタイミングとをソースパケット単位で所定に制御することで、記録媒体２０に対するアクセス速度と、オーディオおよびビデオデータのデコードの信号処理速度との間の整合性がとられる。
【０１１３】
ストリームバッファ３１から読み出されたデータストリームは、デマルチプレクサ（ＤＥＭＵＸ）３２に供給される。デマルチプレクサ３２は、データストリームに所定に多重化されたビデオデータとオーディオデータとを分離してそれぞれ取り出す。この例では、デマルチプレクサ３２は、供給されたデータストリームからソースパケットを抽出し、抽出されたソースパケットのヘッダを分離してＴＳパケットとする。デマルチプレクサ３２は、さらに、ＴＳパケットのヘッダからＰＩＤを検出し、ＴＳパケットをペイロードに格納されるデータ種別毎に振り分ける。そして、振り分けられたＴＳパケットのそれぞれについて、ペイロードに格納されたデータを取り出し、ＰＥＳパケットを再構築する。さらに、ＰＥＳパケットのペイロードに格納された圧縮ビデオデータや圧縮オーディオデータを取り出し、ＰＥＳヘッダに格納された情報などに基づきヘッダ情報などを付加し、それぞれ１本のエレメンタリストリームとして出力する。
【０１１４】
デマルチプレクサ３２から出力された、オーディオデータのエレメンタリストリームは、図示されないオーディオ処理部に供給される。
【０１１５】
デマルチプレクサ３２から出力された、ビデオデータのエレメンタリストリームは、ビデオデコーダ３３に供給される。ビデオデコーダ３３は、複数フレームのビデオデータを格納可能なバッファメモリを有し、供給された圧縮ビデオデータをバッファメモリに溜め込んで、圧縮符号化方式に対応した復号化方式でデコードし、ベースバンドのディジタルビデオデータとして出力する。
【０１１６】
ビデオデータの圧縮符号化がＨ．２６４｜ＡＶＣに規定される方式に準じて行われるこの例では、ビデオデコーダ３３は、Ｈ．２６４｜ＡＶＣに規定される方式に準じてデコード処理を行う。すなわち、ビデオデコーダ３３は、ＮＡＬユニットを解析し、圧縮符号化されたビデオデータやＳＰＳ、ＰＰＳ、ＳＥＩなどの付加情報をＮＡＬユニットから取り出す。ビデオデコーダ３３は、ＮＡＬユニットから取り出した情報に基づき圧縮符号化されたビデオデータの復号化処理を行う。
【０１１７】
ビデオデコーダ３３は、後述するデマルチプレクサ（ＤＥＭＵＸ）３２で抽出される、ＤＴＳ(Decoding Time Stamp)およびＰＴＳ(Presentation Time Stamp)で示される時刻に基づき、デコードおよび出力を行うことができる。ビデオデコーダ３３でデコードされて得られたベースバンドのディジタルビデオデータは、端子３４から出力される。また、この編集装置２に映像表示を行うモニタ３５が接続されている場合には、ビデオデコーダ３３から出力されたベースバンドのディジタルビデオデータは、モニタ３５にも供給される。なお、モニタ３５は、ベースバンドのディジタルビデオデータに対応しているものとする。
【０１１８】
なお、Ｈ．２６４｜ＡＶＣ規格では、適用可能な画像フォーマットは極めて多岐にわたる。ＡＶＣＨＤフォーマットは、記録可能な記録媒体に対する記録フォーマットであって、適用可能な画像フォーマットを、アスペクト比が１６：９で画枠サイズが１９２０ライン×１０８０画素のＨＤ(High Definition)フォーマットと、アスペクト比が４：３で画枠サイズが７２０ライン×４８０画素のＳＤ(Standard Definition)フォーマットとに限定している。
【０１１９】
ここで、ビデオデータの圧縮符号化処理と、圧縮符号化されたビデオデータの復号化処理とを比較した場合、一般的には、復号化処理の負荷よりも圧縮符号化処理の負荷の方が遙かに大きいとされている。そのため、この実施の一形態による編集装置２においては、ビデオエンコーダ１１の機能を制限して例えばエンコード可能な画像フォーマットをＨＤフォーマットのみとしている。一方、比較的処理の負荷が小さいビデオデコーダ３３は、ＳＤフォーマットおよびＨＤフォーマットの両方に対応する。
【０１２０】
ＵＩ部４１は、ビデオデータの編集を行うために必要な様々な操作子が設けられ、操作子の操作に対応した制御信号を出力する。エディット部４０は、ＵＩ部４１から供給された制御信号に基づき図示されない制御部とコマンドやデータのやりとりを行ってこの編集装置２の全体を制御し、記録媒体２０に記録されるストリームファイルに格納されるビデオストリームに対して編集処理を行う。エディット部４０は、ハードディスクドライブ４２を有し、編集処理を、このハードディスクドライブ４２を用いて行う。
【０１２１】
ビデオエンコーダ１１は、エディット部４０から供給されるビデオデータをＨ．２６４｜ＡＶＣに規定される方式に準じて圧縮符号化する。すなわち、図１３を用いて説明した記録装置１の場合と同様にしてビデオデータを所定に圧縮符号化すると共に、圧縮符号化されたビデオデータに基づきＳＰＳ、ＰＰＳ、ＳＥＩなどの付加情報を所定に生成する。このとき、この編集装置２のメーカ名を識別する識別情報と、機種や型番を識別する識別情報とを、ＳＥＩ"User Data Unregistered SEI"のブロックMAKER & MODEL ID pack()におけるフィールドmaker_IDおよびフィールドmaker_model_codeの値として生成し、ＳＥＩ"User Data Unregistered SEI"に追加する。ビデオエンコーダ１１は、圧縮符号化されたビデオデータや、これらＳＰＳ、ＰＰＳ、ＳＥＩなどの付加情報からＮＡＬユニットを形成し、Ｈ．２６４｜ＡＶＣエレメンタリストリーム（ＥＳ）として出力する。
【０１２２】
マルチプレクサ１２は、エディット部４０から供給されたエレメンタリストリームと、図示されないオーディオエンコーダから出力されたオーディオデータのエレメンタリストリームをＭＰＥＧ２システムズに準じた方式で多重化する。すなわち、マルチプレクサ１２は、供給されたエレメンタリストリームを所定サイズ毎に分割し、ＰＴＳやＤＴＳなど所定の情報が格納されたヘッダを付加してＰＥＳ(Packetized Elementary Stream)パケット化する。マルチプレクサ１２は、ＰＥＳパケットをさらに分割してＴＳパケットペイロードに詰め込み、ＰＩＤを所定に生成してヘッダを付加する。ＴＳパケットに対してさらに所定データ長のヘッダを付加してソースパケットを形成し、ソースパケットを連ねて１本のデータストリームとして出力する。
【０１２３】
マルチプレクサ１２から出力されたデータストリームは、ストリームバッファ１３を介して記録処理部１４に供給され、所定にエラー訂正符号化および記録符号化され、変調処理されて記録信号とされ、記録媒体２０に記録される。
【０１２４】
この編集装置２による編集処理について、概略的に説明する。一例として、図６を用いて説明したような、１のストリームファイルに格納されるビデオストリームに対して編集点Ａおよび編集点Ｂを指定して編集を行う場合について説明する。ユーザは、ＵＩ部４１に対して所定の操作を行い、記録媒体２０に記録されるストリームファイルのうち編集対象とするファイルを指定する。エディット部４０は、ＵＩ部４１から出力される制御信号に基づき編集対象のストリームファイルを記録媒体２０から読み出すように制御する。ストリームファイルは、記録媒体２０から読み出されると、エレメンタリストリームが抽出され、この抽出されたエレメンタリストリームがハードディスクドライブ４２に書き込まれる。
【０１２５】
例えば、記録媒体２０から読み出されたストリームファイルは、再生処理部３０およびストリームバッファ３１を介してデマルチプレクサ３２に供給されて、パケット構造が分解され、ヘッダ情報が抜き出されると共にペイロードのデータが取り出されてエレメンタリストリームが再構築される。このエレメンタリストリームがエディット部４０に供給され、ハードディスクドライブ４２に書き込まれる。
【０１２６】
ＵＩ部４１に対する所定の操作に応じて、ハードディスクドライブ４２からエレメンタリストリームが読み出され、ビデオデコーダ３３に供給されベースバンドのディジタルビデオデータとされる。このディジタルビデオデータは、モニタ３５に供給され映出される。ユーザは、モニタ３５に映出された映像を見ながらＵＩ部４１を操作して、編集点Ａおよび編集点Ｂを指定する。編集点Ａおよび編集点Ｂの指定は、例えばフレーム番号やタイムコードなどによりなされる。編集点Ａおよび編集点Ｂの情報は、ＵＩ部４１からエディット部４０に供給され、保持される。そして、ＵＩ部４１に対して例えば編集実行を指示する操作を行うと、エディット部４０は、ＵＩ部４１からの制御信号に基づき、編集処理を開始する。
【０１２７】
すなわち、図７を用いて既に説明したように、ハードディスクドライブ４２に書き込まれたエレメンタリストリームがビデオデコーダ３３に供給される。ビデオデコーダ３３は、供給されたエレメンタリストリームのＮＡＬユニットを解析し、ＳＥＩ"User Data Unregistered SEI"を抽出する。抽出されたＳＥＩ"User Data Unregistered SEI"は、エディット部４０に供給される。
【０１２８】
エディット部４０は、供給されたＳＥＩ"User Data Unregistered SEI"から、このファイルを記録した記録装置の情報を示すデータmodified_dv_packを含むブロックModifiedDVPackMeta()が検索され、さらに、ブロックModifiedDVPackMeta()から、フィールドmpd_idの値に基づきブロックMAKER & MODEL ID pack()が検索される（図７のステップＳ１０）。エディット部４０は、検索されたブロックMAKER & MODEL ID pack()に格納されるフィールドmaker_IDと、フィールドmaker_model_codeとに基づき、図７のステップＳ１１による、同じ属性でエンコードできる機種のデータが存在するか否かの判断を行う。
【０１２９】
なお、この編集装置２と同じ属性でエンコードできる機種の情報は、制御部が有する図示されないＲＯＭや、エディット部４０に接続されるハードディスクドライブ４２などに予め記憶されているものとする。また、編集対象のストリームファイルにおけるＳＥＩ"User Data Unregistered SEI"の情報は、編集点Ａおよび編集点Ｂを指定するために当該ストリームファイルを再生する際に取得し、エディット部４０に保持していてもよい。
【０１３０】
同じ属性でエンコードできる機種のデータが存在すると判断されれば、図７のステップＳ１２による、必要最小区間のみを再エンコードする手法を用いて編集処理が行われる。
【０１３１】
一例として、図８を用いて説明したように、エディット部４０は、ハードディスクドライブ４２に書き込まれたエレメンタリストリームから、編集点Ａを含むＧＯＰ＃３と、ＧＯＰ＃３の直前のＧＯＰ＃２とを読み出す。例えば、エディット部４０は、エレメンタリストリームのＮＡＬユニットを所定に解析しながらＧＯＰの位置を検出し、所望のＧＯＰを読み出す。読み出されたＧＯＰ＃２およびＧＯＰ＃３は、ビデオデコーダ３３に供給され、デコードされる。デコードされたデータは、エディット部４０に供給され、ハードディスクドライブ４２に書き込まれる。エディット部４０が有する図示されないＲＡＭに書き込んでもよい。エディット部４０は、ハードディスクドライブ４２に書き込まれた、デコード済みのＧＯＰ＃３について、編集点Ａ以降を削除する。
【０１３２】
同様に、エディット部４０は、ハードディスクドライブ４２に書き込まれたエレメンタリストリームの、編集点Ｂを含むＧＯＰ＃７と、ＧＯＰ＃７直後のＧＯＰ＃８とを読み出す。読み出されたＧＯＰ＃７およびＧＯＰ＃８は、ビデオデコーダ３３に供給され、デコードされる。デコードされたデータは、エディット部４０に供給され、ハードディスクドライブ４２などに書き込まれる。エディット部４０は、ハードディスクドライブ４２に書き込まれた、デコード済みのＧＯＰ＃７について、先頭から編集点Ｂまでを削除する。
【０１３３】
次に、エディット部４０は、編集点Ａ以降が削除されたＧＯＰ＃３と、先頭から編集点Ｂまでが削除されたＧＯＰ＃７とを接続し、新たなＧＯＰであるＧＯＰ＃３＋７を作成する。ＧＯＰの接続の際に、接続されたＧＯＰに含まれるピクチャ数が所定数にならないときは、ピクチャの補間や間引きなどを行い、ピクチャ数が所定数になるようにする。
【０１３４】
エディット部４０は、ハードディスクドライブ４２に書き込まれているＧＯＰ＃２、ＧＯＰ＃３＋７およびＧＯＰ＃８をビデオエンコーダ１１に供給し、再エンコードする。再エンコードされたＧＯＰ＃２、ＧＯＰ＃３＋７およびＧＯＰ＃８は、ハードディスクドライブ４２に書き込まれる。このとき、ハードディスクドライブ４２に最初に書き込まれた、デコード前のＧＯＰ＃２を、再エンコードされハードディスクドライブ４２に書き込まれたＧＯＰ＃２に上書きすることができる。エディット部４０は、ハードディスクドライブ４２に書き込まれたＧＯＰ＃１、ＧＯＰ＃２、ＧＯＰ＃３＋７、ＧＯＰ＃８およびＧＯＰ＃９を順次、連続的に読み出すことで、１本のエレメンタリストリームを出力させることができる。
【０１３５】
なお、編集対象のエレメンタリストリームに上述したバッファの畜量情報が記述されている場合には、エディット部４０は、この畜量情報に基づき発生符号量を所定に制御して、ＧＯＰのエンコードを行う。例えば、編集点Ａが含まれるＧＯＰ＃３の直前のＧＯＰ＃２、編集点Ａを含むＧＯＰ＃３、編集点Ｂを含むＧＯＰ＃７およびＧＯＰ＃７直後のＧＯＰ＃８についてＮＡＬユニットを解析してバッファの畜量情報を取得し、取得された畜量情報に基づき、各ＧＯＰがシームレスに接続されて再生可能なように、エンコード処理が行われる。
【０１３６】
一方、図７のステップＳ１１において、ＳＥＩ"User Data Unregistered SEI"内のブロックModifiedDVPackMeta()におけるブロックMAKER & MODEL ID pack()の情報に基づき、同じ属性でエンコードできる機種のデータが存在しないと判断されれば、図７のステップＳ１３による、編集対象のビデオストリームの全区間を再エンコードする手法を用いて編集処理が行われる。
【０１３７】
一例として、図９を用いて説明したように、エディット部４０は、ハードディスクドライブ４２に書き込まれたエレメンタリストリームを読み出して、ビデオデコーダ３３に供給する。ビデオデコーダ３３は、供給されたエレメンタリストリームを全てデコードする。デコードされたデータは、エディット部４０に供給され、ハードディスクドライブ４２に供給される。
【０１３８】
エディット部４０は、デコードされたビデオデータに対し、編集点Ａから編集点Ｂまでの間をフレーム単位で削除して編集点Ａおよび編集点Ｂを接続する。このとき、エディット部４０は、編集点Ａおよび編集点Ｂの接続の際に、接続部を含むＧＯＰに含まれるピクチャ数が所定数にならないときは、ピクチャの補間や間引きなどを行い、ＧＯＰ内のピクチャ数が所定数となるようにする。
【０１３９】
編集点Ａおよび編集点Ｂが接続されたビデオデータは、ビデオエンコーダ１１に供給される。ビデオエンコーダ１１は、供給されたビデオデータを全長にわたって再エンコードして１本のエレメンタリストリームとして出力する。このエレメンタリストリームは、エディット部４０に供給され、ハードディスクドライブ４２に書き込まれる。ハードディスクドライブ４２に書き込まれたこのデータは、ハードディスクドライブ４２から読み出してマルチプレクサ１２、ストリームバッファ１３および記録処理部１４でそれぞれ所定に処理して記録媒体２０に書き込んでもよいし、図示されない外部インターフェイスを介して外部に出力してもよい。
【０１４０】
なお、２つのストリームファイルに対して編集点Ａおよび編集点Ｂをそれぞれ設定して編集して１本のデータストリームを得る場合の処理も、上述の１のストリームファイルに対して編集点Ａおよび編集点Ｂをそれぞれ設定して編集処理を行う場合と同様の処理となるため、説明を省略する。
【０１４１】
上述では、編集装置２は、記録媒体２０を再生し、記録媒体２０に記録されたストリームファイルに格納されたデータストリームに対して編集を行うように説明したが、これはこの例に限定されない。すなわち、編集装置２は、外部から供給されたビデオデータを編集するようにしてもよい。
【０１４２】
ビデオデータがＨ．２６４｜ＡＶＣのエレメンタリストリームの形式で外部から供給される場合には、例えば、外部から供給されたエレメンタリストリームがエディット部４０に入力され、ハードディスクドライブ４２に書き込まれる。そして、図７を用いて説明した手順でデータストリームに埋め込まれたメーカ情報および機種または型番情報に基づき判断処理を行い、判断結果に応じて、必要最小区間のみを再エンコードする手法、あるいは、編集対象のビデオストリームの全区間を再エンコードする手法の何れかにより、編集処理を行う、
【０１４３】
また、ビデオデータがソースパケットが連なるデータストリームの形式や、ＭＰＥＧ２システムズによるトランスポートストリームの形式で外部から供給される場合には、例えば、外部から供給されたデータストリームがデマルチプレクサ３２に入力され、パケット構造が分解され、ヘッダ情報が抜き出されると共にペイロードのデータが取り出されてエレメンタリストリームが再構築される。このエレメンタリストリームがエディット部４０に供給され、ハードディスクドライブ４２に書き込まれる。以降の処理は、上述と同様である。
【０１４４】
上述の図１４では、この発明の実施の一形態による編集処理を行う編集装置２が専用的なハードウェアとして構成されているように説明したが、これはこの例に限られず、例えば、パーソナルコンピュータといったコンピュータ装置で編集装置を構成することも可能である。
【０１４５】
図１５は、一般的なコンピュータ装置３の一例の構成を概略的に示す。バス５０に対してＣＰＵ５１、ＲＯＭ５２およびＲＡＭ５３が接続される。ＣＰＵ５１は、ＲＯＭ５２や後述するハードディスクドライブ６０に格納されたプログラムやデータに従い、ＲＡＭ５３をワークメモリとして用い、バス５０を介して各部と通信を行いながら、このコンピュータ装置３における各部の動作を制御する。
【０１４６】
バス５０には、また、グラフィクス処理部５４および通信インターフェイス（通信Ｉ／Ｆ）５５が接続される。グラフィクス処理部５４には、モニタ５４Ａが接続され、ＣＰＵ５１から供給された表示制御信号を映像信号に変換してモニタ５４Ａに供給し、モニタ５４Ａに対して所定の画像を映出させることができる。また、通信Ｉ／Ｆ５５は、例えばインターネットやＬＡＮ(Local Area Network)といったネットワークと接続され、ＣＰＵ５５の命令に基づき、ネットワークを介してこのコンピュータ装置３と外部との通信を制御する。
【０１４７】
バス５０に対して、さらに、入力インターフェイス（入力Ｉ／Ｆ）５６、ビデオインターフェイス（ビデオＩ／Ｆ）５７、ドライブ装置５８およびハードディスクドライブ６０が接続される。
【０１４８】
入力Ｉ／Ｆ５６には、例えばマウス５６Ａなどのポインティングデバイスや、キーボード５６Ｂといったキャラクタ入力デバイスといった、ユーザによる入力を受け付ける入力デバイスが接続される。入力Ｉ／Ｆ５６に接続される入力デバイスは、これらの例に限らず、回転角に応じた制御信号が出力されるロータリエンコーダや、スティックを倒した方向や度合いに応じて制御信号を出力するジョイスティック、平面上の位置を指定することで値を出力するタブレットなど、様々に考えられる。
【０１４９】
データＩ／Ｆ５７は、このコンピュータ装置３と外部の機器との間でディジタルデータのやりとりを行うためのインターフェイスであって、例えばＵＳＢ(Universal Serial Bus)やＩＥＥＥ１３９４(Institute Electrical and Electronics Engineers 1394)といったインターフェイスが適用可能である。インターフェイスが対応する外部機器が入出力端５７Ａに接続されると、外部機器とデータＩ／Ｆ５７との間でインターフェイスのプロトコルに従ってやりとりがなされ、外部機器とコンピュータ装置３との間でデータ通信可能な状態とされる。
【０１５０】
ドライブ装置５８は、例えばディスク状記録媒体に対応し、装填された記録可能なタイプの記録媒体に対するデータの書き込みや、記録媒体からのデータの読み出しを行うことができる。記録可能なタイプの記録媒体は、例えば記録可能なタイプのＤＶＤを適用可能である。これに限らず、ドライブ装置５８は、記録可能なタイプのＣＤ(Compact Disc)やＢｌｕ−ｒａｙ  Ｄｉｓｃに対応可能としてもよい。さらに、ドライブ装置５８は、記録可能なタイプの記録媒体のみならず、再生専用の記録媒体、例えばＤＶＤ−ＲＯＭ、ＣＤ−ＲＯＭ(Compact Disc-Read Only Memory)からデータを読み出すことができる。また、ドライブ装置５８は、ディスク状記録媒体に対応可能であるのに限られず、例えばフラッシュメモリなどの半導体メモリを記録媒体５９として対応してもよい。
【０１５１】
ハードディスクドライブ６０は、上述したように、ＣＰＵ５１で用いるプログラムやデータが格納される。勿論、バス５０を介して供給された他のデータの書き込みおよび読み出しを行うことができる。
【０１５２】
このようなコンピュータ装置３に対して、この発明の実施の一形態による編集方法を実行するための編集プログラムを搭載させることで、このコンピュータ装置３をＡＶＣＨＤフォーマットに対応したビデオストリームの編集装置として作動させることができる。すなわち、この編集プログラムにより、図１４を用いて説明した編集装置２におけるビデオエンコーダ１１、マルチプレクサ１２、デマルチプレクサ３２、ビデオデコーダ３３およびエディット部４０の機能がＣＰＵ５１により実現される。なお、ビデオエンコーダ１１は、処理の負荷が大きいので、バス５０に接続されＣＰＵ５１に制御される個別のハードウェアとしてもよい。
【０１５３】
編集プログラムは、例えばＣＤ−ＲＯＭやＤＶＤ−ＲＯＭといった記録媒体に記録されて提供される。一例として、編集プログラムがＤＶＤ−ＲＯＭに記録されている場合、当該ＤＶＤ−ＲＯＭがドライブ装置５８に装填されると、例えば、ＣＰＵ５１の制御に基づき、ドライブ装置５８により装填されたＤＶＤ−ＲＯＭに記録された、編集プログラムが格納されたプログラムファイルが読み出される。編集プログラムは、プログラムファイルから読み出され、ＣＰＵ５１により所定に展開されてハードディスクドライブ６０に書き込まれると共に、システムに登録され、このコンピュータ装置３上で実行可能な状態とされる。
【０１５４】
なお、コンピュータ装置３に対して編集プログラムを提供する方法は、記録媒体を介する方法に限られない。例えば、ネットワークに接続されたサーバ上に当該プログラムファイルを用意しておき、サーバからネットワークを介して通信Ｉ／Ｆ５５で取得するようにしてもよい。また、データＩ／Ｆ５７を介してプログラムファイルを受け取るようにもできる。
【０１５５】
このように編集プログラムが実行可能に搭載されたコンピュータ装置３で、この発明の実施の一形態による編集方法を実行する際の一例の処理について、概略的に説明する。例えば、図１３で示した記録装置１でストリームファイルが記録された記録媒体２０をドライブ５８に装填し、記録媒体２０に記録されたストリームファイルに対して編集を行う。
【０１５６】
ストリームファイルが記録された記録媒体２０がドライブ装置５８に装填され、ユーザにより入力Ｉ／Ｆ５６に接続された入力デバイスを用いて、記録媒体２０に記録されたストリームファイルの編集が指示される。
【０１５７】
ＣＰＵ５１は、記録媒体２０に記録されたストリームファイルをハードディスクドライブ６０にコピーするように制御する。ＣＰＵ５１は、ハードディスクドライブ６０に書き込まれたストリームファイルを読み込み、ＲＡＭ５３をワークメモリとして用いてパケットを分解し、各パケットのヘッダから所定の情報を収集すると共に、ビデオおよびオーディオのエレメンタリストリームを再構築する。エレメンタリストリームは、ハードディスクドライブ６０に書き込まれる。なお、以下では、ビデオデータのエレメンタリストリームについて、説明を行う。
【０１５８】
ＣＰＵ５１は、ハードディスクドライブ６０に書き込まれたエレメンタリストリームを読み込んでデコードし、ベースバンドのビデオデータを得る。このベースバンドのビデオデータは、グラフィクス処理部５４に供給され、映像信号に変換され、モニタ５４Ａに映出される。ユーザは、モニタ５４Ａに映出された映像を見ながら入力Ｉ／Ｆ５６に接続された入力デバイスを操作して、編集点Ａおよび編集点Ｂを、フレーム番号やタイムコードなどで指定する。編集点Ａおよび編集点Ｂの情報は、例えばＲＡＭ５３に保持される。
【０１５９】
入力デバイスを用いて編集実行が指示されると、ＣＰＵ５１は、ハードディスクドライブ６０に書き込まれたエレメンタリストリームに対して編集処理を開始する。すなわち、図７を用いて既に説明したように、ＣＰＵ５１は、ハードディスクドライブ６０に書き込まれたエレメンタリストリームのＮＡＬユニットを解析し、ＳＥＩ"User Data Unregistered SEI"を抽出する。そして、抽出されたＳＥＩ"User Data Unregistered SEI"から、記録媒体２０に編集対象のエレメンタリストリームが格納されたファイルを記録した記録装置の情報を示すデータmodified_dv_packを含むブロックModifiedDVPackMeta()が検索され、さらに、ブロックModifiedDVPackMeta()から、フィールドmpd_idの値に基づきブロックMAKER & MODEL ID pack()が検索される（図７のステップＳ１０）。
【０１６０】
なお、編集対象のストリームファイルにおけるＳＥＩ"User Data Unregistered SEI"の情報は、編集点Ａおよび編集点Ｂを指定するために当該ストリームファイルを再生する際に取得し、ＲＡＭ５３に保持していてもよい。
【０１６１】
ＣＰＵ５１は、検索されたブロックMAKER & MODEL ID pack()に格納されるフィールドmaker_IDと、フィールドmaker_model_codeとに基づき、図７のステップＳ１１による、同じ属性でエンコードできる機種のデータが存在するか否かの判断を行う。
【０１６２】
なお、このコンピュータ装置３に搭載される編集プログラムと同じ属性でエンコードできる機種の情報は、例えば当該編集プログラムが格納されるプログラムファイルに、編集プログラムと共に格納される。これに限らず、別のファイルとして当該プログラムファイルが記録される記録媒体に記録されて提供されてもよいし、ネットワークに接続された外部のサーバなどからネットワークを介して提供されてもよい。
【０１６３】
同じ属性でエンコードできる機種のデータが存在すると判断されれば、図７のステップＳ１２による、必要最小区間のみを再エンコードする手法を用いて編集処理が行われる。
【０１６４】
一例として、図８を用いて説明したようにＣＰＵ５１は、ハードディスクドライブ６０に書き込まれたエレメンタリストリームから、編集点Ａを含むＧＯＰ＃３と、ＧＯＰ＃３の直前のＧＯＰ＃２とを読み出す。例えば、エディット部４０は、エレメンタリストリームのＮＡＬユニットを所定に解析しながらＧＯＰの位置を検出し、所望のＧＯＰを読み出す。ＣＰＵ５１は、読み出されたＧＯＰ＃２およびＧＯＰ＃３をデコードし、ハードディスクドライブ６０またはＲＡＭ５３に書き込む。ＣＰＵ５１は、ハードディスクドライブ６０またはＲＡＭ５３に書き込まれた、デコード済みのＧＯＰ＃３について、編集点Ａ以降を削除する。同様に、ＣＰＵ５１は、ハードディスクドライブ６０に書き込まれたエレメンタリストリームの、編集点Ｂを含むＧＯＰ＃７と、ＧＯＰ＃７直後のＧＯＰ＃８とを読み出してデコードし、ハードディスクドライブ６０またはＲＡＭ５３に書き込む。ＣＰＵ５１は、ハードディスクドライブ６０またはＲＡＭ５３に書き込まれた、デコード済みのＧＯＰ＃７について、先頭から編集点Ｂまでを削除する。
【０１６５】
次に、ＣＰＵ５１は、ハードディスクドライブ６０上またはＲＡＭ５３上で、編集点Ａ以降が削除されたＧＯＰ＃３と、先頭から編集点Ｂまでが削除されたＧＯＰ＃７とを接続し、新たなＧＯＰであるＧＯＰ＃３＋７を作成する。ＧＯＰの接続の際に、接続されたＧＯＰに含まれるピクチャ数が所定数にならないときは、ピクチャの補間や間引きなどを行い、ピクチャ数が所定数になるようにする。
【０１６６】
ＣＰＵ５１は、ハードディスクドライブ６０またはＲＡＭ５３に書き込まれているＧＯＰ＃２、ＧＯＰ＃３＋７およびＧＯＰ＃８を再エンコードし、ハードディスクドライブ６０に書き込む。このとき、ハードディスクドライブ６０またはＲＡＭ５３に最初に書き込まれた、デコード前のＧＯＰ＃２を、再エンコードされハードディスクドライブ６０に書き込まれたＧＯＰ＃２に上書きすることができる。ＣＰＵ５１は、再エンコードされハードディスクドライブ６０に書き込まれたＧＯＰ＃１、ＧＯＰ＃２、ＧＯＰ＃３＋７、ＧＯＰ＃８およびＧＯＰ＃９を順次、連続的に読み出すことで、１本のエレメンタリストリームを出力させることができる。
【０１６７】
なお、編集対象のエレメンタリストリームに上述したバッファの畜量情報が記述されている場合には、ＣＰＵ５１は、この畜量情報に基づき発生符号量を所定に制御して、ＧＯＰのエンコードを行う。
【０１６８】
一方、図７のステップＳ１１において、ＳＥＩ"User Data Unregistered SEI"内のブロックModifiedDVPackMeta()におけるブロックMAKER & MODEL ID pack()の情報に基づき、同じ属性でエンコードできる機種のデータが存在しないと判断されれば、図７のステップＳ１３による、編集対象のビデオストリームの全区間を再エンコードする手法を用いて編集処理が行われる。
【０１６９】
一例として、図９を用いて説明したように、ＣＰＵ５１は、ハードディスクドライブ６０に書き込まれたエレメンタリストリームを読み出してデコードする。デコードされたデータは、ハードディスクドライブ６０に書き込まれる。ＲＡＭ５３の容量が十分大きければ、デコードされたデータをＲＡＭ５３に書き込むようにしてもよい。
【０１７０】
ＣＰＵ５１は、デコードされたビデオデータに対し、編集点Ａから編集点Ｂまでの間をフレーム単位で削除して編集点Ａおよび編集点Ｂを接続する。このとき、ＣＰＵ５１は、編集点Ａおよび編集点Ｂの接続の際に、接続部を含むＧＯＰに含まれるピクチャ数が所定数にならないときは、ピクチャの補間や間引きなどを行い、ＧＯＰ内のピクチャ数が所定数となるようにする。ＣＰＵ５１は、編集点Ａおよび編集点Ｂが接続されたビデオデータを全長にわたって再エンコードして１本のエレメンタリストリームを生成する。このエレメンタリストリームは、ハードディスクドライブ６０に書き込まれる。
【０１７１】
なお、２つのストリームファイルに対して編集点Ａおよび編集点Ｂをそれぞれ設定して編集して１本のデータストリームを得る場合の処理も、上述の１のストリームファイルに対して編集点Ａおよび編集点Ｂをそれぞれ設定して編集処理を行う場合と同様の処理となるため、説明を省略する。
【０１７２】
編集処理が終了してハードディスクドライブ６０に書き込まれたエレメンタリストリームは、ＣＰＵ５１により、ＰＥＳパケット化、ＴＳパケット化およびソースパケット化され、ＭＰＥＧ２システムズのトランスポートストリームとされる。このデータストリームは、ドライブ装置５８に供給され、記録媒体に記録される。
【０１７３】
編集結果のエレメンタリストリームは、ドライブ装置５８に装填されている記録媒体に書き込むのに限らず、例えばハードディスクドライブ６０に蓄積的に保持していてもよい。また、当該エレメンタリストリームをハードディスクドライブ６０から読み出して、データＩ／Ｆ５７を介して外部機器に対して出力するようにもできる。通信Ｉ／Ｆ５５からネットワークを介して外部に送信することもできる。また、編集結果のエレメンタリストリームを所定にパケット化してトランスポートストリームとして、ハードディスクドライブ６０への蓄積、データＩ／Ｆ５７を介しての外部機器への出力、通信Ｉ／Ｆ５５からネットワークを介しての外部への送信を行ってもよい。
【０１７４】
また、編集対象のビデオデータは、ドライブ装置５８に装填された記録媒体から読み出されるのに限らず、外部から供給されたビデオデータを編集対象とすることもできる。例えば、編集対象のビデオデータを入出力端５７Ａから入力し、データＩ／Ｆ５７を介してハードディスクドライブ６０に書き込む。ＣＰＵ５１は、上述と同様にして、ハードディスクドライブ６０に書き込まれたビデオデータに対して編集処理を行う。
【０１７５】
なお、上述では、編集時のデコード処理において、ビデオデコーダ３３が入力されたエレメンタリストリームをデコード可能であるとして説明したが、これはこの例に限定されない。すなわち、ビデオデコーダ３３は、フォーマットに規定される全てのストリームをデコードできるとは限らない。そのため、例えば図７のステップＳ１１における同じ属性でエンコードできる機種のデータが存在するか否かの判断の結果、データが存在しないとされた場合には、ビデオデコーダ３３に入力されるエレメンタリストリームをビデオデコーダ３３がデコードできない可能性もあり得る。
【０１７６】
この場合には、以下に示す２つの方法のうち、何れかを行うことが考えられる。第１の方法は、図７のステップＳ１１における同じ属性でエンコードできる機種のデータが存在するか否かの判断の結果、データが存在しないとされた場合でも、上述したように、当該エレメンタリストリームをビデオデコーダ３３に入力してデコード処理を行い、ビデオデコーダ３３においてエラーが発生したらデコード失敗とする方法である。この場合には、デコードできなかった旨を、所定の表示手段などを用いて通知すると、好ましい。
【０１７７】
第２の方法は、当該エレメンタリストリームの属性情報を用いる方法である。例えば、ＡＶＣＨＤフォーマットにおいては、当該エレメンタリストリームがパケット化されたビデオストリームが格納されるストリームファイルに対して、当該ビデオストリームの属性を示す属性情報が格納された属性情報ファイルを作成し、当該ストリームファイルが記録される記録媒体に、この属性情報ファイルを共に記録するようにされている。この属性情報ファイルには、対応するストリームの本数や、対応するストリームのそれぞれに対する符号化に関するパラメータが記述されている。
【０１７８】
そこで、編集時のデコードの際にこの属性情報ファイルを参照して符号化に関するパラメータを抽出し、対応可能か否かを判断する。対応不可であると判断されたら、デコード処理を中止する。このとき、例えばその旨を所定の表示手段などを用いて警告すると好ましい。一方、パラメータに基づき対応可能であると判断されたら、当該エレメンタリストリームをビデオデコーダ３３に入力し、デコードを開始する。デコード開始後は、上述の第１の方法と同様に、ビデオデコーダ３３においてエラーが発生したらデコード失敗とする。
【図面の簡単な説明】
【０１７９】
【図１】ＮＡＬユニットの一例の構成を示す略線図である。
【図２】アクセスユニットの一例の構成を示す略線図である。
【図３】この発明の実施の一形態に適用可能なビデオデータの一例の構造を概略的に示す略線図である。
【図４】ＳＥＩ"User Data Unregistered SEI"に格納される情報の一例の構造を表すシンタクスを示す略線図である。
【図５】ブロックone_modified_dv_pack()の構成の例を表すシンタクスを示す略線図である。
【図６】この発明の実施の一形態によるビデオストリームの一例の編集方法について説明するための略線図である。
【図７】この発明の実施の一形態による編集方法による一例の編集処理を示すフローチャートである。
【図８】編集点付近の必要最小区間のみを再エンコードする手法による一例の編集処理について概略的に説明するための略線図である。
【図９】編集対象のビデオストリームの全区間を再エンコードする手法による一例の編集処理について概略的に説明するための略線図である。
【図１０】２つのストリームファイルに格納されるビデオストリームに対して行う編集処理を概略的に示す略線図である。
【図１１】２つのストリームファイルに格納されるビデオストリームに対して編集を行う場合の、編集点付近の必要最小区間のみを再エンコードする手法による一例の編集処理について概略的に説明するための略線図である。
【図１２】２つのストリームファイルに格納されるビデオストリームに対して編集を行う場合の、編集対象の全区間を再エンコードする手法による一例の処理について概略的に説明するための略線図である。
【図１３】この発明の実施の一形態に適用可能な記録装置の一例の構成を示すブロック図である。
【図１４】この発明の実施の一形態に適用可能な編集装置の一例の構成を示すブロック図である。
【図１５】一般的なコンピュータ装置の一例の構成を概略的に示すブロック図である。
【図１６】フレーム間圧縮を行ったデータのデコード処理について説明すための略線図である。
【図１７】ビデオ映像における中間部のシーンを削除し、削除した前後を結合する編集を説明するための略線図である。
【符号の説明】
【０１８０】
１  記録装置
２  編集装置
３  コンピュータ装置
１１  ビデオエンコーダ
１２  マルチプレクサ
１３  ストリームバッファ
１４  記録処理部
２０  記録媒体
３０  再生処理部
３１  ストリームバッファ
３２  デマルチプレクサ
３３  ビデオデコーダ
４０  エディット部
４１  ＵＩ部
４２  ハードディスクドライブ
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
５８  ドライブ装置
６０  ハードディスクドライブ
【図１】
2008047983.tif 000003
【図２】
2008047983.tif 000004
【図３】
2008047983.tif 000005
【図４】
2008047983.tif 000006
【図５】
2008047983.tif 000007
【図６】
2008047983.tif 000008
【図７】
2008047983.tif 000009
【図８】
2008047983.tif 000010
【図９】
2008047983.tif 000011
【図１０】
2008047983.tif 000012
【図１１】
2008047983.tif 000013
【図１２】
2008047983.tif 000014
【図１３】
2008047983.tif 000015
【図１４】
2008047983.tif 000016
【図１５】
2008047983.tif 000017
【図１６】
2008047983.tif 000018
【図１７】
2008047983.tif 000019