JP3680070B2 - Image information encoding method, reproducing method, and reproducing apparatus - Google Patents
Image information encoding method, reproducing method, and reproducing apparatus Download PDFInfo
- Publication number
- JP3680070B2 JP3680070B2 JP2004171951A JP2004171951A JP3680070B2 JP 3680070 B2 JP3680070 B2 JP 3680070B2 JP 2004171951 A JP2004171951 A JP 2004171951A JP 2004171951 A JP2004171951 A JP 2004171951A JP 3680070 B2 JP3680070 B2 JP 3680070B2
- Authority
- JP
- Japan
- Prior art keywords
- sub
- picture
- display control
- data
- unit
- 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.)
- Expired - Lifetime
Links
Images
Landscapes
- Television Signal Processing For Recording (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
Description
この発明は、主映像とともに同時再生される副映像などの画像情報をエンコードする画像情報のエンコード方法と画像情報をデコードして再生する再生装置と再生方法に関する。 The present invention relates to an image information encoding method for encoding image information such as a sub-video that is reproduced simultaneously with a main video, and a reproducing apparatus and a reproducing method for decoding and reproducing the image information.
近年、映像や音声用のデータをディジタルで記録した光ディスクを再生する動画対応の光ディスク再生装置が開発されており、例えば、映画ソフトやカラオケ等の再生装置として広く利用されている。また、最近では、動画に対するデータ圧縮方式がMPEG(Moving Picture Image Coding Expert Group)方式として国際標準化されるに至っている。このMPEG方式は映像データを可変長圧縮する方式である。 2. Description of the Related Art In recent years, a moving image-compatible optical disk reproducing apparatus that reproduces an optical disk in which video and audio data are digitally recorded has been developed, and is widely used as a reproducing apparatus such as movie software and karaoke. Recently, a data compression system for moving images has been internationally standardized as a moving picture image coding expert group (MPEG) system. This MPEG system is a system for variable-length compression of video data.
また、現在、MPEG2方式が国際標準化されつつあり、これに伴ってMPEG圧縮方式に対応したシステムフォーマットもMPEG2システムレイヤとして規定されている。このMPEG2システムレイヤでは、動画、音声、その他のデータを同期して転送かつ再生できるように、それぞれのデータに基準時刻を用いて表現した転送開始時刻と再生開始時刻を設定することが規定されている。これらの情報により通常再生を行う。 Currently, the MPEG2 system is being internationally standardized, and accordingly, a system format corresponding to the MPEG compression system is also defined as the MPEG2 system layer. In this MPEG2 system layer, it is defined that a transfer start time and a reproduction start time expressed using a reference time are set for each data so that moving images, sounds, and other data can be transferred and reproduced in synchronization. Yes. Normal reproduction is performed based on these pieces of information.
映画の字幕やテレビ音量の設定値として表示されるイメージなど主映像にスーパーインポーズされる1または複数の副映像は、主映像に同期して再生されるようにランレングス圧縮されて記録されており、この副映像は複数のパックからなる副映像ユニットごとに、その副映像ユニットに付与されているタイムスタンプに基づいて再生されるようになっている。 One or more sub-pictures superimposed on the main picture, such as movie subtitles and images displayed as TV volume settings, are run-length compressed and recorded so as to be played back in synchronization with the main picture. The sub-picture is reproduced for each sub-picture unit composed of a plurality of packs based on a time stamp given to the sub-picture unit.
この場合、対応する最初の副映像ユニットのタイムスタンプを零とすることができず、画素データの転送時間を考慮した値を記述しなければならなかった。 In this case, the time stamp of the corresponding first sub-picture unit cannot be set to zero, and a value considering the transfer time of the pixel data has to be described.
また、1つの副映像ユニットは複数のシーケンスから構成され、各シーケンスごとに各シーケンス順に付与される表示開始時刻としてのタイムスタンプとコマンド等からなる表示制御シーケンスから構成されている。 One sub-video unit is composed of a plurality of sequences, and is composed of a display control sequence including a time stamp as a display start time given to each sequence in order of each sequence, a command, and the like.
この発明は、同じ副映像データを複数の異なる時刻で表示する場合でも全く同じ表示制御シーケンステーブルを用いることができ、表示制御シーケンステーブルをリロケータブルとすることができることを目的とする。 An object of the present invention is to use the same display control sequence table even when displaying the same sub-picture data at a plurality of different times, and to make the display control sequence table relocatable.
この発明は、主映像情報とともに同時再生可能な副映像情報が副映像データーユニットを構成し、前記副映像データーユニットは2048バイトのデーターサイズのパケットに分割され、前記副映像パケットはパケットヘッダを含み、前記パケットヘッダは表示時刻を表現したタイムスタンプを含み、更に前記副映像データーユニットは、副映像ユニットヘッダと、ランレングス圧縮された副映像の画素データーと、表示制御シーケンステーブルとを含み、前記副映像ユニットヘッダは前記表示制御シーケンステーブルの開始アドレス情報を含み、前記ランレングス圧縮は前記副映像の同一画素データーの連続をデーター単位に変換して行われ、前記表示制御シーケンステーブルは、複数の表示制御シーケンスを含み、1個の上記表示制御シーケンスは、副映像の表示制御に関する開始時間を示す情報と、アドレス情報と、複数の表示制御コマンドの領域とを含み、前記アドレス情報は、次の表示制御シーケンスの位置を示すように構成し、1個の上記表示制御コマンドの領域に設定される表示制御コマンドとしては、副映像の表示開始タイミングのコマンドと、副映像を強制的に表示するタイミングのコマンドとが有るようにエンコードするものである。 According to the present invention, sub-video information that can be reproduced simultaneously with main video information constitutes a sub-video data unit, and the sub-video data unit is divided into packets having a data size of 2048 bytes, and the sub-video packet includes a packet header. The packet header includes a time stamp representing a display time, and the sub-picture data unit further includes a sub-picture unit header, run-length compressed sub-picture pixel data, and a display control sequence table, The sub-picture unit header includes start address information of the display control sequence table, the run-length compression is performed by converting the same pixel data of the sub-picture into data units, and the display control sequence table includes a plurality of display control sequence tables . Including one display control sequence. Cans, includes information indicating the start time for the display control of the sub-picture, the address information, and a region of the plurality of display control commands, said address information is configured to indicate the position of the next display control sequence, The display control command set in one display control command area is encoded such that there is a sub-video display start timing command and a sub-video forcibly displaying timing command. .
以上詳述したように、この発明によれば、同じ副映像データを複数の異なる時刻で表示する場合でも全く同じ表示制御シーケンステーブルを用いることができ、表示制御シーケンステーブルをリロケータブルとすることができる。 As described above in detail, according to the present invention, the same display control sequence table can be used even when the same sub-picture data is displayed at a plurality of different times, and the display control sequence table can be made relocatable. .
以下、図面を参照して、この発明の一実施の形態に係る画像情報のエンコード/デコードシステムを説明する。なお、重複説明を避けるために、複数の図面に渡り機能上共通する部分には共通の参照符号が用いられている。 An image information encoding / decoding system according to an embodiment of the present invention will be described below with reference to the drawings. In addition, in order to avoid duplication description, the common referential mark is used for the part which is common in a function over several drawings.
図1〜図27は、この発明の一実施の形態に係る画像情報のエンコード/デコードシステムを説明するための図である。 1 to 27 are diagrams for explaining an image information encoding / decoding system according to an embodiment of the present invention.
図1は、この発明を適用できる情報保持媒体の一例としての光ディスクODの記録データ構造を略示している。 FIG. 1 schematically shows a recording data structure of an optical disc OD as an example of an information holding medium to which the present invention can be applied.
この光ディスクODは、たとえば片面約5Gバイトの記憶容量をもつ両面貼合せディスクであり、ディスク内周側のリードインエリアからディスク外周側のリードアウトエリアまでの間に多数の記録トラックが配置されている。各トラックは多数の論理セクタで構成されており、それぞれのセクタに各種情報(適宜圧縮されたデジタルデータ)が格納されている。 This optical disc OD is a double-sided bonded disc having a storage capacity of about 5 Gbytes on one side, for example, and a large number of recording tracks are arranged between the lead-in area on the inner circumference side of the disc and the lead-out area on the outer circumference side of the disc. Yes. Each track is composed of a large number of logical sectors, and various information (digital data compressed as appropriate) is stored in each sector.
図2は、図1の光ディスクODに記録される映像(ビデオ)用ファイルのデータ構造を例示している。 FIG. 2 shows an example of the data structure of a video (video) file recorded on the optical disc OD of FIG.
図2に示すように、この映像用ファイルは、ファイル管理情報1および映像用データ2を含んでいる。映像用データ2は、ビデオデータユニット(ブロック)、オーディオデータユニット(ブロック)、副映像データユニット(ブロック)、そしてこれらのデータ再生を制御するために必要な情報(DSI;Disk Search Information )を記録したDSIユニット(ブロック)から構成されている。各ユニットは、たとえばデータの種類毎に一定のデータサイズのパケットに、それぞれ分割される。ビデオデータユニット、オーディオデータユニットおよび副映像データユニットは、これらユニット群の直前に配置されたDSIを基に、それぞれ同期をとって再生される。
As shown in FIG. 2, this video file includes
すなわち、図1の複数論理セクタの集合体の中に、ディスクODで使用されるシステムデータを格納するシステムエリアと、ボリューム管理情報エリアと複数ファイルエリアが、形成される。 That is, a system area for storing system data used in the disk OD, a volume management information area, and a plurality of file areas are formed in an aggregate of a plurality of logical sectors in FIG.
上記複数のファイルエリアのうち、たとえばファイル1は、主映像情報(図中のVIDEO)、主映像に対して補助的な内容を持つ副映像情報(図中のSUB−PICTURE)、音声情報(図中のAUDIO)、再生情報(図中のPLAYBACK INFO.)等を含んでいる。
Among the plurality of file areas, for example,
図3は、図2で例示したデータ構造のうち、エンコード(ランレングス圧縮)された副映像情報のパックの論理構造を例示している。 FIG. 3 illustrates a logical structure of an encoded (run-length compressed) sub-picture information pack among the data structures illustrated in FIG.
図3の上部に示すように、ビデオデータに含まれる副映像情報の1パックはたとえば2048バイト(2kB)で構成される。この副映像情報の1パックは、先頭のパックのヘッダのあとに、1以上の副映像パケットを含んでいる。パックヘッダには、それぞれファイル全体の再生を通じて基準となる時刻(SCR; System Clock Reference)が付与されており、同じ時刻のSCRが付与されている副映像情報のパック内の副映像パケットが後述するデコーダへ転送されるようになっている。第1の副映像パケットは、そのパケットのヘッダのあとに、ランレングス圧縮された副映像データ(SP DATA1)を含んでいる。同様に、第2の副映像パケットは、そのパケットのヘッダのあとに、ランレングス圧縮された副映像データ(SP DATA2)を含んでいる。 As shown in the upper part of FIG. 3, one pack of sub-picture information included in the video data is composed of 2048 bytes (2 kB), for example. One pack of sub-picture information includes one or more sub-picture packets after the header of the first pack. Each pack header is given a reference time (SCR; System Clock Reference) through reproduction of the entire file, and a sub-picture packet in a pack of sub-picture information to which the SCR of the same time is given will be described later. It is transferred to the decoder. The first sub-picture packet includes run-length compressed sub-picture data (SP DATA1) after the header of the packet. Similarly, the second sub-picture packet includes run-length-compressed sub-picture data (SP DATA2) after the header of the packet.
このような複数の副映像データ(SP DATA1、SP DATA2、…)をランレングス圧縮の1ユニット(1単位)分集めたもの、すなわち副映像データユニット30に、副映像ユニットヘッダ31が付与される。この副映像ユニットヘッダ31のあとに、1ユニット分の映像データ(たとえば2次元表示画面の1水平ライン分のデータ)をランレングス圧縮した画素データ32、および各副映像パックの表示制御シーケンス情報を含むテーブル33が続く。
A plurality of such sub-picture data (SP DATA1, SP DATA2,...) Are collected for one unit (one unit) of run length compression, that is, a
換言すると、1ユニット分のランレングス圧縮データ30は、1以上の副映像パケットの副映像データ部分(SP DATA1、SP DATA2、…)の集まりで形成されている。この副映像データユニット30は、副映像表示用の各種パラメータが記録されている副映像ユニットヘッダSPUH31と、ランレングス符号からなる表示データ(圧縮された画素データ)PXD32と、表示制御シーケンステーブルDCSQT33とで構成されている。
In other words, one unit of run-length compressed
図4は、図3で例示した1ユニット分のランレングス圧縮データ30のうち、副映像ユニットヘッダ31の内容の一部を例示している(SPUH31の他部については図19参照)。ここでは、主映像(たとえば映画の映像本体)とともに記録・伝送(通信)される副映像(たとえば主映像の映画のシーンに対応した字幕)のデータに関して、説明を行なう。
FIG. 4 illustrates a part of the content of the
図4に示すように、副映像ユニットヘッダSPUH31には、画素データ32のTV画面上での表示サイズすなわち表示開始位置および表示範囲(幅と高さ)SPDSZと、副映像データパケット内の表示制御シーケンステーブル33の記録開始位置SPDCSQTAとが、記録されている。
As shown in FIG. 4, the sub-picture unit header SPUH 31 includes a display size of the
もう少し具体的にいうと、副映像ユニットヘッダSPUH31には、図4に示すように、以下の内容を持つ種々なパラメータ(SPDDADRなど)が記録されている:
(1)この表示データのモニタ画面上における表示開始位置および表示範囲 (幅および高さ)を示す情報(SPDSZ)と;
(2)パケット内の表示制御シーケンステーブル33の記録開始位置情報(副映像の表示制御シーケンステーブル開始アドレスSPDCSQTA)。
More specifically, in the sub-picture unit header SPUH31, as shown in FIG. 4, various parameters (SPDDADR etc.) having the following contents are recorded:
(1) Information (SPDSZ) indicating the display start position and display range (width and height) of the display data on the monitor screen;
(2) Recording start position information of the display control sequence table 33 in the packet (sub-picture display control sequence table start address SPDCSQTA).
図3または図4に示す副映像の画素データ(ランレングスデータ)32は、図5に示すランレングス圧縮規則1〜6によって、その1単位のデータ長(可変長)が決まる。そして、決まったデータ長でエンコード(ランレングス圧縮)およびデコード(ランレングス伸張)が行われる。
The sub-picture pixel data (run length data) 32 shown in FIG. 3 or FIG. 4 has a unit data length (variable length) determined by the run
図5は、図4で例示した副映像画素データ(ランレングスデータ)32部分が2ビットの画素データで構成される場合において、一実施の形態に係るエンコード方法で採用されるランレングス圧縮規則1〜6を説明するものである。
FIG. 5 shows a run-
また、図6は、図4で例示した副映像画素データ(ランレングスデータ)32部分が2ビットの画素データで構成される場合において、上記圧縮規則1〜6を具体的に説明するための図である。
FIG. 6 is a diagram for specifically explaining the
図5の1列目に示す規則1では、同一画素が1〜3個続く場合、4ビットデータでエンコード(ランレングス圧縮)のデータ1単位を構成する。この場合、最初の2ビットで継続画素数を表し、続く2ビットで画素データ(画素の色情報など)を表す。
According to
たとえば、図6の上部に示される圧縮前の映像データPXDの最初の圧縮データ単位CU01は、2個の2ビット画素データd0、d1=(0000)bを含んでいる(bはバイナリであることを指す)。この例では、同一の2ビット画素データ(00)bが2個連続(継続)している。 For example, the first compressed data unit CU01 of the uncompressed video data PXD shown in the upper part of FIG. 6 includes two 2-bit pixel data d0, d1 = (0000) b (b is binary) ). In this example, two identical 2-bit pixel data (00) b are continuous (continued).
この場合、図6の下部に示すように、継続数「2」の2ビット表示(10)bと画素データの内容(00)bとを繋げたd0、d1=(1000)bが、圧縮後の映像データPXDのデータ単位CU01*となる。 In this case, as shown in the lower part of FIG. 6, d0 and d1 = (1000) b obtained by connecting the 2-bit display (10) b of the continuation number “2” and the content (00) b of the pixel data are after compression. Is the data unit CU01 * of the video data PXD.
換言すれば、規則1によってデータ単位CU01の(0000)bがデータ単位CU01*の(1000)bに変換される。この例では実質的なビット長の圧縮は得られていないが、たとえば同一画素(00)bが3個連続するCU01=(000000)bならば、圧縮後はCU01*=(1100)bとなって、2ビットの圧縮効果が得られる。
In other words, according to
図5の2列目に示す規則2では、同一画素が4〜15個続く場合、8ビットデータでエンコードのデータ1単位を構成する。この場合、最初の2ビットで規則2に基づくことを示す符号化ヘッダを表し、続く4ビットで継続画素数を表し、その後の2ビットで画素データを表す。
According to
たとえば、図6の上部に示される圧縮前の映像データPXDの2番目の圧縮データ単位CU02は、5個の2ビット画素データd2、d3、d4、d5、d6=(0101010101)bを含んでいる。この例では、同一の2ビット画素データ(01)bが5個連続(継続)している。 For example, the second compressed data unit CU02 of the uncompressed video data PXD shown at the top of FIG. 6 includes five pieces of 2-bit pixel data d2, d3, d4, d5, d6 = (0101010101) b. . In this example, five identical 2-bit pixel data (01) b are continuous (continue).
この場合、図6の下部に示すように、符号化ヘッダ(00)bと、継続数「5」の4ビット表示(0101)bと画素データの内容(01)bとを繋げたd2〜d6=(00010101)bが、圧縮後の映像データPXDのデータ単位CU02*となる。 In this case, as shown in the lower part of FIG. 6, d2 to d6 in which the encoded header (00) b, the 4-bit display (0101) b of the continuation number “5”, and the content (01) b of the pixel data are connected. = (00010101) b is the data unit CU02 * of the compressed video data PXD.
換言すれば、規則2によってデータ単位CU02の(0101010101)b(10ビット長)がデータ単位CU02*の(00010101)b(8ビット長)に変換される。この例では実質的なビット長圧縮分は10ビットから8ビットへの2ビットしかないが、継続数がたとえば15(CU02の01が15個連続するので30ビット長)の場合は、これが8ビットの圧縮データ(CU02*=00111101)となり、30ビットに対して22ビットの圧縮効果が得られる。つまり、規則2に基づくビット圧縮効果は、規則1のものよりも大きい。しかし、解像度の高い微細な画像のランレングス圧縮に対応するためには、規則1も必要となる。
In other words, according to
図5の3列目に示す規則3では、同一画素が16〜63個続く場合、12ビットデータでエンコードのデータ1単位を構成する。この場合、最初の4ビットで規則3に基づくことを示す符号化ヘッダを表し、続く6ビットで継続画素数を表し、その後の2ビットで画素データを表す。
According to
たとえば、図6の上部に示される圧縮前の映像データPXDの3番目の圧縮データ単位CU03は、16個の2ビット画素データd7〜d22=(101010………1010)bを含んでいる。この例では、同一の2ビット画素データ (10)bが16個連続(継続)している。 For example, the third compressed data unit CU03 of the uncompressed video data PXD shown in the upper part of FIG. 6 includes 16 pieces of 2-bit pixel data d7 to d22 = (101010... 1010) b. In this example, 16 pieces of the same 2-bit pixel data (10) b are continuous (continued).
この場合、図6の下部に示すように、符号化ヘッダ(0000)bと、継続数「16」の6ビット表示(010000)bと画素データの内容(10)bとを繋げたd7〜d22=(000001000010)bが、圧縮後の映像データPXDのデータ単位CU03*となる。 In this case, as shown in the lower part of FIG. 6, d7 to d22 in which the encoded header (0000) b, the 6-bit display (010000) b of the continuation number “16”, and the content (10) b of the pixel data are connected. = (000001000010) b is the data unit CU03 * of the compressed video data PXD.
換言すれば、規則3によってデータ単位CU03の(101010………1010)b(32ビット長)がデータ単位CU03*の(000001000010)b(12ビット長)に変換される。この例では実質的なビット長圧縮分は32ビットから12ビットへの20ビットであるが、継続数がたとえば63(CU03の10が63個連続するので126ビット長)の場合は、これが12ビットの圧縮データ(CU03*=000011111110)となり、126ビットに対して114ビットの圧縮効果が得られる。つまり、規則3に基づくビット圧縮効果は、規則2のものよりも大きい。
In other words, according to the
図5の4列目に示す規則4では、同一画素が64〜255個続く場合、16ビットデータでエンコードのデータ1単位を構成する。この場合、最初の6ビットで規則4に基づくことを示す符号化ヘッダを表し、続く8ビットで継続画素数を表し、その後の2ビットで画素データを表す。
According to
たとえば、図6の上部に示される圧縮前の映像データPXDの4番目の圧縮データ単位CU04は、69個の2ビット画素データd23〜d91=(111111………1111)bを含んでいる。この例では、同一の2ビット画素データ(11)bが69個連続(継続)している。 For example, the fourth compressed data unit CU04 of the uncompressed video data PXD shown in the upper part of FIG. 6 includes 69 pieces of 2-bit pixel data d23 to d91 = (111111... 1111) b. In this example, 69 identical 2-bit pixel data (11) b are continuous (continue).
この場合、図6の下部に示すように、符号化ヘッダ(000000)bと、継続数「69」の8ビット表示(00100101)bと画素データの内容(11)bとを繋げたd23〜d91=(0000000010010111)bが、圧縮後の映像データPXDのデータ単位CU04*となる。 In this case, as shown in the lower part of FIG. 6, d23 to d91 are obtained by connecting the encoded header (000000) b, the 8-bit display (00100101) b of the continuation number “69”, and the content (11) b of the pixel data. = (00000000010010111) b is the data unit CU04 * of the compressed video data PXD.
換言すれば、規則4によってデータ単位CU04の(111111………1111)b(138ビット長)がデータ単位CU04*の(0000000010010111)b(16ビット長)に変換される。この例では実質的なビット長圧縮分は138ビットから16ビットへの122ビットであるが、継続数がたとえば255(CU01の11が255個連続するので510ビット長)の場合は、これが16ビットの圧縮データ(CU04*=0000001111111111)となり、510ビットに対して494ビットの圧縮効果が得られる。つまり、規則4に基づくビット圧縮効果は、規則3のものよりも大きい。
In other words, according to
図5の5列目に示す規則5では、エンコードデータ単位の切換点からラインの終わりまで同一画素が続く場合に、16ビットデータでエンコードのデータ1単位を構成する。この場合、最初の14ビットで規則5に基づくことを示す符号化ヘッダを表し、続く2ビットで画素データを表す。
According to
たとえば、図6の上部に示される圧縮前の映像データPXDの5番目の圧縮データ単位CU05は、1個以上の2ビット画素データd92〜dn=(000000………0000)bを含んでいる。この例では、同一の2ビット画素データ(00)bが有限個連続(継続)しているが、規則5では継続画素数が1以上いくつでも良い。
For example, the fifth compressed data unit CU05 of the uncompressed video data PXD shown in the upper part of FIG. 6 includes one or more pieces of 2-bit pixel data d92 to dn = (000000... 0000) b. In this example, the same 2-bit pixel data (00) b continues (continues) in a finite number. However, in
この場合、図6の下部に示すように、符号化ヘッダ(00000000000000)bと、画素データの内容(00)bとを繋げたd92〜dn=(0000000000000000)bが、圧縮後の映像データPXDのデータ単位CU05*となる。 In this case, as shown in the lower part of FIG. 6, d92 to dn = (0000000000000) b obtained by connecting the encoded header (00000000000000) b and the content (00) b of the pixel data is the compressed video data PXD. The data unit is CU05 *.
換言すれば、規則5によってデータ単位CU05の(000000………0000)b(不特定ビット長)がデータ単位CU05*の(0000000000000000)b(16ビット長)に変換される。規則5では、ラインエンドまでの同一画素継続数が16ビット長以上あれば、圧縮効果が得られる。
In other words, according to
図5の6列目に示す規則6では、エンコード対象データが並んだ画素ラインが1ライン終了した時点で、1ライン分の圧縮データPXDの長さが8ビットの整数倍でない(すなわちバイトアラインでない)場合に、4ビットのダミーデータを追加して、1ライン分の圧縮データPXDがバイト単位になるように(すなわちバイトアラインされるように)している。
According to
たとえば、図6の下部に示される圧縮後の映像データPXDのデータ単位CU01*〜CU05*の合計ビット長は、必ず4ビットの整数倍にはなっているが、必ずしも8ビットの整数倍になっているとは限らない。 For example, the total bit length of the data units CU01 * to CU05 * of the compressed video data PXD shown in the lower part of FIG. 6 is always an integer multiple of 4 bits, but is not necessarily an integer multiple of 8 bits. Not necessarily.
たとえばデータ単位CU01*〜CU05*の合計ビット長が1020ビットでありバイトアラインとするために4ビット不足しているなら、図6の下部に示すように、4ビットのダミーデータCU06*=(0000)bを1020ビットの末尾に付加して、バイトアラインされた1024ビットのデータ単位CU01*〜CU06*を出力する。 For example, if the total bit length of the data units CU01 * to CU05 * is 1020 bits and 4 bits are insufficient for byte alignment, as shown in the lower part of FIG. 6, 4-bit dummy data CU06 * = (0000 ) B is added to the end of 1020 bits, and byte-aligned 1024-bit data units CU01 * to CU06 * are output.
なお、2ビット画素データは、必ずしも4種類の画素色を表示するものに限定されない。たとえば、画素データ(00)bで副映像の背景画素を表し、画素データ(01)bで副映像のパターン画素を表し、画素データ(10)bで副映像の第1強調画素を表し、画素データ(11)bで副映像の第2強調画素を表わすようにしても良い。 The 2-bit pixel data is not necessarily limited to displaying four types of pixel colors. For example, pixel data (00) b represents a background pixel of a sub-picture, pixel data (01) b represents a sub-picture pattern pixel, pixel data (10) b represents a first emphasized pixel of a sub-picture, and pixel Data (11) b may represent the second emphasized pixel of the sub-picture.
画素データの構成ビット数がもっと多ければ、より他種類の副映像画素を指定できる。たとえば画素データが3ビットの(000)b〜(111)bで構成されているときは、ランレングスエンコード/デコードされる副映像データにおいて、最大8種類の画素色+画素種類(強調効果)を指定できるようになる。 If the number of constituent bits of the pixel data is larger, other types of sub-picture pixels can be specified. For example, when the pixel data is composed of 3 bits (000) b to (111) b, in the sub-picture data to be run-length encoded / decoded, a maximum of 8 types of pixel colors + pixel types (emphasis effect) are selected. It becomes possible to specify.
図7は、エンコードされた画像情報(図3の31+32+33)を持つ高密度光ディスクの、量産からユーザサイドにおける再生までの流れを説明するとともに;エンコードされた画像情報の、放送/ケーブル配信からユーザ/加入者における受信/再生までの流れを説明するブロック図である。 FIG. 7 illustrates the flow from mass production to user-side playback of a high density optical disc with encoded image information (31 + 32 + 33 in FIG. 3); from broadcast / cable distribution of encoded image information to user / It is a block diagram explaining the flow to reception / reproduction in a subscriber.
たとえば圧縮前ランレングスデータが図7のエンコーダ200に入力されると、エンコーダ200は、たとえば図5の圧縮規則1〜6に基づくソフトウエア処理により、入力されたデータがランレングス圧縮(エンコード)される。
For example, when the pre-compression run length data is input to the
図1に示すような光ディスクODに図2に示すような論理構成のデータが記録される場合は、図7のエンコーダ200によるランレングス圧縮処理(エンコード処理)は、図3の副映像データに対して実施される。
When data having a logical configuration as shown in FIG. 2 is recorded on the optical disc OD as shown in FIG. 1, the run-length compression process (encoding process) by the
図7のエンコーダ200には、上記光ディスクODを完成させるに必要な種々なデータも入力される。これらのデータは、たとえばMPEG(Mortion Picture Expert Group)の規格に基づき圧縮され、圧縮後のデジタルデータがレーザカッティングマシン202または変調器/送信器210に送られる。
Various data necessary for completing the optical disc OD is also input to the
レーザカッティングマシン202において、図示しないマザーディスクにエンコーダ200からのMPEG圧縮データがカッティングされて、光ディスクマスタ204が製造される。
In the
2枚貼合せ高密度光ディスク量産設備206では、このマスタ204を雛形にして、たとえば厚さ0. 6ミリのポリカーボネート基板上のレーザ光反射膜に、マスタの情報が転写される。それぞれ別のマスタ情報が転写された大量2枚のポリカーボネート基板は、張り合わされて、厚さ1. 2ミリの両面光ディスク(あるいは片面読み取り形両面ディスク)となる。
In the
設備206で量産された貼合せ高密度光ディスクODは各種市場に頒布され、ユーザの手元に届く。
The bonded high-density optical disc OD mass-produced at the
頒布されたディスクODは、ユーザの再生装置300で再生される。この装置300は、エンコーダ200でエンコードされたデータを元の情報に復元するデコーダ101を備えている。デコーダ101でデコードされた情報は、たとえばユーザのモニタTVに送られ、映像化される。こうして、エンドユーザは大量頒布されたディスクODから、元の映像情報を観賞することができるようになる。
The distributed disc OD is played back by the
一方、エンコーダ200から変調器/送信器210に送られた圧縮情報は、所定の規格に沿って変調され、送信される。たとえば、エンコーダ200からの圧縮映像情報は、対応する音声情報とともに衛星放送(212)される。あるいは、エンコーダ200からの圧縮映像情報は、対応する音声情報とともにケーブル伝送(212)される。
On the other hand, the compressed information sent from the
放送あるいはケーブル伝送された圧縮映像/音声情報は、ユーザあるいは加入者の受信器/復調器400で受信される。この受信器/復調器400は、エンコーダ200でエンコードされたデータを元の情報に復元するデコーダ101を備えている。デコーダ101でデコードされた情報は、たとえばユーザのモニタTVに送られ、映像化される。こうして、エンドユーザは放送あるいはケーブル伝送された圧縮映像情報から、元の映像情報を観賞することができるようになる。
The compressed video / audio information transmitted by broadcast or cable is received by the receiver /
図8は、この発明に基づく画像デコード(ランレングス伸張)を実行するデコーダのハードウエアの一実施形態(ノンインターレース仕様)を示すブロック図である。ランレングス圧縮された副映像データSPD(図3のデータ32相当)をデコードするデコーダ101(図7参照)は、図8のように構成することができる。このデコーダ101には、同じ時刻のSCRが付与されている副映像情報のパック内の副映像パケットが順次転送されるようになっており、上記SCRも供給されており、このSCRに応じて後述するメインSTC120aの計数が所定時間後に零となる値から開始されるようになっている。この所定時間とは、上記SCRに対応する1副映像ユニット(最大サイズ)のものの転送時間分に対応している。たとえば、1副映像ユニットの最大サイズが65535バイトで転送レートが740nsec/1バイトの場合、65535×740/1000000≒48.5msecとなり、約48.5msec後に零となる値から開始されるようになっている。
FIG. 8 is a block diagram showing an embodiment (non-interlaced specification) of decoder hardware that performs image decoding (run-length expansion) according to the present invention. The decoder 101 (see FIG. 7) for decoding the run-length compressed sub-picture data SPD (corresponding to the
以下、図8を参照しながら、図4に示すようなフォーマットのランレングス圧縮された画素データを含む信号をランレングス伸張する副映像データデコーダについて、説明する。 Hereinafter, a sub-picture data decoder that performs run-length expansion on a signal including pixel data subjected to run-length compression in the format shown in FIG. 4 will be described with reference to FIG.
図8に示すように、この副映像デコーダ101は、副映像データSPDが入力されるデータI/O102と;副映像データSPDを保存するメモリ108と;このメモリ108の読み書き動作を制御するメモリ制御部105と;メモリ108から読み出された符号データ(ランレングス圧縮された画素データ)のラン情報から1単位(1ユニット)の継続コード長(符号化ヘッダ)を検知し、その継続コード長の切り分け情報を出力する継続コード長検知部106と;この継続コード長検知部106からの情報にしたがって1ユニット分の符号データを取り出す符号データ切分部103と;この符号データ切分部103から出力されるものであって1圧縮単位のラン情報を示す信号と、継続コード長検知部106から出力されるものであってデータビットの「0」が1ユニット分の符号データの先頭から幾つ連続しているかという「0」ビット連続数を示す信号(期間信号)とを受け取り、これらの信号から1ユニットの継続画素数を計算するラン長設定部107と;符号データ切分部103からの画素色情報とラン長設定部107から出力された期間信号とを受け取り、その期間だけ色情報を出力する画素色出力部104(Fast-in/Fast-outタイプ)と;メモリ108から読み出された副映像データSPD中のヘッダデータ(図4参照)を読み込み、読み込んだデータに基づき各種処理設定および制御を行なうマイクロコンピュータ112と;メモリ108の読み書きアドレスを制御するアドレス制御部109と;ラン情報が存在しないラインに対する色情報がマイクロコンピュータ112により設定される不足画素色設定部111と;TV画面などに副映像を表示するときの表示エリアを決定する表示有効許可部110などで、構成されている。
As shown in FIG. 8, the
なお、図24〜図27の説明で言及されるが、デコーダ101のMPU112には、タイマ120およびバッファ121が接続されている。タイマ120は、メインSTC(システムタイマ)120aとサブSTC(サブタイマ)120bから構成されている。
24 to 27, the
上記説明を別の言い方で再度説明すると、次のようになる。すなわち、図8に示すように、ランレングス圧縮された副映像データSPDは、データI/O102を介して、デコーダ101内部のバスに送り込まれる。バスに送り込まれたデータSPDは、メモリ制御部105を介してメモリ108へ送られ、そこに記憶される。また、デコーダ101の内部バスは、符号データ切分部103と、継続コード長検知部106と、マイクロコンピュータ(MPUまたはCPU)112とに接続されている。
The above description will be described again in another way as follows. That is, as shown in FIG. 8, the run-length compressed sub-picture data SPD is sent to the bus inside the
メモリ108から読み出された副映像データの副映像ユニットヘッダ31は、マイクロコンピュータ112により読み取られる。マイクロコンピュータ112は、読み出したヘッダ31から、図4に示す各種パラメータに基づいて、アドレス制御部109にデコード開始アドレス(SPDDADR)を設定し、表示有効許可部110に副映像の表示開始位置と表示幅と表示高との情報(SPDSZ)を設定し、符号データ切分部103に副映像の表示幅(ライン上のドット数)を設定する。設定された各種情報は各部(109、110、103)の内部レジスタに保存される。それ以後、レジスタに保存された各種情報は、マイクロコンピュータ112によりアクセスできるようになる。
The sub
アドレス制御部109は、レジスタに設定されたデコード開始アドレス(SPDDADR)に基づき、メモリ制御部105を介しメモリ108にアクセスして、デコードしようとする副映像データの読み出しを開始する。こうしてメモリ108から読み出された副映像データは、符号データ切出部103および継続コード長検知部106に与えられる。
The
ランレングス圧縮された副映像データSPDの符号化ヘッダ(図5の規則2〜5では2〜14ビット)は継続コード長検知部106により検出され、データSPD内における同一画素データの継続画素数が継続コード長検知部106からの信号を基にラン長設定部107により検出される。
The encoding header (2 to 14 bits in the
すなわち、継続コード長検知部106は、メモリ108から読み込んだデータの”0”ビットの数を数えて、符号化ヘッダ(図5参照)を検知する。この検知部106は、検知した符号化ヘッダの値にしたがって、符号データ切分部103に切り分け情報SEP.INFO.を与える。
That is, the continuation code
符号データ切分部103は、与えられた切り分け情報SEP.INFO.にしたがって、継続画素数(ラン情報)をラン長設定部107に設定するとともに、画素データ(SEPARATED DATA;ここでは画素色)をFIFOタイプの画素色出力部104に設定する。その際、符号データ切分部103は、副映像データの画素数をカウントし、画素数カウント値と副映像の表示幅(1ラインの画素数)とを比較している。
The code
1ライン分のデコードが終了した時点でバイトアラインされていない(つまり1ライン分のデータビット長が8の倍数でない)場合は、符号データ切分部103は、そのライン上の末尾4ビットデータをエンコード時に付加されたダミーデータであるとみなして、切り捨てる。
If the byte alignment is not performed when decoding for one line is completed (that is, the data bit length for one line is not a multiple of 8), the code
ラン長設定部107は、前記継続画素数(ラン情報)と画素ドットクロック(DOTCLK)と水平/垂直同期信号(H−SYNC/V−SYNC)とに基づいて、画素色出力部104に、画素データを出力させるための信号(PERIOD SIGNAL)を与える。すると、画素色出力部104は、画素データ出力信号(PERIOD SIGNAL)がアクティブである間(つまり同じ画素色を出力する期間中)、符号データ切分部103からの画素データを、デコード
された表示データとして出力する。
Based on the number of continuous pixels (run information), the pixel dot clock (DOTCLK), and the horizontal / vertical synchronization signal (H-SYNC / V-SYNC), the run
その際、マイクロコンピュータ112からの指示によりデコード開始ラインが変更されている場合には、ラン情報のないラインが存在することがある。その場合には、不足画素色設定部111が、予め設定された不足の画素色のデータ(COLOR INFO.)を画素色出力部104に与える。すると、ラン情報のないラインデータが符号データ切分部103に与えられている間、画素色出力部104は、不足画素色設定部111からの不足画素色データ(COLOR INFO.)を出力する。
At this time, if the decoding start line is changed by an instruction from the
すなわち、図8のデコーダ101の場合、入力された副映像データSPD中に画像データがないと、マイクロコンピュータ112はその分不足する画素色情報を不足画素色設定部111に設定するようになっている。
That is, in the case of the
この画素色出力部104へは、図示しないモニタ画面上のどの位置にデコードされた副映像を表示させるかを決定する表示許可(Display Enable)信号が、副映像画像の水平/垂直同期信号に同期して、表示有効許可部(Display Activator )110から与えられる。また、マイクロコンピュータ112からの色情報指示に基づいて、許可部110から出力部104へ、色切換信号が送られる。
A display enable signal for determining which position on the monitor screen (not shown) to display the decoded sub-video is synchronized with the horizontal / vertical synchronization signal of the sub-video image. Then, it is given from the display activation permission unit (Display Activator) 110. A color switching signal is sent from the
アドレス制御部109は、マイクロコンピュータ112による処理設定後、メモリ制御部105、継続コード長検知部106、符号データ切分部103およびラン長設定部107に対して、アドレスデータおよび各種タイミング信号を送出する。
The
データI/O部102を介して副映像データSPDのパックが取り込まれ、それがメモリ108に格納される際、このデータSPDのパックヘッダの内容(デコード開始アドレス、デコード終了アドレス、表示開始位置、表示幅、表示高さなど)がマイクロコンピュータ112により読み取られる。マイクロコンピュータ112は、読み取った内容に基づいて、表示有効許可部110に、デコード開始アドレス、デコード終了アドレス、表示開始位置、表示幅、表示高さなどを設定する。
When a pack of sub-picture data SPD is taken in via the data I /
以下、圧縮された画素データが2ビット構成(使用規則は図5の規則1〜6)の場合について、図8のデコーダ101の動作を説明する。
Hereinafter, the operation of the
マイクロコンピュータ112によりデコードスタートアドレスが設定されると、アドレス制御部109は、メモリ制御部105に対応するアドレスデータを送るとともに、継続コード長検知部106に読込開始信号を送る。
When the decoding start address is set by the
継続コード長検知部106は、送られてきた読込開始信号に応答してメモリ制御部105にリード信号を送って符号化データ(圧縮された副映像データ32)を読み込む。そして、この検知部106において、読み込んだデータのうち上位2ビット全てが「0」かどうかがチェックされる。
The continuation code
それらが「0」でない場合は、圧縮単位のブロック長が4ビットであると判定される(図5の規則1参照)。
If they are not “0”, it is determined that the block length of the compression unit is 4 bits (see
それら(上位2ビット)が「0」であれば、さらに続く2ビット(上位4ビット)がチェックされる。それらが「0」でない場合は、圧縮単位のブロック長が8ビットであると判定される(図5の規則2参照)。
If they (higher 2 bits) are “0”, the subsequent 2 bits (higher 4 bits) are checked. If they are not “0”, it is determined that the block length of the compression unit is 8 bits (see
それら(上位4ビット)が「0」であれば、さらに続く2ビット(上位6ビット)がチェックされる。それらが「0」でない場合は、圧縮単位のブロック長が12ビットであると判定される(図5の規則3参照)。
If these (upper 4 bits) are “0”, the subsequent 2 bits (upper 6 bits) are checked. If they are not “0”, it is determined that the block length of the compression unit is 12 bits (see
それら(上位6ビット)が「0」であれば、さらに続く8ビット(上位14ビット)がチェックされる。それらが「0」でない場合は、圧縮単位のブロック長が16ビットであると判定される(図5の規則4参照)。
If they (upper 6 bits) are “0”, the following 8 bits (upper 14 bits) are checked. If they are not “0”, it is determined that the block length of the compression unit is 16 bits (see
それら(上位14ビット)が「0」であれば、圧縮単位のブロック長が16ビットであるとともに、ラインエンドまで同じ画素データが連続していると判定される(図5の規則5参照)。
If these (upper 14 bits) are “0”, it is determined that the block length of the compression unit is 16 bits and that the same pixel data continues to the end of the line (see
また、ラインエンドまで読み込んだ画素データのビット数が8の整数倍であればそのままとし、8の整数倍でなければ、バイトアラインを実現するために、読み込んだデータの末尾に4ビットのダミーデータが必要であると判定される(図5の規則6参照)。
If the number of bits of the pixel data read up to the line end is an integer multiple of 8, it is left as it is, and if it is not an integer multiple of 8, 4-bit dummy data is added at the end of the read data in order to realize byte alignment. Is determined to be necessary (see
符号データ切分部103は、継続コード長検知部106による上記判定結果に基づいて、メモリ108から副映像データ32の1ブロック分(1圧縮単位)を取り出す。そして、切分部103において、取り出された1ブロック分データが、継続画素数と画素データ(画素の色情報など)に切り分けられる。切り分けられた継続画素数のデータ(RUN INFO.)はラン長設定部107に送られ、切り分けられた画素データ(SEPARATED DATA)は画素色出力部104に送られる。
The code
一方、表示有効許可部110は、マイクロコンピュータ112から受け取った表示開始位置情報、表示幅情報および表示高情報にしたがい、装置外部から供給される画素ドットクロック(PIXELーDOT CLK)、水平同期信号(H−SYNC)および垂直同期信号(V−SYNC)に同期して、副映像表示期間を指定する表示許可信号(イネーブル信号)を生成する。この表示許可信号は、ラン長設定部107に出力される。
On the other hand, the display enable
ラン長設定部107には、継続コード長検知部106から出力されるものであって現在のブロックデータがラインエンドまで連続するかどうかを示す信号と、符号データ切分部103からの継続画素データ(RUN INFO.)とが送られる。ラン長設定部107は、検知部106からの信号および切分部103からのデータに基づいて、デコード中のブロックが受け持つ画素ドット数を決定し、このドット数に対応する期間中、画素色出力部104へ表示許可信号(出力イネーブル信号)を出力するように構成されている。
The run
画素色出力部104は、ラン長設定部107からの期間信号受信中イネーブルとなり、その期間中、符号データ切分部103から受け取った画素色情報を、画素ドットクロック(PIXELーDOT CLK)に同期して、デコードされた表示データとして、図示しない表示装置などへ送出する。すなわち、デコード中ブロックの画素パターン連続ドット数分の同じ表示データが、画素色出力部104から出力される。
The pixel
また、継続コード長検知部106は、符号化データがラインエンドまで同じ画素色データであると判定すると、符号データ切分部103へ継続コード長16ビット用の信号を出力し、ラン長設定部107にはラインエンドまで同じ画素色データであることを示す信号を出力する。
When the continuation code
ラン長設定部107は、検知部106から上記信号を受け取ると、水平同期信号H−SYNCが非アクティブになるまで符号化データの色情報がイネーブル状態を保持し続けるように、画素色出力部104へ出力イネーブル信号(期間信号)を出力する。
When the run
なお、マイクロコンピュータ112が副映像の表示内容をスクロールさせるためにデコード開始ラインを変更した場合は、予め設定していた表示領域内にデコード使用とするデータラインが存在しない(つまりデコードラインが不足する)可能性がある。
When the
図8のデコーダ101は、このような場合に対処するために、不足したラインを埋める画素色データを予め用意している。そして、実際にライン不足が検知されると、不足画素色データの表示モードに切り換えられる。具体的にいえば、データエンド信号がアドレス制御部109から表示有効許可部110に与えられると、許可部110は画素色出力部104に色切換信号(COLOR SW SIGNAL)を送る。画素色出力部104は、この切換信号に応答して、符号データからの画素色データのデコード出力を、不足画素色設定部110からの色情報(COLOR INFO.)のデコード出力に切り換える。この切換状態は、不足ラインの表示期間中(DISPLAY ENABLE=アクティブ)、維持される。
In order to cope with such a case, the
なお、上記ライン不足が生じた場合、不足画素色データを用いる代わりに、その間、デコード処理動作を中止することもできる。 When the line shortage occurs, the decoding processing operation can be stopped during that time instead of using the insufficient pixel color data.
具体的には、例えばデータエンド信号がアドレス制御部109から表示有効許可部110へ入力されたときに、許可部110から画素色出力部104へ表示中止を指定する色切換信号を出力すればよい。すると、画素色出力部104は、この表示中止指定色切換信号がアクティブの期間中、副映像の表示を中止するようになる。
Specifically, for example, when a data end signal is input from the
図9は、エンコードされた画素データ(副映像データ)のうち、文字パターン「A」がどのようにデコードされるかを、2例(ノンインターレース表示およびインターレース表示)説明するものである。 FIG. 9 illustrates two examples (non-interlaced display and interlaced display) of how the character pattern “A” is decoded in the encoded pixel data (sub-picture data).
図8のデコーダ101は、図9の上部で示すような圧縮データを図9の左下部に示すようなノンインターレース表示データにデコードする場合に用いることができる。
The
これに対し、図9の上部で示すような圧縮データを図9の右下部に示すようなインターレース表示データにデコードする場合は、同一画素ラインを二度スキャンするラインダブラ(たとえば、奇数フィールドのライン#1と同じ内容のライン#10を、偶数フィールドにおいて再スキャンする;V−SYNC単位の切換)が必要になる。
On the other hand, when the compressed data as shown in the upper part of FIG. 9 is decoded into the interlaced display data as shown in the lower right part of FIG. 9, a line doubler that scans the same pixel line twice (for example, line # of the odd field)
また、インターレース表示と同等の画像表示量をノンインターレース表示する場合は、別のインダブラ(たとえば、図9右下部のライン#1と同じ内容を持つライン#10をライン#1に連続させる;H−SYNC単位の切換)が必要になる。
When non-interlaced display of an image display amount equivalent to interlaced display is performed, another indoubler (for example,
図10は、この発明の一実施の形態に係る画像デコード(ランレングス伸張)を実行するものであって、たとえば図11あるいは図12マイクロコンピュータ112により実行されるソフトウエアを説明するフローチャートである。(ここでは、図3の表示制御シーケンステーブルDCSQT33のデコードについては触れない。DCSQT33部分のデコードについては、図25〜図27を参照して後述する。)
また、図11は、図10のソフトウエアで使用されるデコードステップ(ST105)の内容の一例を説明するフローチャートである。
FIG. 10 is a flowchart for explaining the software executed by the
FIG. 11 is a flowchart for explaining an example of the contents of the decoding step (ST105) used in the software of FIG.
すなわち、マイクロコンピュータ112は、ランレングス圧縮された副映像データ(画素データは2ビット構成)の初めのヘッダ31部分を読み込んで、その内容(図4参照)を解析する。そして、解析されたヘッダの内容に基づいて、デコードされる画像データのライン数およびドット数が指定される。これらライン数およびドット数が指定されると(ステップST101)、ラインカウント数およびドットカウント数が「0」に初期化される(ステップST102〜ステップST103)。
That is, the
マイクロコンピュータ112は、副映像ユニットヘッダ31の後に続くデータビット列を順次取り込んで行き、ドット数およびドットカウント数を計数する。そしてドット数からドットカウント数を引き算して、継続画素数を算出する(ステップST104)。
The
こうして継続画素数が算出されると、マイクロコンピュータ112は、この継続画素数の値に応じてデコード処理を実行する(ステップST105)。
When the number of continuing pixels is calculated in this way, the
ステップST105のデコード処理後、マイクロコンピュータ112はドットカウント数と継続画素数とを加算し、これを新たなドットカウント数とする(ステップST106)。
After the decoding process in step ST105, the
そして、マイクロコンピュータ112はデータを順次とりこんではステップST105のデコード処理を実行し、累積したドットカウント数が初めに設定したライン終了数(ラインエンドの位置)と一致したとき、1ライン分のデータについてのデコード処理を終了する(ステップST107イエス)。
Then, the
次に、デコードしたデータがバイトアラインされておれば(ステップST108Aイエス)、ダミーデータ分を取り除く(ステップST108B)。そしてラインカウント数を+1インクリメントし(ステップST109)、最終ラインに到達するまで(ステップST1010ノー)、ステップST102〜ステップST109の処理を反復する。最終ラインに到達すれば(ステップST1010イエス)、デコードは終了する。 Next, if the decoded data is byte-aligned (YES in step ST108A), the dummy data is removed (step ST108B). Then, the line count is incremented by +1 (step ST109), and the processes of step ST102 to step ST109 are repeated until the final line is reached (NO in step ST1010). If the final line is reached (YES in step ST1010), the decoding ends.
図10のデコード処理ステップST105の処理内容は、たとえば図11に示すようになっている。 The processing content of the decoding processing step ST105 in FIG. 10 is as shown in FIG. 11, for example.
この処理では、初めから2ビットを取得しては、そのビットが「0」か否かを判定する織りを繰り返す(ステップST111〜ステップST119)。これにより、図5のランレングス圧縮規則1〜6に対応した継続画素数、つまりラン連続数が決定される(ステップST120〜ステップST123)。
In this process, 2 bits are acquired from the beginning, and weaving for determining whether or not the bits are “0” is repeated (steps ST111 to ST119). Thereby, the number of continuous pixels corresponding to the run
そしてラン連続数が決定された後、そのあとに続けて読み込んだ2ビットが画素パターン(画素データ;画素の色情報)とされる(ステップST124)。 After the number of consecutive runs is determined, the 2 bits read subsequently are used as a pixel pattern (pixel data; pixel color information) (step ST124).
画素データ(画素の色情報)が決まると、インデックスパラメータ「i」を0とし(ステップST125)、パラメータ「i」がラン連続数と一致するまで(ステップST126)、2ビット画素パターンを出力しては(ステップST127)、パラメータ「i」を+1インクリメントし(ステップST128)、同じ画素データの1単位分の出力を終えて、デコード処理を終了する。 When the pixel data (pixel color information) is determined, the index parameter “i” is set to 0 (step ST125), and the 2-bit pixel pattern is output until the parameter “i” matches the number of consecutive runs (step ST126). (Step ST127), the parameter “i” is incremented by +1 (step ST128), the output of one unit of the same pixel data is finished, and the decoding process is finished.
このように、この副映像データのデコード方法によれば、副映像データのデコード処理が、数ビットの判定処理とデータブロックの切り分け処理とデータビットの計数処理だけという、簡単な処理で済む。このため、従来のMH符号化方法などで使用される大掛かりなコード表は必要なくなり、エンコードされたビットデータを元の画素情報にデコードする処理・構成が簡単になる。 As described above, according to the sub-picture data decoding method, the sub-picture data can be decoded by simple processes such as a determination process of several bits, a data block separation process, and a data bit counting process. This eliminates the need for a large code table used in the conventional MH encoding method, and simplifies the processing and configuration for decoding the encoded bit data into the original pixel information.
なお、上記実施の形態では、データデコード時に最大16ビットのビットデータを読み取れば、同じ画素の1単位分の符号ビット長を決定できるものとしたが、この符号ビット長はこれに限定されない。たとえばこの符号ビット長は32ビットでも64ビットでもよい。ただしビット長が増えれば、その分容量の大きなデータバッファが必要になる。 In the above embodiment, the code bit length for one unit of the same pixel can be determined by reading bit data of up to 16 bits at the time of data decoding. However, the code bit length is not limited to this. For example, the code bit length may be 32 bits or 64 bits. However, if the bit length increases, a data buffer with a larger capacity is required.
また、上記実施の形態では画素データ(画素の色情報)を、たとえば16色のカラーパレットから選択された3色の色情報としたが、これ以外に、色の3原色(赤成分R、緑成分G、青成分B;または輝度信号成分Y、クロマ赤信号成分Cr、クロマ青信号成分Cbなど)それぞれの振幅情報を、2ビットの画素データで表現することもできる。つまり、画素データは特定種類の色情報に限定されることはない。 In the above embodiment, the pixel data (pixel color information) is, for example, color information of three colors selected from a 16-color palette, but in addition to this, the three primary colors (red component R, green) The amplitude information of the component G, the blue component B; or the luminance signal component Y, the chroma red signal component Cr, the chroma blue signal component Cb, etc.) can also be expressed by 2-bit pixel data. That is, the pixel data is not limited to a specific type of color information.
図12は、エンコード(図3のSPUH+PXD+DCSQTのエンコード)およびデコード(SPUH+PXD+DCSQTのデコード)が実行される光ディスク記録再生装置の概要を説明するブロック図である。 FIG. 12 is a block diagram illustrating an outline of an optical disc recording / reproducing apparatus in which encoding (SPUH + PXD + DCSQT encoding in FIG. 3) and decoding (SPUH + PXD + DCSQT decoding) are performed.
図12において、光ディスクプレーヤ300は、基本的には従来の光ディスク再生装置(コンパクトディスクプレーヤあるいはレーザディスクプレーヤ)と同様な構成を持つ。ただし、この光ディスクプレーヤ300は、挿入された光ディスクOD(ランレングス圧縮された副映像データを含む画像情報が記録されたもの)から、ランレングス圧縮された画像情報をデコードする前のデジタル信号 (エンコードされたままのデジタル信号)を出力できるようになっている。このエンコードされたままのデジタル信号は圧縮されているので、必要な伝送帯域幅は非圧縮データを伝送する場合に比べて少なくて良い。
In FIG. 12, an
光ディスクプレーヤ300からの圧縮デジタル信号は変調器/送信器210を介してオンエアされ、または通信ケーブルに送出される。
The compressed digital signal from the
オンエアされた圧縮デジタル信号、あるいはケーブル送信された圧縮デジタル信号は、受信者あるいはケーブル加入者の受信器/復調器400により、受信される。この受信器400は、たとえば図8に示すような構成のデコーダ101を備えている。受信器400のデコーダ101は、受信し復調した圧縮デジタル信号をデコードして、エンコードされる前の原副映像データを含む画像情報を出力する。
On-air compressed digital signals or cable transmitted compressed digital signals are received by the receiver /
図12の構成において、送受信の伝送系がおよそ5Mビット/秒以上の平均ビットレートを持つものであれば、高品位なマルチメディア映像・音声情報の放送ができる。 In the configuration of FIG. 12, if the transmission / reception transmission system has an average bit rate of about 5 Mbit / s or more, high-quality multimedia video / audio information can be broadcast.
図13は、この発明に基づきエンコードされた画像情報が、通信ネットワーク(インターネットなど)を介して、任意の2コンピュータユーザ間で送受される場合を説明するブロック図である。 FIG. 13 is a block diagram illustrating a case where image information encoded according to the present invention is transmitted and received between any two computer users via a communication network (such as the Internet).
図示しないホストコンピュータで管理する自己情報#1を持つユーザ#1はパーソナルコンピュータ5001を所有しており、このパーソナルコンピュータ5001には、種々な入出力機器5011および種々な外部記憶装置5021が接続されている。また、このパーソナルコンピュータ5001の内部スロット(図示せず)には、この発明に基づくエンコーダおよびデコーダが組み込まれ、通信に必要な機能を持つモデムカード5031が装着されている。
A
同様に、別の自己情報#Nを持つユーザ#Nはパーソナルコンピュータ500Nを所有しており、このパーソナルコンピュータ500Nには、種々な入出力機器501Nおよび種々な外部記憶装置502Nが接続されている。また、このパーソナルコンピュータ500Nの内部スロット(図示せず)には、この発明に基づくエンコーダおよびデコーダが組み込まれ、通信に必要な機能を持つモデムカード503Nが装着されている。
Similarly, a user #N having another self-information #N owns a
いま、あるユーザ#1がコンピュータ5001を操作し、インターネットなどの回線600を介して別のユーザ#Nのコンピュータ500Nと通信を行なう場合を想定してみる。この場合、ユーザ#1およびユーザ#Nは双方ともエンコーダおよびデコーダが組み込まれたモデムカード5031および503Nを持っているので、この発明により効率よく圧縮された画像データを短時間で交換できる。
Assume that a
図24は、エンコードされた画像情報(図3のSPUH+PXD+DCSQT)を光ディスクODに記録し、記録された情報(SPUH+PXD+DCSQT)をこの発明に基づきデコードする記録再生装置の概要を示している。 FIG. 24 shows an outline of a recording / reproducing apparatus that records encoded image information (SPUH + PXD + DCSQT in FIG. 3) on the optical disc OD and decodes the recorded information (SPUH + PXD + DCSQT) based on the present invention.
図24のエンコーダ200は、図7のエンコーダ200と同様なエンコード処理(図13〜図14に対応する処理)を、ソフトウエアあるいはハードウエア(ファームウエアあるいはワイアードロジック回路を含む)で実行するように構成されている。
The
エンコーダ200でエンコードされた副映像データその他を含む記録信号は、変調器/レーザドライバ702において、たとえば(2、7)RLL変調される。変調された記録信号は、レーザドライバ702から光ヘッド704の高出力レーザダイオードに送られる。この光ヘッド704からの記録用レーザにより、記録信号に対応したパターンが、光磁気記録ディスクまたは相変化光ディスクODに、書き込まれる。
The recording signal including the sub-picture data encoded by the
ディスクODに書き込まれた情報は、光ヘッド706のレーザピックアップにより読み取られ、復調器/エラー訂正部708において復調され、かつ必要に応じてエラー訂正処理を受ける。復調されエラー訂正された信号は、音声/映像用データ処理部710において種々なデータ処理を受けて、記録前の情報が再生される。
Information written to the disk OD is read by the laser pickup of the
このデータ処理部710は、図8のデコーダ101に対応するデコード処理部を含んでいる。このデコード処理部により、図10〜図11に対応するデコード処理(圧縮された副映像データの伸張)が実行される。
The
ここで、図2または図3に示される副映像データは、図15に示すように複数チャネルで構成されている。副映像データユニットは、これら複数チャネルの中から任意に選択されたチャネルの、複数副映像データパケットで構成される。ここでの副映像は、文字あるいは図形などの情報を持ち、ビデオデータやオーディオデータと同時に再生処理されて、ビデオデータの再生画面上にスーパーインポーズ表示される。 Here, the sub-picture data shown in FIG. 2 or 3 is composed of a plurality of channels as shown in FIG. The sub video data unit is composed of a plurality of sub video data packets of channels arbitrarily selected from the plurality of channels. The sub-picture here has information such as characters or figures, is reproduced simultaneously with the video data and the audio data, and is superimposed on the video data reproduction screen.
図16は、副映像パケットのデータ構造を示す。図16に示すように、副映像のパケットデータは、パケットヘッダ3と、副映像ヘッダ31と、副映像データ32と、表示制御シーケンステーブル33とで構成されている。
FIG. 16 shows the data structure of the sub-video packet. As shown in FIG. 16, the sub-picture packet data includes a
パケットヘッダ3には、再生システムがその副映像データユニットの表示制御を開始すべき時刻がプレゼンテーションタイムスタンプ(PTS;Presentation Time Stamp )として記録されている。ただし、このPTSは、図17に示すように、各副映像データユニット(Y,W)内の先頭の副映像データパケットのヘッダ3にだけ記録されるようになっている。このPTSは、所定の再生時刻SCRにより再生される複数の副映像データユニットにおいて、その再生順に沿った値が各副映像データユニットに対して記述されている。
In the
図18は、1以上の副映像パケットで構成される副映像ユニット(図3の30参照)の直列配列状態(n、n+1)と、そのうちの1ユニット(n+1)のパケットヘッダに記述されたタイムスタンプPTSと、このPTSに対応したユニット(n+1)の表示制御の状態(それ以前の副映像の表示クリアと、これから表示する副映像の表示制御シーケンスの指定)とを、例示している。 FIG. 18 shows the serial arrangement state (n, n + 1) of sub-video units (see 30 in FIG. 3) composed of one or more sub-video packets and the time described in the packet header of one unit (n + 1) of them. The stamp PTS and the display control state of the unit (n + 1) corresponding to the PTS (display clear of the previous sub-picture and designation of the display control sequence of the sub-picture to be displayed) are illustrated.
副映像ヘッダ31には、副映像データパケットのサイズ(2バイトのSPCSZ)と、パケット内の表示制御シーケンステーブル33の記録開始位置(2バイトのSPDCSQTA)とが記録されている。
In the
表示制御シーケンステーブル33には、映像データの表示開始時刻/表示終了時刻を示す副映像表示制御タイムスタンプ(SPDCTS;Sub-Picture Display Control Time Stamp)と、表示すべき副映像データ(PXD)32の記録位置(SPNDCSQA;Sub-Picture Next Display Control Sequence Address )、副映像データの表示制御コマンド(COMMAND)とを1グループとする表示制御シーケンス情報(DCSQT;Display Control Sequence Table)が、1以上記録される。 The display control sequence table 33 includes a sub-picture display control time stamp (SPDCTS) indicating the display start time / display end time of video data, and sub-picture data (PXD) 32 to be displayed. One or more pieces of display control sequence information (DCSQT; Display Control Sequence Table) having a recording position (SPNDCSQA; Sub-Picture Next Display Control Sequence Address) and a sub-picture data display control command (COMMAND) as one group are recorded. .
ここで、パケットヘッダ3内のタイムスタンプPTSは、たとえばファイル (図2)先頭の再生開始時刻のような、ファイル全体の再生を通じて基準となる時刻(SCR;System Clock Reference)からの相対時間で規定されている。このSCRは、パケットヘッダ3の手前に付与されているパックヘッダ内に記述されている。一方、表示制御シーケンステーブル33内の各タイムスタンプSPDCTSは、上記PTSからの相対時間で規定される。
Here, the time stamp PTS in the
最初に表示処理されるシーケンスの副映像表示制御タイムスタンプSPDCTSには「0」を記述される。 “0” is described in the sub-picture display control time stamp SPDCTS of the sequence to be displayed first.
次に、再生システムにおける副映像データパケットのタイムスタンプPTS処理について説明する。ここでは、再生システム内の副映像プロセサ(たとえば図8のMPU112およびその周辺回路)において、このPTS処理が実行されるものとする。
Next, the time stamp PTS process of the sub video data packet in the reproduction system will be described. Here, it is assumed that this PTS process is executed in a sub-picture processor (for example,
図15は、副映像データをデコードする場合において、副映像データユニットのバッファリング状態が、タイムスタンプPTSのある副映像チャネルによってどのように変化するかを説明するための図である。 FIG. 15 is a diagram for explaining how the buffering state of a sub-video data unit changes depending on a sub-video channel having a time stamp PTS when sub-video data is decoded.
(1)副映像プロセサ(図8その他)は、外部(光ディスクあるいは放送局など)から送られてくる副映像データパケットの中から、予め選択されたチャネルの副映像データパケットをデコードし、そのパケット内にPTSがあるかどうかを調べる。 (1) A sub-video processor (FIG. 8 and others) decodes a sub-video data packet of a channel selected in advance from sub-video data packets sent from the outside (such as an optical disk or a broadcasting station), and the packet Check if there is a PTS in the box.
たとえば図15のチャネル*4fに示すようにPTSが存在する場合は、そのPTSがパケットヘッダ3から切り離される。その後、たとえば図17に示すように副映像データの頭にPTSが付けられ、PTSヘッダ付きの副映像データが副映像バッファ(たとえば図8のバッファ121)にバッファリング(格納)される。
For example, when a PTS exists as indicated by channel * 4f in FIG. 15, the PTS is separated from the
なお、図15のグラフは、PTS付きチャネル*4fの副映像データパケットがバッファリングされるにつれて、副映像バッファ121へのバッファリング量が累積して行く様子を例示している。
The graph of FIG. 15 illustrates a state in which the buffering amount to the
(2)システムリセット後、副映像プロセサは、PTSを含んだ最初のパケットを受け取った直後の垂直ブランキング期間中(ある表示画面フレーム/フィールドから次の表示画面フレーム/フィールドへの切り換わり期間中)にこのPTSを取り込み、取り込んだPTSを基準タイムカウンタとしてのメインSTC120a(副映像プロセサ内のカウンタ例えば図8のタイマ120の一部)のカウント値と比較する。このメインSTC120aは、たとえばファイル先頭の再生開始時刻などファイル全体の再生を通じて基準となる時刻SCRからの経過時間を計るものであるが、上述した所定時間後に零となる値から開始されるようになっている。これにより、上記PTS(副映像ユニットの最初のパケットに付与されている)には、この副映像ユニットの転送時間を考慮することなく、「0」を記述することができる。
(2) After the system reset, the sub-picture processor is in the vertical blanking period immediately after receiving the first packet including the PTS (during the switching period from one display screen frame / field to the next display screen frame / field) ), And the acquired PTS is compared with the count value of the
(3)上記PTSとSTC120aのカウント値との比較の結果、STC120aのカウント値がPTSより大きい場合には、その副映像データは直ちに表示処理される。一方、STC120aのカウント値がPTSより小さい場合には何の処理も行われない。この比較は、次の垂直ブランキング期間中に、再度実行される。
(3) If the count value of the
(4)副映像データの処理に入ると、同じ垂直ブランキング期間中に、その副映像データパケット内の表示制御シーケンステーブル33に記録されている最初の副映像表示制御タイムスタンプSPDCTSが、副映像プロセサ内のサブ基準タイムカウンタ(サブSTC)のカウント値と比較される。このサブSTCは、副映像データユニットの再生開始時刻からの経過時間を計る、副映像プロセサ内のサブ基準タイムカウンタ(例えば図8のタイマ120の他部)サブSTC120bで構成される。したがって、このサブSTC120bは、次の(後続の)副映像データユニットに表示が切り替わる度に、全ビットが”0”にクリアされ、その後再びインクリメント(タイムカウント)を開始する。
(4) When sub-picture data processing is started, the first sub-picture display control time stamp SPDCTS recorded in the display control sequence table 33 in the sub-picture data packet during the same vertical blanking period is It is compared with the count value of the sub reference time counter (sub STC) in the processor. This sub-STC is composed of a sub-standard time counter (for example, the other part of the
(5)サブSTC120bのカウント値と副映像表示制御タイムスタンプSPDCTSとの比較の結果、サブSTC120bのカウント値がSPDCTSよりも大きい場合は、表示制御シーケンステーブル33の先頭の表示制御シーケンスの制御データ(DCSQT;たとえば図16のDCSQT0)が直ちに実行され、副映像の表示処理が開始される。
(5) As a result of comparison between the count value of the
(6)一旦表示処理が開始されると、垂直ブランキング期間毎に、現在表示している副映像データユニットの次の副映像データユニットの先頭パケットに付加されているPTSが読み込まれ、この読み込まれたPTSとメインSTC120aのカウント値とが比較される。
(6) Once the display process is started, the PTS added to the first packet of the sub-picture data unit next to the currently displayed sub-picture data unit is read every vertical blanking period. The read PTS is compared with the count value of the
この比較の結果、メインSTC120aのカウント値がPTSよりも大きければ、図16のチャネルポインタが次の副映像データユニットのPTSのアドレス値に設定され、処理すべき副映像データユニットが次のものに切り替えられる。たとえば、図17を例にとると、上記チャネルポインタの設定変更により、副映像データユニットYから次の副映像データユニットWに切り替わる。この時点で、副映像データユニットYのデータはもう必要ないので、副映像バッファ(たとえば図8ではメモリ108)には副映像データユニットYの大きさの空き領域が生じる。このため、新たに副映像データパケットをこの空き領域に転送することができる。
As a result of this comparison, if the count value of the
これによって、副映像データユニット(たとえば図17のユニットW)のサイズおよびその切り換わり時刻(ユニットYからユニットWへの切り換わり時刻)から、副映像データパケットのバッファリング状態(図15参照)を、(ユニットWの)副映像データのエンコード時点で、事前に一意的に規定することができるようになる。したがって、映像・音声・副映像のパケットをシリアル転送したときに、それぞれのデコーダ部のバッファ(副映像デコーダの場合は図8その他のメモリ108)においてオーバーフローあるいはアンダーフローが生じないようなビットストリームの生成が可能になる。
As a result, the buffering state of the sub video data packet (see FIG. 15) is determined from the size of the sub video data unit (for example, unit W in FIG. 17) and the switching time (the switching time from unit Y to unit W). , At the time of encoding the sub-picture data (of unit W), it can be uniquely defined in advance. Therefore, when video / audio / sub-video packets are serially transferred, a bit stream that does not cause overflow or underflow in the buffer of each decoder section (in the case of a sub-video decoder,
また、上記PTSとメインSTC120aのカウント値との比較の結果、メインSTC120aのカウント値がPTSよりも大きくない場合は副映像データユニットの切り替えは行われず、表示制御シーケンステーブルポインタ(図16のDCSQTポインタ)が次の表示制御シーケンステーブルDCSQTのアドレス値に設定される。そして、現在の副映像データパケット内の次のDCSQTの副映像表示制御タイムスタンプSPDCTSとサブSTC120bのカウント値とが比較される。この比較結果を基に、次のDCSQTを実行するかどうかが判定される。この動作については、後に詳述する。
Further, as a result of the comparison between the PTS and the count value of the
なお、副映像データパケット内の最後のDCSQTは、次の表示制御シーケンステーブルDCSQTとして自分自身を指し示しているので、前記(5)のDCSQT処理は基本的には変わらない。 Since the last DCSQT in the sub-picture data packet indicates itself as the next display control sequence table DCSQT, the DCSQT process (5) is basically the same.
(7)通常再生では、前記(4)、(5)、(6)の処理が繰り返される。 (7) In normal playback, the processes (4), (5), and (6) are repeated.
なお、前記(6)の処理において、次の副映像データユニットのPTSを読み込む際にそのPTSを指し示すチャネルポインタ(図16参照)の値は、現在の副映像データユニット内のパケットサイズ(SPCSZ)を用いることで、求めるられる。 In the process of (6), when reading the PTS of the next sub-picture data unit, the value of the channel pointer (see FIG. 16) indicating the PTS is the packet size (SPCSZ) in the current sub-picture data unit. It is calculated by using.
同様に、表示制御シーケンステーブル33内で次のDCSQTの副映像表示制御タイムスタンプSPDCTSを指し示すDCSQTポインタの値は、このテーブル33内に記述されているDCSQTのサイズ情報(次の副映像表示制御シーケンスのアドレスSPNDCSQTA)を用いて求められる。 Similarly, the value of the DCSQT pointer indicating the sub-picture display control time stamp SPDCTS of the next DCSQT in the display control sequence table 33 is the size information of the DCSQT described in the table 33 (the next sub-picture display control sequence). Address SPNDCSQTA).
次に、副映像ヘッダ31、副映像データ32、および表示制御シーケンステーブル33それぞれの詳細について説明する。
Next, details of each of the
図19は、副映像ユニットヘッダ(SPUH)31の構造を示す。副映像ユニットヘッダSPUHは、副映像データパケットのサイズ(SPDSZ)およびパケット内の表示制御シーケンステーブル33の記録開始位置情報(副映像の表示制御シーケンステーブル開始アドレスSPDCSQTA;DCSQの相対アドレスポインタ)を含んでいる。 FIG. 19 shows the structure of the sub-picture unit header (SPUH) 31. The sub-picture unit header SPUH includes the size (SPDSZ) of the sub-picture data packet and the recording start position information of the display control sequence table 33 in the packet (sub-picture display control sequence table start address SPDCSQTA; DCSQ relative address pointer). It is out.
なお、アドレスSPDCSQTAで指し示される副映像表示制御シーケンステーブルSPDCSQTの内容は、図20に示すように、複数の表示制御シーケンスDCSQ1〜DCSQnで構成されている。 The contents of the sub-picture display control sequence table SPDCSQT indicated by the address SPDCSQTA are composed of a plurality of display control sequences DCSQ1 to DCSQn as shown in FIG.
また、各表示制御シーケンスDCSQ(1〜n)は、図21に示すように、副映像の表示制御開始時間を示す副映像表示制御タイムスタンプSPDCTSと、次の表示制御シーケンスの位置を示すアドレスSPNDCSQAと、1以上の副映像表示制御コマンドSPDCCMDとを含んでいる。 Further, as shown in FIG. 21, each display control sequence DCSQ (1 to n) includes a sub-picture display control time stamp SPDCTS indicating the sub-picture display control start time and an address SPNDCSQA indicating the position of the next display control sequence. And one or more sub-picture display control commands SPDCCMD.
副映像データ32は、個々の副映像データパケットと1対1で対応するデータ領域(PXDエリア)の集まりで構成されている。
The
ここで、副映像データユニットが切り替わるまでは、同じデータ領域中の任意のアドレスの副映像画素データPXDを読み出せるようになっている。これにより、1つの副映像表示イメージに固定されない、任意の副映像表示(たとえば副映像のスクロール表示)が可能となる。この任意のアドレスは、副映像データ(画素データPXD)の表示開始アドレスを設定するコマンド(図22のコマンドテーブル中のSETDSPXA)により設定される。 Here, the sub-picture pixel data PXD at an arbitrary address in the same data area can be read out until the sub-picture data unit is switched. As a result, any sub-picture display (for example, sub-picture scroll display) that is not fixed to one sub-picture display image can be performed. This arbitrary address is set by a command (SETDSPXA in the command table of FIG. 22) for setting the display start address of the sub-picture data (pixel data PXD).
図23は、表示制御シーケンステーブル33の具体例を示す。前述したように、表示制御シーケンステーブル33内の1つの表示制御シーケンス情報(DCSQT)には、副映像表示制御タイムスタンプ(SPDCTS)および副映像データ記録位置(SPNDCSQA)の後に、複数の表示制御コマンド(COMMAND3、COMMAND4など)とそのコマンドにより設定される各種パラメータデータが配置されている。そして、表示制御の終了を示す終了コマンド(エンドコード)が最後に付加されている。 FIG. 23 shows a specific example of the display control sequence table 33. As described above, one display control sequence information (DCSQT) in the display control sequence table 33 includes a plurality of display control commands after the sub-picture display control time stamp (SPDCTS) and the sub-picture data recording position (SPNDCSQA). (COMMAND3, COMMAND4, etc.) and various parameter data set by the command are arranged. An end command (end code) indicating the end of display control is added at the end.
次に、表示制御シーケンステーブル33の処理手順を説明する。 Next, the processing procedure of the display control sequence table 33 will be described.
(1)まず、表示制御シーケンステーブル33の最初のDCSQT(図16ではDCSQT0)に記録されているタイムスタンプ(SPDCTS)が、副映像プロセサのサブSTC120b(たとえば図8のタイマ120の一機能)のカウント値と比較される。
(1) First, the time stamp (SPDCTS) recorded in the first DCSQT (DCSQT0 in FIG. 16) of the display control sequence table 33 is the sub-STC 120b (for example, one function of the
(2)比較の結果、サブSTC120bのカウント値がタイムスタンプSPDCTSよりも大きい場合には、表示制御シーケンステーブル33内の全ての表示制御コマンドCOMMANDが、表示制御終了コマンドCMDEND(図22)が現れるまで実行される。
(2) If the count value of the
(3)表示制御が開始されたあとは、一定時間毎(たとえば垂直ブランキング期間毎)に、次の表示制御シーケンステーブルDCSQTに記録されている副映像表示制御タイムスタンプSPDCTSとサブSTC120bのカウント値とを比較することにより、次のDCSQTに更新するか(つまり図16のDCSQTポインタを次のDCSQTに移すか)どうかが、判定される。
(3) After the display control is started, the sub-picture display control time stamp SPDCTS and the count value of the
ここで、表示制御シーケンステーブル33内のタイムスタンプSPDCTS
は、PTSが更新されてから(つまり副映像データユニットが更新されてから)の相対時間で記録されているので、副映像データユニットのPTSが変わってもSPDCTSを書き替える必要はない。したがって、同じ副映像データ32を複数の異なる時刻で表示する場合でも全く同じ表示制御シーケンステーブルDCSQTを用いることができる。すなわち、表示制御シーケンステーブルDCSQTをリロケータブルとすることができる。
Here, the time stamp SPDCTS in the display control sequence table 33
Is recorded in the relative time after the PTS is updated (that is, after the sub-picture data unit is updated), so that it is not necessary to rewrite the SPDCTS even if the PTS of the sub-picture data unit changes. Therefore, the same display control sequence table DCSQT can be used even when the same
次に、副映像の表示制御コマンドの詳細について説明する。図22は、副映像表示制御コマンドSPDCCMDの一覧を示す。主な副映像表示制御コマンドとしては、次のようなものがある。 Next, details of the sub-video display control command will be described. FIG. 22 shows a list of sub-picture display control commands SPDCCMD. The main sub-picture display control commands are as follows.
(1)副映像画素データの表示開始タイミングをセットするコマンドSTADSP
これは、副映像データ32の表示開始制御を実行するコマンドである。すなわち、あるDCSQTからこのコマンドSTADSPを含むDCSQTに切り替わったときに、副映像データ32の表示が、このコマンドを含むDCSQTのタイムスタンプSPDCTSで示された時刻から開始されることになる。
(1) Command STADSP that sets the display start timing of sub-picture pixel data
This is a command for executing display start control of the
副映像プロセサ(たとえば図8のMPU112)は、このコマンドをデコードすると、(このコマンドをアクセスした時点ではこのコマンドが属するDCSQTのSPDCTSで示された時刻はすぎているので)直ちに、副映像プロセサ内部の表示制御系のイネーブルビットを、アクティブ状態にする。
When the sub-picture processor (for example, the
(2)副映像画素データの表示終了タイミングをセットするコマンドSTPDSP
これは、副映像データ32の表示終了制御を実行するためのコマンドである。副映像プロセサは、このコマンドをデコードすると、(このコマンドをアクセスした時点ではこのコマンドが属するDCSQTのSPDCTSで示された時刻はすぎているので)直ちに、副映像プロセサ内部の表示制御系のイネーブルビットを、アクティブ状態にする。
(2) Command STPDSP for setting display end timing of sub-picture pixel data
This is a command for executing display end control of the
(3)副映像画素データのカラーコードをセットするコマンドSETCOLOR
これは、副映像画素データの色コードを設定するためのコマンドである。このコマンドによって、副映像は、文字あるいは模様などのパターン画素と、パターン画素のふちどり等の強調画素と、副映像が表示される範囲領域でパターン画素および強調画素以外の領域の画素である背景画素とに分けて、色情報を設定することができる。
(3) Command SETCOLOR for setting the color code of sub-picture pixel data
This is a command for setting the color code of the sub-picture pixel data. By this command, the sub-picture becomes a pattern pixel such as a character or a pattern, an emphasis pixel such as a trimming of the pattern pixel, and a background pixel that is a pixel other than the pattern pixel and the emphasis pixel in the area where the sub-picture is displayed Color information can be set separately.
(4)主映像に対する副映像画素データのコントラストをセットするコマンドSETCONTR
これは、コマンドSETCOLORと同様、図40で例示した4種類の画素に対して色コードデータの代わりにコントラストデータを設定するためのコマンドである。
(4) Command SETCONTR for setting the contrast of sub-picture pixel data with respect to the main picture
Similar to the command SETCOLOR, this is a command for setting contrast data instead of color code data for the four types of pixels exemplified in FIG.
(5)主映像上における副映像画素データの表示エリアをセットするコマンドSETDAREA
これは、副映像画素データ32を表示する位置を指定するためのコマンドである。
(5) Command SETDAREA for setting the display area of sub-picture pixel data on the main picture
This is a command for designating the position where the
(6)副映像画素データの表示開始アドレスをセットするコマンドSETDSPXA
これは、副映像画素データ32の表示開始アドレスを設定するためのコマンドである。
(6) Command SETDSPXA for setting display start address of sub-picture pixel data
This is a command for setting the display start address of the
(7)副映像画素データのカラーコードおよび主映像に対する副映像画素データのコントラストの切換をセットするコマンドCHGCOLCON
これは、副映像画素データ32の色コードおよび主映像に対する副映像画素データ32のコントラストを表示中に変更するためのコマンドである。
(7) Command CHGCOLLON for setting the color code of sub-picture pixel data and the contrast of sub-picture pixel data with respect to the main picture
This is a command for changing the color code of the
なお、図22のコマンドテーブルは、上述したコマンドの他に、副映像画素データの表示開始タイミングを強制的にセットするコマンドFSTADSPと、および副映像の表示制御を終了するコマンドCMDENDを含んでいる。 Note that the command table of FIG. 22 includes, in addition to the above-described commands, a command FSTADSP for forcibly setting the display start timing of sub-picture pixel data, and a command CMDEND for ending sub-picture display control.
図24は、図3に示すような副映像ユニット30を生成する方法の一例を説明するフローチャートである。
FIG. 24 is a flowchart for explaining an example of a method for generating the
副映像として、たとえばビデオ(主映像)の台詞に対応した字幕および/またはイメージが使用される場合、この台詞字幕/イメージがビットマップデータ化される(ステップST10)。このビットマップデータを作成するときには、字幕部分をビデオの画面のどの位置のどの領域に表示するかを、決定しなければならない。そのために、表示制御コマンドSETDAREA(図22参照)のパラメータが決定される(ステップST12)。 For example, when subtitles and / or images corresponding to the lines of video (main video) are used as sub-pictures, the line subtitles / images are converted into bitmap data (step ST10). When creating this bitmap data, it is necessary to determine in which region and in which position of the video screen the subtitle portion is to be displayed. For this purpose, the parameter of the display control command SETDAREA (see FIG. 22) is determined (step ST12).
副映像の表示位置(空間的パラメータ)が決定されると、副映像を構成する画素データPXDのエンコードに移る(主映像全体をエンコードするわけではない)。その際、字幕(副映像)の色、字幕領域の背景色、字幕色・背景色のビデオ主映像に対する混合比が決定される。そのために、表示制御コマンドSETCOLORおよびSETCONTR(図22参照)のパラメータが決定される(ステップST14)。 When the display position (spatial parameter) of the sub video is determined, the process proceeds to encoding of pixel data PXD constituting the sub video (not encoding the entire main video). At that time, the color of the subtitle (sub-video), the background color of the subtitle area, and the mixing ratio of the subtitle color / background color to the video main video are determined. For this purpose, parameters of display control commands SETCOLOR and SETCONTR (see FIG. 22) are determined (step ST14).
次に、作成したビットマップデータをビデオの台詞に合わせて表示すべきタイミングが決定される。このタイミング決定は副映像タイムスタンプPTSにより行なわれる。その際、タイムスタンプPTSの最大限度時刻と、表示制御コマンドSTADSP、STPDSPおよびCHGCOLCON(図22参照)の各パラメータ(時間的パラメータ)が決定される(ステップST16)。 Next, the timing at which the created bitmap data should be displayed in accordance with the video dialogue is determined. This timing is determined by the sub-picture time stamp PTS. At that time, the maximum time of the time stamp PTS and the parameters (temporal parameters) of the display control commands STADSP, STPDSP, and CHGCOLCON (see FIG. 22) are determined (step ST16).
ここで、副映像タイムスタンプPTSは、MPEG2システムレイヤのターゲットデコーダバッファの消費モデルから、最終的に決定される。ここでは、字幕の表示を開始する時刻が、副映像タイムスタンプPTSの最大限度時刻として決められる。 Here, the sub-video time stamp PTS is finally determined from the consumption model of the target decoder buffer of the MPEG2 system layer. Here, the time at which subtitle display is started is determined as the maximum time of the sub-picture time stamp PTS.
表示制御コマンドSTADSPおよびSTPDSPは、副映像タイムスタンプPTSからの相対時刻として記録される。そのため、PTSが決まるまではコマンドSTADSPおよびSTPDSPを決定することはできない。そこで、この実施形態では、絶対時刻を決めておき、PTSの絶対時間が決まってから、その相対値を決定するようにしている。 The display control commands STADSP and STPDSP are recorded as relative times from the sub-picture time stamp PTS. Therefore, the commands STADSP and STPDSP cannot be determined until the PTS is determined. Therefore, in this embodiment, the absolute time is determined, and the relative value is determined after the absolute time of the PTS is determined.
また、作成した字幕に対して、空間的・時間的に表示色や表示領域を変化させたい場合には、その変化に基づいたコマンドCHGCOLCONのパラメータが決定される。 Further, when it is desired to change the display color and display area spatially and temporally with respect to the created caption, the parameter of the command CHGCOLLON based on the change is determined.
副映像の表示位置(空間的パラメータ)および表示タイミング(時間的パラメータ)が(仮に)決定されると、副映像表示制御シーケンステーブルDCSQTの内容(DCSQ)が作成される(ステップST18)。具体的には、表示制御シーケンステーブルDCSQの表示制御開始時間SPDCTS(図21参照)の値は、表示制御コマンドSTADSP(表示開始タイミング)の発効時刻および表示制御コマンドSTPDSP(表示終了タイミング)の発効時刻に準拠して、決定される。 When the display position (spatial parameter) and display timing (temporal parameter) of the sub-picture are determined (tentatively), the contents (DCSQ) of the sub-picture display control sequence table DCSQT are created (step ST18). Specifically, the value of the display control start time SPDCTS (see FIG. 21) of the display control sequence table DCSQ is the effective time of the display control command STADSP (display start timing) and the effective time of the display control command STPDSP (display end timing). Determined in accordance with
作成された画素データPXD32および表示制御シーケンステーブルDCSQT33を合わせると、副映像データユニット30(図3参照)のサイズを決定することができる。そこで、そのサイズを元に副映像ユニットヘッダSPUH31のパラメータSPDSZ(副映像サイズ;図19参照)およびSPDCSQTA(表示制御シーケンステーブルの開始アドレス;図19参照)を決めて、副映像ユニットヘッダSPUH31を作成する。その後、SPUH31とPXD32とDCSQT33とを結合することにより、1つの字幕に対する副映像ユニットが作成される(ステップST20)。
When the created pixel data PXD32 and the display control sequence table DCSQT33 are combined, the size of the sub-picture data unit 30 (see FIG. 3) can be determined. Therefore, the sub-picture unit header SPUH31 is determined by determining the parameters SPDSZ (sub-picture size; see FIG. 19) and SPDCSQTA (start address of the display control sequence table; see FIG. 19) of the sub-picture unit header SPUH31. To do. Thereafter, by combining
作成された副映像ユニット30のサイズが所定値(2048バイトあるいは2kバイト)を超える場合は(ステップST22イエス)、2kバイト単位で複数パケットに分割される(ステップST24)。この場合、タイムスタンプPTSは、副映像ユニット30の先頭になるパケットにのみ記録される(ステップST26)。
When the size of the created
作成された副映像ユニット30のサイズが所定値(2kバイト)以内である場合は(ステップST22ノー)、1つだけパケットが生成され(ステップST23)、タイムスタンプPTSはそのパケットの頭に記録される(ステップST26)。
When the size of the created
こうして出来上がった1以上のパケットはパック化され、ビデオその他のパックと合わされて、1本のデータストリームが出来上がる(ステップST28)。このとき、各パックのならび順は、MPEG2システムレイヤのターゲットデコーダバッファの消費モデルから、そのシーケンス記録コードSRCと副映像タイムスタンプPTSとを基に決定される。ここで初めてPTSが確定し、これにより図21の各パラメータ(SPDCTS等)が最終的に決定されることになる。 One or more packets thus completed are packed and combined with video and other packs to complete one data stream (step ST28). At this time, the order of the packs is determined based on the sequence recording code SRC and the sub-picture time stamp PTS from the consumption model of the target decoder buffer of the MPEG2 system layer. Here, the PTS is determined for the first time, and thereby each parameter (such as SPDCTS) in FIG. 21 is finally determined.
図25は、図24の処理手順にしたがって生成された副映像データストリームのパック分解およびデコードを並列処理する手順の一例を説明するフローチャートである。 FIG. 25 is a flowchart for explaining an example of a procedure for performing parallel processing on pack decomposition and decoding of the sub-picture data stream generated according to the processing procedure of FIG.
まず、デコードシステムは、転送されてくるストリームのIDを読み取って、選択された副映像パック(データストリームから分離されたもの)だけを副映像デコーダ(たとえば図8の副映像デコーダ101)に転送する(ステップST40)。
First, the decoding system reads the ID of the transferred stream, and transfers only the selected sub-picture pack (separated from the data stream) to the sub-picture decoder (for example, the
最初のパック転送が行われると、インデックスパラメータ”i”が「1」にセットされ(ステップST42)、1番目の副映像パックの分解処理(ステップST44;図26を参照して後述する)が実行される。 When the first pack transfer is performed, the index parameter “i” is set to “1” (step ST42), and the first sub-picture pack disassembly process (step ST44; described later with reference to FIG. 26) is executed. Is done.
分解されたパック(図6下部に示すような圧縮された副映像データPXDを含む)は、副映像バッファ(図8ではメモリ108)に一時格納され(ステップST46)、インデックスパラメータ”i”が1つインクリメントされる(ステップST50)。
The disassembled pack (including compressed sub-picture data PXD as shown in the lower part of FIG. 6) is temporarily stored in the sub-picture buffer (
インクリメントされたi番目のパックが存在すれば、すなわちステップST44で分解処理したパックが最終パックでなければ(ステップST52ノー)、インクリメントされたi番目の副映像パックに対する分解処理(ステップST44)が実行される。 If there is an incremented i-th pack, that is, if the pack decomposed in step ST44 is not the final pack (NO in step ST52), the decomposition process for the incremented i-th sub-picture pack (step ST44) is executed. Is done.
分解されたi番目の副映像パック(ここでは2番目のパック)は、1番目に分解されたパックと同様に副映像バッファ(メモリ108)に一時格納され(ステップST46)、インデックスパラメータ”i”がさらに1つインクリメントされる(ステップST50)。 The disassembled i-th sub-picture pack (here, the second pack) is temporarily stored in the sub-picture buffer (memory 108) in the same manner as the first disassembled pack (step ST46), and the index parameter “i”. Is further incremented by one (step ST50).
以上のようにして、インデックスパラメータ”i”をインクリメントしながら複数の副映像パックが連続的に分解され(ステップST44)、副映像バッファ(メモリ108)に格納される(ステップST46)。 As described above, a plurality of sub-picture packs are successively decomposed while incrementing the index parameter “i” (step ST44) and stored in the sub-picture buffer (memory 108) (step ST46).
連続してインクリメントされたi番目のパックが存在しなくなれば、すなわちステップST44で分解処理したパックが最終パックであれば(ステップST52イエス)、デコードしようとするストリームの副映像パック分解処理が終了する。 If the continuously incremented i-th pack does not exist, that is, if the pack decomposed in step ST44 is the final pack (YES in step ST52), the sub-picture pack decomposition processing of the stream to be decoded is completed. .
上記副映像パック分解処理(ステップST44〜ST52)が連続的に実行されている最中に、この副映像パック分解処理と独立・並行して、副映像バッファ(メモリ108)に一時格納された副映像パックのデコード処理が行われる。 While the sub-picture pack disassembly process (steps ST44 to ST52) is being executed continuously, the sub-picture buffer temporarily stored in the sub-picture buffer (memory 108) is executed independently and in parallel with the sub-picture pack disassembly process. The video pack is decoded.
すなわち、インデックスパラメータ”j”が「1」にセットされると(ステップST60)、1番目の副映像パックを副映像バッファ(メモリ108)から読み出す動作に入る(ステップST62)。この時点で、まだメモリ108に1番目の副映像パックが格納されていないならば(ステップST63ノー;ステップST46の処理がまだ行われていないとき)、読出対象のパックデータがメモリ108に格納されるまで、デコード処理は、パック読出動作の空ループ(ステップST62〜ST63)を実行している。
That is, when the index parameter “j” is set to “1” (step ST60), an operation of reading the first sub-picture pack from the sub-picture buffer (memory 108) is started (step ST62). At this time, if the first sub-picture pack is not yet stored in the memory 108 (NO in step ST63; the process in step ST46 is not yet performed), the pack data to be read is stored in the
メモリ108に1番目の副映像パックが格納されておれば(ステップST63イエス)、その副映像パックが読み出され、デコード処理される(ステップST64;デコード処理の具体例は図24〜図27を参照して後述する)。 If the first sub-picture pack is stored in memory 108 (YES in step ST63), the sub-picture pack is read and decoded (step ST64; specific examples of the decoding process are shown in FIGS. 24 to 27). Reference later).
このデコード処理の結果(たとえば図6上部に示すような圧縮前の副映像データPXDを含む)は、デコード処理中に図8の副映像デコーダ101から表示系(図示せず)へ送られ、デコードデータに対応する副映像の表示がなされる。
The result of this decoding process (for example, including the sub-picture data PXD before compression as shown in the upper part of FIG. 6) is sent from the
上記デコード処理において表示制御終了コマンド(図22のCMDEND)が実行されていなければ(ステップST66ノー)、インデックスパラメータ”j”が1つインクリメントされる(ステップST67)。 If the display control end command (CMDEND in FIG. 22) is not executed in the decoding process (NO in step ST66), the index parameter “j” is incremented by one (step ST67).
インクリメントされたj番目のパック(ここでは2番目)がメモリ108に存在すれば、そのパックがメモリ108から読み出され、デコードされる(ステップST64)。デコードされたj番目の副映像パック(ここでは2番目のパック)は、1番目にデコードされたパックと同様に表示系に送られ、インデックスパラメータ”j”がさらに1つインクリメントされる(ステップST67)。
If the incremented j-th pack (here, the second pack) exists in the
以上のようにして、インデックスパラメータ”j”をインクリメントしながら(ステップST67)、メモリ108に格納されている1以上の副映像パックが連続的にデコードされ(ステップST64)、デコードされた副映像データ(PXD)に対応する副映像の画像表示が実行される。
As described above, while incrementing the index parameter “j” (step ST67), one or more sub-picture packs stored in the
上記デコード処理において表示制御終了コマンド(図22のCMDEND)が実行されれば(ステップST66イエス)、副映像バッファ(メモリ108)内の副映像データのデコード処理が終了する。 If the display control end command (CMDEND in FIG. 22) is executed in the decoding process (Yes in step ST66), the decoding process of the sub-picture data in the sub-picture buffer (memory 108) is finished.
以上のデコード処理(ステップST62〜ST64)は、終了コマンドCMDENDが実行されない限り(ステップST66ノー)反復される。この実施の形態では、デコード処理は、終了コマンドCMDENDの実行(ステップST66イエス)をもって終了するようになっている。 The above decoding process (steps ST62 to ST64) is repeated unless the end command CMDEND is executed (NO in step ST66). In this embodiment, the decoding process is ended when the end command CMDEND is executed (YES in step ST66).
図26は、図25のパック分解処理の一例を説明するフローチャートである。副映像デコーダ101は、転送されてくるパックからパックヘッダ(図3参照)を読み飛ばして、パケットを得る(ステップST72)。このパケットにタイムスタンプPTSがないときは(ステップST74ノー)、パケットヘッダ(PH)を削除して、副映像ユニットデータ(PXD)だけを、副映像デコーダのバッファ(たとえば121)に格納する(ステップST76)。
FIG. 26 is a flowchart for explaining an example of the pack disassembly process of FIG. The
上記パケットにタイムスタンプPTSがあるときは(ステップST74イエス)、パケットヘッダ(PH)からPTSだけが抜き取られ、抜き取られたPTSが副映像ユニットデータ(30)に接続されて、副映像デコーダ101のバッファ121に格納される(ステップST78)。 If the packet has a time stamp PTS (YES in step ST74), only the PTS is extracted from the packet header (PH), and the extracted PTS is connected to the sub-picture unit data (30). It is stored in the buffer 121 (step ST78).
図27、図28は、図25の副映像デコード処理の一例を説明するフローチャートである。このデコード処理のうち、たとえば図6の下部に示す圧縮データPXDを図6の上部に示す非圧縮データPXDに戻す処理については、図10、図11その他を参照して説明済みである。 27 and 28 are flowcharts for explaining an example of the sub-picture decoding process of FIG. Among the decoding processes, for example, the process of returning the compressed data PXD shown in the lower part of FIG. 6 to the uncompressed data PXD shown in the upper part of FIG. 6 has been described with reference to FIGS.
すなわち、所定の再生時刻に対応するつまり同じ時刻のSCRが付与されている副映像情報のパック内の副映像パケットが1副映像ユニット分、副映像デコーダ101に順次転送され、そのSCRに応じて副映像デコーダ101は、メインSTC120aの計数が所定時間後に零となる値から開始し、副映像データユニットの先頭パケットに付加されているPTSが転送されているか否かを調べる (ステップST80)。この結果、副映像デコーダ101は、そのPTSが転送されている場合、そのPTSとメインSTC120aのカウント値とが比較され(ステップST81)、そのPTSが転送されていない場合、転送されるまで待機している。
That is, sub-video packets in a pack of sub-video information corresponding to a predetermined playback time, that is, to which the SCR of the same time is given, are sequentially transferred to the
この比較の結果、副映像デコーダ101は、メインSTC120aのカウント値がPTSよりも大きい場合、次の副映像データユニットの先頭パケットに付加されているPTSが転送されているか否かを調べ(ステップST82)、メインSTC120aのカウント値がPTSよりも小さい場合、同じになるまで待機している。
As a result of the comparison, when the count value of the
この結果、次の副映像データユニットの先頭パケットに付加されているPTSが転送されている場合、副映像デコーダ101は、そのPTSとメインSTC120aのカウント値とが比較される(ステップST83)。
As a result, when the PTS added to the head packet of the next sub-picture data unit is transferred, the
ステップ82で次の副映像データユニットのPTSが転送されていない場合、あるいはステップ83でメインSTC120aのカウント値が次の副映像データユニットのPTSよりも小さい場合、副映像デコーダ101は、デコードする副映像データユニットを現在のものに決定し(ステップST84)、ステップ86へ進む。
If the PTS of the next sub-picture data unit is not transferred in step 82 or if the count value of the
すなわち、最初の副映像データユニットのPTSは「0」のため、メインSTC120aのカウント値が「0」となった際に、デコードする副映像データユニットを決定し、ステップ86へ進む。
That is, since the PTS of the first sub-picture data unit is “0”, the sub-picture data unit to be decoded is determined when the count value of the
ステップ83でメインSTC120aのカウント値が次の副映像データユニットのPTSよりも大きい場合、副映像デコーダ101は、デコードする副映像データユニットを次のものに決定し(ステップST85)、ステップ86へ進む。
If the count value of the
次に、副映像デコーダ101は、表示制御シーケンステーブル33の最初のDCSQT(図16ではDCSQT0)に記録されているタイムスタンプSPDCTS(「0」)が転送されているか否かを調べる(ステップST86)。このタイムスタンプSPDCTSが転送されている場合、副映像デコーダ101は、このタイムスタンプSPDCTSとサブSTC120bのカウント値とが比較され(ステップST87)、転送されていない場合、ステップ81に戻る。
Next, the
そして、ステップ87の比較の結果、サブSTC120bのカウント値がタイムスタンプSPDCTSよりも大きい場合、副映像デコーダ101は、次の表示制御シーケンスDCSQのタイムスタンプSPDCTSが転送されているか否かを調べる(ステップST88)。この結果、そのタイムスタンプSPDCTSが転送されている場合、副映像デコーダ101は、そのタイムスタンプSPDCTSとサブSTC120bのカウント値とが比較される(ステップST89)。
If the count value of the
ステップ88で次の表示制御シーケンスDCSQのタイムスタンプSPDCTSが転送されていない場合、あるいはステップ89でサブSTC120bのカウント値が次の表示制御シーケンスDCSQのタイムスタンプSPDCTSよりも小さい場合、副映像デコーダ101は、デコードする表示制御シーケンスDCSQを現在のものに決定し(ステップST90)、ステップ92へ進む。
If the time stamp SPDCTS of the next display control sequence DCSQ is not transferred in step 88, or if the count value of the
ステップ89でサブSTC120bのカウント値が次の表示制御シーケンスDCSQのタイムスタンプSPDCTSよりも大きい場合、副映像デコーダ101は、デコードする表示制御シーケンスDCSQを次のものに決定し(ステップST91)、ステップ92へ進む。
If the count value of the
次に、副映像デコーダ101は、デコードする表示制御シーケンスDCSQに対応する画素データのデコードをその各コマンドを用いて開始する(ステップST92)。
Next,
たとえば、コマンドSETDAREAにより副映像の表示位置および表示領域が設定され、コマンドSETCOLORにより副映像の表示色が設定され、コマンドSETCONTRによりビデオ主映像に対する副映像のコントラストが設定される。 For example, the display position and display area of the sub video are set by the command SETDAREA, the display color of the sub video is set by the command SETCOLOR, and the contrast of the sub video with respect to the video main video is set by the command SETCONTR.
そして、表示開始タイミングコマンドSTADSPを実行してから別の表示制御シーケンスDCSQで表示終了タイミングコマンドSTPDSPが実行されるまで、切換コマンドCHGCOLCONに準拠した表示制御を行いつつ、ランレングス圧縮されている画素データPXD(32)のデコードが行われる。 The pixel data subjected to run-length compression while performing display control in accordance with the switching command CHGCOLCON until the display end timing command STPDSP is executed in another display control sequence DCSQ after the display start timing command STADSP is executed. PXD (32) is decoded.
また、副映像デコーダ101は、表示制御シーケンスDCSQに対応する全ての表示制御コマンドCOMMANDが表示制御終了コマンドCMDENDまですべて転送されているか否かを調べる(ステップST93)。
Further,
この結果、副映像デコーダ101は、転送されていない場合、サブSTC120bのカウント値をクリアし、ステップ81に戻り、再び、最初の表示制御シーケンスDCSQに対するデコードが行われ、転送されている場合、ステップ94に進む。
As a result, the
このステップ94において、副映像デコーダ101は、次の表示制御シーケンスDCSQがあるか否かを調べ、次の表示制御シーケンスDCSQがある場合、ステップ88に戻り、次の表示制御シーケンスDCSQに対するデコードが行われ、次の表示制御シーケンスDCSQがない場合、ステップ82に戻り、次の副映像データユニットに対する処理が行われる。
In step 94, the
上記したように、メインタイマの初期値が画素データの転送時間を考慮して所定時間後に「0」となる値となっているため、再生を行う最初の副映像データユニットにおけるプレゼンテーションタイムスタンプPTSを画素データの転送時間を考慮せずに零を記述することができる。 As described above, since the initial value of the main timer is “0” after a predetermined time in consideration of the transfer time of the pixel data, the presentation time stamp PTS in the first sub-picture data unit to be reproduced is set. Zero can be described without considering the transfer time of pixel data.
また、メインタイマが最初に零に変化するまで副映像の表示が禁止されているため、メインタイマの負の値と正の値の区別をする機能を省くことができる。 In addition, since the display of the sub-picture is prohibited until the main timer first changes to zero, the function of distinguishing between the negative value and the positive value of the main timer can be omitted.
さらに、所望の表示制御シーケンスDCSQに対する処理の途中で、デコード処理が中断してしまった場合に、再び最初の表示制御シーケンスDCSQ0からデコード処理を行うことにより、デコード処理が中断することによる表示抜け等の表示崩れが発生するのを防ぐことができる。 Further, when the decoding process is interrupted in the middle of the process for the desired display control sequence DCSQ, the decoding process is performed again from the first display control sequence DCSQ0, so that the display is lost due to the decoding process being interrupted. Can be prevented from being disturbed.
また、上記例では、メインタイマの初期値を画素データの転送時間を考慮して所定時間後に「0」となる値としたが、これに限らず、サブタイマの初期値を画素データの転送時間を考慮して所定時間後に「0」となる値とするようにしても良い。この場合も上記同様な効果が達成できる。 In the above example, the initial value of the main timer is set to “0” after a predetermined time in consideration of the transfer time of the pixel data. However, the present invention is not limited to this, and the initial value of the sub timer is set to the transfer time of the pixel data. In consideration, the value may be “0” after a predetermined time. In this case, the same effect as described above can be achieved.
1…ファイル管理情報 2…映像用データ PH…パケットヘッダ 30…副映像ユニット 31…副映像ユニットヘッダSPUH 32…副映像の画素データPXD 33…表示制御シーケンステーブルDCSQT 101…デコーダ 102…データI/O 103…符号データ切分部 104…画素色出力部(FIFOタイプ) 105…メモリ制御部 106…継続コード長検知部 107…ラン長設定部 108…メモリ 109…アドレス制御部 110…表示有効許可部 111…不足画素色設定部 112…マイクロコンピュータ(MPUまたはCPU) 113…ヘッダ切分部 114…ラインメモリ 115…セレクタ 118…セレクト信号生成部 120…システムタイマ 120a…メインSTC 120b…サブSTC 121…バッファメモリ
DESCRIPTION OF
Claims (5)
前記副映像データーユニットは2048バイトのデーターサイズのパケットに分割され、
前記副映像パケットはパケットヘッダを含み、前記パケットヘッダは表示時刻を表現したタイムスタンプを含み、
更に前記副映像データーユニットは、副映像ユニットヘッダと、ランレングス圧縮された副映像の画素データーと、表示制御シーケンステーブルとを含み、
前記副映像ユニットヘッダは前記表示制御シーケンステーブルの開始アドレス情報を含み、
前記ランレングス圧縮は前記副映像の同一画素データーの連続をデーター単位に変換して行われ、
前記表示制御シーケンステーブルは、複数の表示制御シーケンスを含み、
1個の上記表示制御シーケンスは、副映像の表示制御に関する開始時間を示す情報と、アドレス情報と、複数の表示制御コマンドの領域とを含み、
前記アドレス情報は、次の表示制御シーケンスの位置を示すように構成し、
1個の上記表示制御コマンドの領域に設定される表示制御コマンドとしては、
副映像の表示開始タイミングのコマンドと、副映像を強制的に表示するタイミングのコマンドとが有り、
前記副映像の画素データーをエンコード処理する事を特徴とする副映像のエンコード方法。 Sub-picture information that can be reproduced simultaneously with the main picture information constitutes a sub-picture data unit,
The sub-picture data unit is divided into packets having a data size of 2048 bytes ,
The sub-picture packet includes a packet header, and the packet header includes a time stamp representing a display time;
The sub-picture data unit further includes a sub-picture unit header, run-length compressed sub-picture pixel data, and a display control sequence table.
The sub-picture unit header includes start address information of the display control sequence table,
The run length compression is performed by converting the same pixel data of the sub-picture into a data unit,
The display control sequence table includes a plurality of display control sequences,
One display control sequence includes information indicating a start time related to sub-picture display control, address information, and a plurality of display control command areas.
The address information is configured to indicate the position of the next display control sequence,
As a display control command set in one display control command area,
There is a sub-video display start timing command and a sub-command forcibly displaying timing command .
A sub-picture encoding method, wherein the sub-picture pixel data is encoded.
前記副映像データーユニットは2048バイトのデーターサイズのパケットに分割され、
前記副映像パケットはパケットヘッダを含み、前記パケットヘッダは表示時刻を表現したタイムスタンプを含み、
更に前記副映像データーユニットは、副映像ユニットヘッダと、ランレングス圧縮された副映像の画素データーと、表示制御シーケンステーブルとを含み、
前記副映像ユニットヘッダは前記表示制御シーケンステーブルの開始アドレス情報を含み、
前記ランレングス圧縮は前記副映像の同一画素データーの連続をデーター単位に変換して行われ、
前記表示制御シーケンステーブルは、複数の表示制御シーケンスを含み、
1個の上記表示制御シーケンスは、副映像の表示制御に関する開始時間を示す情報と、アドレス情報と、複数の表示制御コマンドの領域とを含み、
前記アドレス情報は、次の表示制御シーケンスの位置を示すように構成し、
1個の上記表示制御コマンドの領域に設定される表示制御コマンドとしては、
副映像の表示開始タイミングのコマンドと、副映像を強制的に表示するタイミングのコマンドとが有るように構成した情報記録媒体から前記副映像を再生することを特徴とする再生方法。 Sub-picture information that can be reproduced simultaneously with the main picture information constitutes a sub-picture data unit,
The sub-picture data unit is divided into packets having a data size of 2048 bytes ,
The sub-picture packet includes a packet header, and the packet header includes a time stamp representing a display time;
The sub-picture data unit further includes a sub-picture unit header, run-length compressed sub-picture pixel data, and a display control sequence table.
The sub-picture unit header includes start address information of the display control sequence table,
The run length compression is performed by converting the same pixel data of the sub-picture into a data unit,
The display control sequence table includes a plurality of display control sequences,
One display control sequence includes information indicating a start time related to sub-picture display control, address information, and a plurality of display control command areas.
The address information is configured to indicate the position of the next display control sequence,
As a display control command set in one display control command area,
A playback method comprising: playing back a sub-picture from an information recording medium configured to have a sub-picture display start timing command and a sub-picture forcibly display timing command .
前記副映像データーユニットは2048バイトのデーターサイズのパケットに分割され、
前記副映像パケットはパケットヘッダを含み、前記パケットヘッダは表示時刻を表現したタイムスタンプを含み、
更に前記副映像データーユニットは、副映像ユニットヘッダと、ランレングス圧縮された副映像の画素データーと、表示制御シーケンステーブルとを含み、
前記副映像ユニットヘッダは前記表示制御シーケンステーブルの開始アドレス情報を含み、
前記ランレングス圧縮は前記副映像の同一画素データーの連続をデーター単位に変換して行われ、
前記表示制御シーケンステーブルは、複数の表示制御シーケンスを含み、
1個の上記表示制御シーケンスは、副映像の表示制御に関する開始時間を示す情報と、アドレス情報と、複数の表示制御コマンドの領域とを含み、
前記アドレス情報は、次の表示制御シーケンスの位置を示すように構成し、
1個の上記表示制御コマンドの領域に設定される表示制御コマンドとしては、
副映像の表示開始タイミングのコマンドと、副映像を強制的に表示するタイミングのコマンドとが有るように構成した前記副映像情報に対するデコーダを具備することを特徴とする再生装置。 Sub-picture information that can be reproduced simultaneously with the main picture information constitutes a sub-picture data unit,
The sub-picture data unit is divided into packets having a data size of 2048 bytes ,
The sub-picture packet includes a packet header, and the packet header includes a time stamp representing a display time;
The sub-picture data unit further includes a sub-picture unit header, run-length compressed sub-picture pixel data, and a display control sequence table.
The sub-picture unit header includes start address information of the display control sequence table,
The run length compression is performed by converting the same pixel data of the sub-picture into a data unit,
The display control sequence table includes a plurality of display control sequences,
One display control sequence includes information indicating a start time related to sub-picture display control, address information, and a plurality of display control command areas.
The address information is configured to indicate the position of the next display control sequence,
As a display control command set in one display control command area,
A playback apparatus comprising: a decoder for the sub-picture information configured to have a sub-picture display start timing command and a sub-picture forcibly displaying timing command .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004171951A JP3680070B2 (en) | 2004-06-10 | 2004-06-10 | Image information encoding method, reproducing method, and reproducing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004171951A JP3680070B2 (en) | 2004-06-10 | 2004-06-10 | Image information encoding method, reproducing method, and reproducing apparatus |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP04113096A Division JP3679851B2 (en) | 1996-02-28 | 1996-02-28 | Image information encoding method, reproducing method, and reproducing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004343785A JP2004343785A (en) | 2004-12-02 |
JP3680070B2 true JP3680070B2 (en) | 2005-08-10 |
Family
ID=33535813
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004171951A Expired - Lifetime JP3680070B2 (en) | 2004-06-10 | 2004-06-10 | Image information encoding method, reproducing method, and reproducing apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3680070B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE602006004554D1 (en) | 2006-03-29 | 2009-02-12 | Sony Deutschland Gmbh | Data writing in alignment-restricted or vector-based systems |
-
2004
- 2004-06-10 JP JP2004171951A patent/JP3680070B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2004343785A (en) | 2004-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3680071B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199257B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199245B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199256B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4247246B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP3680070B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199160B2 (en) | Sub-picture data encoding method, reproducing method and reproducing apparatus | |
JP3680074B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP3680069B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP3680073B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP3680076B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP3680072B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP3680078B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP3680075B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP3680077B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4316664B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4316665B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199261B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199259B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199260B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199258B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199255B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4199252B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4309958B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus | |
JP4247244B2 (en) | Image information encoding method, reproducing method, and reproducing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20040830 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20041224 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050322 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050516 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090520 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090520 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100520 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110520 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110520 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120520 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120520 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130520 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130520 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140520 Year of fee payment: 9 |
|
EXPY | Cancellation because of completion of term |