(57)【特許請求の範囲】
【請求項１】
映像又は／及び、音声からなるコンテンツを取得して映像音声パケット化する映像音声パケット化部と、
字幕からなるコンテンツを取得して字幕パケット化する字幕パケット化部と、
コンテンツに重畳し透明に表示される透明字幕パケットを生成する透明字幕パケット化部と、
トランスポートストリーム中での映像音声パケット、字幕パケット及び透明字幕パケットの管理情報を取得するとともに、トランスポートストリームで構成されるべきコンテンツの全再生時間において字幕パケットまたは透明字幕パケットが重畳されるようにトランスポートストリーム化のための管理情報を取得する全取得手段を有する管理情報取得部と、
取得した管理情報を示す管理パケットを生成する管理パケット生成部と、
管理情報に従って生成されたパケットをトランスポートストリーム化するトランスポートストリーム化部と、
を有するトランスポートストリーム生成装置にて生成されたトランスポートストリームを送出するコンテンツ配信サーバであって、
トランスポートストリーム生成装置にて生成されたトランスポートストリームを蓄積する蓄積部と、
蓄積部に蓄積されているトランスポートストリームを再生端末からの再生要求に応じて取得する取得部と、
取得部にて取得されたトランスポートストリームによって構成されるコンテンツに重畳して表示する文字情報を取得する文字情報取得部と、
取得した文字情報を、再生要求に応じて取得中のトランスポートストリームに予め含まれる字幕パケット及び透明字幕パケットの両方に上書きすることで字幕パケットとして記録する記録部と、
前記記録が行われたトランスポートストリームを再生端末に向けて送出する送出部と、を有するとともに、
文字情報取得部は、表示すべき文字情報として再生端末にて強制的に表示させるべき文字情報を識別する強制識別子に関連付けられた文字情報である強制文字情報を取得する強制文字情報取得手段を有し、
記録部は、記録の際に前記強制識別子を含む字幕パケットとして記録する、
コンテンツ配信サーバ。
【請求項２】
映像又は／及び、音声からなるコンテンツを取得して映像音声パケット化する映像音声パケット化ステップと、
字幕からなるコンテンツを取得して字幕パケット化する字幕パケット化ステップと、
コンテンツに重畳し透明に表示される透明字幕パケットを生成する透明字幕パケット化ステップと、
トランスポートストリーム中での映像音声パケット、字幕パケット及び透明字幕パケットの管理情報を取得するとともに、トランスポートストリームで構成されるべきコンテンツの全再生時間において字幕パケットまたは透明字幕パケットが重畳されるようにトランスポートストリーム化のための管理情報を取得する全取得ステップを含む管理情報取得ステップと、
取得した管理情報を示す管理パケットを生成する管理パケット生成ステップと、
管理情報に従って生成されたパケットをトランスポートストリーム化するトランスポートストリーム化ステップと、
を計算機に実行させるトランスポートストリーム生成方法にて生成されたトランスポートストリームを送出するコンテンツ配信サーバの制御方法であって、
トランスポートストリーム生成方法にて生成されたトランスポートストリームを蓄積部に蓄積するため記録する蓄積記録ステップと、
蓄積部に記録、蓄積されているトランスポートストリームを再生端末からの再生要求に応じて取得する取得ステップと、
取得ステップにて取得されたトランスポートストリームによって構成されるコンテンツに重畳して表示する文字情報を取得する文字情報取得ステップと、
取得した文字情報を、再生要求に応じて取得中のトランスポートストリームに予め含まれる字幕パケット及び透明字幕パケットの両方に上書きすることで字幕パケットとして記録する記録ステップと、
前記記録が行われたトランスポートストリームを再生端末に向けて送出する送出ステップとを有するとともに、
文字情報取得ステップは、表示すべき文字情報として再生端末にて強制的に表示させるべき文字情報を識別する強制識別子に関連付けられた文字情報である強制文字情報を取得する強制文字情報取得ステップを含み、
記録ステップは、記録の際に前記強制識別子を含む字幕パケットとして記録する、
コンテンツ配信サーバの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＴＳ（トランスポートストリーム）パケット化された音声と映像、また字幕データを多重化して生成されたＴＳデータに対して、処理負荷をかけずに、字幕の無い映像部分に新たな字幕を挿入する（あるいは字幕を差替える）ための技術に関する。
【背景技術】
【０００２】
現在、ネットワーク回線の速度向上や、受信端末（ネットワーク接続機能付テレビ受像機など）の普及によって、インターネットを利用したＶＯＤ（ビデオオンデマンド）などの動画配信サービスが数多く提供されている。ところで、このような動画配信サービスにおいて配信されるデータは、ネットワークでの伝送に適したＴＳ（トランスポートストリーム）形式のデータとして配信サーバに保持されている。そしてＴＳ形式のデータは、所定の符号化形式でそれぞれ符号化された映像データと音声データとをＴＳパケットと呼ばれるパケットに分割し、当該ＴＳパケットを再生タイミング順などで多重化することで構成されている。
【０００３】
また、例えば映画の字幕やその他文字情報を表示するための字幕データも同様にＴＳパケット化され、上記ＴＳデータ内に多重化されている。
【特許文献１】特開２００４−２１５１２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで通常のテレビ放送の場合、地震速報や津波警報などの緊急災害情報や、その他のニュース速報などの緊急的な字幕を映像中に急遽重畳して表示することが一般的に行われている。しかし、ＶＯＤなどで配信されるコンテンツは、上記のように事前にＴＳパケット化及び多重化が行われた状態（ＴＳ形式のデータ）として保存されている。そのため新規の字幕データを急遽挿入するなどの場合には、図２２に示すように、（１）ＴＳデータに対して（２）Ｄｅｍｕｘ（パケット分離）処理やデコード処理などを行い、字幕データを追加した後、（３）再パケット化および再多重化を行う必要がある、という課題があった。
【課題を解決するための手段】
【０００５】
以上の課題を解決するために、本発明は、予めＴＳデータ内に字幕パケットを必ず多重化挿入する構成とし、その字幕パケットが表示すべき文字情報が無い場合、例えばＮＵＬＬデータとしたり、透明のレイヤーとなるよう透明字幕パケットを構成したりする機能を備えるトランスポートストリーム生成装置を提供する。そして新規の字幕データを急遽挿入する必要がある場合には、後述するコンテンツ配信サーバにて、ＴＳデータの管理データ（ＰＭＴなど）を利用して、Ｄｅｍｕｘやデコードなどの処理をせずにＴＳデータのまま多重化済み字幕パケットの位置を特定する。そして特定した字幕パケットに対して新規の字幕パケットを上書して挿入する処理を行う。このようにして本発明のトランスポートストリーム生成装置で生成されたＴＳデータは、字幕データを新規に挿入する場合でも管理情報であるＰＭＴなどを書き換える必要が無く、したがって処理負荷や処理時間を大きく低減することができる。
【０００６】
具体的に、本発明のトランスポートストリーム生成装置は、映像又は／及び、音声からなるコンテンツを取得して映像音声パケット化する映像音声パケット化部と、字幕からなるコンテンツを取得して字幕パケット化する字幕パケット化部と、コンテンツに重畳し透明に表示される字幕パケットを生成する透明字幕パケット化部と、トランスポートストリーム中での映像音声パケット及び字幕パケットの管理情報を取得する管理情報取得部と、取得した管理情報を示す管理パケットを生成する管理パケット生成部と、管理情報に従って生成されたパケットをトランスポートストリーム化するトランスポートストリーム化部と、を有する。
【０００７】
また、さらに透明な字幕がコンテンツの全再生時間にわたって重畳されるように透明字幕パケットを挿入することで、コンテンツのどのタイミングでも新規の字幕を追加表示できるようなＴＳデータを生成することを特徴とするトランスポートストリーム生成装置も提供する。具体的に上記構成を基本として、さらに管理情報取得部が、トランスポートストリームで構成されるべきコンテンツの全再生時間において透明字幕パケットが重畳されるようにトランスポートストリーム化のための管理情報を取得する全取得手段を有するトランスポートストリーム生成装置である。
【０００８】
また、上記トランスポートストリーム生成装置にて生成されたＴＳデータに対し、急遽新規の字幕データを挿入表示する場合に、その新規の字幕データを上書などして記録する機能を備えるコンテンツ配信サーバ装置も提供する。具体的に、このコンテンツ配信サーバ装置は、上記トランスポートストリーム生成装置にて生成されたトランスポートストリームを蓄積する蓄積部と、蓄積部に蓄積されているトランスポートストリームを再生端末からの再生要求に応じて取得する取得部と、取得部にて取得されたトランスポートストリームによって構成されるコンテンツに重畳して表示する文字情報を取得する文字情報取得部と、取得した文字情報を再生要求に応じて取得中のトランスポートストリームに予め含まれる字幕パケット位置に配置される字幕パケットとして記録する記録部と、前記記録が行われたトランスポートストリームを再生端末に向けて送出する送出部と、を有する。
【０００９】
また、さらに、例えば災害避難情報など緊急性の高い字幕データを、コンテンツの配信先にて強制的に表示することを特徴とするコンテンツ配信サーバ装置も提供する。具体的に、上記構成に加えて、文字情報取得部が、表示すべき文字情報として再生端末にて強制的に表示させるべき文字情報を識別する強制識別子に関連付けられた文字情報である強制文字情報を取得する強制文字情報取得手段を有し、記録部が、記録の際に前記強制識別子を含む字幕パケットとして記録するコンテンツ配信サーバである。
【００１０】
また本発明では、上記トランスポートストリーム生成装置に係るトランスポートストリームの生成方法や、コンテンツ配信サーバ装置に係る制御方法なども合わせて提供する。
【発明の効果】
【００１１】
以上のような構成をとる本発明のトランスポートストリーム生成装置によって、映像中に透明の字幕レイヤーが表示されるよう構成されたトランスポートストリームを生成することができる。そして新規の字幕データを急遽挿入する必要がある場合には、本発明のコンテンツ配信サーバによって、ＴＳデータの管理データ（ＰＭＴなど）を利用して、Ｄｅｍｕｘやデコードなどの処理をせず新規の字幕パケットを上書して字幕データを挿入することができる。
【００１２】
このようにして本発明のでは、字幕データを新規に挿入する場合でも管理情報であるＰＭＴなどを書き換える必要が無く、したがってその処理負荷や処理時間を大きく低減することができる。
【発明を実施するための最良の形態】
【００１３】
以下に、図を用いて本発明の実施の形態を説明する。なお、本発明はこれら実施の形態に何ら限定されるものではなく、その要旨を逸脱しない範囲において、種々なる態様で実施しうる。
【００１４】
なお、実施例１は、主に請求項１，７について説明する。また、実施例２は、主に請求項２，８について説明する。また、実施例３は、主に請求項３，５，９，１１について説明する。また、実施例４は、主に請求項４，６，１０，１２について説明する。
【００１５】
≪実施例１≫
【００１６】
<概要>
【００１７】
図１は、本実施例のトランスポートストリーム生成装置により生成されたＴＳデータの一例を説明するための概念図である。この図１（ａ）にあるように、このＴＳデータには映像パケットｖや音声パケットａ、そして字幕パケットｔ２が多重化されている。しかし、本実施例のトランスポートストリーム生成装置では、字幕パケットの一部（又は全部）を透明の字幕パケットとして生成し多重化することを特徴としている。したがって生成されたＴＳデータを再生表示した場合、字幕パケットが多重化されていたとしても文字データは表示されず、通常のコンテンツを楽しむことができる。
【００１８】
そして、例えば地震が発生するなどして緊急災害情報のテロップを表示させる場合、図１（ｂ）に示すように、ＴＳデータ中の透明字幕パケットの位置に、その緊急災害情報のテロップに関する字幕パケットを上書する。このようにして、ＴＳデータのＤｅｍｕｘやデコード、および再パケット化、再多重化などの複雑な処理をせずとも、緊急災害情報などの表示用文字情報を新規に挿入することができる。
【００１９】
<機能的構成>
【００２０】
図２は、本実施例のトランスポートストリーム生成装置における機能ブロックの一例を表す図である。この図にあるように、本実施例の「トランスポートストリーム生成装置」（０２００）は、「映像音声パケット化部」（０２０１）と、「字幕パケット化部」（０２０２）と、「透明字幕パケット化部」（０２０３）と、「管理情報取得部」（０２０４）と、「管理パケット生成部」（０２０５）と、「トランスポートストリーム化部」（０２０６）と、を有する。
【００２１】
なお、以下に記載する本装置およびコンテンツ配信サーバの機能ブロックは、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの両方として実現され得る。具体的には、コンピュータを利用するものであれば、ＣＰＵや主メモリ、バス、あるいは二次記憶装置（ハードディスクや不揮発性メモリ、ＣＤやＤＶＤなどの記憶メディアとそれらメディアの読取ドライブなど）、情報入力に利用される入力デバイス、印刷機器や表示装置、その他の外部周辺装置などのハードウェア構成部、またその外部周辺装置用のインターフェース、通信用インターフェース、それらハードウェアを制御するためのドライバプログラムやその他アプリケーションプログラム、ユーザーインターフェース用アプリケーションなどが挙げられる。
【００２２】
そして主メモリ上に展開したプログラムに従ったＣＰＵの演算処理によって、入力デバイスやその他インターフェースなどから入力されメモリやハードディスク上に保持されているデータなどが加工、蓄積されたり、上記各ハードウェアやソフトウェアを制御するための命令が生成されたりする。
【００２３】
また、この発明は装置として実現できるのみでなく、方法としても実現可能である。また、このような発明の一部をソフトウェアとして構成することができる。さらに、そのようなソフトウェアをコンピュータに実行させるために用いるソフトウェア製品、及び同製品を記録媒体に固定した記録媒体も、当然にこの発明の技術的な範囲に含まれる（本明細書の全体を通じて同様である）。
【００２４】
「映像音声パケット化部」（０２０１）は、映像又は／及び、音声からなるコンテンツを取得して映像音声パケット化する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、映像音声パケット化プログラムなどで実現することができる。ここでのパケット化は、具体的に、映像や音声を再生出力するためのバイナリデータを、ＰＥＳパケットなどの中間パケットを経て、各種パケットヘッダを付加した所定長（１８８バイト長）のＴＳパケットに分割する処理をいう（ＴＳパケットにタイムスタンプが付加されたＴＴＳパケットであればデータ長は１９２バイト）。
【００２５】
「字幕パケット化部」（０２０２）は、字幕からなるコンテンツを取得して字幕パケット化する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、映像音声パケット化プログラムなどで実現することができる。ここでのパケット化も、具体的に、字幕を映像に重ねて再生出力するためのバイナリデータを、各種パケットヘッダを加えて所定長のＴＳパケットやＴＴＳパケットに分割する処理をいう。なお字幕パケットには、字幕そのものの文字データを示すＴＳパケットのほかに、字幕言語や表示位置などを示す情報で構成される字幕管理用のパケットも含まれる。以下、図３と図４を用いて、これら字幕パケットの詳細について説明する。
【００２６】
図３は、文字データそのものを示す字幕パケットの一例を表す概念図である。この図にあるように、字幕パケットはそのヘッダの先頭に「data_group_id」を示すフィールドが設けられ、そのフィールドに例えば「１」という識別情報が記述されていれば、表示すべき文字データが当該パケットのデータ部に記述されていることが判断できる。そして、そのデータ部には、例えば「１１日未明、福岡で地震がありました」といった文字、数字記号などを表示するためのテキストデータ（所定のデータ長でパケット化されているため、場合によってその一部のテキストデータ）が含まれている、という具合である。また、データ部には制御命令を記述するフィールドがあり、そこには、表示タイミングなどを示す命令が記述されている。
【００２７】
図４は、字幕の管理情報を示す字幕パケットの一例を表す概念図である。この図にあるように、この字幕パケットは、ヘッダの先頭の「data_group_id」に、例えば「０」という識別情報が記述されている。そしてデータ部には、「num_languages」のフィールドに表示される字幕の言語数が記述され、その後のフィールドに「言語コード」、例えば「ＪＰＮ（日本語）」や「ＥＮＧ（英語）」などがその言語数分だけ記述されている。また、その後のフィールドには「拡張制御命令」として、字幕の表示領域のサイズや表示領域の表示位置を示す情報などが記述されている。そして、これら管理情報に従い、図３の字幕パケットのデータ部に記述されたテキストデータが、映像に重畳して表示される、という具合である。
【００２８】
また、字幕の管理情報を示す字幕パケットには、その他にも「ＤＭＦ（字幕表示方法）」を記述するフィールドも設けられている。このフィールドには、例えば受信時に自動表示することを示す「０」のフラグや、受信時に受信端末での設定に応じて字幕を選択表示するか判断することを示す「１」のフラグなどが記述される。そして、この「ＤＭＦ」フィールドのフラグを利用して、実施例４で後述するような緊急挿入字幕を受信再生装置側で強制表示させる機能を実現することができる。
【００２９】
なお、この字幕パケットは、映像に重ねて表示すべき文字（数字、記号）列がある場合にのみ生成されれば良い。したがって文字列が全く無い場合、この字幕パケット化部での字幕パケット化処理は行われない事になる。ただし、本件発明のトランスポートストリーム生成装置およびコンテンツ配信サーバの特徴的な機能は、後に字幕パケットを急遽挿入する時などのために、予めトランスポートストリームに字幕パケット又は／及び後述の透明字幕パケットを多重化しておく点にある。したがって字幕パケットが全く生成されない、つまり映像に重ねて表示すべき字幕コンテンツなどが全く無い場合には、次に説明する透明字幕パケットのみが生成されることになる。
【００３０】
「透明字幕パケット化部」（０２０３）は、コンテンツに重畳し透明に表示される字幕パケットを生成する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、透明字幕パケット化プログラムなどで実現することができる。具体的に、この透明字幕パケット化部では、図３に示す字幕パケットのデータ部分を、「ｆｆｆ・・・」などのＮＵＬＬデータとし、また図４に示す管理情報にて字幕表示領域として確保する領域の透過度を最大と設定することで透明字幕パケットを生成する方法が挙げられる。このような構成とする事でコンテンツに字幕用のレイヤーが重畳されて表示されることになるが、そこに表示すべき文字データは無く、またレイヤーも透明であるため、ディスプレイ上では図１（ａ）に示すように字幕なしのコンテンツが普通どおり表示される、という具合である。
【００３１】
あるいは、図４に示す管理情報の「ＤＭＦ」すなわち字幕の表示方法を記述するフィールドに、「受信時に必ず表示しない」とのフラグを立てたり、当該透明字幕パケットを受信再生端末での受信時に即破棄処理される制御命令を記述したりすることで透明字幕パケットを生成する方法も挙げられる。この場合、透明字幕パケットによって「字幕がコンテンツに透明に重畳される」形態にはならないが、コンテンツ再生時に字幕が表示されることはないため、結果的に字幕がコンテンツに重畳し透明に表示されることと同じ作用を得ることができる。
【００３２】
また前述のように、本件発明の特徴的な機能は、後に字幕パケットを急遽挿入する時などのために予めトランスポートストリームに字幕パケット又は／及び透明字幕パケットを多重化しておく点にある。そのため、前記字幕パケット化部によってトランスポートストリームに多重化すべき字幕パケットがすでにある場合、この透明字幕パケットの生成は、以下のような判断を行うことで、透明字幕パケットを生成するか否か決定しても良い。
【００３３】
例えば、コンテンツ視聴者への通知という観点からは、コンテンツの先頭部分に字幕を表示すると効率がよい。そこで、例えば図３に示す字幕パケットの制御命令（字幕の表示時刻を定義）を参照し、コンテンツの再生開始から所定時間以内に表示すべき字幕パケットが無いかＣＰＵなどの論理演算により判断する。そして表示する字幕が無いとの判断結果である場合には、その所定時間に字幕を透明に表示するための透明字幕パケットを生成する、という具合である。
【００３４】
また実施例２で後述するように、コンテンツが何れのタイミングで再生される場合でも急遽新規の字幕を挿入できるように、字幕又は透明字幕はコンテンツの全体にわたって表示されるよう構成されていても良い。そこで、図３に示す字幕パケットの制御命令を参照し、表示すべき字幕パケットの表示時間を取得し、その表示時間の合計とコンテンツの全再生時間とをＣＰＵなどの論理演算により比較する。そして両者が一致しないとの判断結果である場合には、字幕が表示されない時間帯を前記字幕パケットの制御命令から特定し、その時間帯に字幕を透明に表示するための透明字幕パケットを生成する、という具合である。
【００３５】
このように、本実施例のトランスポートストリーム生成装置では、たとえ表示する字幕が無くとも透明字幕パケットを生成し、これをＴＳデータに多重化することで、後日の緊急情報などの新規字幕追加に容易に対応可能としていることを特徴とする。
【００３６】
「管理情報取得部」（０２０４）は、トランスポートストリーム中での映像音声パケット及び字幕パケットの管理情報を取得する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、管理情報取得プログラムなどで実現することができる。また、「管理情報」とは、ＴＳデータについて、多重化された各パケットの処理に関して記述された情報をいい、例えばＰＡＴ（Program Association Table）やＰＭＴ（Program Map Table）などで示される情報が挙げられる。「ＰＡＴ」とは、次のＰＭＴパケットのＰＩＤ（パケット識別子）が記述されているパケットである。またＰＡＴのＰＩＤは「０ｘ００」と一定である。つまり、コンテンツの受信再生装置は、まずＴＳデータを構成する各パケットをチェックし、ＰＩＤ「０ｘ００」で示されるＰＡＴを特定する。そしてＰＡＴパケットにて示されるＰＭＴのＰＩＤを取得し、当該ＰＩＤを参照してＴＳデータ中のＰＭＴパケットを特定することができる。
【００３７】
また、「ＰＭＴ」は、映像パケットや音声パケット、字幕パケット、透明字幕パケットなどのＰＩＤや、また映像や音声の符号化形式を示す識別子などを示すパケットである。したがって、前記ＰＡＴを参照することで特定されたＰＭＴから映像、音声、字幕／透明字幕パケットのＰＩＤを取得し、ＴＳデータ内に多重化されている各パケットの種別を特定することができる。
【００３８】
そして管理情報取得部では、このようなＰＭＴのＰＩＤや、映像、音声、字幕／透明字幕パケットのＰＩＤを予め設定されたルールに従って決定し、取得する、という具合である。
【００３９】
「管理パケット生成部」（０２０５）は、取得した管理情報を示す管理パケットを生成する機能を有し、例えば、ＣＰＵなどの演算装置や主メモリ、管理パケット生成プログラムなどで実現することができる。具体的にこの管理パケット生成部では、前記取得されたＰＭＴのＰＩＤを使い、「ＰＡＴパケット」を生成する。また、取得した映像、音声、字幕／透明字幕パケットのＰＩＤを使い「ＰＭＴパケット」を生成する、という具合である。
【００４０】
「トランスポートストリーム化部」（０２０６）は、管理情報に従って、生成されたパケットをトランスポートストリーム化する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、トランスポートストリーム化プログラムなどで実現することができる。
【００４１】
図５は、このトランスポートストリーム化部でのトランスポートストリーム化処理の一例を表す図である。この図にあるように、映像データ、音声データ、字幕／透明字幕データの各パケットｖ、ａ、ｔ１／ｔ２が多重化され、また、ＰＡＴやＰＭＴなどの管理情報を含むパケットも多重化され、一つのＴＳデータが生成される、という具合である。
【００４２】
そしてこのＴＳデータはそのまま配信された場合、受信再生装置によって順次デコード処理され、映像、音声が再生される。また、字幕パケット（ｔ１）が含まれるシーンでは字幕が重畳表示され、また、透明字幕パケット（ｔ２）が含まれるシーンでは、透明のレイヤーが重畳されて字幕は表示されない、という具合である。
【００４３】
また、上記のように本実施例のトランスポートストリーム生成装置によって生成されるコンテンツは、たとえ表示すべき字幕が無くとも予め透明字幕パケットが挿入されてトランスポートストリーム化されている。したがって、例えば地震が発生するなどしてこの映像コンテンツ中に緊急地震情報を急遽挿入表示させたい場合には、Ｄｅｍｕｘやデコードなどの処理をせずとも、後述するコンテンツ配信サーバにて新規挿入表示用の字幕パケットを、その透明字幕パケットなどに上書することで簡単に新しい字幕データを挿入することができる。
【００４４】
<ハードウェア構成>
【００４５】
図６は、上記機能的な各構成要件をハードウェアとして実現した際の、トランスポートストリーム生成装置における構成の一例を表す概略図である。この図を利用して透明字幕パケットを含むＴＳデータ生成処理におけるそれぞれのハードウェア構成部の働きについて説明する。
【００４６】
この図にあるように、トランスポートストリーム装置は、各種演算処理を実行する「ＣＰＵ（中央演算装置）」（０６０１）と、「主メモリ」（０６０２）と、を備えている。また生成したＴＳデータを保持する「ＨＤＤ（ハードディスク・ドライブ）」（０６０３）や、映像、音声、字幕の各コンテンツデータを取得するための「Ｉ／Ｏ（インプット／アウトプット）」（０６０４）も備えている。そしてそれらが「システムバス」などのデータ通信経路によって相互に接続され、情報の送受信や処理を行う。
【００４７】
また、「主メモリ」には図２で示す各構成要件を実現するためのプログラムが読み出され、「ＣＰＵ」は読み出された当該プログラムを参照することで各種演算処理を実行する。また、この「主メモリ」や「ＨＤＤ」にはそれぞれ複数のアドレスが割り当てられており、「ＣＰＵ」の演算処理においては、そのアドレスを特定し格納されているデータにアクセスすることで、データを用いた演算処理を行うことが可能になっている。
【００４８】
ここで、例えば図示しない入力デバイスやＧＵＩなどを介して操作者からトランスポートストリームの生成命令を受け付けると、本実施例の統合インターフェース装置は、「主メモリ」に映像音声パケット化プログラムや字幕パケット化プログラム、透明字幕パケット化プログラム、管理情報取得プログラム、管理パケット生成プログラム、トランスポートストリーム化プログラムなどを読み出す。
【００４９】
そして、映像音声パケット化プログラムを「ＣＰＵ」が解釈し、そのプログラムに従って、まず「Ｉ／Ｏ」から入力された映像・音声コンテンツのデータを「主メモリ」のアドレス１に格納する。そして、当該コンテンツデータをＰＥＳパケットに分割し、各ＰＥＳパケットにパケットヘッダを付加する。さらに、そのＰＥＳパケットを１８８バイト（あるいは１９２バイト）の所定長のＴＳパケットに分割して生成した映像・音声パケットを「主メモリ」のアドレス２に格納する。
【００５０】
つづいて、字幕パケット化プログラムを「ＣＰＵ」が解釈し、そのプログラムに従って、映像音声のパケット化と同様に「Ｉ／Ｏ」から入力された字幕コンテンツのデータを「主メモリ」のアドレス３に格納する。そして、当該コンテンツデータを、ＰＥＳパケットを経てＴＳパケットに分割し、字幕パケットとして「主メモリ」のアドレス４に格納する。
【００５１】
さらに、透明字幕パケット化プログラムを「ＣＰＵ」が解釈し、そのプログラムに従って、例えばＮＵＬＬデータをそのコンテンツの本体データとする字幕データを生成する。そして、そのＮＵＬＬデータを、ＰＥＳパケットを経てＴＳパケットに分割し、透明字幕パケットとして「主メモリ」のアドレス５に格納する。
【００５２】
つづいて、字幕パケット化プログラムを「ＣＰＵ」が解釈し、そのプログラムに従って、これら生成した映像音声パケットや字幕パケット、透明字幕パケットの例えばパケットヘッダから識別ＩＤなどを管理情報として取得し、「主メモリ」のアドレス６に格納する。そして管理パケット生成プログラムを「ＣＰＵ」が解釈し、そのプログラムに従って、取得した映像音声パケットや字幕パケット、透明字幕パケットの識別ＩＤを示すＰＭＴパケットや、そのＰＭＴパケットの識別ＩＤを示すＰＡＴパケットなどを管理パケットとして生成し、「主メモリ」のアドレス７に格納する。
【００５３】
そして、トランスポートストリーム化プログラムを「ＣＰＵ」が解釈し、そのプログラムに従って、「主メモリ」に格納されている映像音声パケットや字幕パケット、透明字幕パケット、管理パケットを多重化し、ＴＳデータを生成する。そして、生成されたＴＳデータを「ＨＤＤ」のアドレスＡに記録保持する、という具合である。
【００５４】
このようにして、本実施例のトランスポートストリーム生成装置では、予め透明字幕パケットを挿入した形でコンテンツをトランスポートストリーム化することができる。したがって、前述のように字幕データを急遽挿入表示させたい場合には、Ｄｅｍｕｘやデコードなどの処理をせずとも、後述するコンテンツ配信サーバにて新規挿入表示用の字幕パケットを上記ＴＳデータの字幕パケットや透明字幕パケットに上書することで簡単に新しい字幕データを挿入することができる。
【００５５】
<処理の流れ>
【００５６】
図７は、本実施例のトランスポートストリーム生成装置における処理の流れの一例を表すフローチャートである。なお、以下に示すステップは、上記のような計算機の各ハードウェア構成によって実行されるステップであっても良いし、媒体に記録され計算機を制御するためのプログラムを構成する処理ステップであっても構わない。
【００５７】
この図にあるように、まず、映像又は／及び、音声からなるコンテンツを取得して映像音声パケット化する（ステップＳ０７０１）。また、字幕からなるコンテンツを取得して字幕パケット化する（ステップＳ０７０２）。また、透明字幕パケットを生成する（ステップＳ０７０３）。なお、前述のように字幕コンテンツが無い場合、透明字幕パケットのみが生成されても良い。あるいは、映像コンテンツの全再生タイミングにおいて字幕が表示されるか否かを判断し、表示される場合には透明字幕パケットは生成されなくても良い。
【００５８】
つづいて、映像音声パケット及び字幕パケットの管理情報を取得し（ステップＳ０７０４）、取得した管理情報を示す管理パケットを生成する（ステップＳ０７０５）。そして、管理情報に従って生成されたパケットをトランスポートストリーム化する（ステップＳ０７０６）。
【００５９】
<効果の簡単な説明>
【００６０】
以上のように、本実施例のトランスポートストリーム生成装置によって、コンテンツデータを、たとえ表示すべき字幕が無くとも予め透明字幕パケットが挿入された形でトランスポートストリーム化することができる。したがって、例えば地震が発生するなどしてこの映像コンテンツ中に緊急地震情報を急遽挿入表示させたい場合には、Ｄｅｍｕｘやデコードなどの処理をせずとも、後述するコンテンツ配信サーバにて新規挿入表示用の字幕パケットを、その透明字幕パケットなどに上書することで簡単に新しい字幕データを挿入することができる。
【００６１】
≪実施例２≫
【００６２】
<概要>
【００６３】
本実施例は、上記実施例１を基本として、さらに透明な字幕がコンテンツの全再生時間にわたって重畳されるように透明字幕パケットを挿入する機能を有することで、コンテンツのどのタイミングでも新規の字幕を追加表示可能なＴＳデータを生成することを特徴とするトランスポートストリーム生成装置である。
【００６４】
<機能的構成>
【００６５】
図８は、本実施例のトランスポートストリーム生成装置における機能ブロックの一例を表す図である。この図にあるように、本実施例の「トランスポートストリーム生成装置」（０２００）は、実施例１を基本として「映像音声パケット化部」（０８０１）と、「字幕パケット化部」（０８０２）と、「透明字幕パケット化部」（０８０３）と、「管理情報取得部」（０８０４）と、「管理パケット生成部」（０８０５）と、「トランスポートストリーム化部」（０８０６）と、を有する。なお、上記の各構成要件は実施例１にてすでに記載済みであるのでその説明は省略する。
【００６６】
そして、本実施例のトランスポートストリーム生成装置の特徴点は、管理情報取得部がさらに「全取得手段」（０８０７）を有する点である。
【００６７】
「全取得手段」（０８０７）は、トランスポートストリームで構成されるべきコンテンツの全再生時間において透明字幕パケットが重畳されるようにトランスポートストリーム化のための管理情報を取得する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、全取得プログラムなどで実現することができる。具体的に、例えば、図３に示す字幕パケットの制御命令を参照し、表示すべき字幕パケットの表示時間を取得する。続いて、コンテンツのデータ量などからその全再生時間を取得する。そして、両者をＣＰＵなどの論理演算により比較する。そして両者が一致しないとの判断結果である場合には、字幕パケットの制御命令から字幕が表示されない時間帯を算出する。そしてその時間帯に字幕を透明に表示するための制御命令を取得する、という具合である。
【００６８】
そして、その制御命令が付加された透明字幕パケットがＴＳデータ内に多重化されることで、コンテンツの全再生時間において透明字幕パケットを重畳することができる。
【００６９】
<処理の流れ>
【００７０】
図９は、本実施例のトランスポートストリーム生成装置における処理の流れの一例を表すフローチャートである。なお、以下に示すステップは、上記のような計算機の各ハードウェア構成によって実行されるステップであっても良いし、媒体に記録され計算機を制御するためのプログラムを構成する処理ステップであっても構わない。
【００７１】
この図にあるように、まず、映像又は／及び、音声からなるコンテンツを取得して映像音声パケット化する（ステップＳ０９０１）。また、字幕からなるコンテンツを取得して字幕パケット化する（ステップＳ０９０２）。また、透明字幕パケットを生成する（ステップＳ０９０３）。
【００７２】
つづいて、トランスポートストリーム中での映像音声パケット及び字幕パケットの管理情報を、コンテンツの全再生時間において透明字幕が重畳されるように取得し（ステップＳ０９０４）、取得した管理情報を示す管理パケットを生成する（ステップＳ０９０５）。そして、管理情報に従って生成されたパケットをトランスポートストリーム化する（ステップＳ０９０６）。
【００７３】
<効果の簡単な説明>
【００７４】
以上のように、本実施例のトランスポートストリーム生成装置によって、透明な字幕がコンテンツの全再生時間にわたって重畳されるように、ＴＳデータ内に透明字幕パケットを多重化することができる。したがって、コンテンツのどのタイミングでも新規の字幕を追加表示可能なＴＳデータを生成することができる。
【００７５】
≪実施例３≫
【００７６】
<概要>
【００７７】
本実施例では、上記実施例のトランスポートストリーム生成装置と協働し、例えば緊急災害情報などの新規の字幕データを急遽挿入する機能を備えるコンテンツ配信サーバについて説明する。具体的に、本実施例のコンテンツ配信サーバは、上記配信用に蓄積保持している上記生成されたＴＳデータに対して、予め多重化挿入されている字幕パケット／透明字幕パケットの多重化位置を特定し、その位置に新規の字幕データ（緊急災害情報など）を上書などして記録する機能を有する。
【００７８】
このようにして、例えば地震が発生するなどしてこの映像コンテンツ中に緊急地震情報を急遽挿入表示させたい場合には、配信用に蓄積保持しているＴＳデータに対してＤｅｍｕｘやデコードなどの処理をせずとも簡単に新しい字幕データを挿入することができる。
【００７９】
<機能的構成>
【００８０】
図１０は、本実施例のコンテンツ配信サーバにおける機能ブロックの一例を表す図である。この図にあるように、本実施例の「コンテンツ配信サーバ」（１０１０）は、「蓄積部」（１０１１）と、「取得部」（１０１２）と、「文字情報取得部」（１０１３）と、「記録部」（１０１４）と、「送出部」（１０１５）と、を有する。なお、このコンテンツ配信サーバは上記実施例のトランスポートストリーム生成装置と別体のハードウェア装置にて実現されても良いし、同一のハードウェア装置にて実現され、ソフトウェアによって両機能が別々に実現されるよう構成しても良い。
【００８１】
「蓄積部」（１０１１）は、上記実施例に記載のトランスポートストリーム生成装置（１０００）にて生成されたトランスポートストリームを蓄積する機能を有し、例えばＨＤＤやフラッシュメモリ、光学式の記録媒体や読取装置などの記憶装置や、蓄積記録プログラムなどで実現することができる。具体的に、例えばＩ／Ｏなどを介して取得したトランスポートストリームを、ＨＤＤなどの記録装置に記録し蓄積する、という具合である。
【００８２】
そして、このように蓄積されているトランスポートストリームに対して、ネットワーク上のクライアント端末装置（再生端末）からの配信リクエストを受信すると、リクエストに応じてトランスポートストリームを当該再生端末に向けて配信する。また本実施例のコンテンツ配信サーバでは、その蓄積保持されているトランスポートストリームは、字幕パケット／透明字幕パケットが多重化挿入されているので、以下の構成によって簡単に新規の字幕データを挿入することができることを特徴とする。
あるいは、この蓄積部では、上記実施例に記載したトランスポートストリーム生成装置以外の装置によって生成されたトランスポートストリームを蓄積するよう構成しても良い。ただしそのような場合でも、蓄積されるトランスポートストリームは、後述の構成によって新規の字幕パケットを簡単に挿入するために、映像音声パケットと、コンテンツに重畳し透明に表示される字幕パケットと、トランスポートストリーム中での映像音声パケット及び字幕パケットの管理情報を示す管理パケットとを多重化し生成されたものである。
【００８３】
「取得部」（１０１２）は、蓄積部に蓄積されているトランスポートストリームを再生端末からの再生要求に応じて取得する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、Ｉ／Ｏ、取得プログラムなどで実現することができる。具体的に、ネットワーク上の再生端末からのＨＴＴＰリクエストをＩ／Ｏにて受信すると、取得プログラムに従い、ＨＤＤなどに蓄積されているトランスポートストリームを主メモリ上に読み出す、という具合である。
【００８４】
「文字情報取得部」（１０１３）は、取得部にて取得されたトランスポートストリームによって構成されるコンテンツに重畳して表示する文字情報を取得する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、文字情報取得プログラムなどで実現することができる。「文字情報」とは、新たにコンテンツに重畳して表示するべき字幕であれば何でも良く、例えば緊急災害情報のほか、その他のニュース情報や天気予報、株式情報、広告情報などが挙げられる。
【００８５】
図１１は、ここで取得される文字情報の一例を表す図である。なお、この文字情報の基本的なデータ構造は、図３や図４にて示すものと同様であるので、すでに説明済みの「data_group_id」や「num_languages」などについては説明を省略する。そして、例えば字幕の管理情報の拡張制御命令部分にて指定される「ＳＤＦ字幕領域サイズ指定命令：ａａ」にて、図１２に示すように字幕データを重畳して表示すべき位置が指定される。
【００８６】
そして、その指定された表示位置に、「ｂ３ｆ４ｂｃ・・・」などで示される字幕データが所定の文字コードで変換され、図１３に示すように「株式情報をお知らせします」といった字幕として表示される、という具合である。
【００８７】
なお、この文字情報取得部において取得される文字情報は必ず存在するわけではない。例えば緊急災害情報であれば、災害が発生していなければそのような字幕を新規に挿入する必要は無い。そこで、コンテンツ配信サーバでは、新規に多重化挿入すべき文字情報が新規に入力蓄積されたか否かのフラグ情報を保持するよう構成し、再生端末からのコンテンツ配信リクエストを受信した際には当該フラグを参照するよう構成すると良い。そして、そのフラグ情報にて新規に多重化挿入すべき文字情報が蓄積されていることが示されていれば、その文字情報を取得する、という具合である。
【００８８】
また、文字情報は多重化挿入すべきコンテンツの識別情報と関連付けて蓄積保持するよう構成し、コンテンツごとに取得される文字情報が異なるようにしても良い。
【００８９】
「記録部」（１０１４）は、取得した文字情報を、再生要求に応じて取得中のトランスポートストリームに予め含まれる字幕パケット位置に配置される字幕パケットとして記録する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、ＨＤＤなどの記憶装置、そして記録プログラムなどで実現することができる。具体的に、トランスポートストリームのパケットＩＤを参照し、ＩＤ「０ｘ００」で示されるＰＡＴパケットを特定する。そしてＰＡＴパケットにて示されるＰＭＴのＩＤを取得し、当該ＩＤを参照してＴＳデータ中のＰＭＴパケットを特定する。
【００９０】
そして、ＰＭＴパケットにて示される字幕パケット、透明字幕パケットのＩＤを取得し、当該ＩＤを参照してＴＳデータ中の字幕パケット、透明字幕パケットを特定する。そして、その特定された字幕パケットや透明字幕パケットに対して、図１４（ａ）に示すように、文字情報取得部で取得した文字情報をＴＳパケット分割し生成した新規の字幕パケットで上書や書換えなどの処理を行う。そして図１４（ｂ）に示すような、新規の字幕パケットが挿入されたトランスポートストリームを簡単に生成することができる。
【００９１】
なお、この新規の字幕パケットの記録は、例えば透明字幕パケットの配置位置に対してのみとし、何らかの字幕が表示される（予め多重化済みの）字幕パケットの配置位置には記録しないよう構成しても良い。また、両者を対象として新規の字幕パケットの記録が実行されても良い。
【００９２】
「送出部」（１０１５）は、前記記録が行われたトランスポートストリームを再生端末に向けて送出する機能を有し、例えばＣＰＵなどの演算装置や主メモリ、Ｉ／Ｏ、そして送出プログラムによって実現することができる。具体的に、コンテンツ配信のＨＴＴＰリクエストで示される送信元のＩＰアドレスを宛先として、前記トランスポートストリームを構成するＴＳパケットを順次送出する、という具合である。
【００９３】
このようにして、緊急地震情報やニュース速報、株式情報や広告情報などの様々な文字情報を、配信用に蓄積保持しているＴＳデータに対してＤｅｍｕｘやデコードなどの処理をせずとも簡単に挿入することができる。
【００９４】
<ハードウェア構成>
【００９５】
図１５は、上記機能的な各構成要件をハードウェアとして実現した際の、コンテンツ配信サーバにおける構成の一例を表す概略図である。この図を利用して、ＴＳデータに対するＤｅｍｕｘやデコード処理を伴わない新規の字幕パケットの記録処理におけるそれぞれのハードウェア構成部の働きについて説明する。
【００９６】
この図にあるように、コンテンツ配信サーバは、各種演算処理を実行する「ＣＰＵ」（１５０１）と、「主メモリ」（１５０２）と、を備えている。また取得したＴＳデータを保持する「ＨＤＤ」（１５０３）や、ネットワークを介して再生端末との間で情報を送受信するための「Ｉ／Ｏ」（１５０４）も備えている。そしてそれらが「システムバス」などのデータ通信経路によって相互に接続され、情報の送受信や処理を行う。
【００９７】
また、「主メモリ」には図２で示す各構成要件を実現するためのプログラムが読み出され、「ＣＰＵ」は読み出された当該プログラムを参照することで各種演算処理を実行する。また、この「主メモリ」や「ＨＤＤ」にはそれぞれ複数のアドレスが割り当てられており、「ＣＰＵ」の演算処理においては、そのアドレスを特定し格納されているデータにアクセスすることで、データを用いた演算処理を行うことが可能になっている。
【００９８】
そして、本実施例のコンテンツ配信サーバは、「主メモリ」に読み出した蓄積記録プログラムに従い、トランスポートストリーム生成装置にて上記の実施例で説明したように生成されたトランスポートストリームを「Ｉ／Ｏ」を介して受信し、「ＨＤＤ」に記録保持する。
【００９９】
その後、「Ｉ／Ｏ」を介してネットワーク上の再生端末からＨＴＴＰリクエストなどの再生要求を受信すると、当該再生要求を「主メモリ」のアドレス１に格納する。そしてこの再生要求の主メモリへの格納をトリガーとして、取得プログラムに従い、まず図示しない新規字幕データの有無フラグ情報を「ＣＰＵ」が参照する。そして、フラグ情報にて新規字幕データが無い旨が示されていれば、コンテンツ配信サーバは、「ＨＤＤ」に蓄積保持されているトランスポートストリームを再生要求の送信元に対して「Ｉ／Ｏ」から送信する。
【０１００】
一方、フラグ情報にて新規字幕データが有る旨が示されていれば、コンテンツ配信サーバは取得プログラムに従い、リクエスト対象のトランスポートストリームを「ＨＤＤ」から読み出し、「主メモリ」のアドレス２に格納する。
【０１０１】
続いて文字情報取得プログラムを「ＣＰＵ」が解釈し、そのプログラムに従って、例えば「ＨＤＤ」などに新規に入力蓄積されている図示しない字幕データを「主メモリ」のアドレス３に読み出し格納する。そして、当該字幕データをＴＳパケットに分割し生成した新規の字幕パケットを「主メモリ」のアドレス４に格納する。
【０１０２】
そして、記録プログラムを「ＣＰＵ」が解釈し、そのプログラムに従って、「主メモリ」のアドレス２に格納されているトランスポートストリームを構成するパケットのＩＤからＰＡＴ、ＰＭＴ、そして字幕パケット／透明字幕パケットを特定する。そして記録プログラムに従って、その特定した字幕パケット／透明字幕パケットのＴＳデータ中での配置位置に、「主メモリ」のアドレス４などに格納されている新規の字幕パケットを例えば上書処理などで記録していく。そして、新規の字幕パケットが記録されたトランスポートストリームを「主メモリ」のアドレス５に格納し、それを再生要求の送信元に対して「Ｉ／Ｏ」から送信する、という具合である。
【０１０３】
このようにして、緊急地震情報やニュース速報、株式情報や広告情報などの様々な文字情報を、配信用に蓄積保持しているＴＳデータに対してＤｅｍｕｘやデコードなどの処理をせずとも簡単に挿入することができる。
【０１０４】
<処理の流れ>
【０１０５】
図１６は、本実施例のコンテンツ配信サーバにおける処理の流れの一例を表すフローチャートである。なお、以下に示すステップは、上記のような計算機の各ハードウェア構成によって実行されるステップであっても良いし、媒体に記録され計算機を制御するためのプログラムを構成する処理ステップであっても構わない。
【０１０６】
この図にあるように、まず、図７などに示すトランスポートストリーム生成方法にて生成されたトランスポートストリームを蓄積部に蓄積するために記録する（ステップＳ１６０１）。その後、ネットワーク上の再生端末から再生要求を受信する（ステップＳ１６０２）と、蓄積部に蓄積されているトランスポートストリームを取得する（ステップＳ１６０３）。
【０１０７】
つづいて、例えば図示しない新規に重畳すべき文字情報があるか否かの判断処理の後、重畳すべき文字情報があればその文字情報を取得する（ステップＳ１６０４）。そして取得した文字情報を、トランスポートストリームに予め含まれる透明字幕パケット位置に配置される字幕パケットとして記録し（ステップＳ１６０５）、そのトランスポートストリームを再生要求の送信もとである再生端末に対して送出する（ステップＳ１６０６）。
なお、ステップＳ１６０１にて記録蓄積されるトランスポートストリームは、映像音声パケットと、コンテンツに重畳し透明に表示される字幕パケットと、トランスポートストリーム中での映像音声パケット及び字幕パケットの管理情報を示す管理パケットとを多重化し生成されたものであれば、必ずしも図７などに示す方法で生成されたものでなくても構わない。
【０１０８】
また、上記ステップＳ１６０５における新規の文字情報のトランスポートストリームへの記録処理例について、以下にさらに詳細に説明する。
【０１０９】
図１７は、その新規の文字情報のトランスポートストリームへの記録処理の一例を表すフローチャートである。この図にあるように、蓄積部に蓄積されているトランスポートストリームから、次のパケットＡを読み込む（ステップＳ１７０１）。ここで、次のパケットＡが読み出せなかった場合、トランスポートストリームの最後のパケットのチェックが終了したとして処理を終了する。
【０１１０】
一方、次のパケットＡの読み込みに成功した場合、ＣＰＵの演算処理によってパケットＡのＩＤを参照し、当該ＩＤがＰＭＴで示される透明字幕データのＩＤと一致するか否か判断する。あるいは字幕データのＩＤと一致し、かつそのデータ本体が「ｆｆｆ・・・」のＮＵＬＬデータであるか否かを判断する。そして、その判断によって読み込んだパケットＡが透明字幕パケットであるかを特定し（ステップＳ１７０２）、透明字幕パケットでなければ、その読み込んだパケットＡをそのまま送出する。
【０１１１】
また、読み込んだパケットＡが透明字幕パケットであれば、続いて例えばフラグ情報などをＣＰＵの演算処理によって参照し、新規の文字情報があるか否かを確認する（ステップＳ１７０３）。そして、新規の文字情報がないとの判断結果がＣＰＵから出力されれば、やはり読み込んだパケットＡをそのまま送出する。
【０１１２】
一方、新規の文字情報が有るとの判断結果がＣＰＵから出力されれば、新規の文字情報から生成された字幕パケットＢを読み込み（ステップＳ１７０４）、パケットＡのタイムスタンプ値を字幕パケットＢのタイムスタンプ値として書き換える（ステップＳ１７０５）。そして、パケットＡを破棄などし、新規の文字情報を示す字幕パケットＢを再生端末に対して送信する（ステップＳ１７０６）。
【０１１３】
<効果の簡単な説明>
【０１１４】
以上のように本実施例のコンテンツ配信サーバによって、緊急地震情報やニュース速報、株式情報や広告情報などの様々な文字情報を、配信用に蓄積保持しているＴＳデータに対してＤｅｍｕｘやデコードなどの処理をせずとも簡単に挿入することができる。
【０１１５】
<本実施例のその他の構成>
【０１１６】
また本実施例のコンテンツ配信サーバは、例えば透明字幕パケットの場合、そもそも表示すべき字幕がないため上記のように新規の文字情報の字幕パケットに置き換える（あるいは上書するなどの）処理を行うと良い。そして一方で字幕パケットの場合には、以下のように新規の字幕パケットと予め有るその字幕パケットとを合成することで、両方の字幕が表示されるよう構成しても良い。
【０１１７】
図１８は、その両字幕パケットの合成処理の一例を表す図である。この図にあるように、新規に表示すべき緊急情報などの字幕パケット１と、予めトランスポートストリームに多重化されている字幕パケット２とがある。そして、前述のようにしてトランスポートストリーム内の字幕パケット２を特定すると、そのパケットヘッダを除いた字幕データの本体部分を抽出する。また新規の字幕パケット１についても同様にパケットヘッダを除いた字幕データの本体部分を抽出する。そして、改行コード「０ｃ０ｃ」を挟み、その両字幕データを結合し、パケットヘッダを付加することで合成字幕パケットを生成する。そしてその合成字幕パケットを再生端末に対して送出する、という具合である。
【０１１８】
このようにして再生端末において再生される際には、予め有る字幕データ（例えば英語台詞の日本語字幕など）と、新規の字幕データ（地震の緊急災害情報など）とを２段に分けて同時にコンテンツ中に表示することができる。また、字幕の表示領域の指定命令を全画面とし、上記改行コードの後に「ｆｆｆ・・・」などのＮＵＬＬデータを挿入する事で、コンテンツ表示画面中の上段に新規の字幕データを表示し、下段に予め有る字幕データを表示するよう合成処理を行っても良い。
【０１１９】
図１９は、このような新規字幕パケットと予め有る字幕パケットとの合成処理の一例を表すフローチャートである。またこの図では、上記合成処理のみならず、透明字幕パケットと新規字幕パケットとを交換した上で、その新規字幕パケットと連続する予め有る字幕パケットとを合成する処理について説明する。
【０１２０】
この図にあるように、蓄積部に蓄積されているトランスポートストリームから、次のパケットを読み込む（ステップＳ１９０１）。ここで、次のパケットが読み出せなかった場合、トランスポートストリームの最後のパケットのチェックが終了したとして処理を終了する。
【０１２１】
一方、次のパケットの読み込みに成功した場合、ＣＰＵの演算処理によってパケットのＩＤを参照し、読み込んだパケットが透明字幕パケットであるかを特定し（ステップＳ１９０２）、透明字幕パケットでなければ、その読み込んだパケットＡをそのまま送出する（ステップＳ１９０４）。
【０１２２】
また、読み込んだパケットが透明字幕パケットであれば、続いて例えばフラグ情報などをＣＰＵの演算処理によって参照し、新規の文字情報があるか否かを確認する（ステップＳ１９０３）。そして、新規の文字情報がないとの判断結果がＣＰＵから出力されれば、やはり読み込んだパケットをそのまま送出する。
【０１２３】
一方、新規の文字情報が有るとの判断結果がＣＰＵから出力されれば、新規の文字情報から生成された字幕パケットと透明字幕パケットとを交換する（ステップＳ１９０５）。そして、新規字幕パケットをバッファに保存し（ステップＳ１９０６）、蓄積部から次のパケットを読み込む（ステップＳ１９０７）。そして読み込んだパケットが上記同様にして通常の予め有る字幕パケットか否か判断し（ステップＳ１９０８）、字幕パケットでなければ、バッファに保存している新規字幕パケットを再生端末に対して送出する（ステップＳ１９０９）。
【０１２４】
また読み込んだパケットが予め有る字幕パケットであれば、図１８で説明したように改行コードなどを利用して両者の文字データを合成し（ステップＳ１９１０）、その合成した字幕パケットを再生端末に対して送出する（ステップＳ１９１１）。
【０１２５】
以上のようにして、予めある字幕を残しつつ、緊急地震情報やニュース速報、株式情報や広告情報などの様々な文字情報を簡単に挿入することができる。
なお、本件コンテンツの配信サーバは、マルチキャスト方式、ブロードキャスト方式、ユニキャスト方式のいずれの配信にも適用できる。ユニキャスト方式においては、字幕情報の契約内容を判別し、ユーザごとに異なる字幕内容を配信することも可能である。例えば、あるユーザには株式の情報を配信し、あるユーザにはニュース速報を配信することも可能である。
【０１２６】
≪実施例４≫
【０１２７】
<概要>
【０１２８】
本実施例は、上記実施例を基本として、例えば災害避難情報など緊急性の高い字幕データや、サービス提供者などが必ず再生端末にて表示させたい字幕データなどを、コンテンツの配信先にて強制的に表示することを特徴とするコンテンツ配信サーバである。
【０１２９】
<機能的構成>
【０１３０】
図２０は、本実施例のコンテンツ配信サーバにおける機能ブロックの一例を表す図である。この図にあるように、本実施例の「コンテンツ配信サーバ」（２０１０）は、実施例３を基本として、「蓄積部」（２０１１）と、「取得部」（２０１２）と、「文字情報取得部」（２０１３）と、「記録部」（２０１４）と、「送出部」（２０１５）と、を有する。なお、上記の各構成要件は実施例３にてすでに記載済みであるのでその説明は省略する。
【０１３１】
そして、本実施例のコンテンツ配信サーバの特徴点は、文字情報取得部がさらに「強制文字情報取得手段」（２０１６）を有する点である。
【０１３２】
「強制文字情報取得手段」（２０１６）は、強制文字情報を取得する機能を有する。「強制文字情報」とは、表示すべき文字情報として再生端末にて強制的に表示させるべき文字情報を識別する強制識別子に関連付けられた文字情報をいい、例えば、図４に示す字幕の管理情報のＤＭＦフィールドにて「０」が示され、受信時に自動表示されるよう制御される字幕パケットの文字情報などが挙げられる。
【０１３３】
そして記録部では、このような前記強制識別子を含む字幕パケットとして記録することで、再生端末において字幕を強制的に表示することができる。
【０１３４】
<処理の流れ>
【０１３５】
図２１は、本実施例のコンテンツ配信サーバにおける処理の流れの一例を表すフローチャートである。なお、以下に示すステップは、上記のような計算機の各ハードウェア構成によって実行されるステップであっても良いし、媒体に記録され計算機を制御するためのプログラムを構成する処理ステップであっても構わない。
【０１３６】
この図にあるように、まず、図７などに示すトランスポートストリーム生成方法にて生成されたトランスポートストリームを蓄積部に蓄積するために記録する（ステップＳ２１０１）。その後、ネットワーク上の再生端末から再生要求を受信する（ステップＳ２１０２）と、蓄積部に蓄積されているトランスポートストリームを取得する（ステップＳ２１０３）。
【０１３７】
つづいて、例えば図示しない新規に重畳すべき強制文字情報があるか否かの判断処理の後、重畳すべき強制文字情報があればその強制文字情報を取得する（ステップＳ２１０４）。そして取得した強制文字情報を、トランスポートストリームに予め含まれる透明字幕パケット位置に配置される字幕パケットとして記録し（ステップＳ２１０５）、そのトランスポートストリームを再生要求の送信もとである再生端末に対して送出する（ステップＳ２１０６）。
【０１３８】
<効果の簡単な説明>
【０１３９】
以上のように本実施例のコンテンツ配信サーバによって、災害避難情報など緊急性の高い字幕データや、サービス提供者などが必ず再生端末にて表示させたい字幕データなどを、コンテンツの配信先にて強制的に表示させることができる。
【図面の簡単な説明】
【０１４０】
【図１】実施例１のトランスポートストリーム生成装置により生成されたＴＳデータの一例を説明するための概念図
【図２】実施例１のトランスポートストリーム生成装置における機能ブロックの一例を表す図
【図３】字幕データそのものを示す字幕パケットの一例を表す概念図
【図４】字幕の管理情報を示す字幕パケットの一例を表す概念図
【図５】実施例１のトランスポートストリーム生成装置のトランスポートストリーム化部でのトランスポートストリーム化処理の一例を表す図
【図６】実施例１のトランスポートストリーム生成装置におけるハードウェア構成の一例を表す図
【図７】実施例１のトランスポートストリーム生成装置における処理の流れの一例を表すフローチャート
【図８】実施例２のトランスポートストリーム生成装置における機能ブロックの一例を表す図
【図９】実施例２のトランスポートストリーム生成装置における処理の流れの一例を表すフローチャート
【図１０】実施例３のコンテンツ配信サーバにおける機能ブロックの一例を表す図
【図１１】実施例３のコンテンツ配信サーバの文字情報取得部にて取得される文字情報の一例を表す図
【図１２】文字情報にて指定される文字情報の表示領域の一例を表す図
【図１３】文字情報にて表示される文字情報の一例を表す図
【図１４】実施例３のコンテンツ配信サーバの記録部での記録処理の一例を表す概念図
【図１５】実施例３のコンテンツ配信サーバにおけるハードウェア構成の一例を表す図
【図１６】実施例３のコンテンツ配信サーバにおける処理の流れの一例を表すフローチャート
【図１７】実施例３のコンテンツ配信サーバにおける新規の文字情報のトランスポートストリームへの記録処理の一例を表すフローチャート
【図１８】実施例３の、その他のコンテンツ配信サーバにおける新規字幕パケットと予め有る字幕パケットの合成処理の一例を表す概念図
【図１９】実施例３の、その他のコンテンツ配信サーバにおける新規字幕パケットと予め有る字幕パケットとの合成処理の一例を表すフローチャート
【図２０】実施例４のコンテンツ配信サーバにおける機能ブロックの一例を表す図
【図２１】実施例４のコンテンツ配信サーバにおける処理の流れの一例を表すフローチャート
【図２２】従来技術における、ＴＳデータへの新規字幕パケットの多重化挿入処理の一例を説明するための概念図
【符号の説明】
【０１４１】
０２００  トランスポートストリーム生成装置
０２０１  映像音声パケット化部
０２０２  字幕パケット化部
０２０３  透明字幕パケット化部
０２０４  管理情報取得部
０２０５  管理パケット生成部
０２０６  トランスポートストリーム化部
１０１０  コンテンツ配信サーバ
１０１１  蓄積部
１０１２  取得部
１０１３  文字情報取得部
１０１４  記録部
１０１５  送出部
【図１】
0005235505.tif 000002
【図２】
0005235505.tif 000003
【図３】
0005235505.tif 000004
【図４】
0005235505.tif 000005
【図５】
0005235505.tif 000006
【図６】
0005235505.tif 000007
【図７】
0005235505.tif 000008
【図８】
0005235505.tif 000009
【図９】
0005235505.tif 000010
【図１０】
0005235505.tif 000011
【図１１】
0005235505.tif 000012
【図１２】
0005235505.tif 000013
【図１３】
0005235505.tif 000014
【図１４】
0005235505.tif 000015
【図１５】
0005235505.tif 000016
【図１６】
0005235505.tif 000017
【図１７】
0005235505.tif 000018
【図１８】
0005235505.tif 000019
【図１９】
0005235505.tif 000020
【図２０】
0005235505.tif 000021
【図２１】
0005235505.tif 000022
【図２２】
0005235505.tif 000023