以下、本発明の実施形態を図面により説明する。
図1は本発明による字幕表示方法及び装置の一実施形態を示すブロック図であり、1は入力端子、2はグラフィックバッファ、3,4はカラーパレット、3a,4aはパレット情報、5はセレクタ、6は領域指定部、7は出力端子である。
この実施形態では、DVDなどの光ディスクからの再生情報に基づいて、カラオケが行なわれる場合を例とするものであり、以下では、その字幕表示について説明する。
カラオケでは、楽曲の歌曲(伴奏部分)が流れると同時に、その歌曲をイメージした映像とこの楽曲の歌詞を表わす文字列からなる字幕とが表示画面で表示される。そして、この歌曲の流れの速度に合わせてこの字幕の一連の文字が順番に表示色を変えていき、これにより、この楽曲を歌う順次のタイミングを分かり易くしている。カラオケの利用者(ユーザ)は、字幕の色の変化に合わせて字幕の歌詞を見ながら歌えばよいので、この演奏されている楽曲に容易にテンポを合わせることができる。
図1に示す実施形態は、この字幕の一連の文字の色を順番に変化させるものであって(厳密には、後述するように、字幕領域をなす一連のピクセル単位となる)、入力端子1から文字列で構成される字幕のデータがビットマップ化されたグラフィックデータDCGとして入力され、グラフィックバッファ2に格納される。そして、このグラフィックバッファ2からこのグラフィックデータが読み出されてカラーパレット3,4に供給され、夫々に設定されたパレット(色変換)情報3a,4aにより、字幕が夫々異なる色で表示されるように変換処理されてセレクタ5に供給される。ここで、カラーパレット3では、そこに設定されているパレット情報3aに基づいて、図示しない表示装置の表示画面で表示される歌詞(字幕)のうちで歌曲が達していない部分(即ち、まだ歌われるべきではない部分:以下、未読部分という)であることを示す表示色に変換されるものであり、カラーパレット4では、そこに設定されているパレット情報4aに基づいて、歌曲が達している部分(即ち、現在読まれて歌われるべき部分及び既に歌われたはずの部分:以下、既読部分という)であることを示す表示色に変換されるものである。セレクタ5は、領域指定部6によって制御され、この領域指定部6が指定する領域でカラーパレット4から出力されるグラフィックデータを選択し、この指定領域外でカラーパレット3から出力されるグラフィックデータを選択する。これにより、出力端子7からは、表示画面(図示せず)で既読部分と未読部分とが異なる色で表示されるように処理された字幕の表示データDCDが得られることになる。
ここで、歌曲の範囲と歌詞の範囲とが一対一に対応しているから、ある範囲の歌曲が流れている期間、これに該当する範囲の歌詞がグラフィックバッファ2に格納されていて、例えば、映像表示の1フレーム毎に1回ずつ繰り返し読み出されるが、領域指定部6による指定領域も、この歌曲の流れとともに、即ち、グラフィックバッファ2からの読出しが繰り返される毎に、拡大していき、従って、出力端子7で得られる字幕の表示データDCDでは、字幕の既読部分が順次拡大して未読部分が順次減少する表示がなされるようなデータとなっている。
図2はグラフィックバッファ2上での字幕の1文字(ここでは、文字「C」)のグラフィックデータのイメージ(以下、グラフィックデータイメージという)を示す図であり、各点及び丸印はピクセルを表わしている。
グラフィックバッファ2は、表示画面と等しいピクセル数、例えば、横1920×縦1080ピクセルの大きさを有しており、入力端子1からの字幕のグラフィックデータDCG(図1)は、表示画面上の字幕が表示される位置に対応する位置に書き込まれる。各ピクセルのデータイメージは8ビットのデータであって、また、ピクセル毎に一対一に対応付けて割り当てられたピクセル番号で表わされる。
ここで、・印で示すピクセル10は文字のグラフィックデータイメージ外のピクセルであり、●印で示すピクセル11は文字のグラフィックデータイメージを構成するピクセルである。また、○印で示すピクセル12は文字の輪郭となるデータイメージのピクセルである。
かかるグラフィックデータがグラフィックバッファ2から読み出されてカラーパレット3,4に供給され、上記のように、表示画面で表示されるときの色に変換されるのであるが、この色変換はピクセル単位で行なわれる。このために、各ピクセルには、グラフィックデータイメージを構成するピクセルであるか、このグラフィックデータイメージの輪郭を構成するピクセルであるか、これら以外のピクセルであるかを示す情報(ピクセル情報)が対応付けられており、これが上記の8ビットデータである。ここでは、便宜上、かかるピクセル情報に応じて、ピクセル10をパレット番号1のピクセルといい、ピクセル12をパレット番号2のピクセル、ピクセル11をパレット番号3のピクセルということにする。
図1でのカラーパレット3に設定されるパレット情報3aは、これらピクセルの色を変換する変換テーブルであって、図3(a)に示すように、パレット番号1,2,3に対応して変換する色が指定されている。これらパレット番号1,2,3が図2におけるピクセル10,12,11のピクセル番号に対応している。また、ここでは、変換する色を透明度を示す8ビットのα値としており、パレット番号1,2,3に対して夫々透明,白,透明の異なる透明度(色)が指定されている。
これにより、カラーパレット3は、このパレット情報3aに基づいて、グラフィックバッファ2上のパレット番号1のピクセル10を「透明」を表わすデータを持つピクセルに変換し、パレット番号2のピクセル12を「白」を表わすデータを持つピクセルに変換し、パレット番号3のピクセル11を「透明」を表わすデータを持つピクセルに変換する。このように、字幕の文字が色変換されることにより、この文字は表示画面上で図3(b)に示すように表示される。即ち、文字20自体が無色透明の色に変換され、その輪郭21が白色に変換され、これら以外の部分22が無色透明の色に変換されて、表示画面では、字幕の文字20が白い輪郭21のみで表示されることになる。
また、図1でのカラーパレット4に設定されるパレット4aも、図2に示す各ピクセルの色を変換する変換テーブルであって、図4(a)に示すように、パレット番号1,2,3に対応して変換する色がしていされている。これらパレット番号1,2,3が図2におけるピクセル10,12,11のピクセル番号に対応している。また、ここでも、変換する色を透明度を示す8ビットのα値としており、パレット番号1,2,3に対して夫々透明,白,黒の異なる透明度(色)が指定される。
これにより、カラーパレット4は、このパレット情報4aに基づいて、グラフィックバッファ2上のパレット番号1のピクセル10を「透明」を表わすデータを持つピクセルに変換し、パレット番号2のピクセル12を「白」を表わすデータを持つピクセルに変換し、パレット番号3のピクセル11を「黒」を表わすデータを持つピクセルに変換する。このように、字幕の文字が色変換されたことにより、この文字は表示画面上で図4(b)に示すように表示される。即ち、文字20自体が黒色に変換され、その輪郭21が白色に変換され、これら以外の部分22が無色透明の色に変換される。表示画面では、字幕の文字20が黒色で表示され、その輪郭21が白色で表示され、これら以外の部分22が無色透明に表示されることになる。
このように、異なったパレット情報を使用してイメージデータから色情報に変換すると、同じグラフィックバッファ2上の字幕のデータイメージが、表示画面上では、これとは異なった表示形態の表示イメージで表示される。ここで、図2に示す文字のイメージデータに対し、この文字の左半分を図4(a)に示すパレット情報4aで色変換し、右半分を図3(a)に示すパレット情報3aで色変換すると、この文字はその左半分が黒色で強調されて表示されることになる。これを利用して、カラオケの字幕表示を行なうことが可能となる。
このように、この実施形態では、文字を強調したい部分とそうでない部分とで異なったパレット情報を使用することにより、文字の一部を強調表示することも可能となり、カラオケの字幕表示を行なうことができる。
図1において、領域指定部6は歌曲の流れ(即ち、時間経過)に応じた大きさの領域を指定する。セレクタ5は、この指定領域内でカラーパレット4から出力されるパレット情報4a(図4(a))をもとに色変換されたピクセルのイメージデータを選択し、この指定領域外でカラーパレット3から出力されるパレット情報3a(図3(a))で色変換されたピクセルのイメージデータを選択する。
図5(a)は指定領域の位置及び範囲を説明するための図であって、この指定領域32は、グラフィックバッファ2全体のデータイメージ領域30における字幕のグラフィックデータイメージ31が配置される位置に対応するように設定される。そして、この指定領域32は、縦幅dVが一定の矩形状をなし、歌曲の流れとともに(即ち、時間経過とともに)、矢印Aで示すように、横幅dHが広がっていく。そして、この字幕のグラフィックデータイメージ31の終りまで歌曲が進むと、指定領域32がこの字幕のグラフィックデータイメージ31の全体を含むまで横幅dHが最大に広がる。なお、この指定領域32は、グラフィックバッファ2に字幕のグラフィックデータDCG(図1)が書き込まれて最初の読出しが行なわれるとともに、作成開始されるものであって、最初は横幅dH が0である。
これにより、セレクタ5は、グラフィックバッファ2から字幕のグラフィックデータが読み出される毎に、カラーパレット4から出力されるグラフィックデータのうちの指定領域32に含まれている部分を選択し、指定領域32外では、カラーパレット3から出力されるグラフィックデータを選択するように、切り替わる。
ここで、先に説明したようにカラーパレット3,4による色変換が行なわれているので、図5(b)に示すように、表示画面33において、字幕34の指定領域32内にある部分(即ち、既読部分)34aで文字部分が黒く強調されて表示され、字幕34の指定領域32外にある部分(即ち、未読部分)34bで文字部分はその輪郭のみが表示されることになる。そして、時間の経過とともに、字幕34の黒く強調されて表示される部分が矢印Aで示す右方に広がっていき、カラオケと同様の字幕表示が行なわれることになる。
なお、ここでは、輪郭を白色で表示し、文字の既読部分34aを黒,未読部分34bを無色透明で表示するとしたが、これら以外の色で表示するようにしてもよいことはいうまでもない。但し、これら文字,輪郭以外の部分は無色透明とする。
次に、図6により、領域指定部6による指定領域32について説明する。
指定領域32は、図5(a)に示すように、矩形状の領域として表わされるが、上記のように、カラオケの字幕表示では、歌曲の進行とともに、歌詞での読まれて歌われるべき既読部分となる部分が順番に色が変わっていく必要があり、字幕の色が切り替わる部分が移動していき、強調表示される字幕の既読部分が広がっていくように、指定領域32の横幅(図5(a)での幅dH )を広げていく必要がある。このために、一具体例として、次のような方法で指定領域32が設定される。
即ち、図6において、表示画面33での矩形状の領域35が文字列の字幕34の表示領域(以下、字幕領域という)とする。ここで、表示画面33の大きさは横1920×縦1080ピクセルとし、字幕34を構成する文字の大きさを150ピクセル角とする。また、字幕領域35では、11文字の字幕が表示されるものであって、これら各文字の中心が表示画面33での同じ水平方向の直線上にあり、かつ各文字をなす150ピクセル角の領域は隙間なく配列されるように、文字列が表示されるものとする。従って、字幕領域35の縦幅は150ピクセル、横幅は150×11=1650ピクセルである。また、この字幕領域35は、その横幅方向の中心位置が表示画面33の横幅方向の中心位置に一致し、かつ表示画面33の下辺から100ピクセル分隙間ΔYを空けて設定されるものとする。
いま、表示画面33の左下角を原点0とするXY座標系を考えると、
字幕領域35の左辺のX座標値X1=(1920-1650)/2=135ピクセル、
字幕領域35の右辺のX座標値X2=1920-135=1785ピクセル
字幕領域35の下辺のY座標値Y1=100ピクセル
字幕領域35の上辺のY座標値Y2=100+150=250ピクセル
となる。
ここで、指定領域32(図5(a))は、その左下角の座標と右上角の座標とで定義されるものであって、その縦幅dV(図5(a))が字幕領域35の縦幅と等しく、字幕領域35と重なるように設定される。そして、字幕34のグラフィックデータがグラフィックバッファ2(図1)に書き込まれ、これを読出し開始して表示画面33に表示開始されたばかりのタイミングでは、まだ、この字幕34を読み取って歌うタイミングになっていないので、このときの指定領域32は座標(X1,Y1),(X1,Y2)で規定される。即ち、指定領域32は字幕領域35の左辺と重なった縦方向の直線状のものとなり、横幅dH(図5(a))が0の領域である。そして、この字幕領域35に表示される字幕34が読み取られて歌われるようになり、時間が経過すると、指定領域32を規定するその右上角の座標位置が字幕領域35の上辺上を一定の速度で右方向に移動していき、指定領域32の横幅dHが字幕領域35上X座標軸方向に拡張していくことになる。但し、このように指定領域32が拡張しても、その縦幅dVは一定に保持される。そして、表示されている字幕34が歌い終わるタイミングになると、指定領域32を規定するその右上角の座標位置は、字幕領域35の右上角の(X2,Y2)となり、指定領域32が字幕領域35全体と重なることになる。
次に、指定領域32のX座標軸方向の拡張速度について説明する。
上記のように、字幕34の横幅は1650ピクセルであるので、表示する字幕を8秒間毎に変化させるものとすると、毎秒1650÷8=206ピクセルずつX軸方向に指定領域32の横幅dHを増加させればよい。つまり、領域指定部6(図1)は、グラフィックバッファ2(図1)からそこに書き込まれたグラフィックデータが最初に読出し開始されてからt秒後には、座標値(135,100)と座標値(135+206t,250)を対角とする矩形領域を指定領域32とするように、制御されればよい。なお、グラフィックバッファ2では、同じ字幕のグラフィックデータが、表示画面での映像の表示速度(即ち、毎秒30フレーム)に合わせて、1/30秒に1回ずつ読み出されるから、指定領域32も、1/30秒毎に206÷30≒7ピクセルずつ横幅dHが拡張されていくことになる。
このようにして、指定領域32がその横幅dHを広げていくことにより、図5(b)に示すように、字幕34での強調表示される部分(既読部分)34aが表示画面33の右方向に徐々に広がっていき、カラオケ字幕の表示が行なわれることになる。
なお、ここでは、説明を簡明にするために、具体的な数値を用いたが、本発明はかかる数値に限定されるものではない。
また、上記説明では、字幕34を横書きに表示するものとしたが、縦書きとしてもよく、この場合には、指定領域32が縦方向に広がるものであって、これ以外の点については、横書きの場合と同様である。また、字幕34を横書き,縦書きのいずれにするにしても、表示画面でのその表示位置は適宜任意の位置にすることができる。
図7は図1に示す字幕表示装置を用いた本発明による再生装置の一実施形態を示すブロック図であって、40はディスク装置、41はシステム制御部、42は出力制御部、43は音声デコーダ、44は映像デコーダ、45は字幕表示装置、46は映像合成部、47は音声出力端子、48は映像出力端子、49はリモコン受信部である。
同図において、ディスク装置40は、システム制御部41からの制御指令に従って動作し、セットされたユーザが所望とする光ディスク(図示せず)からシステム制御部41からの制御指令で指定されるセクタのデータが読み出され、所定の復調処理,誤り訂正処理などがなされて出力される。この出力データは、セクタデータとして、システム制御部41と出力制御部42とに供給される。
出力制御部42は、ディスク装置40から供給されるセクタデータを188バイトのMPEG(Motion Picture Expert Group)パケットに分離するとともに、各MPEGパケットに付加されている時刻情報をもとに、これらMPEGパケットの出力タイミングを制御する。このように制御されるタイミングで出力制御部42から出力されるMPEGパケットは、音声デコーダ43と映像デコーダ44とに供給される。
音声デコーダ43は、出力制御部42から供給されるMPEGパケットから音声パケットを抽出してデコードすることにより、音声信号を生成し、これを音声出力端子47から出力する。これにより、指定された上記のセクタの楽曲の歌曲が出力されて流れることになる。
また、映像デコーダ44は、出力制御部42から供給されるMPEGパケットから映像パケットを抽出してデコードすることにより、映像信号を生成する。この映像信号は、映像合成部46で字幕表示装置45からの先の字幕の表示データDCDと合成された後、映像出力端子48から出力される。この映像信号により、図示しない表示装置の表示画面では、音声出力端子47から出力される音声信号による歌曲をイメージした映像が表示される。
字幕表示装置45は、図1に示す構成をなしており、システム制御部41から供給される字幕のグラフィックデータDCG(図1)や上記の指定領域32(図5(a))を作成するための情報(以下、指定領域情報という),上記のパレット情報3a,4aをもとに、上記のようにして字幕の表示データDCDを生成する。この字幕の表示データDCDは、映像合成部46で映像デコーダ44からの映像信号と合成された後、映像出力端子48から出力される。これにより、図示しない表示装置の表示画面では、歌曲をイメージした映像に重畳されて、歌詞を表わす字幕が表示される。
ここで、この字幕の表示データDCDは、まだ歌曲が達していない部分(図5(b)の未読部分34b)では、図3で説明したような色変換がなされ、歌曲が達した部分(図5(b)の既読部分34a)では、図4で説明したような色変換がなされたものであるから、これが映像合成部46で映像デコーダ44からの映像信号と合成されると、上記のように、歌曲をイメージした映像に字幕が重畳されたように画面表示する合成信号が得られるのであるが、この合成信号は、字幕34の未読部分34bでは、文字の輪郭部分を白く表示し、これ以外の無色透明に色変換された部分で歌曲をイメージした映像を表示し、また、字幕34の既読部分34aでは、文字を黒くかつその輪郭を白く強調表示し、それ以外の無色透明に色変換された部分で歌曲をイメージした映像を表示する信号となる。このようにして、映像出力端子48からの合成信号により、表示画面では、図5(b)で説明したようなカラオケ字幕の表示が行なわれることになる。
図7におけるシステム制御部41は、再生装置の全体を制御するものであり、リモコン受信部49から入力されるユーザのリモコン操作による操作信号に従って、ディスク装置40の再生動作や映像デコーダ44及び音声デコーダ43の動作を制御し、また、ディスク装置40で光ディスクから読み取った字幕の文字情報から字幕のグラフィックデータDCGを生成し、出力制御部42で検出するMPEGパケットの時刻情報をもとに字幕表示装置45に供給する。これにより、音声出力端子47に得られる音声信号による歌曲に同期して、字幕表示装置45から字幕の表示データDCDが出力されることになる。
図8は図7におけるディスク装置40にセットされる光ディスク上のデータ構成の一具体例を示す図であって、50はディスク情報ファイル、51はメニュー情報ファイル、52はプレイリストファイル、53はクリップ情報ファイル、54はストリームファイル、55は字幕情報ファイルである。
同図において、ディスク情報ファイル50には、光ディスク上に記録されている番組の数及び各番組のファイル名などの情報が含まれており、このディスク情報ファイル50をもとに、再生する番組のリストを表示することができる。ここでは、1つの番組に1つの曲目(楽曲)が収録されているものとする。
メニュー情報ファイル51には、各番組のメニューとして表示する画面情報などが含まれている。プレイリスト52には、各番組で再生するストリームのファイル名や再生時刻,字幕情報のファイル名などの情報が含まれている。クリップ情報ファイル53には、各ストリームファイルに対応して、ストリームファイルの時刻とパケット番号との対応情報が記録されている。ストリームファイル54には、MPEGパケットにその出力タイミング情報を付加し、これらのパケットをファイルとしたものである。字幕情報ファイル55には、字幕の文字列やこの文字列の表示開始時刻,表示終了時刻,字幕の色の変化開始時刻,変化終了時刻などの情報が記録されているものである。
図9は図8における字幕情報ファイル55の一具体例を示す図であって、55aは効果選択情報、55bは字幕の表示開始時刻情報、55cは字幕の表示終了時刻情報、55dは字幕の色変化開始時刻情報、55eは字幕の色変化終了時刻情報、55fは表示文字列である。
同図において、字幕情報ファイル55中には、各字幕の表示文字列55fと、その字幕の表示文字列55fの表示開始の時刻を表わす表示開始時刻情報55b,表示終了の時刻を表わす表示終了時刻情報55c,字幕の表示文字列の色の変化開始時刻を表わす色変化開始時刻情報55d及び色の変化終了時刻を表わす色変化終了時刻情報55eの各情報が含まれている。
システム制御部41(図7)は、ディスク装置40で読出しを行なってかかる字幕情報ファイル55を取り込み、各字幕の表示文字列55fをグラフィックデータDCGに変換し、これを表示開始時刻情報55bによる表示開始時刻にグラフィックバッファ2(図1)上に書き込み、表示終了時刻情報55cによる表示終了時刻にこのグラフィックデータをグラフィックバッファ2上から削除する。また、システム制御部41は、グラフィックデータDCGをグラフィックバッファ2上に書き込むと、その読出しを制御するとともに、領域指定部6(図1)を制御することにより、色変化開始時刻情報55dによる色変化開始時刻から色変化終了時刻情報55eによる色変化終了時刻にかけて、図5(a)及び図6で説明したように、指定領域32の横幅dHを0から順次拡大させる。これにより、カラオケ字幕として字幕の文字の表示が変化される。
字幕情報ファイル55には、勿論、上記のような情報の他に、文字の大きさやフォントなどの修飾情報を別途含めてもよい。
また、ここでは、カラオケ字幕に対して用いられることを前提に説明しているが、字幕の特殊効果として、フェードイン・フェードアウトや文字のスクロールなどにも応用することができる。これらと区別するために、効果選択情報55aはこのような効果の種類を指定するものであり、これにより、カラオケ字幕として表示するのか、文字をフェードインさせるのかを明確に判別できる。
なお、図9に示す具体例は、各カラオケ字幕が重複せずに表示されるものを例にしているが、これは限定されるものではなく、例えば、デュエット曲の場合のように、同一の画面上に2つの字幕が別々のタイミングで表示させるようにすることもできるし、また、単語毎に字幕の表示タイミングを変えるようにすることも可能である。
また、図9に示した具体例では、字幕の表示開始時刻情報55bと表示終了時刻情報55c、色変化開始時刻情報55dと色変化終了時刻情報55eを夫々独立に設けているが、字幕の表示開始時刻情報55bと表示終了時刻情報55cのみを設け、字幕の表示開始とともにその色変化を開始させ、字幕の表示終了とともにその色の変化も終了させるようにしてもよい。
次に、図7に示した再生装置を用いてカラオケ字幕を表示する際の動作について、以下、説明する。
図7において、まず、ユーザが、所望の曲が記録されている光ディスク(図示せず)をディスク装置40内にセットすると、ディスク装置40がこれを感知し、その旨をシステム制御部41に通知する。システム制御部41は、この通知に基づいてディスク装置40の制御を開始し、挿入された光ディスク上に記録されているファイルを読み出すために、まず、ディスク装置40に光ディスク上のファイル管理情報領域のデータの読み出しを行なわせる。
このファイル管理情報領域には、光ディスク上に記録されているファイルのファイル識別子(ファイル名),ファイルサイズ,ファイルの記録位置などのファイル管理情報が記録されている。このファイル管理情報の記録方法としては、例えば、UDF(Universal Disk Format)を用いればよい。
システム制御部41は、光ディスクから読み出されたファイル管理情報に従って、まず、ディスク情報ファイル50(図8)を読み取る。このディスク情報ファイル50には、光ディスク上に記録されている番組の数やファイル名などの情報が含まれている。また、システム制御部41は、メニュー情報ファイル51(図8)も読み出し、これらディスク情報ファイル50とメニュー情報ファイル51とを用いてメニュー画面を作成する。このメニュー画面は図7に図示しない手段を用いて表示画面に表示させる。ユーザは、この表示されたメニュー画面をもとに、歌いたい曲(楽曲)をリモコンで選択することができ、ユーザがリモコンで所望の曲を選択してその再生開始の指示操作を行なうと、この操作信号がリモコン受信部49で受信されてシステム制御部41に供給される。
システム制御部41は、この受信された操作信号に基づいて、ディスク操作40を制御する。これにより、ディスク装置40では、光ディスクからユーザが指示した曲名のプレイリスト52が読み出される。このプレイリスト52には、ユーザによって指示されたストリームファイル54(図8)のファイル名や再生開始時刻情報,再生終了時刻情報と、同時に表示を行なう字幕情報ファイル55(図8)のファイル名などの情報が含まれている。
そこで、システム制御部41は、プレイリスト52中の情報に従って、まず、字幕情報ファイル55の読み出しを行なう。なお、字幕情報ファイル55のファイルサイズは小さいので、システム制御部41は、字幕情報ファイル55を全て一度に読み込んで内蔵のRAM(Random Access Memory)に読み込み保存する。これにより、ストリームファイル54と字幕情報ファイル55を同時に読み出す必要がないため、楽曲の再生が容易になる。
字幕情報ファイル55の読み出しが終わると、システム制御部41は、クリップ情報ファイル53の読み出しを行なう。このクリップ情報ファイル53には、ストリームファイル54中のMPEGパケットとその再生時刻情報とを対応付けたテーブルが記録されている。このテーブルをもとに、ユーザによって指定された楽曲のストリームファイル54の再生開始を指定された時刻から行なうことが容易となり、各楽曲の頭出しなどが可能となる。
クリップ情報ファイル53の読み出しが完了し、ユーザによって指定された再生を行なう曲目(楽曲)の光ディスクでの記録位置が判別されると、システム制御部41は、光ディスクのこの記録位置からこの楽曲のストリームファイル54を再生開始するように、ディスク装置40を制御する。このようにして再生されたストリームファイル54は出力制御部42に供給され、上記のように、そこでMPEGパケットに変換された後、所定のタイミングで音声のMPEGパケットが音声デコーダ43に、映像のMPEGパケットが映像デコーダ44に夫々供給されてデコードされる。
一方、システム制御部41は、上記のように予め読み出した字幕情報ファイル55からユーザの指定によって再生される楽曲のストリームファイル54に対応する字幕情報ファイル55を抽出する。この字幕情報ファイル55では、字幕の各文字が文字コードで表わされており、システム制御部41はこの文字コードの文字列からなる字幕を、字幕表示装置45でのグラフィックバッファ2(図1)に書込み可能とするために、グラフィックデータDCGに変換処理する。
ここで、かかるグラフィックデータの生成方法の一具体例について説明するが、まず、文字コードからグラフィックデータへの変換方法を説明する。
文字コードからグラフィックデータへの変換では、各文字の形状を記憶したフォント情報が使用される。フォント情報は、各文字の形状をグラフィックスデータとして表わすものであり、システム制御部41内のROMに記憶されている。ここでは、各文字のフォントの大きさを、上記のように、縦横150ピクセルとする。
まず、表示する文字列を構成する文字数から、この文字列に対するグラフィックデータの大きさを計算する。例えば、図6に示す文字列に対しては、これが11文字から構成されるものであるから、縦150ピクセル、横150×11=1650ピクセルのグラフィックデータを生成することになる。このために、システム制御部41では、まず、縦150ピクセル、横1650ピクセルの情報を記憶するグラフィックデータ記憶領域を内蔵のRAMで確保し、まず、このグラフィックデータ記憶領域全体のピクセルに、そのピクセルを図2で説明したパレット番号1のピクセルとするデータを書き込む。このデータは8ビットのデータである。
次に、字幕となる文字列を、左端の文字から順に、グラフィックデータに変換していく。例えば、図6に示すような字幕34の場合、左端の文字「あ」をもとに、フォント情報を用いて、グラフィックデータを生成し、グラフィックデータ記憶領域の左端150ピクセル×150ピクセルのエリアに書き込む。このエリアに書き込むグラフィックデータは、この書込みが行なわれるピクセルを図2で説明したパレット番号3のピクセルにするものである。
次いで、字幕34の左端から2番目の文字「ぁ」をもとに、フォント情報を用いて、グラフィックデータを生成し、グラフィックデータ記憶領域の次の150ピクセル×150ピクセルのエリアに書き込む。この文字「ぁ」のグラフィックデータも、それが書き込まれるピクセルを図2で説明したパレット番号3のピクセルとするものである。同様にして、字幕34の順次の文字をフォント情報を用いてグラフィックデータに変換し、グラフィックデータ記憶領域の順次の150ピクセル×150ピクセルのエリアに書き込んでいき、これら書き込んだピクセルを図2で説明したパレット番号3のピクセルにする。
このようにして、字幕34の文字列の各文字コードがグラフィックデータに変換され、グラフィックデータ記憶領域の夫々指定されたエリアに書き込まれて、この書込みが行なわれたピクセルがパレット番号3のピクセルとなる。
字幕34の文字列のグラフィックデータ記憶領域への書込みが終了すると、次に、各文字のグラフィックデータイメージ毎にその輪郭の検出が行なわれ、輪郭をなすものと判定されたピクセルをパレット番号2のピクセルとするデータの書込みが行なわれる。この輪郭をなすピクセルの検出は次のように行なわれる。即ち、グラフィックデータが書き込まれたグラフィックデータ記憶領域を縦方向と横方向とに順次スキャンし、この縦方向のスキャン毎に、また、横方向のスキャン毎に、パレット番号1のピクセル(背景)のうちのパレット番号3のピクセル(文字)に直接隣接するピクセルをパレット番号2のピクセルとするものである。例えば、スキャン方向に前後する2つのピクセルのデータを比較し、これら2つのピクセルが等しいデータ(パレット番号1のピクセル同士、または、パレット番号2のピクセル同士)である場合には、いずれのピクセルもデータをそのままにしておくが、これら2つのピクセルが異なると、パレット番号1のピクセルの方にデータの書込みを行ない、パレット番号2のピクセルにする。
このようにして、グラフィックデータ記憶領域内に輪郭が設けられたグラフィックデータイメージが得られることになる。
なお、ここでは、フォント情報は各文字の形状をグラフィックスデータとして記憶するものとしたが、これに限らず、文字の外形を直線や曲線の組み合わせで表わすような、いわゆるアウトラインフォントや、文字の筆順を記憶したストロークフォントなど、様々な形式のフォント情報を用いることもできる。また、フォント情報は、光ディスク上に予め記録しておき、光ディスクがディスク装置40に装着されて、上記のように、字幕の情報を読み出すとき、これとともに、フォント情報を読み出してシステム制御部41内のRAMに記憶するようにしてもよい。
以上のようにして生成したグラフィックデータDCGは、字幕の表示開始時刻に合わせてRAMのグラフィックデータ記憶領域から読み出され、字幕表示装置45の入力端子1(図1)に供給されてグラフィックバッファ2(図1)に書き込まれるようにする。
このように、グラフィックデータDCGを字幕表示装置45に供給するとともに、システム制御部41は、領域指定部6に指定領域を生成させるための指定領域情報を字幕表示装置45に供給する。字幕表示装置45では、この指定領域情報が入力端子1(図1)から領域指定部6(図1)に供給される。
この指定領域情報は、上記のフォント情報によるフォントサイズ(上記の例では、縦横150ピクセル)や字幕の文字数(上記の例では、11文字),字幕の変化開始時刻情報,同じく変化終了時刻情報などをパラメータとして、例えば、1/30秒毎に変化する指定領域の対角座標を求めたものであって(但し、この指定領域の左下角の座標位置は一定)、字幕表示装置45の領域指定部6は、かかる指定領域情報をもとに、図5(a)に示したような1/30秒毎に横幅dHが変化する指定領域32を生成する。
字幕の表示データDCD(図1)による字幕が所定時間表示されて表示終了時刻となると、グラフィックバッファ2内のグラフィックデータが消去され、次の字幕のグラフィックデータDCGが書き込まれて、表示画面に次の字幕が表示され、同様の動作が繰り返される。
このようにして、楽曲が続く限り、表示画面に字幕が順次切り替え表示され、夫々の字幕で異なる表示色の既読部分と未読部分との境界が移動していき、次々とカラオケ字幕の表示が行なわれることになる。
なお、この実施形態では、上記の一連の字幕表示動作は、システム制御部41(図7)内に記憶されたプログラムにより行われている。即ち、予め、システム制御部41内のROM(Read Only Memory)に記憶されたプログラムに従って、光ディスクからの字幕の情報の読み出しやグラフィックデータの生成,指定領域の設定などが行なわれる。
しかし、本発明は、これのみに限定されるものではなく、例えば、再生装置側には、JAVA(登録商標)に代表されるプログラムの実行環境が準備されており、光ディスク上に記録されているプログラムをシステム制御部41内のRAMに読み込んで実行するように構成してもよい。この場合、再生装置側のプログラムの実行環境には、プログラムインターフェースとして、指定領域を指定するAPI(Apprication Program Interface)を設けておく。実行するプログラムはこのAPIを呼び出すように構成されており、このプログラムの実行中に、必要に応じて、指定領域の設定を行なうことが可能である。また、パレット情報を指定するAPIやグラフィックデータをグラフィックバッファ2に書き込むAPIも用意しておけばよい。
なお、この実施形態では、図1におけるカラーパレット3,4に固定値のパレット情報3a,4aを予め格納しているものであるが、これは限定されるものではなく、システム制御部41から任意に設定可能とすることもできる。この場合には、グラフィックデータの変換する色も任意に設定できるようにすることにより、字幕での既読部分と未読部分との色を、これらは互いに異なる色であるが、自由に変化できるようにすることができる。勿論、パレット情報3a,4aの設定値を光ディスク内の字幕情報ファイル55(図8)中に含め、これをシステム制御部41が読み取ってカラーパレット3,4にパレット情報3a,4aとして設定するようにしてもよい。この場合には、光ディスク毎、あるいは楽曲毎に字幕の上記表示色を異ならせることもできる。さらに、カラーパレット3,4毎に複数のパレット情報を設けておき、それらのいずれかを適宜選択してカラーパレット3,4に設定するようにしてもよい。
また、上記実施形態では、図5(a)に示すように、領域指定部6(図1)により設定される指定領域32は矩形状の領域とした。しかし、本発明はこれのみに限るものではなく、例えば、図10に示すように、歌曲の進行とともに、半径が大きくなっていく円形状の指定領域32としてもよい。この場合の指定領域32は、歌曲の進行に対応した字幕34の既読部分34aのみを含むように、その中心座標と半径との情報がシステム制御部41から字幕表示装置45(図7)の領域指定部6(図1)に与えられる。従って、設定されるかかる中心座標値と半径の値とは、歌曲の進行とともに変化していく。なお、かかる円形状の指定領域32のグラフィックバッファ2全体のデータイメージ領域30からはみ出す部分(破線で示す)は、勿論使用されない。また、同様にして、指定領域32をかかる矩形や円形以外の形状の領域としてもよい。
また、領域指定部6において、グラフィックバッファ2に対応させて、横1920×縦1080ピクセルのデータ領域を用意し、このデータ領域の各ピクセル(グラフィックバッファ2の夫々のピクセルに対応)に「1」,「2」といったパレット情報3a,3bを指定する指定番号を書き込み、グラフィックバッファ2の読出しに同期してこのデータ領域からの指定番号の読出しを行ない、セレクタ5がこの指定番号に応じて、カラーパレット3またはカラーパレット4の出力を選択するようにしてもよい。これは、領域指定部6の構成にかかわらず実現可能である。
図11は本発明による字幕表示方法及び装置の他の実施形態を示すブロック図であって、60a,60bはパレット情報、61はカラーパレット、61aはパレット情報であり、図1に対応する部分には同一符号を付けて重複する説明を省略する。
同図において、パレット情報60aは図1におけるカラーパレット3でのパレット情報3aと同様のものであって、例えば、図3(a)に示す情報を有するものである。また、パレット情報60bは図1におけるカラーパレット4でのパレット情報4aと同様のものであって、例えば、図4(a)に示す情報を有するものである。この実施形態も、図7に示す再生装置に字幕表示装置45として適用されるものであるが、この場合のシステム制御41からこれらパレット情報60a,60bが供給される。
セレクタ5は、領域指定部6からの上記のような指定領域により、パレット情報60a,60bのいずれかを選択するが、いま、パレット情報60aが図3(a)に示すパレット情報3aと同じ内容のものとし、パレット情報60bが図4(a)に示すパレット情報4aと同じ内容のものとすると、セレクタ5は、指定領域内でパレット情報60bを選択し、指定領域外でパレット情報60aを選択し、カラーパレット61に供給する。
カラーパレット61では、セレクタ5で選択されたパレット情報60a,60bがパレット情報61aとして設定され、このパレット情報61aに基づいてグラフィックバッファ2から読み出された各ピクセル毎に色変換が行なわれる。これにより、指定領域内のピクセルに対しては、パレット情報60bに基づいて、図4(a)に示す各パレット番号に応じた色変換が行なわれ、指定領域外のピクセルに対しては、パレット情報60aに基づいて、図3(a)に示す各パレット番号に応じた色変換が行なわれる。従って、出力端子7には、図1における出力端子7に得られる字幕の表示データDCDと同様の字幕の表示データDCDが得られることになる。
このようにして、この実施形態では、図1に示した実施形態と同様の効果が得られるが、さらに、カラーパレットが1個で済むなどの回路構成の単純化も実現できる。