(57)【要約】【課題】動画像に対して字幕を重畳する機能を有する映像再生装置において，字幕の重畳に必要となる回路を最小化する。【解決手段】コンテンツを映像再生装置１にロードする際の前処理として，字幕描画部１１により字幕の文字データの描画を事前にオフラインで行い，ビットマップ形式の字幕データに変換して字幕データ蓄積部１４に蓄積しておく。映像データの再生時には，字幕重畳回路１９により，画像データとして蓄積された字幕データをリアルタイムに映像データに重畳する。また，字幕データ圧縮部１２は，ビットマップ字幕データを蓄積する際に，その画像データを圧縮字幕データに変換して蓄積する。描画コマンド埋め込み部１３は，圧縮字幕データの蓄積前に，字幕重畳回路１９に対する制御コマンドを埋め込む。【選択図】図１
2008228242.tif 000002
【特許請求の範囲】
【請求項１】
映像データと，字幕文字列情報を含む字幕データとを入力し，字幕が重畳された映像信号を出力する映像再生装置において，
字幕の重畳対象となる映像データとは別に，前記字幕文字列情報を含む字幕データを入力する手段と，
前記入力した字幕データに基づき，あらかじめビットマップ形式の字幕画像データを生成し，記憶装置に蓄積する手段と，
映像データの再生時に，再生対象の映像データから得られた画像データと前記ビットマップ形式の字幕画像データとをリアルタイムに重畳する字幕重畳手段とを備える
ことを特徴とする映像再生装置。
【請求項２】
前記ビットマップ形式の字幕画像データを前記記憶装置に蓄積する際に，その字幕画像データをラスタスキャン順序で読み出すことができる形式の圧縮方式により圧縮する字幕データ圧縮手段を備え，
前記ビットマップ形式の字幕画像データを圧縮した圧縮字幕データを前記記憶装置に蓄積し，
前記字幕重畳手段は，前記記憶装置から読み出された圧縮字幕データをラスタスキャン順序で圧縮前の字幕画像データに復元するデータ伸張手段を備える
ことを特徴とする請求項１に記載の映像再生装置。
【請求項３】
前記入力した字幕データ内の表示開始および表示終了の時間情報を含む字幕制御データに基づき，前記記憶装置に蓄積する前の字幕画像データまたは圧縮字幕データに，前記字幕重畳手段が字幕の重畳を制御するための制御コマンドを埋め込むコマンド埋め込み手段を備え，
前記字幕重畳手段は，前記字幕画像データまたは圧縮字幕データに埋め込まれた制御コマンドによって字幕の重畳を制御する
ことを特徴とする請求項１または請求項２に記載の映像再生装置。
【請求項４】
前記制御コマンドは，前記字幕重畳手段のバッファに格納された字幕画像データまたは圧縮字幕データのクリアを指示する字幕クリアコマンド，前記字幕重畳手段のバッファに字幕画像データまたは圧縮字幕データをロードすることを指示するロードコマンド，前記字幕重畳手段のバッファに格納された字幕画像データまたは圧縮字幕データを保持することを指示する保持コマンド，重畳する字幕の透明度の設定を指示する透明度設定コマンドまたは設定された透明度の中から字幕の重畳に用いる透明度を指定する透明度選択コマンドを含み，
前記字幕重畳手段は，前記各制御コマンドで指示された制御を行う回路を備える
ことを特徴とする請求項３記載の映像再生装置。
【請求項５】
前記字幕重畳手段は，
映像の画像データへの重畳対象となる前記字幕画像データまたは圧縮字幕データを格納するバッファと，
入力した前記字幕画像データまたは圧縮字幕データ内に埋め込まれた制御コマンドに従って，前記バッファ内のデータのクリア，または前記バッファへの字幕画像データまたは圧縮字幕データの書き込み，または前記バッファ内のデータの保持を制御するデコード回路と，
前記字幕画像データまたは圧縮字幕データの入力と，再生対象の映像の画像データの入力との同期を制御するフレームカウント制御回路と，
前記制御コマンドにより設定または選択された透明度と前記字幕画像データまたは圧縮字幕データ内のアルファ値とを乗算する乗算回路と，
入力した再生対象の映像の画像データと，前記バッファに格納された字幕画像データまたは圧縮字幕データの画素値データとを，前記乗算回路による乗算結果に基づいて合成する合成回路とを備える
ことを特徴とする請求項３または請求項４記載の映像再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，字幕重畳機能を有する映像再生装置に関し，特に高速広帯域な映像信号に対する高機能な字幕描画のための回路を少ないハードウェアで実現することができるようにした技術に関する。
【背景技術】
【０００２】
動画像に対して，字幕文字データをリアルタイムに重畳する技術が広く用いられている。字幕重畳においては，字幕の文字コードから描画される文字の画像データを生成し，これを動画像データと合成する必要がある。文字コードを文字画像データに変換するには，装置内部に，あらかじめ描画対象となる全文字コードに対する文字画像データを準備しておく方法，装置内部においてソフトウエアにより，リアルタイムに文字の描画を行う方法等が用いられる。ビデオ信号にリアルタイムに字幕を重畳する装置は，通常，ビデオテロッパーと呼ばれるが，一般に処理できる画像信号のサイズや描画できる領域の大きさ，描画できる文字の種別等に制約がある。
【０００３】
一方，デジタルシネマに代表される劇場用の映像再生装置においても，字幕重畳の機能が要求される。デジタルシネマにおいては，最大４Ｋ（４０９６×２１６０画素，ハイビジョンの約４倍）の画像フォーマットが規定されており，従来のビデオ信号と比較して画素数が大きく，高速な映像信号に対して字幕の重畳処理を行う必要がある。このため，従来用いられてきた字幕重畳回路，字幕重畳ソフトウエアでは，十分な処理速度が得られなかった。また，画面面積がＨＤＴＶの４倍と非常に大きくなるため，外付けメモリを利用した大容量のバッファを用いることが必要であった。
【０００４】
図１３は，従来技術による字幕重畳回路の構成例を示している。図１３の構成例では，字幕を重畳するための３面構成の字幕データを格納する字幕フレームメモリ５０，字幕の描画および字幕重畳回路の制御を行うための字幕描画用ＣＰＵ５１，字幕フレームメモリ５０へのデータの入出力を制御するメモリ選択スイッチ５２，２組の字幕合成回路６０，６１によって構成されている。字幕合成回路６０，６１は，アルファ値αに「透明度設定」の値Ｔを乗算する乗算回路５３，５５と，字幕の透明度を加味した字幕データと映像の画像データとを合成する合成回路５４，５６とを備える。ここで，字幕合成回路が２組あるのは，通常の字幕のデータにおいて２つの字幕トラックが定義できるためである。
【０００５】
次に，図１３における回路の動作を説明する。選択された２面の字幕フレームメモリ５０から読み出された字幕データは，縦続接続された字幕合成回路６０，６１により，入力された画像信号に重畳される。字幕合成回路６０，６１は，字幕の時間的な透明度の制御を行う「透明度設定」の値Ｔと字幕データの透明度を指定するアルファ値αとを乗算し，その割合で字幕データ値Ｘと画像データ値Ｙとを合成する処理を行う合成回路５４，５６によって構成されており，入力されたデータと字幕データの重み付け加算を行う。
【０００６】
（αＴ×Ｘ＋（１−αＴ）×Ｙ）
「透明度設定」の値Ｔは，字幕のフェードイン／フェードアウトの際に用いられるもので，設定値を毎フレーム一定の割合で増減することにより，重畳される字幕の透明度を時間的に変化させる。図１３の例においては，この設定値は，字幕描画用ＣＰＵ５１により画像信号のブランキング期間に変更を行うものとしている。
【０００７】
３組ある字幕フレームメモリ５０のうち，最大２組のメモリが同時に字幕重畳に用いられるが，もう１つの字幕フレームメモリは，字幕描画用ＣＰＵ５１により次の字幕を描画するために利用される。字幕重畳に選択されるフレームメモリは，字幕の切り換えタイミングで，メモリ選択スイッチ５２を制御することにより切り換える。
【０００８】
ここで，図１３の回路では，字幕描画用ＣＰＵ５１と，複数の字幕フレームメモリ５０，および，メモリの接続を切り換えるためのメモリ選択スイッチ５２が必要である。特に，描画された圧縮されていない字幕画像データは，非常に大きなサイズとなるため，大容量の外付けメモリによって実現する必要があり，装置内部にメモリ制御のための回路を実装する必要が生じる。
【０００９】
下記の非特許文献１は，ＨＤＴＶ用に開発されたＬＳＩチップセットに関して説明しているが，この非特許文献１の技術では，字幕および静止画像を合成する機能を，専用のＬＳＩにより実装している。
【００１０】
また，デジタルシネマにおいては，
・コンテンツにより指定されたフォントを用いて字幕の合成を行う必要があるため，コンテンツごとにフォント情報を変更する必要があること，
・複数のフォントを利用する場合があること，
・文字描画に字詰めやアンチエリアジング処理など，より高品質な描画処理が要求されること，
・文字の重畳位置がコンテンツにより厳密に指定されるため，自由な位置に文字を重畳できる必要があること，
・画面の複数箇所にオーバーラップしたタイミングで字幕を表示する必要があり，さらに透明度およびフェードイン／フェードアウトのサポートが必要とされること，
といった通常の字幕合成装置より高い字幕重畳機能が要求される。
【００１１】
以上のような要求条件を満足する字幕重畳機能を実現するためには，大規模な作業用メモリ，高速かつ複雑な機能を持つ重畳回路を映像再生装置に実装する必要があった。
【非特許文献１】田中他，「デジタルＴＶバックエンド用ＬＳＩチップセット」，SANYO Technical Review，Vol.34，No.1，Jun. 2002
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明の第一の課題は，デジタルシネマに代表される高速広帯域な映像信号に対して，コンテンツに指定されたフォントおよび位置決め情報に基づき，アンチエリアジング処理，字詰め処理を含む高品質な字幕文字の重畳処理をリアルタイムに行うことである。
【００１３】
第二の課題は，第一の課題を実現する上で必要となる字幕重畳回路の作業用メモリおよび重畳回路の規模を最小化するとともに，字幕データを字幕重畳回路にロードするために必要となるデータ帯域を最小化することである。
【００１４】
第三の課題は，タイミングの異なる複数の字幕データの重畳，およびそれぞれの字幕データにおける透過度およびフェードイン／フェードアウト処理を，最小限の字幕重畳回路でサポートすることである。
【００１５】
すなわち，本発明は，動画像に対して字幕を重畳する機能を有する映像再生装置において，字幕の重畳に必要となる回路を最小化することを主目的とする。
【課題を解決するための手段】
【００１６】
上記課題を解決するための本発明の第１の特徴は，動画像に対して字幕を重畳する機能を有する映像再生装置において，コンテンツを映像再生装置にロードする際の前処理として，字幕の文字データの描画を事前にオフラインで行い，ビットマップ画像の画像データに変換して蓄積しておき，映像データの再生時に，画像データとして蓄積された字幕データをリアルタイムに映像データに重畳する手段を備えることである。
【００１７】
また，本発明の第２の特徴は，前記ビットマップ画像を蓄積装置に蓄積する際に，そのビットマップ画像を圧縮画像データに変換して蓄積することであり，圧縮画像データの圧縮形式は，データ伸張の際にビットマップ画像の画像データをラスタスキャン順序で読み出し可能な形式になっていることである。
【００１８】
また，本発明の第３の特徴は，前記ビットマップ画像の画像データ内に，映像データに字幕データを重畳する字幕重畳回路に対する制御コマンドを埋め込むことである。
【００１９】
以上のように，本発明の映像再生装置の字幕重畳機能では，映像データを装置内に転送，蓄積する際に，字幕データをビットマップ画像に変換して蓄積する手段が設けられる。字幕データの文字の描画処理は，ロードの際にオフラインで処理することが可能であり，高速な描画回路を必要としない。また，ソフトウエアによる描画が可能であるため，フォントの切り換え，アンチエリアジング処理，字詰め処理などの高度な描画機能を簡単に実現することができる。したがって，上記第一の課題が解決される。
【００２０】
また，本発明では，前記ビットマップ画像を圧縮画像データに変換して蓄積する手段が設けられ，さらに，圧縮手段として，字幕ビットマップ画像をラスタスキャン順序で読み出せる手段が用いられる。これらの手段により，字幕重畳回路の作業用メモリおよび重畳回路の規模を最小化するとともに，字幕データを字幕重畳回路にロードするために必要となるデータ帯域を最小化することが可能となる。したがって，上記第二の課題が解決される。
【００２１】
また，本発明では，前記ビットマップ画像の画像データに，字幕重畳回路に対する制御コマンド，すなわち字幕重畳回路を制御する描画命令を埋め込む手段が設けられる。この手段により，字幕重畳回路の設定パラメータを画像データの重畳処理にタイミングを合わせて切り換えることが可能となり，パラメータの変更のタイミングを設定するために別の制御手段を用いる必要がなく，字幕重畳回路の構成を単純化することができる。したがって，第三の課題が解決される。
【００２２】
具体的には，本発明は，映像データと，字幕文字列情報を含む字幕データとを入力し，字幕が重畳された映像信号を出力する映像再生装置において，字幕の重畳対象となる映像データとは別に，前記字幕文字列情報を含む字幕データを入力する手段と，前記入力した字幕データに基づき，あらかじめビットマップ形式の字幕画像データを生成し，記憶装置に蓄積する手段と，映像データの再生時に，再生対象の映像データから得られた画像データと前記ビットマップ形式の字幕画像データとをリアルタイムに重畳する字幕重畳手段とを備えることを特徴とする。
【００２３】
また，本発明は，上記構成において，前記ビットマップ形式の字幕画像データを前記記憶装置に蓄積する際に，その字幕画像データをラスタスキャン順序で読み出すことができる形式の圧縮方式により圧縮する字幕データ圧縮手段を備え，前記ビットマップ形式の字幕画像データを圧縮した圧縮字幕データを前記記憶装置に蓄積し，前記字幕重畳手段は，前記記憶装置から読み出された圧縮字幕データをラスタスキャン順序で圧縮前の字幕画像データに復元するデータ伸張手段を備えることを特徴とする。
【００２４】
また，本発明は，上記構成において，前記入力した字幕データ内の表示開始および表示終了の時間情報を含む字幕制御データに基づき，前記記憶装置に蓄積する前の字幕画像データまたは圧縮字幕データに，前記字幕重畳手段が字幕の重畳を制御するための制御コマンドを埋め込むコマンド埋め込み手段を備え，前記字幕重畳手段は，前記字幕画像データまたは圧縮字幕データに埋め込まれた制御コマンドによって字幕の重畳を制御することを特徴とする。
【００２５】
また，本発明は，上記構成において，前記制御コマンドは，前記字幕重畳手段のバッファに格納された字幕画像データまたは圧縮字幕データのクリアを指示する字幕クリアコマンド，前記字幕重畳手段のバッファに字幕画像データまたは圧縮字幕データをロードすることを指示するロードコマンド，前記字幕重畳手段のバッファに格納された字幕画像データまたは圧縮字幕データを保持することを指示する保持コマンド，重畳する字幕の透明度の設定を指示する透明度設定コマンドまたは設定された透明度の中から字幕の重畳に用いる透明度を指定する透明度選択コマンドを含み，前記字幕重畳手段は，前記各制御コマンドで指示された制御を行う回路を備えることを特徴とする。
【００２６】
また，本発明は，上記構成において，前記字幕重畳手段は，映像の画像データへの重畳対象となる前記字幕画像データまたは圧縮字幕データを格納するバッファと，入力した前記字幕画像データまたは圧縮字幕データ内に埋め込まれた制御コマンドに従って，前記バッファ内のデータのクリア，または前記バッファへの字幕画像データまたは圧縮字幕データの書き込み，または前記バッファ内のデータの保持を制御するデコード回路と，前記字幕画像データまたは圧縮字幕データの入力と，再生対象の映像の画像データの入力との同期を制御するフレームカウント制御回路と，前記制御コマンドにより設定または選択された透明度と前記字幕画像データまたは圧縮字幕データ内のアルファ値とを乗算する乗算回路と，入力した再生対象の映像の画像データと，前記バッファに格納された字幕画像データまたは圧縮字幕データの画素値データとを，前記乗算回路による乗算結果に基づいて合成する合成回路とを備えることを特徴とする。
【発明の効果】
【００２７】
以上説明したとおり，本発明による映像再生装置では，高速広帯域な映像信号に対し，高機能な字幕描画機能を最小限のハードウェアで実現することが可能である。
【発明を実施するための最良の形態】
【００２８】
図１は，本発明の実施の形態に係る映像再生装置の全体構成を示している。映像再生装置１は，字幕データを入力する字幕データ入力部１０，字幕（文字）データをビットマップ画像に展開し，ビットマップ字幕データを生成する字幕描画部１１，ビットマップ字幕データを圧縮して圧縮字幕データを生成する字幕データ圧縮部１２，圧縮字幕データに字幕重畳回路に対する制御コマンド（描画コマンドともいう）を埋め込む描画コマンド埋め込み部１３，描画コマンドが埋め込まれた圧縮字幕データを蓄積するための字幕データ蓄積部１４を備える。
【００２９】
また，映像データを入力する映像データ入力部１５，入力した映像データを蓄積するための映像データ蓄積部１６，蓄積された映像データを映像信号に変換する映像復号部１７，復号された映像信号に対して字幕データを重畳する字幕重畳部１８を備える。字幕重畳部１８は，字幕重畳回路１９により構成される。
【００３０】
なお，本発明は，図１に示す映像再生装置１において字幕データ圧縮部１２または描画コマンド埋め込み部１３を省略した構成で実施することもできる。描画コマンド埋め込み部１３を省略した構成で本発明を実施する場合，字幕データ入力部１０が入力した字幕データのうち字幕重畳部１８を制御するための字幕制御データを，ビットマップ字幕データまたは圧縮字幕データとは別に字幕データ蓄積部１４に蓄積しておき，映像フレームとの同期をとって，字幕重畳部１８に入力させる。
【００３１】
図２は，字幕データを映像再生装置１内に取り込むときの処理を説明する図である。本実施の形態に係る映像再生装置１は，字幕データを装置内にロードするときに，入力した字幕データから，字幕描画部１１が字幕のビットマップ画像データ（ビットマップ字幕データという）２５を生成する。
【００３２】
この例では，字幕データ入力部１０が入力する字幕データ２０は，フォントファイル２１と，字幕リストファイル２２からなり，字幕リストファイル２２は，字幕文字列，フォント指定，テキスト表示位置，テキスト文字サイズ，文字色，テキスト文字修飾指定（イタリック表示等）等の情報を含む字幕文字データ２３と，表示開始時間，表示終了時間，フェードイン設定，フェードアウト設定等の情報を含む字幕制御データ２４によって構成される。
【００３３】
字幕描画部１１は，字幕リストファイル２２に指定された字幕文字列を，フォント設定，テキスト表示位置，テキスト文字サイズ，文字色，テキスト文字修飾指定（イタリック表示等）に従い，フォントファイル２１を参照しながら文字列の画像データに変換する処理を行う。このようにして変換されたビットマップ字幕データ２５は，字幕データ蓄積部１４にそのまま記録してもよいが，本実施の形態では，さらに字幕データ圧縮部１２が，ビットマップ字幕データ２５を圧縮して圧縮字幕データ２６に変換し，データサイズを小さくする処理を行う。
【００３４】
図３は，字幕データ圧縮部１２が行うビットマップ字幕データ２５の圧縮を説明する図である。まず，ビットマップ字幕データ２５をラスタスキャン順序で走査し，アルファ値αの部分を検出し，その値をラン長符号を用いて符号化する。図３の例においては，ラン長に応じ「ランが０の場合」「ランが１以上，２５５以下」「ランが２５６以上，４０９５以下」「ランがそれ以上」という場合分けを行い，ラン長を可変ビット長でエンコードしている。それぞれ，「文字の描画領域内」「文字間」「文字の描画範囲から次の走査線の文字領域まで」「複数の走査線にまたがる無効領域」に相当し，簡単な可変ビット長制御で大きな効果が得られる。
【００３５】
ラン長を出力した後，アルファ値αと画像の輝度値を出力する。画像の輝度値は，モノクロであるかどうかを判定し，モノクロの場合には一色の値のみを出力する。図３に示した構成例は，最も単純な圧縮方法の例であり，輝度値を出力する際に，画像値自体ではなく，連続した画素において，前の画素との差分値を算出し，その値を可変ビット長で符号化されたものを出力するといった方法により圧縮効率を上げることも可能である。さらに，ラン長や輝度の差分値をハフマン符号化等のエントロピー符号化によって圧縮することが考えられる。
【００３６】
本実施の形態で用いる圧縮方法の特徴は，圧縮字幕データ２６を順次読み出したときに，ラスタスキャン順序で元のビットマップ字幕データ２５に伸張できることである。この伸張回路の詳細については，後に図１０を用いて説明する。
【００３７】
図４は，図３に示した圧縮方法により一般的な字幕データを描画した画面のデータを圧縮した場合に，どの程度の圧縮率が得られるかを示している。画像サイズは，デジタルシネマ規格で規定された４０９６×２１６０画素とし，字幕データをＲＧＢα各８ビット精度とした。圧縮が最適化されたＰＮＧ方式と比較するとデータ量は１．５倍程度となっているが，非圧縮のデータを用いた場合と比較すると１／１００程度となっており，非常に単純な方法で大きな効果が得られていることがわかる。
【００３８】
図５は，圧縮字幕データ２６への描画コマンド（字幕重畳回路１９に対する制御コマンド）の埋め込みを説明する図である。前述のように字幕リストファイル２２には，字幕文字データ２３の他に，字幕制御データ２４として，表示開始時間，表示終了時間，フェードイン設定，フェードアウト設定のタイミング情報が含まれる。本実施の形態においては，前記タイミング情報を字幕重畳回路１９に対するコマンド（命令）に変換し，そのコマンドを圧縮字幕データ２６内に埋め込むことにより，字幕重畳回路１９における字幕表示のタイミングの制御を可能にする。
【００３９】
この例では，表示時間を制御するために，字幕表示を行わない「字幕クリア」コマンド，ある圧縮字幕データ２６をロードして字幕の重畳を開始する「ロード（更新）」コマンド，ロードされた同じ圧縮字幕データ２６を繰り返し重畳する「保持」コマンドが設けられ，各圧縮字幕データ２６の先頭部に付加される。また，フェードイン，フェードアウトを実現するための「透明度設定」コマンドが前記コマンドに追加される。この「透明度設定」は，字幕のフェードイン／フェードアウトの際に，設定値を毎フレーム一定の割合で増減することにより，重畳される字幕の透明度を時間的に変化させるために用いられる。複数の字幕文字列が異なったタイミングでフェードイン／フェードアウトすることを可能とするために，１つのフレームに対し複数の透明度設定情報を設定することができる。さらに，描画される文字列ごとに「透明度設定」を切り換えるため，圧縮字幕データ２６の内部に複数の「透明度設定」のうちいずれかを選択する「透明度選択」コマンドが設けられる。
【００４０】
図６は，描画コマンドが埋め込まれた圧縮字幕データの構成例を示す図である。図６（ａ）は，圧縮字幕データを字幕重畳回路１９内のデータバッファに書き込むコマンドの場合の例を示しており，図６（ｂ）は，それ以外の透明度設定等のパラメータ変更のみを行うコマンドの場合の例を示している。
【００４１】
データの先頭部分の「フレームカウント」の値は，映像データの中で字幕の重畳やコマンドの実行を開始するタイミングを指定する。コマンドが実行されないフレームに関しては，そのままの状態で字幕の表示が維持される。
【００４２】
「設定コマンド」の部分には，字幕重畳回路１９内のデータバッファへの圧縮字幕データのロード，字幕クリア，透明度テーブルへの値のセットといったコマンドが指定されるが，字幕をバッファに設定するコマンドの場合にのみ，その後に実際の圧縮字幕データが挿入される。それ以外のコマンドは，図６（ｂ）のように設定コマンドで使用するパラメータのみが指定される。
【００４３】
なお，前述した「透明度選択」コマンド等は，圧縮字幕データの中に埋め込まれるコマンドであるが，これは，可変長符号化処理の一部としてコードの中に埋め込まれる。字幕重畳回路１９内のデータバッファから読み出した圧縮字幕データ中に，ある可変長データが出てきた場合，字幕の画像データではなく，コマンドであると解釈される。圧縮字幕データに埋め込まれたコマンドは，字幕重畳回路１９内のデータバッファのデータが選択されている間は，毎フレーム一定のタイミングで実行される。
【００４４】
図７は，本実施の形態において字幕重畳部１８を実現する字幕重畳回路１９の構成例を示す図である。
【００４５】
デコード回路３０は，字幕データ蓄積部１４から読み出された圧縮字幕データから，圧縮字幕データ内に埋め込まれた描画コマンドを分離し，フレームカウント制御部３１により，映像復号部１７からの画像データ入力に同期して，コマンドの実行およびそれに伴う圧縮字幕データの圧縮字幕データバッファ３２への書き込みを行う。圧縮字幕データバッファ３２には，１つの画面に重畳する字幕の圧縮字幕データが格納され，この圧縮字幕データバッファ３２の内容の更新は，「字幕クリア」コマンド，「ロード」コマンド，「保持」コマンドにより，字幕の内容の切り換えタイミングに従って制御される。
【００４６】
圧縮字幕データバッファ３２に格納された圧縮字幕データは，伸張回路３３によって字幕画像データに変換され，合成回路３６によって入力画像データと合成される。
【００４７】
透明度テーブル３４には，「透明度設定」コマンドによりいくつかの透明度設定の値Ｔ（以下，透明度Ｔという）が設定され，この中から「透明度選択」コマンドの設定に従って，合成に使用する透明度Ｔが選択される。乗算回路３５は，選択された透明度とアルファ値αとを乗算する。
【００４８】
合成回路３６は，乗算回路３５の出力αＴと，字幕データ値Ｘと，画像データ値Ｙとを入力し，αＴに従って字幕データ値Ｘと画像データ値Ｙとの重み付け加算を行い，字幕データと映像の画像データとを合成した画像データ（αＴ×Ｘ＋（１−αＴ）×Ｙ）を出力する。
【００４９】
図８は，デコード回路３０の動作フローを示している。ステップＳ１では，フレームカウント制御部３１からフレームカウントを読み出す。フレームカウント制御部３１は，字幕重畳回路１９が入力する画像データのフレーム数をカウントするフレームカウンターを備えている。ステップＳ２では，フレームカウントの値をチェックし，圧縮字幕データ中のフレームカウントとの同期をとり，必要に応じて実行待ち合わせを行う。
【００５０】
同期がとれた場合，ステップＳ３では，圧縮字幕データ中のコマンドを読み出す。コマンドが透明度設定等のパラメータ変更のみを行うコマンド（図６（ｂ）参照）の場合には，ステップＳ４においてパラメータを読み出し，続くステップＳ５において，そのコマンドを実行する。一方，圧縮字幕データバッファ３２へのデータの設定を行うコマンド（図６（ａ）参照）の場合には，ステップＳ６においてデータ長をチェックし，ステップＳ７において圧縮字幕データバッファ３２への圧縮字幕データの書き込みを行う。
【００５１】
例えば，このデコード回路３０は，ＦＰＧＡ(Field Programmable Gate Array) 等によって実現することができる。
【００５２】
図９は，コマンドの実行タイミングを説明する図である。コマンドには，フレーム単位で指定されるコマンドと，圧縮字幕データ中に挿入されたフレーム内の実行コマンドとがある。フレーム単位で指定されるコマンドに関しては，フレームの切り換えの際に実行し，次のフレームから有効となる。一方，フレーム内の実行コマンドに関しては，字幕の画像データの中に挿入されているのでそのタイミングで同期をとる。
【００５３】
例えば圧縮字幕データの一部が，図９に示されるようなデータ列であったとすると，画像データ画像値Ａを表示し，画像データラン長Ｂで指定された透明部分の画素を出力した後，コマンドを実行して，画像データ画像値Ｃを出力する。
【００５４】
図１０は，字幕重畳回路１９における伸張回路３３の構成例を示している。伸張回路３３は，図３に示した圧縮方法により圧縮されたデータを伸張し，圧縮前のビットマップ字幕データを復元する。
【００５５】
圧縮字幕データバッファ３２から読み出されたデータは，まず，シフトレジスタ４０に格納される。ラン長／輝度レベル判定部４１により，図３の判定条件に従って，まずシフトレジスタ４０内のデータからラン長が取り出され，ラン長カウンタ４２に設定される。次に，アルファ値αおよび輝度レベルが読み出され，α値／輝度レベルレジスタ４３に設定される。シフトレジスタ４０の内容は，処理を行ったビット数に応じてシフトされ，空きが発生すると，圧縮字幕データバッファ３２から新たなデータがシフトレジスタ４０内に読み出される。
【００５６】
一方，伸張回路３３の出力としては，ラン長カウンタ４２に設定された個数分の無効画素が，無効画素出力部４４から出力され，その後にα値／輝度レベルレジスタ４３の内容が出力される。出力の切り換えは，セレクタ４５によって行われる。本回路は非常に単純な回路であり，少ないハード規模で実現可能である。さらに映像信号速度でリアルタイムに復号処理を行うことが可能である。また，出力信号はラスタスキャン順序となっているため，字幕画像データの出力信号に対してデータの並べ換えなどを必要としない。
【００５７】
図１１は，透明度テーブルの構成例とその利用のし方を説明する図である。図１１（ａ）は，画面に表示される画像データを示しており，サイズは画面の大きさに対応している。画面には，ある時点において文字表示領域Ａと文字表示領域Ｂの２つの領域に字幕が表示されているとする。
【００５８】
ここで，字幕データは，画面内の文字表示領域Ａと文字表示領域Ｂに表示される字幕の画像データ（文字が表示されている部分以外は透明）であるが，この字幕データを圧縮したデータの中に，文字表示領域Ａ，Ｂの表示が行われる前に透明度の設定を切り換える透明度選択コマンドが埋め込まれることになる。
【００５９】
１つの走査線内で２つの文字領域がある場合には，そのたびに選択を切り換える必要があるが，図１１（ａ）に示す例のような場合であると，２回の切り換えだけでそれぞれの表示領域の透明度を切り換えることができる。
【００６０】
透明度テーブル３４は，図１１（ｂ）のように，各文字表示領域の透明度を記憶するテーブルである。この透明度テーブル３４は，字幕の表示領域を変更するときに更新されるが，フェードイン，フェードアウトの場合には，透明度テーブル３４の透明度の値を変更するコマンドだけを毎フレーム実行する。
【００６１】
図１２は，字幕の重畳と描画コマンド埋め込み部１３が生成するコマンドの関係を説明する図である。ここでは，図１２に示すように，２つの字幕Ａ，Ｂが重なったタイミングで表示され，字幕Ｂにはフェードイン，フェードアウトが設定されている場合の例を説明する。図１２において，横軸は時間の経過を示している。
（１）字幕Ａが重畳される前のタイミングで，圧縮字幕データバッファ３２に字幕Ａのデータをロードする。
（２）字幕Ａの重畳が開始されるタイミングで，ロードした圧縮字幕データバッファ３２を選択する。
（３）字幕Ｂが重畳される前のタイミングで，別の圧縮字幕データバッファ３２に字幕Ａ＋Ｂのデータをロードする。
（４）字幕Ｂが表示されるタイミングで，読み出す圧縮字幕データバッファ３２を切り換える。
（５）フェードインの間，透明度設定を変更するコマンドを毎フレーム実行する。
（６）字幕Ａの重畳が終了する前に，字幕Ｂのデータを圧縮字幕データバッファ３２にロードする。
（７）字幕Ａの重畳が終了するタイミングで，読み出す圧縮字幕データバッファ３２を切り換える。
（８）字幕Ｂのフェードアウトを実行している間，透明度設定を変更するコマンドを毎フレーム実行する。
（９）字幕Ｂの重畳が終了した時点で，圧縮字幕データバッファ３２をクリアする（実際は，アルファ値αが０のデータが出力される状態にする）。
【００６２】
図１に示す映像再生装置１の字幕重畳回路１９を除く各処理部は，コンピュータとソフトウェアプログラムとによっても実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも，ネットワークを通して提供することも可能である。
【００６３】
次に，本実施の形態における字幕重畳回路１９と，図１３に示した従来の字幕重畳回路とを比較し，本発明の有効性を明らかにする。
【００６４】
第一のポイントは，本発明による字幕重畳回路１９では，字幕描画を行うための専用ＣＰＵ（図１３の字幕描画用ＣＰＵ５１）が不要であることである。本発明による字幕重畳回路１９では，字幕の描画はあらかじめ映像再生装置１のホストＣＰＵによって行われるため，字幕重畳回路１９に描画用の専用ＣＰＵを設ける必要がない。
【００６５】
第二のポイントは，本発明による字幕重畳回路１９では，データバッファ部（図７の圧縮字幕データバッファ３２）には字幕画像データが蓄積されている点であり，従来構成と比較するとバッファの容量が１／１００程度の容量で済むということである。本実施例では，例えばＦＰＧＡ（Field Programmabole Gate Array）等を用いて字幕重畳回路１９を実現した場合にも，データバッファをチップ内メモリによって実現することが可能であり，外付けメモリを必要としない。本発明における回路的なオーバーヘッドとして圧縮した字幕の伸張回路３３が必要な点があげられるが，図１０に示したように，この機能は非常に単純な回路によって実現することが可能である。
【００６６】
第三のポイントは，本発明では，字幕重畳回路１９の制御のためのコマンド（命令）が字幕データに組み込まれていることであり，例えば，字幕画像データに複数の字幕文字列が含まれており，それらの透明度を個別に制御したい場合に，本発明では字幕データに「透明度選択」コマンドを埋め込めばよく，また，各字幕文字列のフェードイン／フェードアウトを個別に制御したい場合には，「透明度設定」コマンドにより「透明度テーブル」の個々の設定値を個別に書き換えればよい。従って，図１３の従来回路の構成例に示したように，複数の字幕データを重畳するために多段の字幕合成回路６０，６１を用いる必要がなく，さらに，透明度設定等の切り換えや更新のために外部からの制御を必要としない。
【図面の簡単な説明】
【００６７】
【図１】本発明の実施の形態に係る映像再生装置の全体構成を示す図である。
【図２】字幕データを映像再生装置内に取り込むときの処理を説明する図である。
【図３】ビットマップ字幕データの圧縮を説明する図である。
【図４】本実施の形態による字幕データの圧縮効率の例を示す図である。
【図５】圧縮字幕データへの描画コマンドの埋め込みを説明する図である。
【図６】描画コマンドが埋め込まれた圧縮字幕データの構成例を示す図である。
【図７】字幕重畳回路の構成例を示す図である。
【図８】デコード回路の動作フローを示す図である。
【図９】コマンドの実行タイミングを説明する図である。
【図１０】字幕重畳回路における伸張回路の構成例を示す図である。
【図１１】透明度テーブルの構成例とその利用のし方を説明する図である。
【図１２】字幕の重畳と描画コマンド埋め込み部が生成するコマンドの関係を説明する図である。
【図１３】従来技術による字幕重畳回路の構成例を示す図である。
【符号の説明】
【００６８】
１    映像再生装置
１０  字幕データ入力部
１１  字幕描画部
１２  字幕データ圧縮部
１３  描画コマンド埋め込み部
１４  字幕データ蓄積部
１５  映像データ入力部
１６  映像データ蓄積部
１７  映像復号部
１８  字幕重畳部
１９  字幕重畳回路
【図１】
2008228242.tif 000003
【図２】
2008228242.tif 000004
【図３】
2008228242.tif 000005
【図４】
2008228242.tif 000006
【図５】
2008228242.tif 000007
【図６】
2008228242.tif 000008
【図７】
2008228242.tif 000009
【図８】
2008228242.tif 000010
【図９】
2008228242.tif 000011
【図１０】
2008228242.tif 000012
【図１１】
2008228242.tif 000013
【図１２】
2008228242.tif 000014
【図１３】
2008228242.tif 000015