(57)【要約】【課題】ＭＰＥＧ２−ＶｉｄｅｏビットストリームのＴＳパケットの解析に際してスタートコードの検索を効率良く行う。【解決手段】ビットストリーム処理装置１００において、スタートコード検索部１２０は、シーケンススタートコードと、ＧＯＰスタートコードと、ピクチャスタートコードの検索を行う。該スタートコード検索部１２０は、１フレームに対応する複数のＴＳパケットの先頭のパケットのペイロードから、ピクチャ層が検出された位置までを検索範囲とし、該検索範囲内で上記検索を行う。【選択図】図１
2011109365.tif 000002
【特許請求の範囲】
【請求項１】
ＭＰＥＧ２−Ｖｉｄｅｏビットストリームを構成するＴＳパケットの解析に際して、シーケンススタートコードと、ＧＯＰスタートコードと、ピクチャスタートコードの検索を行うスタートコード検索方法において、
１フレームに対応する複数のＴＳパケットの先頭のパケットのペイロードから、ピクチャ層が検出された位置までを検索範囲とし、該検索範囲内で前記検索を行うことを特徴とするスタートコード検索方法。
【請求項２】
ピクチャスタートコードが検出された位置を前記ピクチャ層が検出された位置とすることを特徴とする請求項１に記載のスタートコード検索方法。
【請求項３】
ＴＳヘッダ内のペイロードユニットスタートインジケータの値が１であるＴＳパケットを前記の先頭のパケットとすることを特徴とする請求項１または２に記載のスタートコード検索方法。
【請求項４】
ＭＰＥＧ２−Ｖｉｄｅｏビットストリームを構成するＴＳパケットの解析を行うビットストリーム処理装置であって、
シーケンススタートコードと、ＧＯＰスタートコードと、ピクチャスタートコードの検索を行うスタートコード検索部を有し、
該スタートコード検索部は、１フレームに対応する複数のＴＳパケットの先頭のパケットのペイロードから、ピクチャ層が検出された位置までを検索範囲とし、該検索範囲内で前記検索を行うことを特徴とするビットストリーム処理装置。
【請求項５】
前記スタートコード検索部は、ピクチャスタートコードが検出された位置をピクチャ層が検出された位置とすることを特徴とする請求項４に記載のビットストリーム処理装置。
【請求項６】
前記スタートコード検索部は、ＴＳヘッダ内のペイロードユニットスタートインジケータの値が１であるＴＳパケットを前記先頭のパケットとすることを特徴とする請求項４または５に記載のビットストリーム処理装置。
【請求項７】
デジタル放送の映像再生装置に備えられたことを特徴とする請求項４から６のいずれか１項に記載のビットストリーム処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビットストリーム処理、具体的にはＭＰＥＧ２−Ｖｉｄｅｏビットストリームにおけるスタートコードの検索技術に関する。
【背景技術】
【０００２】
ＭＰＥＧ２−Ｖｉｄｅｏ（ＩＳＯ／ＩＥＣ１３８１８−２）で圧縮された動画像データと、その動画像データに対応した圧縮音声データとを多重化して伝送または蓄積する規格としてＭＰＥＧ−２システム（ＩＳＯ／ＩＥＣ１３８１８−１）が知られている。
【０００３】
ＭＰＥＧ−２システムにおいて、符号化された画像／音声のそれぞれは、エレメンタリストリーム（ＥＳ：Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）と呼ばれ、画像ＥＳまたは音声ＥＳを分割してパケット化したものはＰＥＳ（Ｐａｃｋｅｔｉｚｅｄ  Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）と呼ばれる。
【０００４】
ＰＥＳの伝送方式の１つであるトランスポートストリーム（ＴＳ：Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）は、デジタル放送規格の多くで採用される。例えばＡＲＩＢ（電波産業会：Ａｓｓｏｃｉａｔｉｏｎ  ｏｆ  Ｒａｄｉｏ  Ｉｎｄｕｓｔｒｉｅｓ  ａｎｄ  Ｂｕｓｉｎｅｓｓ）で規定されている地上デジタル放送にもＴＳが採用されている。
【０００５】
ＴＳでは、ＰＥＳパケットをトランスポートストリームパケット（ＴＳパケット）と呼ばれる１８８バイト固定長のパケットに分割する。このＴＳパケットの連続が、トランスポートストリームとなる。
【０００６】
図３は、トランスポートストリームの構成を示す。上述の通り、トランスポートストリームはＴＳパケットにより構成される。ＴＳパケットはＰＥＳパケットを分割して得たものである。なお、ＡＲＩＢでは、１ＰＥＳパケットは１フレームに対応するように規定されている。
【０００７】
ＰＥＳパケットは、ＰＥＳヘッダとＰＥＳデータバイト（ＰＥＳペイロードともいう）から構成される。ＰＥＳペイロードには、スライス層の前に、「シーケンス層＋ＧＯＰ層＋ピクチャ層」、「シーケンス層＋ピクチャ層」、「ＧＯＰ層＋ピクチャ層」、「ピクチャ層」のいずれかが存在する。本明細書において、以下、ＰＥＳペイロードにおける、スライス層の前の層を「先頭層群」（ピクチャ層のみの場合を含む）という。ＰＥＳペイロードには、先頭層群の各層のスタートコードが含まれている。
【０００８】
各ＴＳパケットの先頭には、ＴＳヘッダが付属されており、ＴＳヘッダには、ペイロードユニットスタートインジケータ（ＰＵＳＩ）が含まれている。「１」であるＰＵＳＩは、トランスポートストリームのペイロードがＰＥＳパケットの第一バイトから開始することを示す。すなわち、ＴＳヘッダに含まれるＰＵＳＩを参照することにより該ＴＳパケットがＰＥＳパケットの先頭のＴＳパケットであるか否かが分かる。例えば、ＰＵＳＩが「１」であるＴＳパケットがＰＥＳパケットの先頭のＴＳパケットであり、ＰＵＳＩが「０」であるＴＳパケットがＰＥＳパケットの先頭のＴＳパケットではない。
【０００９】
また、ＰＥＳパケットの先頭のＴＳパケットは、ＴＳヘッダの後にＰＥＳヘッダが設けられている。ＰＥＳヘッダがＴＳヘッダの直後に設けられる場合もあれば、ＴＳヘッダとＰＥＳヘッダの間にアダプテーションフィールドが設けられる場合もある。
【００１０】
デジタル放送を受信して再生する側では、受信したビットストリームに対して解析処理、デマルチプレクスなどの処理を行ってデコーダに出力する。ＭＰＥＧ２デコーダでは、シーケンス層、ＧＯＰ層、ピクチャ層に存在するパラメータ情報を必要とする。これらの各層には、開始位置を示すユニークなビット列（スタートコード）が存在し、パラメータ情報は、各層のスタートコードからのオフセットで取得することができる。そのため、例えば特許文献１に記載されたように、デジタル放送を受信して再生する映像再生装置において、解析処理のためにこれらのスタートコードの検出が行われる。
【００１１】
以下、シーケンス層、ＧＯＰ層、ピクチャ層のスタートコードを、それぞれ「シーケンススタートコード」、「ＧＯＰスタートコード」、「ピクチャスタートコード」という。
【００１２】
デジタル放送を受信して再生する映像再生装置に対して、様々な視点からの技術が考案されている。
【００１３】
例えば、特許文献２には、映像コンテンツを保護するために、Ｉピクチャのデータを含むＴＳパケットと、他のＴＳパケットとを分けて保存する技術が開示されている。Ｉピクチャのデータを含むＴＳパケットであるか否かの判定は、該ＴＳパケットのペイロードユニットスタートインジケータ（ＰＵＳＩ）の値が「１」であるか否か、およびシーケンススタートコードの有無に基づいてなされる。
【００１４】
また、特許文献３には、スタートコードの検索開始位置から後続するデータがスタートコードであるか否かをまず確認し、そして、スタートコードであればスタートコードの検索をせずに解析を行う一方、スタートコードではなければスタートコードの検索を行ってスタートコードを検出して解析を行う手法が開示されている。この手法によれば、スタートコードの検索開始位置の直後にスタートコードが存在する場合に検索を省くことができるため、解析効率を向上させることができるとされている。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特開２０００−３０７５３３号公報
【特許文献２】特開２００３−２２４８２４号公報
【特許文献３】特開２００８−２０５６８１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１６】
近年、デジタル放送では、従来の標準画質（ＳＤ）の放送のみならず、ＳＤより高画質な高精細度画質（ＨＤ）の放送も行われるようになっている。また、再生装置としても、複数のチャネルの同時再生も一般的になっている。このような背景において、デジタル放送の映像再生装置に対して、高い処理性能が求められるようになっている。
【００１７】
ＭＰＥＧ２ビデオエレメンタリストリームにおいて、スタートコードは任意の位置に配置されているため、ＭＰＥＧ２ビデオエレメンタリストリーム全域すなわちすべてのＴＳパケットのすべてのペイロードに対してスタートコードの検索を行う必要がある。ＨＤ放送のように取り扱うデータ量が多い場合、スタートコードを含むＴＳパケットは全ＴＳパケットの約０．１％しかないため、スタートコードの検索をＭＰＥＧ２ビデオエレメンタリストリーム全域に対して行うのでは、効率が良くないという問題がある。
【００１８】
特許文献３に開示された手法は、検索開始位置の直後にスタートコードが運よく存在すればこのスタートコードの検索を省くことができるが、検索開始位置の直後にスタートコードが存在しない場合には、後続のすべてのデータを検索範囲として検索を行う必要があり、上述した問題が存在する。
【課題を解決するための手段】
【００１９】
本発明の一つの態様は、ＭＰＥＧ２−Ｖｉｄｅｏビットストリームを構成するＴＳパケットの解析に際して、シーケンススタートコードと、ＧＯＰスタートコードと、ピクチャスタートコードの検索を行うスタートコード検索方法である。この方法は、１フレームに対応する複数のＴＳパケットの先頭のパケットのペイロードから、ピクチャ層が検出された位置までを検索範囲とし、該検索範囲内で上記検索を行う。
【００２０】
なお、上記態様の方法を適用した装置やシステム、該方法をコンピュータに実行させるプログラムなども、本発明の態様としては有効である。
【発明の効果】
【００２１】
本発明にかかる技術によれば、ビデオビットストリームの解析に際して、スタートコードの検索範囲を狭めることにより、スタートコードの検出を効率良く行うことができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態にかかるビットストリーム処理装置を示す図である。
【図２】図１に示すビットストリーム処理装置におけるスタートコード検索部の処理を示すフローチャートである。
【図３】トランスポートストリームの構成を説明する図である。
【発明を実施するための形態】
【００２３】
以下、図面を参照して本発明の実施の形態について説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【００２４】
本願発明者は、デジタル符号化と多重化されたビデオビットストリームに対するスタートコードの検出について鋭意研究模索した結果、下記のことを知見した。
【００２５】
（１）ＰＥＳパケットのペイロードにおいて、スライス層の前に、「シーケンス層＋ＧＯＰ層＋ピクチャ層」、「シーケンス層＋ピクチャ層」、「ＧＯＰ層＋ピクチャ層」、「ピクチャ層」のいずれか１つが設けられている。前述したように、これらの層は、本明細書では、「先頭層群」という。
【００２６】
ＰＥＳペイロード内の各層のうち、ＭＰＥＧ２デコーダが必要とするのは、先頭層群内の各層のパラメータ情報であり、スライス層のパラメータ情報を必要としない。そのため、先頭層群内の各層のパラメータ情報を得るためにスタートコードを検索する際に、先頭層群に対してのみスタートコードの検索を行えば足りる。
【００２７】
（２）先頭層群が「「シーケンス層＋ＧＯＰ層＋ピクチャ層」である場合には、ＰＥＳパケットのペイロードには、先頭層群の各層のスタートコード（シーケンススタートコード、ＧＯＰスタートコード、ピクチャスタートコード）が含まれる。
【００２８】
また、先頭層群に「ピクチャ層」のみ含まれる場合には、ＰＥＳパケットのペイロードにはピクチャスタートコードが含まれる。
【００２９】
すなわち、先頭層群内に含まれる層の数、種類によって、スタートコードの数、種類が異なる。
【００３０】
しかし、先頭層群内に含まれる層の数、種類にかかわらず、先頭層群内の末尾の層は、必ずピクチャ層である。
【００３１】
上記知見に基づき、本願発明者は、シーケンススタートコード、ＧＯＰスタートコード、ピクチャスタートコードの検索に際して、１フレームすなわち１ＰＥＳパケットに対応する複数のＴＳパケットのうちの先頭のパケットのペイロードから、ピクチャ層が検出された位置までを検索範囲とし、該検索範囲内で上記検索を行う手法を確立した。
【００３２】
「ピクチャ層が検出された位置」は、例えば「ピクチャスタートコードが検出された位置」とすることができる。
【００３３】
また、「１ＰＥＳパケットに対応する複数のＴＳパケットのうちの先頭のパケット」は、例えば、ＰＥＳヘッダを含むＴＳパケット、すなわちＴＳヘッダ内のペイロードユニットスタートインジケータＰＳＵＩが「１」であるＴＳパケットとすることができる。
【００３４】
具体的には、ＴＳパケット単位で入力される映像再生装置において、例えば、ＴＳヘッダ内のペイロードユニットスタートインジケータＰＳＵＩが「１」であることを検索開始条件とし、ピクチャスタートコードが検出されたことを検索終了条件とするようにスタートコードの検索を行う。
【００３５】
この手法により、スライス層をスタートコードの検索範囲から除外し、スタートコードの検索にかかる負荷を大幅に軽減することができる。
【００３６】
以下、上述した原理を踏まえて、本発明の実施の形態を説明する。
図１は、本発明の実施の形態にかかるビットストリーム処理装置１００を示す。このビットストリーム処理装置１００は、例えばデジタル放送を受信して再生する装置に設けられ、ＭＰＥＧ２デコーダが必要とするスタートコード位置情報を得ると共に、デマルチプレクス処理を行ってビデオエレメンタリストリームを得るものである。
【００３７】
ビットストリーム処理装置１００は、入力処理部１１０と、スタートコード検索部１２０と、出力処理部１３０を備える。スタートコード検索部１２０は、検索制御部１２２とデータ解析部１２４を有する。
【００３８】
ビットストリームは、ＴＳパケット単位でビットストリーム処理装置１００の入力処理部１１０に入力される。
【００３９】
入力処理部１１０は、入力されたＴＳパケットにおけるＳｙｎｃ＿ｂｙｔｅを検出して同期処理を行う。入力処理部１１０により同期処理がなされたＴＳパケットはスタートコード検索部１２０に入力される。
【００４０】
スタートコード検索部１２０において、検索制御部１２２は、検索開始条件が満たされたときから、検索終了条件が満たされるまで、入力処理部１１０から入力されたＴＳパケットをデータ解析部１２４に出力する。なお、検索制御部１２２は、検索終了条件が満たされると、入力処理部１１０から入力されたＴＳパケットを出力処理部１３０に出力する。
【００４１】
ここで、入力処理部１１０から入力されたＴＳパケットのＴＳヘッダ内のペイロードユニットスタートインジケータＰＵＳＩが「１」であることが、検索開始条件である。
【００４２】
また、データ解析部１２４からピクチャスタートコードが検出されたことが、検索終了条件である。
【００４３】
すなわち、検索制御部１２２は、入力処理部１１０から入力されたＴＳパケットのＴＳヘッダ内のＰＵＳＩが「１」であるときに、ＴＳパケットの出力先をデータ解析部１２４に切り替える一方、データ解析部１２４から、ピクチャスタートコードが検出されたことが通知されると、ＴＳパケットの出力先を出力処理部１３０に切り替える。
【００４４】
データ解析部１２４は、検索制御部１２２からのＴＳパケットに対して、シーケンススタートコード、ＧＯＰスタートコード、ピクチャスタートコードの検索を行い、検出したスタートコードのビデオバッファ内の位置を示す位置情報（スタートコード位置情報Ｐ）を得て図示しない解析情報専用のバッファに出力し、後にＭＰＥＧ２デコーダによる処理に供する。
【００４５】
また、データ解析部１２４は、シーケンススタートコードまたはＧＯＰスタートコードを検出しても、スタートコードの検索を継続する。ピクチャスタートコードを検出したときには、その旨を検索制御部１２２に通知すると共に、該ＴＳパケットに対するスタートコードの検索を終了して、該ＴＳパケットを出力処理部１３０に出力する。なお、検索制御部１２２から入力されたＴＳパケットから、シーケンススタートコード、ＧＯＰスタートコード、ピクチャスタートコードのいずれも検出されなかった場合に、データ解析部１２４は、該ＴＳパケットを出力処理部１３０に出力する。
【００４６】
出力処理部１３０は、検索制御部１２２とデータ解析部１２４からのＴＳパケットに対してデマルチプレクス処理を行ってビデオエレメンタリストリーム（ビデオＥＳ）を得る。このビデオＥＳは、図示しないビデオ専用のバッファに出力され、後にＭＰＥＧ２デコーダによる処理に供される。
【００４７】
図２は、ビットストリーム処理装置１００のスタートコード検索部１２０における処理の流れを示すフローチャートである。簡潔に説明するために、検索制御部１２２とデータ解析部１２４の処理を特に分けずに、スタートコード検索部１２０の全体の処理を説明および図示する。
【００４８】
図２に示すように、ＴＳパケットが入力されると、スタートコード検索部１２０は、そのＴＳヘッダ内のＰＵＳＩを確認する（Ｓ１００）。ＰＵＳＩが「１」である場合、スタートコード検索部１２０は、スタートコードの検索ステートを「検索する」に設定すると共に、検索開始位置を該ＴＳパケットのペイロードの先頭に設定する（Ｓ１００：Ｙｅｓ、Ｓ１０２、Ｓ１０４）。一方、ＰＵＳＩが「０」であるときには、スタートコード検索部１２０は、検索ステートの設定をせずに、検索開始位置を該ＴＳパケットのペイロードの先頭に設定する（Ｓ１００：Ｎｏ、Ｓ１０４）。なお、本実施の形態において、検索ステートは、「検索する」と「検索しない」の２通りを有し、初期値が「検索しない」である。
【００４９】
次に、スタートコード検索部１２０は、検索ステートが「検索する」と「検索しない」のいずれであるかによって異なる処理を行う。検索ステートが「検索しない」である場合には、スタートコード検索部１２０は、スタートコードの検索をせずに該ＴＳパケットを出力処理部１３０に出力する（Ｓ１１０：Ｎｏ、Ｓ１４０）。
【００５０】
一方、検索ステートが「検索する」である場合には、スタートコード検索部１２０は、検索開始位置からスタートコードの検索を行う（Ｓ１１０：Ｙｅｓ、Ｓ１１２）。スタートコードが検出されなかった場合、スタートコード検索部１２０は、検索開始位置を後続データの先頭に設定してスタートコードの検索を再度行う（Ｓ１１４：Ｎｏ、Ｓ１３０：Ｎｏ、Ｓ１３２、Ｓ１１２〜）。該ＴＳパケットの最終バイトまで検索を行ってもスタートコードが検出されなかった場合、スタートコード検索部１２０は、該ＴＳパケットを出力処理部１３０に出力する（Ｓ１１４：Ｎｏ、Ｓ１３０：Ｙｅｓ）。
【００５１】
ＴＳパケットが検出された場合には、スタートコード検索部１２０は、このスタートコードの種類を確認する（Ｓ１１４：Ｙｅｓ）。シーケンススタートコードまたはＧＯＰスタートコードである場合（すなわちシーケンス層またはＧＯＰ層が検出された場合）には、スタートコード検索部１２０は、スタートコード位置情報Ｐを解析情報専用のバッファに出力すると共に、検索開始位置を後続データの先頭に設定してステップＳ１１０に戻る（Ｓ１２０：シーケンス／ＧＯＰ、Ｓ１２８、Ｓ１１０〜）。
【００５２】
検出されたスタートコードがピクチャスタートコードである場合（すなわちピクチャ層が検出された場合）には、スタートコード検索部１２０は、スタートコード位置情報Ｐを解析専用のバッファに出力すると共に検索ステートを「検索しない」に設定する（Ｓ１２０：ピクチャ、Ｓ１２４、Ｓ１２６）。そして、検索開始位置を後続データの先頭に設定してステップＳ１１０に戻る（Ｓ１２８、Ｓ１１０〜）。
【００５３】
検出されたスタートコードがシーケンススタートコード、ＧＯＰスタートコード、ピクチャスタートコードのいずれでもない場合には、スタートコード検索部１２０は、検索開始位置を後続データの先頭に設定してステップＳ１１０に戻る（Ｓ１２０：Ｏｔｈｅｒ、Ｓ１２８、Ｓ１１０〜）。
【００５４】
図２に示す処理は、ＴＳパケットが入力される度に繰り返される。
このように、本実施の形態の入力処理部１１０において、スタートコード検索部１２０は、１フレームの先頭からピクチャ層までを検索範囲とし、該検索範囲内でシーケンススタートコード、ＧＯＰスタートコード、ピクチャスタートコードの検索を行うため、これらのスタートコードが存在しないスライス層を検索範囲から除外することにより、スタートコードの検索効率を向上させることができる。そのため、デジタル放送を受信して再生する再生装置において、ビットストリームを解析するための処理負荷を軽減することができる。
【００５５】
以上、実施の形態をもとに本発明を説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、上述した各実施の形態に対してさまざまな変更、増減、組合せを行ってもよい。これらの変更、増減、組合せが行われた変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【００５６】
１００  ビットストリーム処理装置
１１０  入力処理部
１２０  スタートコード検索部
１２２  検索制御部
１２４  データ解析部
１３０  出力処理部
【図１】
2011109365.tif 000003
【図２】
2011109365.tif 000004
【図３】
2011109365.tif 000005