JP2008131484A - Method and apparatus for generating random test bitstream without utilizing encoder for video codec - Google Patents
Method and apparatus for generating random test bitstream without utilizing encoder for video codec Download PDFInfo
- Publication number
- JP2008131484A JP2008131484A JP2006315984A JP2006315984A JP2008131484A JP 2008131484 A JP2008131484 A JP 2008131484A JP 2006315984 A JP2006315984 A JP 2006315984A JP 2006315984 A JP2006315984 A JP 2006315984A JP 2008131484 A JP2008131484 A JP 2008131484A
- Authority
- JP
- Japan
- Prior art keywords
- bitstream
- video codec
- digital video
- codec standard
- input parameters
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本発明は、ビデオコーデック装置の検証のためのランダムテストビットストリーム生成に関する。 The present invention relates to random test bitstream generation for video codec device verification.
動画処理技術における進歩に伴い、様々に異なるデジタルビデオコーデックの標準およびフォーマット(例:MPEG、VC1、AVSや他の登録商標の技術)が、家電装置の分野で広く利用される状況となっている。電子システムおよびコンピュータシステムは、特定のデジタルビデオコーデック標準に従ってデジタルビデオデータの符号化および復号を実行するように開発されており、それによって、そのデジタルビデオデータは、当該特定のデジタルビデオコーデック標準に従うビデオ復号装置で読み取ることができる。 With the progress in video processing technology, various different digital video codec standards and formats (eg, MPEG, VC1, AVS and other registered trademark technologies) are widely used in the field of home appliances. . Electronic systems and computer systems have been developed to perform the encoding and decoding of digital video data according to a specific digital video codec standard, whereby the digital video data is a video according to the specific digital video codec standard. It can be read by a decoding device.
図1が示すのは、一般的なビデオデジタル符号化/復号システムである。生のビデオデータがエンコーダへ入力され、符号化ビットストリームがエンコーダの出力として生成される。この符号化ビットストリームは、記憶媒体に入れられるか、ストリーミングメディア(例:インターネット、放送ネットワーク)を介して送信される。反対側の受信機では、この符号化ビットストリームはデコーダによって正しく復号される必要がある。デコーダからの出力は生ビデオデータであり、それはディスプレイ装置に入力することができる。 FIG. 1 shows a typical video digital encoding / decoding system. Raw video data is input to the encoder, and an encoded bitstream is generated as the output of the encoder. This encoded bit stream is placed in a storage medium or transmitted via streaming media (eg, the Internet, broadcast network). At the opposite receiver, this encoded bitstream needs to be decoded correctly by the decoder. The output from the decoder is raw video data, which can be input to a display device.
特定のデジタルビデオコーデック標準による復号機能を実装するにあたって、電子回路またはコンピュータシステムの正常動作を保証するために、テストおよび検証を行う方法が導入されている。図2は、一般的なデジタルビデオ復号検証のシステム概要を示している。符号化ビットストリームは、テスト対象装置(DUT:device under testing)となるデコーダと、参照デコーダとに入力される。参照デコーダについては、それぞれのデジタルビデオコーデック標準組織(または会社)から取得できる。DUTデコーダは復号結果を生成し、参照デコーダは期待される結果を生成する。そして、DUTデコーダによる復号結果と参照デコーダによる期待される結果との比較が行われる。比較結果概要が生成され、これによって、DUTデコーダが期待通りに正しく動作するかどうかが示される。 In implementing a decoding function according to a specific digital video codec standard, a test and verification method has been introduced to ensure the normal operation of an electronic circuit or computer system. FIG. 2 shows a system outline of general digital video decoding verification. The encoded bit stream is input to a decoder serving as a device under testing (DUT) and a reference decoder. The reference decoder can be obtained from the respective digital video codec standard organization (or company). The DUT decoder generates a decoding result and the reference decoder generates an expected result. Then, the decoding result by the DUT decoder is compared with the expected result by the reference decoder. A comparison result summary is generated, which indicates whether the DUT decoder operates correctly as expected.
テストおよび検証の作業は、デコーダが特定のデジタルビデオコーデック標準に従って正しくその機能を実行することを保証するためのもので、負荷は大きいが重要である。ランダムなテストを行うと、テストのいくつかの組合せは無効なテストケースとなってしまうおそれがあり、それは通常、時間および労力の無駄となる。ただし、テストの個々の組合せを得るプロセスについては、それが単純にランダムなやり方で生成できるからこそ、簡単になる。直接的な形のテストでは、いくつかのテストケースが特定のデジタルビデオコーデック標準に従って開発される。しかし、このアプローチでは、ランダムなテストと比較して、長い労働時間および高い労働コストが必要となる。そのため、より短い労働時間、低い労働コストで高い網羅性を達成することが可能な検証方法が求められる。
そこで、デジタルビデオコーデックの符号化/復号アルゴリズムを利用することによって、エンコーダを利用しない形でテストおよび検証を行うためのランダムテストビットストリームを生成する、というテストおよび検証の方法を考案する。 Therefore, a test and verification method is devised in which a random test bit stream for generating a test and verification without using an encoder is generated by using an encoding / decoding algorithm of a digital video codec.
本発明の1つの側面として、ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する方法を提供する。この方法は、特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析するステップと、特定のデジタルビデオコーデック標準に従って前記複数の入力パラメータの範囲をチェックするステップとを含む。本方法は更に、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックするステップを含む。また、本方法は、特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実施するステップを含む。さらに本方法は、特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成するステップを含む。加えて、本方法は、特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するステップを含む。 As one aspect of the present invention, a method for generating a random test bitstream without using an encoder for a video codec is provided. The method includes analyzing a plurality of input parameters related to bitstream characteristics according to a particular digital video codec standard and checking a range of the plurality of input parameters according to a particular digital video codec standard. The method further includes checking the validity of the plurality of input parameters according to a particular digital video codec standard. The method also includes performing the reverse function of the decoder according to a specific digital video codec standard. The method further includes generating raw bitstream data in accordance with a particular digital video codec standard. In addition, the method includes performing bitstream encapsulation of the raw bitstream data according to a particular digital video codec standard.
本発明の別の側面として、ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する装置を提供する。本装置は、特定のデジタルビデオコーデック標準に従って、ビットストリーム特性に関する複数の入力パラメータを解析し、そして、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックする手段を有する。本装置は更に、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックする手段を有する。本装置はまた、特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行する手段を有する。本装置は更に、特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成する手段を有する。また、本装置は、特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行する手段を有する。 As another aspect of the present invention, an apparatus for generating a random test bitstream without using an encoder for a video codec is provided. The apparatus comprises means for analyzing a plurality of input parameters relating to bitstream characteristics according to a particular digital video codec standard and checking a range of the plurality of input parameters according to a particular digital video codec standard. The apparatus further comprises means for checking the validity of a plurality of input parameters according to a specific digital video codec standard. The apparatus also has means for performing the functions of the decoder in reverse according to a specific digital video codec standard. The apparatus further comprises means for generating raw bitstream data according to a specific digital video codec standard. The apparatus also comprises means for performing bitstream encapsulation of raw bitstream data according to a specific digital video codec standard.
本発明の更なる側面として、ビデオコーデック用エンコーダを利用することなくランダムテストビットストリームを生成する装置であって、前記第1の側面の方法に従って動作する、という装置を提供する。
本発明のさらに別の側面として、コンピュータプログラムをコンピュータで読み取り可能な媒体上に記録したコンピュータプログラム製品であって、ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成するためのプログラム製品を提供する。このコンピュータプログラム製品は、特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する入力パラメータを解析し、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックするコンピュータプログラムコード手段を有する。さらに、本コンピュータプログラム製品は、特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックするコンピュータプログラムコード手段を有する。本コンピュータプログラム製品はまた、特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行するコンピュータプログラムコード手段を有する。本コンピュータプログラム製品は、特定のデジタルビデオコーデック標準に従って、生のビットストリームデータを生成するコンピュータプログラムコード手段を更に有する。本コンピュータプログラム製品はさらに、特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するコンピュータプログラムコード手段を有する。
As a further aspect of the present invention, there is provided an apparatus for generating a random test bitstream without using an encoder for a video codec, which operates according to the method of the first aspect.
As yet another aspect of the present invention, a computer program product in which a computer program is recorded on a computer-readable medium, the program product for generating a random test bitstream without using an encoder for a video codec I will provide a. The computer program product comprises computer program code means for analyzing input parameters relating to bitstream characteristics according to a specific digital video codec standard and checking a range of a plurality of input parameters according to a specific digital video codec standard. Furthermore, the computer program product comprises computer program code means for checking the validity of a plurality of input parameters according to a specific digital video codec standard. The computer program product also has computer program code means for performing the functions of the decoder in reverse according to a specific digital video codec standard. The computer program product further comprises computer program code means for generating raw bitstream data according to a specific digital video codec standard. The computer program product further comprises computer program code means for performing bitstream encapsulation of raw bitstream data according to a specific digital video codec standard.
ここで本発明の更に別の側面として、ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成するためのコンピュータプログラムをコンピュータ読み取り可能な媒体上に記録したコンピュータプログラム製品であって、第1の側面の方法に従って動作する、というコンピュータプログラム製品を提供する。
本発明の実施の形態を用いれば、ランダムテストビットストリームの特性を指定することでテストおよび検証の方法論にインタラクティブなインターフェースを提供でき、そして、電子装置およびコンピュータシステムのテストおよび検証の各種取り合わせに関して、ユーザ指定の範囲内にある特定の特性を備えたランダムテストビットストリームを生成することができる。
According to still another aspect of the present invention, there is provided a computer program product in which a computer program for generating a random test bitstream without using an encoder for a video codec is recorded on a computer-readable medium. A computer program product that operates according to the method of one aspect is provided.
Embodiments of the present invention can be used to provide an interactive interface to test and verification methodologies by specifying the characteristics of a random test bitstream, and for various combinations of test and verification of electronic devices and computer systems, A random test bitstream can be generated with specific characteristics that are within a user-specified range.
本発明について、添付図面を参照しながら、非限定的な例として説明する。
ここで説明する実施の形態が用いるのは、「ビデオコーデック用のエンコーダを利用しない形でのランダムテストビットストリーム生成」と呼ぶべきものである。本実施の形態では、複数の入力パラメータを用い、特定のデジタルビデオコーデック標準に従って、生成されるランダムテストビットストリームの特性を決める。
The present invention will now be described by way of non-limiting example with reference to the accompanying drawings.
The embodiment described here should be referred to as “random test bitstream generation without using an encoder for a video codec”. In this embodiment, a plurality of input parameters are used to determine the characteristics of the generated random test bitstream according to a specific digital video codec standard.
生成するランダムテストビットストリームの特性の設定には、数多くの入力パラメータを用いることができる。その中には、少なくとも、ランダムテストビットストリーム名、フレーム幅、フレーム高、そしてフレーム数が含まれる。特定のデジタルビデオコーデック標準に基づいて、その他の特定のランダムテストビットストリーム特性を設定することも可能である(例えば、スライス数、参照ピクチャ数、インタレースコーディングモード、その他)。 A number of input parameters can be used to set the characteristics of the generated random test bitstream. These include at least the random test bitstream name, the frame width, the frame height, and the number of frames. Other specific random test bitstream characteristics can also be set based on specific digital video codec standards (eg, number of slices, number of reference pictures, interlace coding mode, etc.).
ここで説明する実施の形態を用いて、テストおよび検証を目的としたランダムテストビットストリームを生成することができる。生成されるテストビットストリームは本質的にランダムでありながら、設定された特定のデジタルビデオコーデック標準によって決まる特定の規則に従っているため、時間およびコストは節約される。ランダムテストビットストリームを作るための独立したエンコーダを開発する必要がないため、高い網羅性を実現するのに必要なテストおよび検証の時間は短くなる。
(一般的なビデオ復号プロセス)
図3は、一般的なデジタルビデオ復号プロセスを示す概要フローチャートである。一般に、各種デジタルビデオコーデック標準は、その復号プロセスの中でそれぞれ別々のアルゴリズムを採用しているが、デジタルビデオの復号プロセス全体は、通常、図3に示すように3つの主要プロセスに分けることができる。
The embodiments described herein can be used to generate a random test bitstream for testing and verification purposes. The generated test bitstream is essentially random, but saves time and cost because it follows specific rules determined by the specific digital video codec standard that is set. Since there is no need to develop an independent encoder for creating a random test bitstream, the test and verification time required to achieve high completeness is reduced.
(General video decoding process)
FIG. 3 is a schematic flowchart illustrating a general digital video decoding process. In general, various digital video codec standards employ different algorithms in their decoding process, but the entire digital video decoding process can usually be divided into three main processes as shown in FIG. it can.
特定のデジタルビデオコーデック標準に従った構文解析(S100)が実行されることで、処理中のビデオビットストリームに関して必要な全パラメータが復号される。構文解析の後、パラメータおよび係数の復号が実行されるが(S110)、ここでは、ブロック係数用のいくつかのパラメータと係数自体とが、ビデオビットストリームから復号される。普通、デジタルビデオコーデック標準では、ブロック係数の復号に、可変長復号または固定長復号が用いられる。実装形のいくつかの変形例では、デジタルビデオ標準の間で差がある可能性もあるが、係数の復号はやはり、その特定のデジタルビデオコーデック標準に応じ、算術復号またはコンテキストベースの算術復号によって実行されるであろう。また、いくつかの予測アルゴリズムが、その特定のデジタルビデオコーデック標準に応じ隣接ブロック係数を用いてブロック係数を決定することでビットレートを低く保つ、という目的で実行される場合がある。 Parsing (S100) according to a specific digital video codec standard is performed to decode all necessary parameters for the video bitstream being processed. After parsing, parameters and coefficients are decoded (S110), where some parameters for the block coefficients and the coefficients themselves are decoded from the video bitstream. Usually, in the digital video codec standard, variable length decoding or fixed length decoding is used for decoding block coefficients. In some implementation variations, there may be differences between digital video standards, but the coefficient decoding is still done by arithmetic decoding or context-based arithmetic decoding, depending on the particular digital video codec standard. Will be executed. Also, some prediction algorithms may be performed with the goal of keeping the bit rate low by determining block coefficients using adjacent block coefficients according to that particular digital video codec standard.
最終的に、ピクチャ内の全ブロック係数の復号が終わった後、適用されている特定のデジタルビデオコーデック標準に従って係数の処理(S120)が実行される(逆量子化、逆変換、フレーム内予測、フレーム間予測、または、動き補償、フィルタリング、その他)。各種デジタルビデオコーデック標準はまた、係数処理に関して異なるアルゴリズムを使用する場合がある。最後のフレームが復号されるまで(S130)、デジタルビデオ復号プロセスは続けられる。最後のフレームでない場合、デジタルビデオ復号プロセスは継続し、最後のフレームとなって復号プロセスが終了したところで終わる。
(ランダムテストビットストリームを用いたデジタルビデオ復号検証)
図4は、ランダムテストビットストリーム生成器を用いたデジタルビデオ復号検証システムを示すブロック図である。図2と比較すると、検証システムに入力するランダムテストビットストリームを生成するのが、ランダムテストビットストリーム生成器(200)となっている。生成されるランダムテストビットストリーム(215,220)は、実装されている特定のデジタルビデオコーデック標準に基づいて必要とされる全ての有効なテストケースを本デジタルビデオ検証システムが確実に網羅できる、というものにする。
Finally, after decoding all block coefficients in the picture, coefficient processing (S120) is performed according to the specific digital video codec standard applied (inverse quantization, inverse transform, intra-frame prediction, Inter-frame prediction or motion compensation, filtering, etc.). Various digital video codec standards may also use different algorithms for coefficient processing. The digital video decoding process continues until the last frame is decoded (S130). If it is not the last frame, the digital video decoding process continues and ends at the end of the decoding process as the last frame.
(Digital video decoding verification using random test bitstream)
FIG. 4 is a block diagram illustrating a digital video decoding verification system using a random test bitstream generator. Compared to FIG. 2, the random test bitstream generator (200) generates a random test bitstream to be input to the verification system. The generated random test bitstream (215,220) ensures that the digital video verification system can cover all valid test cases required based on the particular digital video codec standard implemented. Make things.
また、カバレジ機能(205)をランダムテストビットストリーム生成器(200)への入力に用いて、生成されるランダムテストビットストリームにどんな種類の網羅性が必要かを決定する。さらに、ランダムテストビットストリーム生成器(200)へのカバレジ機能(205)入力に基づき、当該生成器はカバレジ結果概要(210)を作る。カバレジ機能(205)およびカバレジ結果概要(210)は、生成されたランダムビットストリームが必要な網羅性をすでに満たしているかどうかをテストするユーザによって使用される。 The coverage function (205) is also used as an input to the random test bitstream generator (200) to determine what kind of coverage is required for the generated random test bitstream. Further, based on the coverage function (205) input to the random test bitstream generator (200), the generator creates a coverage result summary (210). The coverage function (205) and the coverage result summary (210) are used by the user to test whether the generated random bitstream already meets the required completeness.
ランダムテストビットストリーム生成器(200)が生成したランダムテストビットストリーム(215)は、DUTデコーダ(225)への入力となる。また、ランダムテストビットストリーム生成器(200)が生成した同じランダムテストビットストリーム(220)は、参照デコーダ(230)にも入力される。参照デコーダ(230)は復号機能を全て有したデコーダであり、特定のデジタルビデオコーデック標準に従って、各入力ビットストリームに関して期待される結果を生成する。 The random test bit stream (215) generated by the random test bit stream generator (200) is input to the DUT decoder (225). The same random test bit stream (220) generated by the random test bit stream generator (200) is also input to the reference decoder (230). The reference decoder (230) is a decoder with all decoding functions and produces the expected results for each input bitstream according to a specific digital video codec standard.
復号結果(235)はDUTデコーダ(225)で作られ、予測結果(240)は参照デコーダ(230)で作られる。復号結果比較メカニズム(245)が動作させられて、DUTデコーダ(225)で作られた復号結果(235)と参照デコーダ(230)で作られた予測結果(240)とが同一か否かを確認する。比較メカニズムには、復号されたデジタルビデオデータの比較、または、各段階でのデジタルビデオ係数データ(たとえば逆量子化時、逆変換時、動き補償時、またはフィルタリング時の係数データ)の比較処理が含まれる。比較結果概要(250)は、検証システムの終わりでユーザへのフィードバックとして作られ、対象のDUTデコーダが特定のデジタルビデオコーデック標準に従って正しく復号機能を実行しているか否か示す。
(ランダムテストビットストリーム生成)
図5は、本発明の実施例が、ビデオコーデック用のエンコーダを利用しない形でランダムテストビットストリームを生成する際の動作に関するフローチャートである。まず、ビットストリーム特性に関する複数の入力パラメータが提供される(S300)。当該複数の入力パラメータによって、生成しようとするランダムテストビットストリームの特性が指定される。その中には、少なくとも、ランダムテストビットストリーム名、フレーム幅、フレーム高、そしてフレーム数が含まれる。その他の特定のビットストリーム特性についても、実装対象の特定のデジタルビデオコーデック標準に従って実現することができる(例えば、スライス数、インタレース符号化モード、参照ピクチャ数など)。
The decoding result (235) is generated by the DUT decoder (225), and the prediction result (240) is generated by the reference decoder (230). The decoding result comparison mechanism (245) is operated to check whether the decoding result (235) produced by the DUT decoder (225) and the prediction result (240) produced by the reference decoder (230) are the same. To do. The comparison mechanism includes comparison of decoded digital video data or comparison processing of digital video coefficient data (for example, coefficient data at the time of inverse quantization, inverse transform, motion compensation, or filtering) at each stage. included. The comparison result summary (250) is made as feedback to the user at the end of the verification system and indicates whether the subject DUT decoder is performing the decoding function correctly according to a particular digital video codec standard.
(Random test bitstream generation)
FIG. 5 is a flowchart regarding the operation when the embodiment of the present invention generates a random test bitstream without using an encoder for a video codec. First, a plurality of input parameters related to bitstream characteristics are provided (S300). The characteristics of the random test bitstream to be generated are specified by the plurality of input parameters. These include at least the random test bitstream name, the frame width, the frame height, and the number of frames. Other specific bitstream characteristics can also be realized according to the specific digital video codec standard to be implemented (eg, number of slices, interlaced coding mode, number of reference pictures, etc.).
次いで、入力パラメータのチェックおよび検証が実行される(S310)。これは、当該複数の入力パラメータが特定の範囲の中にあって、実装された特定のデジタルビデオコーデック標準にあてはまることを確認するために行われる。逆デコーダ(S320)を用いて、全フレームおよび全ビデオ時間長にわたり、全ての構文パラメータおよびブロック係数が生成される。ここで、図3を参照する。構文分析(S100)と、パラメータおよび係数の復号(S110)と、そして係数処理(S120)とについて、逆処理が入力パラメータに従って実行され、有効なランダムテストビットストリームが生成される。逆復号プロセス(S320)の終わりで有効な生のビットストリーム(S330)が作られる。実装されている特定のデジタルビデオコーデック標準によっては、生のビットストリーム(S330)に対してビットストリームカプセル化プロセス(S340)が実行されて、カプセル化ビットストリーム(S350)が作られる。 Next, the input parameter is checked and verified (S310). This is done to ensure that the input parameters are within a specific range and fall within the specific digital video codec standard implemented. Using the inverse decoder (S320), all syntax parameters and block coefficients are generated over the entire frame and the entire video duration. Reference is now made to FIG. For syntax analysis (S100), parameter and coefficient decoding (S110), and coefficient processing (S120), inverse processing is performed according to the input parameters to generate a valid random test bitstream. A valid raw bitstream (S330) is created at the end of the inverse decoding process (S320). Depending on the particular digital video codec standard implemented, a bitstream encapsulation process (S340) is performed on the raw bitstream (S330) to create an encapsulated bitstream (S350).
図6はブロック図であり、ビデオコーデックの符号化を利用することなくランダムテストビットストリームを生成するのに用いられる、変形型のデコーダを示している。デコーダの側には、ビデオビットストリームパラメータを読み込むために実装されたビット読み込み機能部(400)が存在する。右側は逆デコーダ(S320)の実装形である。デコーダ内のビット読み込み機能部(400)は、逆デコーダ(S320)においては、ビット書き込み機能部(410)に置き換えられている。パラメータ範囲のチェックおよび検証を利用することで、生成されたパラメータ値は、特定のデジタルビデオコーデック標準に基づいて正当であることが保証される。 FIG. 6 is a block diagram illustrating a modified decoder used to generate a random test bitstream without using video codec encoding. On the decoder side, there is a bit reading function unit (400) implemented for reading video bitstream parameters. The right side is an implementation of the inverse decoder (S320). The bit read function unit (400) in the decoder is replaced with a bit write function unit (410) in the inverse decoder (S320). By utilizing parameter range checking and verification, the generated parameter values are guaranteed to be valid based on a particular digital video codec standard.
ここで図3を参照する。ビット書き込み機能を有した変形型デコーダ(410)は、同じ機能(すなわち、構文解析(S100)、パラメータおよび係数の復号(S110)、そして係数処理(S120))をデコーダとして実行する。ビット読み込み機能部(400)の代わりにビット書き込み機能部(410)を実装することによって、デコーダは、特定のデジタルビデオコーデック標準に従った、正当なデジタルビデオビットストリームを生成するように変更されている。 Reference is now made to FIG. The modified decoder (410) having the bit writing function performs the same function (ie, parsing (S100), parameter and coefficient decoding (S110), and coefficient processing (S120)) as a decoder. By implementing the bit write function (410) instead of the bit read function (400), the decoder is modified to produce a legitimate digital video bitstream according to a specific digital video codec standard. Yes.
図7は、ビデオ復号システムにおいて考えられるビット読み込みの実装形を示すブロック図である。まず、読み込まれるビットの数(S500)が提供される。読み込まれるビットの数(S500)に従って、ビット読み込み(S510)が、リトルエンディアンフォーマット、ビッグエンディアンフォーマットのいずれかである特定のデジタルビデオコーデック標準に従って実行される。パラメータ値が得られた後、復号値がデジタルビデオコーデック標準によって指定される範囲に適合していることを確認するために、範囲チェック(S520)が実行される。デジタルビデオ復号システムにおけるビット読み込み機能の実装の形は、特定のデジタルビデオコーデック標準とシステム必要条件とによって変化することもある。 FIG. 7 is a block diagram illustrating a possible implementation of bit reading in a video decoding system. First, the number of bits to be read (S500) is provided. According to the number of bits to be read (S500), bit reading (S510) is performed according to a specific digital video codec standard that is either a little endian format or a big endian format. After the parameter value is obtained, a range check (S520) is performed to confirm that the decoded value conforms to the range specified by the digital video codec standard. The implementation of the bit read function in a digital video decoding system may vary depending on the particular digital video codec standard and system requirements.
図8は、ランダムテストビットストリーム生成器で使用される変形型ビデオ復号システムにおける、ランダムビット生成の実現の形を示すブロック図である。まず、書き込むビット数が提供される(S600)。乱数生成器(S610)が乱数を発生させる。乱数発生器(S610)は、希望する複雑度や必要なランダム度に基づき、一般的な方法(例えば、均一分散法、不均一分散法、線形合同法など)を用いて実現することができる。 FIG. 8 is a block diagram illustrating a form of realization of random bit generation in the modified video decoding system used in the random test bitstream generator. First, the number of bits to be written is provided (S600). A random number generator (S610) generates a random number. The random number generator (S610) can be realized using a general method (for example, a uniform dispersion method, a non-uniform dispersion method, a linear congruence method, or the like) based on a desired complexity and a required randomness.
生成された乱数に対し、乱数生成器(S610)がマスキング(S620)を実行し、結果の値は書き込み対象のビット数(S600)に応じた最大値となる。ただし、特定のデジタルビデオコーデック標準では、書き込み対象ビット数(S600)に従えば有効となる値の中でも、いくつかはリザーブまたは禁止の対象となる。そこで、生成された値が特定のデジタルビデオコーデック標準に基づく許容範囲の中にあることを確実にするために、範囲チェック(S630)が実行される。最後に、生成された値を表すビットが書き込まれることで、有効なランダムテストビットストリームが生成される(S640)。 The random number generator (S610) performs masking (S620) on the generated random number, and the resulting value becomes the maximum value according to the number of bits to be written (S600). However, in a specific digital video codec standard, some values that are valid according to the number of bits to be written (S600) are reserved or prohibited. Thus, a range check (S630) is performed to ensure that the generated value is within an acceptable range based on a particular digital video codec standard. Finally, a bit representing the generated value is written to generate a valid random test bit stream (S640).
典型的な実施の形態の装置およびプロセスはコンピュータシステム(700)、例えば図9に概略的に示すようなシステムで実現することができる。本実施の形態は、コンピュータシステム(700)の内部で実行されて、コンピュータシステム(700)に本例の実施の形態の方法を実行するように指示する、というコンピュータプログラムなどのソフトウェアとして実装される。 The apparatus and process of the exemplary embodiment can be implemented in a computer system (700), such as the system schematically shown in FIG. The present embodiment is implemented as software such as a computer program that is executed inside the computer system (700) and instructs the computer system (700) to execute the method of the present embodiment. .
コンピュータシステム(700)は、コンピュータモジュール(701)、キーボード(702)やマウス(703)などの入力モジュール、そして、ディスプレイ(704)やプリンタ(705)など複数の出力装置から成る。
コンピュータモジュール(701)は、適当な受信用装置(707)を介してコンピュータネットワーク(706)に接続されており、それによって、例えばインターネットや他のネットワークシステム(例:ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN))へのアクセスが可能となる。
The computer system (700) includes a computer module (701), input modules such as a keyboard (702) and a mouse (703), and a plurality of output devices such as a display (704) and a printer (705).
The computer module (701) is connected to a computer network (706) via an appropriate receiving device (707), so that it can be connected to, for example, the Internet or other network systems (eg local area network (LAN), wide area network). Area network (WAN)) can be accessed.
本例のコンピュータモジュール(701)は、プロセッサ(708)、ランダムアクセスメモリ(RAM)(709)、読出し専用メモリ(ROM)(710)を有する。コンピュータモジュール(701)はまた、多数の入出力(I/O)インターフェース(例:ディスプレイ(704)へのI/Oインターフェース(711)、キーボード(702)へのI/Oインターフェース(712)、マウス(703)へのI/Oインターフェース(715)、そして、プリンタ(705)へのI/Oインターフェース(716))を有する。キーボード(702)およびマウス(703)は、例えば、実装されている特定のデジタルビデオコーデック標準に応じたランダムテストビットストリーム特性を指定する目的で、ユーザに用いられる。 The computer module (701) of this example includes a processor (708), a random access memory (RAM) (709), and a read only memory (ROM) (710). The computer module (701) also includes a number of input / output (I / O) interfaces (eg, an I / O interface (711) to a display (704), an I / O interface (712) to a keyboard (702), a mouse An I / O interface (715) to (703) and an I / O interface (716) to the printer (705). The keyboard (702) and mouse (703) are used by the user, for example, for the purpose of specifying random test bitstream characteristics according to the particular digital video codec standard implemented.
コンピュータモジュール(701)の構成要素は通常、相互連結バス(713)を介して、当業者に公知の方法で通信を行う。
アプリケーションプログラムは通常、CD−ROMやフロッピー(登録商標)ディスクなどのデータ記憶媒体上に符号化されてコンピュータシステム(700)のユーザに提供され、データ記憶装置(714)に対応するデータ記憶媒体ドライブを用いて読み出される。アプリケーションプログラムは、その実行において、プロセッサ(708)に読み出され、制御される。プログラムデータの中間記憶はRAM(709)を用いて実現すればよい。
(発明の効果)
ビデオコーデック用のエンコーダを利用することなくランダムテストビットストリームを生成する本方法および本装置は、複数の入力パラメータを利用する。ビデオコーデック用のエンコーダを利用しないランダムテストビットストリーム生成では、テストおよび検証の時間をかなり短くできるが、それはエンコーダ開発の必要を排除できるからである。ランダムテストビットストリーム生成を利用してデコーダ(テスト対象装置)をテストすることで、特定のデジタルビデオコーデック標準に適合させることができる。テストおよび検証の時間が短いことで、コストもまた下げられる。特性のテストおよび検証のツールの必要性もなくなるからである。さらに、特定のデジタルビデオコーデック標準によるパラメータの各々に関してランダムな値を生成するので、高い網羅性を達成することができる。
The components of the computer module (701) typically communicate via the interconnection bus (713) in a manner known to those skilled in the art.
The application program is usually encoded on a data storage medium such as a CD-ROM or a floppy (registered trademark) disk and provided to the user of the computer system (700), and the data storage medium drive corresponding to the data storage device (714) Is read out using. The application program is read and controlled by the processor (708) in its execution. The intermediate storage of program data may be realized using the RAM (709).
(The invention's effect)
The method and apparatus for generating a random test bitstream without using an encoder for a video codec uses a plurality of input parameters. Random test bitstream generation that does not utilize an encoder for a video codec can significantly reduce test and verification time because it eliminates the need for encoder development. By testing the decoder (device under test) using random test bitstream generation, it can be adapted to a specific digital video codec standard. Short testing and verification times also reduce costs. This eliminates the need for property testing and verification tools. Further, since a random value is generated for each of the parameters according to a specific digital video codec standard, high completeness can be achieved.
上記の実施の形態については、ビデオコーデック用のエンコーダを利用しない形でのランダムテストビットストリーム生成に関連付けて説明した。しかし、説明したプロセスは、他の目的(例えば、画像の符号化/復号、通信用の送信機/受信機、そして、圧縮/圧縮解除)を有したエンコーダの利用なしにランダムテストビットストリームを生成する目的にも用いることができるであろう。このことは当業者には容易に理解できる。 The above embodiment has been described in relation to the generation of a random test bitstream without using an encoder for a video codec. However, the described process generates a random test bitstream without the use of an encoder with other purposes (eg, image encoding / decoding, communication transmitter / receiver, and compression / decompression). Could also be used for this purpose. This can be easily understood by those skilled in the art.
前述の通り、ビデオコーデック用のエンコーダを利用しない形でランダムテストビットストリームを生成する方法および装置を開示してある。いくつかの実施の形態についてのみ説明したが、当業者が本文書の開示内容を見れば、本発明の範囲から逸脱しない形で数多くの変更や変形が可能であることは明らかであろう。 As described above, a method and apparatus for generating a random test bitstream without using an encoder for a video codec is disclosed. Although only some embodiments have been described, it will be apparent to those skilled in the art that many changes and modifications can be made without departing from the scope of the invention, provided that the disclosure of the document is viewed.
Claims (31)
(a)特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析するステップと、
(b)特定のデジタルビデオコーデック標準に従って前記複数の入力パラメータの範囲をチェックするステップと、
(c)特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックするステップと、
(d)特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行するステップと、
(e)特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成するステップと、そして、
(f)特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するステップと、
を有することを特徴とする方法。 A method for generating a random test bitstream without using an encoder for a video codec,
(A) analyzing a plurality of input parameters related to bitstream characteristics according to a particular digital video codec standard;
(B) checking a range of the plurality of input parameters according to a particular digital video codec standard;
(C) checking the validity of a plurality of input parameters according to a particular digital video codec standard;
(D) performing the function of the decoder in reverse according to a specific digital video codec standard;
(E) generating raw bitstream data according to a specific digital video codec standard; and
(F) performing bitstream encapsulation of the raw bitstream data according to a particular digital video codec standard;
A method characterized by comprising:
を特徴とする請求項1に記載の方法。 The step of analyzing the plurality of input parameters related to the bitstream characteristics according to the specific digital video codec standard includes a process of analyzing the plurality of input parameters indicating characteristics of the random test bitstream to be generated according to the specific digital video codec standard. Included,
The method of claim 1, wherein:
を特徴とする請求項2に記載の方法。 The steps of analyzing a plurality of input parameters relating to bitstream characteristics according to a specific digital video codec standard include at least a random test bitstream name, a random test bitstream frame width, a random test bitstream frame height, and a total number of random test bitstream frames. Includes processing to parse the fixed bitstream syntax elements,
The method according to claim 2.
を特徴とする請求項3に記載の方法。 The random test bitstream name is a name of a random test bitstream to be generated,
The method according to claim 3.
を特徴とする請求項3に記載の方法。 The random test bitstream frame width is a frame width of a random test bitstream to be generated;
The method according to claim 3.
を特徴とする請求項3に記載の方法。 The random test bitstream frame height is a frame height of a random test bitstream to be generated;
The method according to claim 3.
を特徴とする請求項3に記載の方法。 The total number of random test bitstream frames is the total number of intraframes and interframes of the random test bitstream to be generated;
The method according to claim 3.
を特徴とする請求項2に記載の方法。 The additional analysis step of multiple input parameters for bitstream characteristics based on a specific digital video codec standard may include additional input file or configuration file analysis processing,
The method according to claim 2.
を特徴とする請求項2に記載の方法。 The additional parsing of multiple input parameters for bitstream characteristics based on a particular digital video codec standard includes the parsing of multiple input arguments via command line parameters;
The method according to claim 2.
を特徴とする請求項2に記載の方法。 The additional parsing of multiple input parameters for bitstream properties based on a particular digital video codec standard includes interactive parsing of multiple input arguments via a graphic user interface;
The method according to claim 2.
を特徴とする請求項1に記載の方法。 The step of checking a set value range of a plurality of input parameters based on a specific digital video codec standard includes a process of checking a minimum value of input parameters based on a specific digital video codec standard;
The method of claim 1, wherein:
を特徴とする請求項1に記載の方法。 The step of checking a set value range of a plurality of input parameters based on a specific digital video codec standard includes a process of checking a maximum value of input parameters based on a specific digital video codec standard;
The method of claim 1, wherein:
を特徴とする請求項1に記載の方法。 The step of checking a set value range of a plurality of input parameters based on a specific digital video codec standard includes a process of checking a range of values between a maximum value and a minimum value of input parameters based on a specific digital video codec standard. Is included,
The method of claim 1, wherein:
を特徴とする請求項1に記載の方法。 Checking the validity of a plurality of input parameters based on a specific digital video codec standard includes the process of checking for the presence of input parameters based on a specific digital video standard;
The method of claim 1, wherein:
を特徴とする請求項2乃至14のいずれかに記載の方法。 The step of checking a range of a plurality of input parameters according to a specific digital video codec standard and the step of checking the validity of the plurality of input parameters include a dependency of one input parameter on another input parameter. Including a process to check,
15. A method according to any of claims 2 to 14, characterized in that
を特徴とする請求項1に記載の方法。 Reversing the functions of the decoder according to a specific digital video codec standard includes the process of replacing the bitstream parsing function with the bitstream configuration function in the decoder to obtain the bitstream syntax parameters;
The method of claim 1, wherein:
を特徴とする請求項16に記載の方法。 The process of replacing the bitstream analysis function with the bitstream configuration function in the decoder includes generating a candidate number and changing the candidate number according to the word width of the candidate number defined according to a specific digital video codec standard. Including masking, checking a range of values, and writing the candidate number to obtain a bitstream syntax parameter;
The method according to claim 16.
を特徴とする請求項17に記載の方法。 The process of generating the number of candidates includes a process of creating a random number, or a process of copying a predetermined constant from the additional file or the configuration file.
The method of claim 17, wherein:
を特徴とする請求項1に記載の方法。 The step of reversing the function of the decoder in accordance with a specific digital video codec standard includes the process of replacing the bitstream parsing function with a bitstream configuration function in the decoder to obtain a bitstream syntax parameter, and the bitstream syntax parameter And a process of obtaining a parameter after decoding, and a process of obtaining a parameter after processing by processing the parameter after decoding,
The method of claim 1, wherein:
を特徴とする請求項19に記載の方法。 In the process of replacing the bitstream analysis function with the bitstream configuration function in the decoder, a process for generating the number of candidates and the number of candidates according to the word width of the number of candidates defined by a specific digital video codec standard are used. A masking process, a process of checking a value range to provide a presentation bit indicating the validity of the value range, and if the presentation bit indicates a valid value range, the candidate number is written Processing to obtain a bitstream syntax parameter at, while updating the number of candidates if the presentation bit indicates a range of invalid values,
The method according to claim 19.
を特徴とする請求項1に記載の方法。 Generating raw bitstream data in accordance with a particular digital video codec standard includes generating a valid digital video bitstream in accordance with the particular digital video codec standard;
The method of claim 1, wherein:
を特徴とする請求項1に記載の方法。 The step of generating raw bitstream data according to a specific digital video codec standard includes the step of checking a range of a plurality of input parameters according to a specific digital video codec standard, and within an inverse decoder according to a specific digital video codec standard Including the step of checking the validity of a plurality of input parameters at
The method of claim 1, wherein:
を特徴とする請求項1に記載の方法。 The step of performing bitstream encapsulation of the raw bitstream data according to a specific digital video codec standard is to insert a plurality of bytes into the bitstream so that a start code within the digital video bitstream according to the specific digital video codec standard Including processing to prevent emulation, long “0” sequences, or long “1” sequences from occurring,
The method of claim 1, wherein:
を特徴とする請求項1乃至23のいずれかに記載の方法。 A method for generating a random test bitstream without using an encoder for a video codec;
24. A method according to any one of claims 1 to 23.
特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する複数の入力パラメータを解析する手段と、
特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックする手段と、
特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックする手段と、
特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行する手段と、
特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成する手段と、
特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行する手段と、
を有することを特徴とする装置。 An apparatus for generating a random test bitstream without using an encoder for a video codec,
Means for analyzing a plurality of input parameters relating to bitstream characteristics according to a particular digital video codec standard;
Means for checking a range of multiple input parameters according to a particular digital video codec standard;
Means for checking the validity of multiple input parameters according to a specific digital video codec standard;
Means for performing the functions of the decoder in reverse according to a specific digital video codec standard;
Means for generating raw bitstream data according to a specific digital video codec standard;
Means for performing bitstream encapsulation of raw bitstream data in accordance with a particular digital video codec standard;
A device characterized by comprising:
を特徴とする請求項26に記載の装置。 Operating according to the method of any of claims 1 to 27;
27. The apparatus of claim 26.
特定のデジタルビデオコーデック標準に従ってビットストリーム特性に関する入力パラメータを解析するコンピュータプログラムコード手段と、
特定のデジタルビデオコーデック標準に従って複数の入力パラメータの範囲をチェックするコンピュータプログラムコード手段と、
特定のデジタルビデオコーデック標準に従って複数の入力パラメータの有効性をチェックするコンピュータプログラムコード手段と、
特定のデジタルビデオコーデック標準に従ってデコーダの機能を逆に実行するコンピュータプログラムコード手段と、
特定のデジタルビデオコーデック標準に従って生のビットストリームデータを生成するコンピュータプログラムコード手段と、そして、
特定のデジタルビデオコーデック標準に従って生のビットストリームデータのビットストリームカプセル化を実行するコンピュータプログラムコード手段と、
を有することを特徴とするコンピュータプログラム製品。 A computer program product for recording a computer program on a computer readable medium for generating a random test bitstream without using an encoder for a video codec,
Computer program code means for analyzing input parameters relating to bitstream characteristics according to a particular digital video codec standard;
Computer program code means for checking a range of a plurality of input parameters according to a particular digital video codec standard;
Computer program code means for checking the validity of a plurality of input parameters in accordance with a particular digital video codec standard;
Computer program code means for performing the functions of the decoder in reverse according to a particular digital video codec standard;
Computer program code means for generating raw bitstream data in accordance with a particular digital video codec standard; and
Computer program code means for performing bitstream encapsulation of raw bitstream data in accordance with a particular digital video codec standard;
A computer program product comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006315984A JP2008131484A (en) | 2006-11-22 | 2006-11-22 | Method and apparatus for generating random test bitstream without utilizing encoder for video codec |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006315984A JP2008131484A (en) | 2006-11-22 | 2006-11-22 | Method and apparatus for generating random test bitstream without utilizing encoder for video codec |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008131484A true JP2008131484A (en) | 2008-06-05 |
Family
ID=39556873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006315984A Pending JP2008131484A (en) | 2006-11-22 | 2006-11-22 | Method and apparatus for generating random test bitstream without utilizing encoder for video codec |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008131484A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010087949A (en) * | 2008-10-01 | 2010-04-15 | Nec Electronics Corp | Decoder verifying device and method |
CN102215422A (en) * | 2010-04-01 | 2011-10-12 | 炬力集成电路设计有限公司 | Method, device and system for generating verification code stream of video processing integrated circuit |
EP2914005A1 (en) * | 2014-02-28 | 2015-09-02 | Allegro DVT | Video stream generator |
-
2006
- 2006-11-22 JP JP2006315984A patent/JP2008131484A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010087949A (en) * | 2008-10-01 | 2010-04-15 | Nec Electronics Corp | Decoder verifying device and method |
CN102215422A (en) * | 2010-04-01 | 2011-10-12 | 炬力集成电路设计有限公司 | Method, device and system for generating verification code stream of video processing integrated circuit |
CN102215422B (en) * | 2010-04-01 | 2013-10-23 | 炬力集成电路设计有限公司 | Method, device and system for generating verification code stream of video processing integrated circuit |
EP2914005A1 (en) * | 2014-02-28 | 2015-09-02 | Allegro DVT | Video stream generator |
FR3018148A1 (en) * | 2014-02-28 | 2015-09-04 | Allegro Dvt | |
US9832488B2 (en) | 2014-02-28 | 2017-11-28 | Allegro Dvt | Video stream generator |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9667685B2 (en) | Systems and methods for encoding and decoding | |
JP6423061B2 (en) | Computing device and method for implementing video decoder | |
CN102447906B (en) | Low-latency video decoding | |
CN101164336B (en) | Video information recording device and video information recording method | |
KR20110050456A (en) | Cabac/avc compliant watermarking of syntax elements in compressed video | |
JP2012508485A (en) | Software video transcoder with GPU acceleration | |
JP2009290498A (en) | Image encoder and image encoding method | |
JP2008124926A (en) | Image decoding apparatus, image encoding apparatus, and system lsi | |
CN110944173B (en) | Video decoding method, device, electronic equipment and storage medium | |
KR20080005237A (en) | Multistandard variable length decoder with hardware accelerator | |
JP2008131484A (en) | Method and apparatus for generating random test bitstream without utilizing encoder for video codec | |
JPWO2003079692A1 (en) | Hierarchical encoding apparatus and decoding apparatus | |
JP2023160884A (en) | Joint component secondary transform | |
CA2816284C (en) | Encoding and decoding a multimedia signal using syntax to generate a dynamically configured decoder | |
JP2014017612A (en) | Moving image prediction encoding device, moving image prediction encoding method, moving image prediction encoding program, moving image prediction decoding device, moving image prediction decoding method, and moving image prediction decoding program | |
JP5698644B2 (en) | Video predictive encoding method, video predictive encoding device, video predictive encoding program, video predictive decoding method, video predictive decoding device, and video predictive decode program | |
JP2005516495A5 (en) | ||
CN109120939A (en) | A kind of video App coding/decoding method and device | |
JP2022520340A (en) | Methods, appliances, and computer programs to reduce the context model for entropy coding of conversion factor significance flags. | |
KR101631274B1 (en) | Method and apparatus for encoding/decoding mode information | |
JP2008109259A (en) | Moving image coding device and program | |
CN105791837A (en) | Video data coding method, video data decoding method, video data transcoding method and devices | |
JP2007043674A (en) | Variable-length decoding method and apparatus | |
JP4978582B2 (en) | Stream creation device | |
JP2004193897A (en) | Method and apparatus for encoding and decoding dynamic image, and program for performing them |