(57)【要約】 【課題】ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する方法および装置。【解決手段】特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析する処理と、特定のデジタルビデオコーデック標準に従って前記複数の入力パラメータの範囲をチェックする処理および特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックする処理とを含む。また、本発明は、特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行する処理を含む。更に本発明は、特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成する処理を含む。また本発明は、特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行する処理を含む。【選択図】図５
2008131484.tif 000002
【特許請求の範囲】
【請求項１】
ビデオコーデック用のエンコーダを利用せずにランダムテストビットストリームを生成する方法であって、
（ａ）特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析するステップと、
（ｂ）特定のデジタルビデオコーデック標準に従って前記複数の入力パラメータの範囲をチェックするステップと、
（ｃ）特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックするステップと、
（ｄ）特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行するステップと、
（ｅ）特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成するステップと、そして、
（ｆ）特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するステップと、
を有することを特徴とする方法。
【請求項２】
特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析するステップには、特定のデジタルビデオコーデック標準に従って生成しようとするランダムテストビットストリームの特性を示す複数の入力パラメータを解析する処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項３】
特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析するステップには、少なくとも、ランダムテストビットストリーム名、ランダムテストビットストリームフレーム幅、ランダムテストビットストリームフレーム高、ランダムテストビットストリームフレーム総数、固定されるビットストリーム構文要素、を解析する処理が含まれること、
を特徴とする請求項２に記載の方法。
【請求項４】
前記ランダムテストビットストリーム名とは、生成しようとするランダムテストビットストリームの名称であること、
を特徴とする請求項３に記載の方法。
【請求項５】
前記ランダムテストビットストリームフレーム幅とは、生成しようとするランダムテストビットストリームのフレームの幅であること、
を特徴とする請求項３に記載の方法。
【請求項６】
前記ランダムテストビットストリームフレーム高とは、生成しようとするランダムテストビットストリームのフレームの高さであること、
を特徴とする請求項３に記載の方法。
【請求項７】
前記ランダムテストビットストリームフレーム総数とは、生成しようとするランダムテストビットストリームのイントラフレームおよびインタフレームの総数であること、
を特徴とする請求項３に記載の方法。
【請求項８】
特定のデジタルビデオコーデック標準に基づくビットストリーム特性に関する複数の入力パラメータの追加解析ステップには、追加の入力ファイルまたは設定ファイルの解析処理が含まれること、
を特徴とする請求項２に記載の方法。
【請求項９】
特定のデジタルビデオコーデック標準に基づくビットストリーム特性に関する複数の入力パラメータの追加解析ステップには、コマンドラインパラメータを介しての複数の入力引数の解析処理が含まれること、
を特徴とする請求項２に記載の方法。
【請求項１０】
特定のデジタルビデオコーデック標準に基づくビットストリームプロパティに対する複数の入力パラメータの追加解析ステップには、グラフィックユーザインタフェースを介しての対話的な複数の入力引数の解析処理が含まれること、
を特徴とする請求項２に記載の方法。
【請求項１１】
特定のデジタルビデオコーデック標準に基づく複数の入力パラメータの設定値範囲をチェックするステップには、特定のデジタルビデオコーデック標準に基づく入力パラメータの最小値をチェックする処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項１２】
特定のデジタルビデオコーデック標準に基づく複数の入力パラメータの設定値範囲をチェックするステップには、特定のデジタルビデオコーデック標準に基づく入力パラメータの最大値をチェックする処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項１３】
特定のデジタルビデオコーデック標準に基づく複数の入力パラメータの設定値範囲をチェックするステップには、特定のデジタルビデオコーデック標準に基づく入力パラメータの最大値と最小値との間の値の幅をチェックする処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項１４】
特定のデジタルビデオコーデック標準に基づく複数の入力パラメータの有効性をチェックするステップには、特定のデジタルビデオ標準に基づく入力パラメータの存在をチェックする処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項１５】
特定のデジタルビデオコーデック標準に従って、複数の入力パラメータの範囲をチェックする前記ステップと、複数の入力パラメータの有効性をチェックする前記ステップとには、ある入力パラメータの他の入力パラメータへの依存性をチェックする処理が含まれること、
を特徴とする請求項２乃至１４のいずれかに記載の方法。
【請求項１６】
特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行するステップには、ビットストリーム構文パラメータを得るために、ビットストリームの解析機能をデコーダ内のビットストリーム構成機能に置き換える処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項１７】
ビットストリームの解析機能をデコーダ内のビットストリーム構成機能に置き換える前記処理は、候補数を生成する処理と、特定のデジタルビデオコーデック標準に従って規定された前記候補数のワード幅に応じて前記候補数をマスクする処理と、値の範囲をチェックする処理と、そして、前記候補数を書き込んでビットストリーム構文パラメータを得る処理と、を含むこと、
を特徴とする請求項１６に記載の方法。
【請求項１８】
前記候補数を生成する処理は、乱数を作る処理、または、前記追加ファイルまたは前記構成ファイルから予め定められた定数をコピーする処理で成ること、
を特徴とする請求項１７に記載の方法。
【請求項１９】
特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行するステップには、ビットストリーム構文パラメータを得るためにビットストリームの解析機能をデコーダ内のビットストリーム構成機能に置き換える処理と、前記ビットストリーム構文パラメータを復号して復号後パラメータを得る処理と、そして、前記復号後パラメータを処理して処理後パラメータを得る処理と、が含まれること、
を特徴とする請求項１に記載の方法。
【請求項２０】
ビットストリームの解析機能をデコーダ内のビットストリーム構成機能に置き換える処理には、候補数を生成する処理と、特定のデジタルビデオコーデック標準によって規定された前記候補数のワード幅に応じて前記候補数をマスクする処理と、値の範囲をチェックして前記値の範囲の有効性を示す提示ビットを提供する処理と、そして、前記提示ビットが有効な値の範囲を示す場合には前記候補数を書き込んでビットストリーム構文パラメータを得る一方で前記提示ビットが無効な値の範囲を示す場合には前記候補数を更新する処理と、が含まれること、
を特徴とする請求項１９に記載の方法。
【請求項２１】
特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成するステップには、特定のデジタルビデオコーデック標準に従った有効なデジタルビデオビットストリームを生成する処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項２２】
特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成する前記ステップには、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックする前記ステップと、特定のデジタルビデオコーデック標準に従って逆デコーダ内で複数の入力パラメータの有効性をチェックする前記ステップと、を利用する処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項２３】
特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するステップには、ビットストリームに複数バイトを挿入することで、特定のデジタルビデオコーデック標準に従うデジタルビデオビットストリーム内で開始コードエミュレーション、長い「０」の連続、または長い「１」の連続が発生するのを防止する処理が含まれること、
を特徴とする請求項１に記載の方法。
【請求項２４】
ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する方法であること、
を特徴とする請求項１乃至２３のいずれかに記載の方法。
【請求項２５】
ビデオコーデック用のエンコーダを利用せずにランダムテストビットストリームを生成する方法であって、実質的にこれまでの部分で、添付図面を参照しながら、または、それに図示された形で説明された前記方法。
【請求項２６】
ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する装置であって、
特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析する手段と、
特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックする手段と、
特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックする手段と、
特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行する手段と、
特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成する手段と、
特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行する手段と、
を有することを特徴とする装置。
【請求項２７】
請求項１乃至２５のいずれかに記載の方法に従って動作すること、を特徴とする装置。
【請求項２８】
請求項１乃至２７のいずれかに記載の方法に従って動作すること、
を特徴とする請求項２６に記載の装置。
【請求項２９】
ビデオコーデック用のエンコーダを利用せずにランダムテストビットストリームを生成する装置であって、これまでの部分で添付図面を参照しながら、または、それに図示された形で実質的に動作するように構成および配置された前記装置。
【請求項３０】
ビデオコーデック用のエンコーダを利用しないでランダムテストビットストリームを生成するための、コンピュータプログラムをコンピュータで読み取り可能な媒体上に記録したコンピュータプログラム製品であって、
特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する入力パラメータを解析するコンピュータプログラムコード手段と、
特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックするコンピュータプログラムコード手段と、
特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックするコンピュータプログラムコード手段と、
特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行するコンピュータプログラムコード手段と、
特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成するコンピュータプログラムコード手段と、そして、
特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するコンピュータプログラムコード手段と、
を有することを特徴とするコンピュータプログラム製品。
【請求項３１】
ビデオコーデック用のエンコーダを利用せずにランダムテストビットストリームを生成するため、請求項１乃至２６のいずれかに記載された方法に従って動作するコンピュータプログラムをコンピュータ読み取り可能な媒体に記録したコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオコーデック装置の検証のためのランダムテストビットストリーム生成に関する。
【背景技術】
【０００２】
動画処理技術における進歩に伴い、様々に異なるデジタルビデオコーデックの標準およびフォーマット（例：ＭＰＥＧ、ＶＣ１、ＡＶＳや他の登録商標の技術）が、家電装置の分野で広く利用される状況となっている。電子システムおよびコンピュータシステムは、特定のデジタルビデオコーデック標準に従ってデジタルビデオデータの符号化および復号を実行するように開発されており、それによって、そのデジタルビデオデータは、当該特定のデジタルビデオコーデック標準に従うビデオ復号装置で読み取ることができる。
【０００３】
図１が示すのは、一般的なビデオデジタル符号化／復号システムである。生のビデオデータがエンコーダへ入力され、符号化ビットストリームがエンコーダの出力として生成される。この符号化ビットストリームは、記憶媒体に入れられるか、ストリーミングメディア（例：インターネット、放送ネットワーク）を介して送信される。反対側の受信機では、この符号化ビットストリームはデコーダによって正しく復号される必要がある。デコーダからの出力は生ビデオデータであり、それはディスプレイ装置に入力することができる。
【０００４】
特定のデジタルビデオコーデック標準による復号機能を実装するにあたって、電子回路またはコンピュータシステムの正常動作を保証するために、テストおよび検証を行う方法が導入されている。図２は、一般的なデジタルビデオ復号検証のシステム概要を示している。符号化ビットストリームは、テスト対象装置（ＤＵＴ：device under testing）となるデコーダと、参照デコーダとに入力される。参照デコーダについては、それぞれのデジタルビデオコーデック標準組織（または会社）から取得できる。ＤＵＴデコーダは復号結果を生成し、参照デコーダは期待される結果を生成する。そして、ＤＵＴデコーダによる復号結果と参照デコーダによる期待される結果との比較が行われる。比較結果概要が生成され、これによって、ＤＵＴデコーダが期待通りに正しく動作するかどうかが示される。
【０００５】
テストおよび検証の作業は、デコーダが特定のデジタルビデオコーデック標準に従って正しくその機能を実行することを保証するためのもので、負荷は大きいが重要である。ランダムなテストを行うと、テストのいくつかの組合せは無効なテストケースとなってしまうおそれがあり、それは通常、時間および労力の無駄となる。ただし、テストの個々の組合せを得るプロセスについては、それが単純にランダムなやり方で生成できるからこそ、簡単になる。直接的な形のテストでは、いくつかのテストケースが特定のデジタルビデオコーデック標準に従って開発される。しかし、このアプローチでは、ランダムなテストと比較して、長い労働時間および高い労働コストが必要となる。そのため、より短い労働時間、低い労働コストで高い網羅性を達成することが可能な検証方法が求められる。
【特許文献１】米国特許：ＵＳ５９８３０２２号（“System and Method For Using Profiles To Manage Data Streams For Device Verification”）。
【特許文献２】米国特許：ＵＳ６２３０２９５号（“Bitstream Assembler For Comprehensive Verification Of Circuits, Devices, And Systems”）。
【特許文献３】米国特許：ＵＳ２００３／０１７２３２４号（“Bitstream Generation Tools  For Bitstream Management System”）。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
そこで、デジタルビデオコーデックの符号化／復号アルゴリズムを利用することによって、エンコーダを利用しない形でテストおよび検証を行うためのランダムテストビットストリームを生成する、というテストおよび検証の方法を考案する。
【課題を解決するための手段】
【０００７】
本発明の１つの側面として、ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する方法を提供する。この方法は、特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析するステップと、特定のデジタルビデオコーデック標準に従って前記複数の入力パラメータの範囲をチェックするステップとを含む。本方法は更に、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックするステップを含む。また、本方法は、特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実施するステップを含む。さらに本方法は、特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成するステップを含む。加えて、本方法は、特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するステップを含む。
【発明の効果】
【０００８】
本発明の別の側面として、ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する装置を提供する。本装置は、特定のデジタルビデオコーデック標準に従って、ビットストリーム特性に関する複数の入力パラメータを解析し、そして、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックする手段を有する。本装置は更に、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックする手段を有する。本装置はまた、特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行する手段を有する。本装置は更に、特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成する手段を有する。また、本装置は、特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行する手段を有する。
【０００９】
本発明の更なる側面として、ビデオコーデック用エンコーダを利用することなくランダムテストビットストリームを生成する装置であって、前記第１の側面の方法に従って動作する、という装置を提供する。
本発明のさらに別の側面として、コンピュータプログラムをコンピュータで読み取り可能な媒体上に記録したコンピュータプログラム製品であって、ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成するためのプログラム製品を提供する。このコンピュータプログラム製品は、特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する入力パラメータを解析し、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックするコンピュータプログラムコード手段を有する。さらに、本コンピュータプログラム製品は、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックするコンピュータプログラムコード手段を有する。本コンピュータプログラム製品はまた、特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行するコンピュータプログラムコード手段を有する。本コンピュータプログラム製品は、特定のデジタルビデオコーデック標準に従って、生のビットストリームデータを生成するコンピュータプログラムコード手段を更に有する。本コンピュータプログラム製品はさらに、特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するコンピュータプログラムコード手段を有する。
【００１０】
ここで本発明の更に別の側面として、ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成するためのコンピュータプログラムをコンピュータ読み取り可能な媒体上に記録したコンピュータプログラム製品であって、第１の側面の方法に従って動作する、というコンピュータプログラム製品を提供する。
本発明の実施の形態を用いれば、ランダムテストビットストリームの特性を指定することでテストおよび検証の方法論にインタラクティブなインターフェースを提供でき、そして、電子装置およびコンピュータシステムのテストおよび検証の各種取り合わせに関して、ユーザ指定の範囲内にある特定の特性を備えたランダムテストビットストリームを生成することができる。
【発明を実施するための最良の形態】
【００１１】
本発明について、添付図面を参照しながら、非限定的な例として説明する。
ここで説明する実施の形態が用いるのは、「ビデオコーデック用のエンコーダを利用しない形でのランダムテストビットストリーム生成」と呼ぶべきものである。本実施の形態では、複数の入力パラメータを用い、特定のデジタルビデオコーデック標準に従って、生成されるランダムテストビットストリームの特性を決める。
【００１２】
生成するランダムテストビットストリームの特性の設定には、数多くの入力パラメータを用いることができる。その中には、少なくとも、ランダムテストビットストリーム名、フレーム幅、フレーム高、そしてフレーム数が含まれる。特定のデジタルビデオコーデック標準に基づいて、その他の特定のランダムテストビットストリーム特性を設定することも可能である（例えば、スライス数、参照ピクチャ数、インタレースコーディングモード、その他）。
【００１３】
ここで説明する実施の形態を用いて、テストおよび検証を目的としたランダムテストビットストリームを生成することができる。生成されるテストビットストリームは本質的にランダムでありながら、設定された特定のデジタルビデオコーデック標準によって決まる特定の規則に従っているため、時間およびコストは節約される。ランダムテストビットストリームを作るための独立したエンコーダを開発する必要がないため、高い網羅性を実現するのに必要なテストおよび検証の時間は短くなる。
（一般的なビデオ復号プロセス）
図３は、一般的なデジタルビデオ復号プロセスを示す概要フローチャートである。一般に、各種デジタルビデオコーデック標準は、その復号プロセスの中でそれぞれ別々のアルゴリズムを採用しているが、デジタルビデオの復号プロセス全体は、通常、図３に示すように３つの主要プロセスに分けることができる。
【００１４】
特定のデジタルビデオコーデック標準に従った構文解析（Ｓ１００）が実行されることで、処理中のビデオビットストリームに関して必要な全パラメータが復号される。構文解析の後、パラメータおよび係数の復号が実行されるが（Ｓ１１０）、ここでは、ブロック係数用のいくつかのパラメータと係数自体とが、ビデオビットストリームから復号される。普通、デジタルビデオコーデック標準では、ブロック係数の復号に、可変長復号または固定長復号が用いられる。実装形のいくつかの変形例では、デジタルビデオ標準の間で差がある可能性もあるが、係数の復号はやはり、その特定のデジタルビデオコーデック標準に応じ、算術復号またはコンテキストベースの算術復号によって実行されるであろう。また、いくつかの予測アルゴリズムが、その特定のデジタルビデオコーデック標準に応じ隣接ブロック係数を用いてブロック係数を決定することでビットレートを低く保つ、という目的で実行される場合がある。
【００１５】
最終的に、ピクチャ内の全ブロック係数の復号が終わった後、適用されている特定のデジタルビデオコーデック標準に従って係数の処理（Ｓ１２０）が実行される（逆量子化、逆変換、フレーム内予測、フレーム間予測、または、動き補償、フィルタリング、その他）。各種デジタルビデオコーデック標準はまた、係数処理に関して異なるアルゴリズムを使用する場合がある。最後のフレームが復号されるまで（Ｓ１３０）、デジタルビデオ復号プロセスは続けられる。最後のフレームでない場合、デジタルビデオ復号プロセスは継続し、最後のフレームとなって復号プロセスが終了したところで終わる。
（ランダムテストビットストリームを用いたデジタルビデオ復号検証）
図４は、ランダムテストビットストリーム生成器を用いたデジタルビデオ復号検証システムを示すブロック図である。図２と比較すると、検証システムに入力するランダムテストビットストリームを生成するのが、ランダムテストビットストリーム生成器（２００）となっている。生成されるランダムテストビットストリーム（２１５，２２０）は、実装されている特定のデジタルビデオコーデック標準に基づいて必要とされる全ての有効なテストケースを本デジタルビデオ検証システムが確実に網羅できる、というものにする。
【００１６】
また、カバレジ機能（２０５）をランダムテストビットストリーム生成器（２００）への入力に用いて、生成されるランダムテストビットストリームにどんな種類の網羅性が必要かを決定する。さらに、ランダムテストビットストリーム生成器（２００）へのカバレジ機能（２０５）入力に基づき、当該生成器はカバレジ結果概要（２１０）を作る。カバレジ機能（２０５）およびカバレジ結果概要（２１０）は、生成されたランダムビットストリームが必要な網羅性をすでに満たしているかどうかをテストするユーザによって使用される。
【００１７】
ランダムテストビットストリーム生成器（２００）が生成したランダムテストビットストリーム（２１５）は、ＤＵＴデコーダ（２２５）への入力となる。また、ランダムテストビットストリーム生成器（２００）が生成した同じランダムテストビットストリーム（２２０）は、参照デコーダ（２３０）にも入力される。参照デコーダ（２３０）は復号機能を全て有したデコーダであり、特定のデジタルビデオコーデック標準に従って、各入力ビットストリームに関して期待される結果を生成する。
【００１８】
復号結果（２３５）はＤＵＴデコーダ（２２５）で作られ、予測結果（２４０）は参照デコーダ（２３０）で作られる。復号結果比較メカニズム（２４５）が動作させられて、ＤＵＴデコーダ（２２５）で作られた復号結果（２３５）と参照デコーダ（２３０）で作られた予測結果（２４０）とが同一か否かを確認する。比較メカニズムには、復号されたデジタルビデオデータの比較、または、各段階でのデジタルビデオ係数データ（たとえば逆量子化時、逆変換時、動き補償時、またはフィルタリング時の係数データ）の比較処理が含まれる。比較結果概要（２５０）は、検証システムの終わりでユーザへのフィードバックとして作られ、対象のＤＵＴデコーダが特定のデジタルビデオコーデック標準に従って正しく復号機能を実行しているか否か示す。
（ランダムテストビットストリーム生成）
図５は、本発明の実施例が、ビデオコーデック用のエンコーダを利用しない形でランダムテストビットストリームを生成する際の動作に関するフローチャートである。まず、ビットストリーム特性に関する複数の入力パラメータが提供される（Ｓ３００）。当該複数の入力パラメータによって、生成しようとするランダムテストビットストリームの特性が指定される。その中には、少なくとも、ランダムテストビットストリーム名、フレーム幅、フレーム高、そしてフレーム数が含まれる。その他の特定のビットストリーム特性についても、実装対象の特定のデジタルビデオコーデック標準に従って実現することができる（例えば、スライス数、インタレース符号化モード、参照ピクチャ数など）。
【００１９】
次いで、入力パラメータのチェックおよび検証が実行される（Ｓ３１０）。これは、当該複数の入力パラメータが特定の範囲の中にあって、実装された特定のデジタルビデオコーデック標準にあてはまることを確認するために行われる。逆デコーダ（Ｓ３２０）を用いて、全フレームおよび全ビデオ時間長にわたり、全ての構文パラメータおよびブロック係数が生成される。ここで、図３を参照する。構文分析（Ｓ１００）と、パラメータおよび係数の復号（Ｓ１１０）と、そして係数処理（Ｓ１２０）とについて、逆処理が入力パラメータに従って実行され、有効なランダムテストビットストリームが生成される。逆復号プロセス（Ｓ３２０）の終わりで有効な生のビットストリーム（Ｓ３３０）が作られる。実装されている特定のデジタルビデオコーデック標準によっては、生のビットストリーム（Ｓ３３０）に対してビットストリームカプセル化プロセス（Ｓ３４０）が実行されて、カプセル化ビットストリーム（Ｓ３５０）が作られる。
【００２０】
図６はブロック図であり、ビデオコーデックの符号化を利用することなくランダムテストビットストリームを生成するのに用いられる、変形型のデコーダを示している。デコーダの側には、ビデオビットストリームパラメータを読み込むために実装されたビット読み込み機能部（４００）が存在する。右側は逆デコーダ（Ｓ３２０）の実装形である。デコーダ内のビット読み込み機能部（４００）は、逆デコーダ（Ｓ３２０）においては、ビット書き込み機能部（４１０）に置き換えられている。パラメータ範囲のチェックおよび検証を利用することで、生成されたパラメータ値は、特定のデジタルビデオコーデック標準に基づいて正当であることが保証される。
【００２１】
ここで図３を参照する。ビット書き込み機能を有した変形型デコーダ（４１０）は、同じ機能（すなわち、構文解析（Ｓ１００）、パラメータおよび係数の復号（Ｓ１１０）、そして係数処理（Ｓ１２０））をデコーダとして実行する。ビット読み込み機能部（４００）の代わりにビット書き込み機能部（４１０）を実装することによって、デコーダは、特定のデジタルビデオコーデック標準に従った、正当なデジタルビデオビットストリームを生成するように変更されている。
【００２２】
図７は、ビデオ復号システムにおいて考えられるビット読み込みの実装形を示すブロック図である。まず、読み込まれるビットの数（Ｓ５００）が提供される。読み込まれるビットの数（Ｓ５００）に従って、ビット読み込み（Ｓ５１０）が、リトルエンディアンフォーマット、ビッグエンディアンフォーマットのいずれかである特定のデジタルビデオコーデック標準に従って実行される。パラメータ値が得られた後、復号値がデジタルビデオコーデック標準によって指定される範囲に適合していることを確認するために、範囲チェック（Ｓ５２０）が実行される。デジタルビデオ復号システムにおけるビット読み込み機能の実装の形は、特定のデジタルビデオコーデック標準とシステム必要条件とによって変化することもある。
【００２３】
図８は、ランダムテストビットストリーム生成器で使用される変形型ビデオ復号システムにおける、ランダムビット生成の実現の形を示すブロック図である。まず、書き込むビット数が提供される（Ｓ６００）。乱数生成器（Ｓ６１０）が乱数を発生させる。乱数発生器（Ｓ６１０）は、希望する複雑度や必要なランダム度に基づき、一般的な方法（例えば、均一分散法、不均一分散法、線形合同法など）を用いて実現することができる。
【００２４】
生成された乱数に対し、乱数生成器（Ｓ６１０）がマスキング（Ｓ６２０）を実行し、結果の値は書き込み対象のビット数（Ｓ６００）に応じた最大値となる。ただし、特定のデジタルビデオコーデック標準では、書き込み対象ビット数（Ｓ６００）に従えば有効となる値の中でも、いくつかはリザーブまたは禁止の対象となる。そこで、生成された値が特定のデジタルビデオコーデック標準に基づく許容範囲の中にあることを確実にするために、範囲チェック（Ｓ６３０）が実行される。最後に、生成された値を表すビットが書き込まれることで、有効なランダムテストビットストリームが生成される（Ｓ６４０）。
【００２５】
典型的な実施の形態の装置およびプロセスはコンピュータシステム（７００）、例えば図９に概略的に示すようなシステムで実現することができる。本実施の形態は、コンピュータシステム（７００）の内部で実行されて、コンピュータシステム（７００）に本例の実施の形態の方法を実行するように指示する、というコンピュータプログラムなどのソフトウェアとして実装される。
【００２６】
コンピュータシステム（７００）は、コンピュータモジュール（７０１）、キーボード（７０２）やマウス（７０３）などの入力モジュール、そして、ディスプレイ（７０４）やプリンタ（７０５）など複数の出力装置から成る。
コンピュータモジュール（７０１）は、適当な受信用装置（７０７）を介してコンピュータネットワーク（７０６）に接続されており、それによって、例えばインターネットや他のネットワークシステム（例：ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ））へのアクセスが可能となる。
【００２７】
本例のコンピュータモジュール（７０１）は、プロセッサ（７０８）、ランダムアクセスメモリ（ＲＡＭ）（７０９）、読出し専用メモリ（ＲＯＭ）（７１０）を有する。コンピュータモジュール（７０１）はまた、多数の入出力（Ｉ／Ｏ）インターフェース（例：ディスプレイ（７０４）へのＩ／Ｏインターフェース（７１１）、キーボード（７０２）へのＩ／Ｏインターフェース（７１２）、マウス（７０３）へのＩ／Ｏインターフェース（７１５）、そして、プリンタ（７０５）へのＩ／Ｏインターフェース（７１６））を有する。キーボード（７０２）およびマウス（７０３）は、例えば、実装されている特定のデジタルビデオコーデック標準に応じたランダムテストビットストリーム特性を指定する目的で、ユーザに用いられる。
【００２８】
コンピュータモジュール（７０１）の構成要素は通常、相互連結バス（７１３）を介して、当業者に公知の方法で通信を行う。
アプリケーションプログラムは通常、ＣＤ−ＲＯＭやフロッピー（登録商標）ディスクなどのデータ記憶媒体上に符号化されてコンピュータシステム（７００）のユーザに提供され、データ記憶装置（７１４）に対応するデータ記憶媒体ドライブを用いて読み出される。アプリケーションプログラムは、その実行において、プロセッサ（７０８）に読み出され、制御される。プログラムデータの中間記憶はＲＡＭ（７０９）を用いて実現すればよい。
（発明の効果）
ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する本方法および本装置は、複数の入力パラメータを利用する。ビデオコーデック用のエンコーダを利用しないランダムテストビットストリーム生成では、テストおよび検証の時間をかなり短くできるが、それはエンコーダ開発の必要を排除できるからである。ランダムテストビットストリーム生成を利用してデコーダ（テスト対象装置）をテストすることで、特定のデジタルビデオコーデック標準に適合させることができる。テストおよび検証の時間が短いことで、コストもまた下げられる。特性のテストおよび検証のツールの必要性もなくなるからである。さらに、特定のデジタルビデオコーデック標準によるパラメータの各々に関してランダムな値を生成するので、高い網羅性を達成することができる。
【００２９】
上記の実施の形態については、ビデオコーデック用のエンコーダを利用しない形でのランダムテストビットストリーム生成に関連付けて説明した。しかし、説明したプロセスは、他の目的（例えば、画像の符号化／復号、通信用の送信機／受信機、そして、圧縮／圧縮解除）を有したエンコーダの利用なしにランダムテストビットストリームを生成する目的にも用いることができるであろう。このことは当業者には容易に理解できる。
【００３０】
前述の通り、ビデオコーデック用のエンコーダを利用しない形でランダムテストビットストリームを生成する方法および装置を開示してある。いくつかの実施の形態についてのみ説明したが、当業者が本文書の開示内容を見れば、本発明の範囲から逸脱しない形で数多くの変更や変形が可能であることは明らかであろう。
【図面の簡単な説明】
【００３１】
【図１】一般的なデジタルビデオ符号化／復号システムを示す図である。
【図２】デジタルビデオ復号検証の一般的なシステムの概略を示す図である。
【図３】通常のデジタルビデオ復号プロセスを示すフローチャートである。
【図４】ランダムテストビットストリーム生成器を用いるデジタルビデオ復号検証システムを示すブロック図である。
【図５】エンコーダを利用しないランダムテストビットストリーム生成処理を示すフローチャートである。
【図６】ランダムテストビットストリーム生成器で用いられる変更型デコーダを示すブロック図である。
【図７】ビデオ復号システムにおけるビット読み出しの考えられる実施形を示すブロック図である。
【図８】ランダムテストビットストリーム生成器で用いられる変更型ビデオ復号システムの実施形を示すブロック図である。
【図９】例示的な実施の形態に関る装置およびプロセスを実施するためのコンピュータシステムを示す図である。
【図１】
2008131484.tif 000003
【図２】
2008131484.tif 000004
【図３】
2008131484.tif 000005
【図４】
2008131484.tif 000006
【図５】
2008131484.tif 000007
【図６】
2008131484.tif 000008
【図７】
2008131484.tif 000009
【図８】
2008131484.tif 000010
【図９】
2008131484.tif 000011
【外国語明細書】
2008131484.tif 000012
2008131484.tif 000013
2008131484.tif 000014
2008131484.tif 000015
2008131484.tif 000016
2008131484.tif 000017
2008131484.tif 000018
2008131484.tif 000019
2008131484.tif 000020
2008131484.tif 000021
2008131484.tif 000022
2008131484.tif 000023
2008131484.tif 000024
2008131484.tif 000025
2008131484.tif 000026
2008131484.tif 000027
2008131484.tif 000028
2008131484.tif 000029
2008131484.tif 000030
2008131484.tif 000031
2008131484.tif 000032
2008131484.tif 000033
2008131484.tif 000034
2008131484.tif 000035
2008131484.tif 000036
2008131484.tif 000037
2008131484.tif 000038