【文献】
大久保榮 et al.,”改訂三版H.264/AVC教科書 H.264/AVC TEXTBOOK”,株式会社インプレスR&D,2009年 1月 1日,1,285−304頁、奥付
(58)【調査した分野】(Int.Cl.,DB名)
画像内符号化画像を含むように第1のビットレートでエンコードした複数の画像からなる第1の画像群と、画像間差分符号化画像をデコードするための基準画像として前記画像内符号化画像を関連付けると共に、前記第1のビットレートとは異なる第2のビットレートでエンコードした、前記第1の画像群に再生タイミングが同期した複数の画像からなる第2の画像群とを少なくとも含む映像ストリームを生成するエンコード部を有し、
前記第1の画像群と再生タイミングが同期した前記第2の画像群は、低画質の画像群であり、一部または複数の部分が高画質化された画像を含む画像群であること
を特徴とするエンコード装置。
前記エンコード部は、前記映像ストリームのファイル内に、前記関連付けられている前記基準画像を示す参照情報を挿入し、または、前記関連付けられている前記基準画像を示す再生制御ファイルを、前記映像ストリームに付加して出力すること
を特徴とする請求項1に記載のエンコード装置。
画像内符号化画像を含むように第1のビットレートでエンコードした複数の画像からなる第1の画像群と、画像間差分符号化画像をデコードするための基準画像として前記画像内符号化画像を関連付けると共に、前記第1のビットレートとは異なる第2のビットレートでエンコードした、前記第1の画像群に同期した複数の画像からなる第2の画像群とを少なくとも含む映像ストリームを受信する受信部と、
受信された前記基準画像を参照して前記画像間差分符号化画像をデコードするデコード部とを有し、
前記第1の画像群に同期した前記第2の画像群は、低画質の画像群であり、一部または複数の部分が高画質化された画像を含む画像群であること
を特徴とするデコード装置。
前記映像ストリームのファイル内に、前記関連付けられている前記基準画像を示す基準画像情報が挿入され、または、前記関連付けられている前記基準画像を示す再生制御ファイルが、前記映像ストリームに付加されており、
前記デコード部は、前記基準画像情報で示される前記基準画像、または、前記再生制御ファイルで示される前記基準画像を用いて、前記画像間差分符号化画像をデコードすること
を特徴とする請求項4に記載のデコード装置。
前記デコード部は、同じ前記映像ストリーム内の全ての前記画像間差分符号化画像を、前記基準画像として関連付けられている前記画像内符号化画像を用いてデコードし、または、同じ前記映像ストリーム内の複数の画像間差分符号化画像のうち、一つの画像間差分符号化画像を、前記基準画像として関連付けられている前記画像内符号化画像を用いてデコードし、他の画像間差分符号化画像を、前記画像内符号化画像を用いてデコードされた前記画像間差分符号化画像を用いてデコードすること
を特徴とする請求項4から請求項6のうち、いずれか一項に記載のデコード装置。
画像内符号化画像を含むように第1のビットレートでエンコードした複数の画像からなる第1の画像群と、画像間差分符号化画像をデコードするための基準画像として前記画像内符号化画像を関連付けると共に、前記第1のビットレートとは異なる第2のビットレートでエンコードした、前記第1の画像群に再生タイミングが同期した複数の低画質の画像群であり、一部または複数の部分が高画質化された画像を含む第2の画像群とを少なくとも含む映像ストリームを生成するエンコード部と、
前記エンコード部で生成された映像ストリームをストリーミング送信する送信部と
を備えた送信装置と、
前記エンコードされた前記映像ストリームを受信する受信部と、
受信された前記基準画像を参照して前記画像間差分符号化画像をデコードするデコード部と
を備えた受信装置と
を有するストリーミングシステム。
送信装置のエンコード部が、画像内符号化画像を含むように第1のビットレートでエンコードした複数の画像からなる第1の画像群と、画像間差分符号化画像をデコードするための基準画像として前記画像内符号化画像を関連付けると共に、前記第1のビットレートとは異なる第2のビットレートでエンコードした、前記第1の画像群に再生タイミングが同期した複数の低画質の画像群であり、一部または複数の部分が高画質化された画像を含む第2の画像群とを少なくとも含む映像ストリームを生成するエンコードステップと、
送信装置の送信部が、前記エンコード部で生成された映像ストリームをストリーミング送信する送信ステップと、
受信装置の受信部が、前記エンコードされた前記映像ストリームを受信する受信ステップと、
受信装置のデコード部が、受信された前記基準画像を参照して前記画像間差分符号化画像をデコードするデコードステップと
を有するストリーミング方法。
【背景技術】
【0002】
今日において、ネットワークを介して映像ストリームを伝送する技術として、アダプティブストリーミングが知られている。アダプティブストリーミングは、ネットワークの通信帯域の変動に応じて、伝送する映像ストリームのビットレート等を変化させ、映像の再生が途切れないように伝送する技術である。
【0003】
このようなアダプティブストリーミングにおいて、伝送する映像ストリームのビットレート等を変化させる方式として、「ダイナミックエンコード方式」と「マルチエンコード方式」とが知られている。ダイナミックエンコード方式は、伝送処理における帯域予測等を用いて、エンコーダによる映像ストリームの生成ビットレートを動的に調整する方式である。また、マルチエンコード方式は、エンコーダで複数のビットレートの映像ストリームをそれぞれ生成し、生成されたビットレートの映像ストリームの中から、送受信処理側が、帯域予測等に対応するビットレートの映像ストリームを動的に選択する方式である。
【0004】
マルチエンコード方式のアダプティブストリーミングにおいては、エンコーダにより映像ソースを異なる複数のビットレートの映像ストリームに変換する際に、全ての映像ストリームで再生時刻が同期するように生成される。このため、例えば最初の数秒を高ビットレートの映像ストリームから再生し、続く数秒を低ビットレートの映像ストリームから再生し、さらに続く数秒を中間ビットレートの映像ストリームから再生することが実現できる。そして、再生中において、異なるビットレートの映像ストリームに切り替えたとしても、映像が途切れることなく再生可能である。
【0005】
しかし、マルチエンコード方式のアダプティブストリーミングにおいては、エンコーダにより映像ソースを異なる複数のビットレートの映像ストリームに変換する際に生成される映像ストリームは、全て独立した映像ストリームとなっていた。
【0006】
このため、映像ストリームの切り替えが可能となるのは、各映像ストリーム同士でランダムアクセスが可能な時点(通常、GOP等の先頭のIピクチャ等)に限られる問題があった。GOPは、「Group Of Pictures」の略記である。Iピクチャは、画像内符号化画像である。
【0007】
さらに、取得を開始した映像ストリームの再生時間内に映像ストリームの取得を完了できない場合、映像再生が途切れてしまう問題があった。このため、特に状況の悪いネットワークで映像伝送する場合、安易に高ビットレートの映像ストリームを取得することができない問題があった。また、映像ストリームの再生時間内に映像ストリームの取得完了を見越して、長めのバッファリング時間を取ることが必要となる問題があった。このため、再生される映像品質の低下、および、遅延の増大等の不都合を生ずる問題があった。
【0008】
このようにマルチエンコード方式のアダプティブストリーミングにおいては、再生効率および再生品質に問題があった。
【発明を実施するための形態】
【0013】
以下、一例として、エンコード装置、デコード装置、ストリーミングシステム、および、ストリーミング方法を適用した実施の形態のストリーミングシステムを説明する。まず、第1の実施の形態のストリーミングシステムは、一例としてマルチエンコード方式のアダプティブストリーミングシステムとなっている。そして、第1の実施の形態のストリーミングシステムは、後述するように、エンコーダが映像ソース(マスタデータ)を異なるビットレートのストリームに変換する際に、相関性のある映像ストリームとして生成し(場合によりメタファイルを生成し)、映像ストリームの切り替えの際に相関性を考慮して異なる映像ストリームを取得する。
【0014】
[第1の実施の形態]
図1に、第1の実施の形態のストリーミングシステムのシステム構成図を示す。この
図1に示すように、第1の実施の形態のストリーミングシステムは、サーバ装置1およびクライアント装置2を有している。サーバ装置1およびクライアント装置2は、インターネット等のネットワーク3を介して相互に接続されている。サーバ装置1は、所定の映像ストリームを、後述するようにエンコードし、ネットワーク3を介して配信する。クライアント装置2は、サーバ装置1から映像ストリームを受信し、デコードして、モニタ装置に表示し、または、レコーダ装置等に記録する。
【0015】
図2にサーバ装置1のブロック図を示す。
図2に示すように、サーバ装置1は、通常のパーソナルコンピュータ装置と同様のハードウェア構成を有している。すなわち、サーバ装置1は、CPU11、ROM12、RAM13、HDD(ハードディスクドライブ)14、および、通信部15を備える。CPU11〜通信部15は、バスライン16を介して相互に接続されている。CPUは、「Central Processing Unit」の略記である。ROMは、「Read Only Memory」の略記である。RAMは、「Random Access Memory」の略記である。
【0016】
HDD14には、映像ストリームをエンコードするためのエンコードプログラムが記憶されている。CPU11は、エンコードプログラムに従って動作することで、エンコード部の一例であるエンコーダ17として機能し、映像ストリームをエンコード処理して配信する。なお、エンコードプログラムは、ROM12またはRAM13に記憶されていてもよい。
【0017】
図3にクライアント装置2のブロック図を示す。
図3に示すように、クライアント装置2は、通常のパーソナルコンピュータ装置と同様のハードウェア構成を有している。すなわち、クライアント装置2は、CPU21、ROM22、RAM23、HDD(ハードディスクドライブ)24、および、通信部25を備える。CPU21〜通信部25は、バスライン26を介して相互に接続されている。通信部25は、受信部の一例である。
【0018】
HDD24には、サーバ装置1から受信した映像ストリームをデコードするためのデコードプログラムが記憶されている。CPU21は、デコードプログラムに従って動作することで、デコード部の一例であるデコーダ27として機能し、サーバ装置1から受信した映像ストリームをデコード処理する。なお、デコードプログラムは、ROM22またはRAM23に記憶されていてもよい。
【0019】
この例では、エンコーダ17およびデコーダ27はソフトウェア的に実現されるものとして説明を進める。しかし、エンコーダ17およびデコーダ27のうち、全部またはいずれか一つをハードウェアで実現してもよい。
【0020】
また、エンコードプログラムおよびデコードプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)などのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、エンコードプログラムおよびデコードプログラムは、CD−R、DVD、ブルーレイディスク(登録商標)、半導体メモリ等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。DVDは、「Digital Versatile Disk」の略記である。また、エンコードプログラムおよびデコードプログラムは、インターネット等のネットワーク経由でインストールするかたちで提供してもよい。また、エンコードプログラムおよびデコードプログラムは、機器内のROM等に予め組み込んで提供してもよい。
【0021】
次に、第1の実施の形態のストリーミングシステムにおける映像ストリームの送受信動作を説明する。まず、サーバ装置1のエンコーダ17は、所定の時点で区切った映像ソースを、それぞれ異なるビットレートとなるようにエンコード処理することで、各ビットレートのGOPを生成する。一例ではあるが、エンコーダ17は、高ビットレート、低ビットレート、および、高ビットレートと低ビットレートの中間のビットレート(中間ビットレート)のGOPをそれぞれ生成する。そして、エンコーダ17は、同一の時点の区切られた各ビットレートのGOPをまとめて、一つの映像ストリームを生成し、HDD14に記憶する。高ビットレートのGOPは、第1のビットレートの第1の画像群の一例である。また、中間のビットレートおよび低ビットレートのGOPは、第2のビットレートの第2の画像群の一例である。各映像ストリームの各GOPは、それぞれ独立再生可能となっている。
【0022】
なお、この例では、生成された各映像ストリームは、HDD14に記憶されることとしたが、例えばライブ映像のようにリアルタイムで配信する場合は、リアルタイムでエンコードされ、クライアント装置2側に配信される。
【0023】
また、この例では、エンコーダ17は、同一の時点の区切られた各ビットレートのGOPをまとめて、一つの映像ストリームを生成することとした。しかし、エンコーダ17が、一つの映像ストリームに一つのビットレートのGOPのみを含むように、映像ソースをエンコードしてもよい。この場合、エンコーダ17は、同一の時点で区切った映像ソースから、高ビットレートのGOP、中間ビットレートのGOP、および、低ビットレートのGOPをエンコードする。そして、エンコーダ17は、高ビットレートのGOPのみを含む第1の映像ストリーム、中間ビットレートのGOPのみを含む第2の映像ストリーム、および、低ビットレートのGOPのみを含む第3の映像ストリームを生成する。
【0024】
また、エンコーダ17は、各映像ストリームのファイル内に、Pピクチャのデコード時に参照する基準画像が含まれている映像ストリームを示す参照情報を挿入する。または、エンコーダ17は、Pピクチャのデコード時に参照する基準画像が含まれている映像ストリームを示す再生制御ファイルを、各映像ストリームに付加する。デコーダ27は、参照情報または再生制御ファイルで指定される映像ストリームを参照し、上述の各実施の形態で説明したように、Pピクチャをデコードする。これにより、上述の各実施の形態と同様の効果を得ることができる。
【0025】
次に、クライアント装置2のデコーダ27は、映像ストリームの通信帯域を計測している。デコーダ27は、計測した通信帯域に応じて、受信するGOPのビットレートを選択する。そして、デコーダ27は、サーバ装置1に対して、選択したビットレートのGOPの映像ストリームの配信要求を行う。
【0026】
具体的には、デコーダ27は、通信帯域に余裕があるときには、高ビットレートのGOPの映像ストリームの配信要求を行う。これに対して、通信帯域に余裕が無いときには、デコーダ27は、低ビットレートのGOPの映像ストリームの配信要求を行う。また、デコーダ27は、通信帯域に多少の余裕があるときには、中間ビットレートのGOPの映像ストリームの配信要求を行う。
【0027】
デコーダ27は、選択したビットレートのGOPの映像ストリームを、サーバ装置1から受信する。そして、デコーダ27は、受信した映像ストリームをデコード処理し、モニタ装置等に表示する。または、デコーダ27は、受信した映像ストリームを記録装置に出力して記録媒体に記録する。
【0028】
なお、この例は、クライアント装置2側でネットワークの通信帯域を計測し、計測した通信帯域に対応するビットレートのGOPの配信要求を、サーバ装置1に行うこととした。しかし、サーバ装置1が、ネットワークの帯域を計測して、送信するGOPのビットレートを切り替えて配信してもよい。このための具体的な手法としては、アダプティブストリーミングのストリーミング切り替え手法では、ストリーム指定方法を拡張し、各画像への参照を定義することで実現が可能である。
【0029】
また、クライアント装置2またはサーバ装置1以外の何らかの装置、ルータ装置、または専用測定装置等でネットワークの通信帯域を計測し、クライアント装置2またはサーバ装置1が計測結果を受信して、GOPのビットレートを切り替えるための情報として用いてもよい。また,クライアント装置2で計測したネットワークの通信帯域の計測結果をサーバ装置1が受信し、サーバ装置1が、GOPのビットレートを切り替えてもよい。または、サーバ装置1が計測した通信帯域の計測結果をクライアント装置2が受信し、クライアント装置2が、GOPのビットレートを切り替えてもよい。
【0030】
次に、第1の実施の形態のストリーミングシステムにおける映像ストリームのエンコード動作およびデコード動作の詳細を説明する。まず、
図4のフローチャートに、サーバ装置1のエンコード動作の流れを示す。サーバ装置1のCPU11は、映像ストリームのエンコード時になると、エンコーダ17として機能する。エンコーダ17は、ステップS1において、所定のビットレートの映像ストリームの画像内符号化画像(Iピクチャ)を、他の画像間差分符号化画像(Pピクチャ)で参照するように、各映像ストリームにIピクチャの参照情報を挿入して、所定のエンコード処理を行う。
【0031】
なお、Iピクチャは、他の画像を参照しないでデコードできるように画像内で符号化された画像である。また、Pピクチャは、直前のフレームから変化した差分のデータのみを符号化した画像である。このPピクチャと共に、または、Pピクチャの代わりにBピクチャを用いてもよい。Bピクチャは、前後の画像に対する変化差分のデータのみを符号化した画像である。
【0032】
図5および
図6に、エンコーダ17のエンコード動作の模式図を示す。エンコーダ17は、MPEG方式に従って、映像ソースのエンコード処理を行う。具体的には、エンコーダ17は、最初の数秒の映像ソースをエンコード処理することで、第1の映像ストリームを生成し、最初の数秒の映像ソースに続く数秒の映像ソースをエンコード処理することで、第2の映像ストリームを生成する等のように、所定時間毎に映像ソースをエンコード処理して、連続する映像ストリームを生成する。
【0033】
エンコーダ17は、
図5および
図6に示すように高ビットレートのGOP、中間ビットレートのGOP、および、低ビットレートのGOPを含むように各映像ストリームを生成する。GOPは、「Group Of Pictures」の略記である。
図5に示す「H1」の符号は、第1の映像ストリームに含まれる高ビットレートのGOPを示している。同様に、「H2」の符号は、第2の映像ストリームに含まれる高ビットレートのGOPを示している。また、「M1」の符号は、第1の映像ストリームに含まれる中間ビットレートのGOPを示している。同様に、「M2」の符号は、第2の映像ストリームに含まれる中間ビットレートのGOPを示している。また、「L1」の符号は、第1の映像ストリームに含まれる低ビットレートのGOPを示している。同様に、「L2」の符号は、第2の映像ストリームに含まれる低ビットレートのGOPを示している。
【0034】
図5および
図6に示す例の場合、エンコーダ17は、各ビットレートのGOPのPピクチャ(P−pic)をデコードする際に参照する画像として、高ビットレートのGOPのIピクチャ(I−pic)を指定してエンコード処理を行う。具体的には、エンコーダ17は、各GOPのヘッダ等に、Pピクチャをデコードする際に参照するIピクチャを指定する参照情報を挿入する。なお、エンコーダ17は、参照するIピクチャを示す再生制御ファイルを生成して、各GOPまたは対応する映像ストリームに付加してもよい。
【0035】
エンコーダ17により生成された各映像ストリームは、
図4のフローチャートのステップS2において、CPU11が通信部15を通信制御して、各クライアント装置2に配信される。これにより、
図4のフローチャートの処理が終了する。
【0036】
次に、
図7のフローチャートに、クライアント装置2における、受信した映像ストリームのデコード処理の流れを示す。クライアント装置2のCPU21は、HDD24に記憶されているデコードプログラムに従ってデコーダ27として機能し、サーバ装置1から受信した映像ストリームをデコード処理する。
【0037】
具体的には、サーバ装置1から映像ストリームを受信すると、デコーダ27は、
図7のフローチャートのステップS11において、上述の参照情報または再生制御ファイルで指定されるIピクチャをデコードする。また、デコーダ27は、ユーザに選択されたビットレートのGOPのPピクチャを、デコードしたIピクチャを用いてデコードする。
【0038】
図5および
図6は、デコードされたIピクチャを用いて、各ビットレートのGOPのPピクチャがデコードされる様子を示している。なお、
図5および
図6の例は、高ビットレートのGOPのIピクチャが参照情報で指定されている例である。この場合は、高ビットレートのGOPのIピクチャで他のPピクチャがデコードされる。しかし、例えば中間ビットレートのGOPのIピクチャを参照情報で指定してもよい。この場合は、中間ビットレートのGOPのIピクチャで他のPピクチャがデコードされる。さらに、低ビットレートのGOPのIピクチャを参照情報で指定してもよい。この場合は、低ビットレートのGOPのIピクチャで他のPピクチャがデコードされる。
【0039】
このようにデコードされた映像ストリームは、ステップS12において、モニタ装置に出力されることで表示される。これにより、
図7のフローチャートのデコード処理が終了する。なお、映像ストリームを、記録装置に出力し、記録媒体に記録してもよい。この場合、映像ストリームは、デコードせずに記録してもよい。また、通信レートに合わせた各ビットレートで受信したデータを、そのまま記録してもよいし、各映像ストリームを統合結合することで再構成した後に記録してもよい。
【0040】
以上の説明から明らかなように、第1の実施の形態のストリーミングシステムは、各映像ストリーム毎に、いずれかのビットレートのIピクチャを、Pピクチャをデコードする際に用いる画像として指定してエンコード処理する。そして、デコードする際に、指定されているIピクチャをデコードすると共に、デコードしたIピクチャを用いて、ユーザに指定されたGOPのPピクチャをデコードする。
【0041】
通常、マルチエンコード方式のアダプティブストリーミングシステムにおいては、エンコーダにより映像ソースを異なる複数のビットレートの映像ストリームに変換する際に生成される映像ストリームは、全て独立した映像ストリームとなっている。このため、映像ストリームの切り替えが可能となるタイミングは、映像ストリーム同士でランダムアクセスが可能となるタイミング(GOPの先頭のIピクチャのタイミング)に限られていた。
【0042】
しかし、第1の実施の形態のストリーミングシステムの場合、各GOPのPピクチャは、予め指定されているIピクチャを用いてデコードされる。このため、
図5のKT1〜KT4に示すように、Iピクチャのタイミング、および、各GOPの全てのPピクチャのタイミングで、映像ストリームの切り替えを可能とすることができる。このため、マルチエンコード方式のアダプティブストリーミングシステムにおいて、映像ストリームの切り替えが可能なタイミングを増やすことができる。
【0043】
また、第1の実施の形態のストリーミングシステムは、状況の悪いネットワークで映像伝送する際も、安易に低ビットレートの映像ストリームを取得して映像品質の低下を防止できる。また、映像ストリームの再生時間内で全体の取得完了を見越した長めのバッファリング時間を取ることによる遅延を防止することができる。
【0044】
[第2の実施の形態]
次に、第2の実施の形態のストリーミングシステムの説明をする。上述の第1の実施の形態のストリーミングシステムは、いずれかのGOPのIピクチャを、他のPピクチャのデコードの際に参照するものであった。これに対して、第2の実施の形態のストリーミングシステムは、先頭のPピクチャをデコードする際に、いずれかのGOPのIピクチャを参照してデコードし、以後、後続するPピクチャを、デコード済みの直前のPピクチャを参照してデコードするようにしたものである。
【0045】
図8は、このような第2の実施の形態のストリーミングシステムのエンコード動作を示す模式図である。この例の場合、エンコーダ17は、上述の参照情報または再生制御ファイルにより、各ビットレートのGOPの先頭のPピクチャをデコードする際に参照する画像として、高ビットレートのGOPのIピクチャを指定して映像ソースをエンコードする。また、エンコーダ17は、上述の参照情報または再生制御ファイルにより、各ビットレートのGOPの第2番目以降のPピクチャをデコードする際に参照する画像として、直前のPピクチャを指定して映像ソースをエンコードする。
【0046】
図8に示す例の場合、Iピクチャは、高ビットレートのGOPに生成されている。このため、デコーダ27は、高ビットレートのGOPのIピクチャを参照して、各ビットレートのGOPの先頭のPピクチャをデコードする。また、デコーダ27は、Iピクチャを用いてデコードされた先頭のPピクチャを参照して、第2番目のPピクチャをデコードする。さらに、デコーダ27は、先頭のPピクチャを参照してデコードされた第2番目のPピクチャを参照して、第3番目のPピクチャをデコードする。すなわち、デコーダ27は、デコードしようとしているPピクチャの直前に位置するデコード済みのPピクチャを用いて、第2番目以降のPピクチャをデコードする。
【0047】
これにより、第2の実施の形態のストリーミングシステムは、
図8に示すようにIピクチャのタイミング、および、各GOPのデコード済みのPピクチャのタイミングで、映像ストリームの切り替えを可能とすることができる。このため、第2の実施の形態のストリーミングシステムは、映像ストリームの切り替えが可能なタイミングを増やすことができる他、上述の第1の実施の形態と同様の効果を得ることができる。
【0048】
[第3の実施の形態]
次に、第3の実施の形態のストリーミングシステムの説明をする。上述の第2の実施の形態のストリーミングシステムは、先頭のPピクチャをデコードする際に、いずれかのGOPのIピクチャを参照してデコードし、以後、後続するPピクチャを、デコードされた直前のPピクチャを参照してデコードするようにしたものであった。これに対して、第3の実施の形態のストリーミングシステムは、デコードされた直前のPピクチャを参照して後続するPピクチャをデコードする際に、Iピクチャを含むGOPのPピクチャを参照してデコードするPピクチャを含めたものである。
【0049】
図9は、このような第3の実施の形態のストリーミングシステムのエンコード動作を示す模式図である。この例の場合、エンコーダ17は、上述の参照情報または再生制御ファイルにより、各ビットレートのGOPの先頭のPピクチャをデコードする際に参照する画像として、高ビットレートのGOPのIピクチャを指定して映像ソースをエンコードする。また、エンコーダ17は、上述の参照情報または再生制御ファイルにより、Iピクチャを含むGOPの第2番目以降のPピクチャをデコードする際に参照する画像として、直前のPピクチャを指定して映像ソースをエンコードする。
【0050】
また、エンコーダ17は、上述の参照情報または再生制御ファイルにより、Iピクチャを含まないビットレートのGOPの第2番目のPピクチャをデコードする際に参照する画像として、直前のPピクチャを指定して映像ソースをエンコードする。また、エンコーダ17は、上述の参照情報または再生制御ファイルにより、Iピクチャを含まないビットレートのGOPの第3番目のPピクチャをデコードする際に参照する画像として、高ビットレートのGOPの第2番目のPピクチャを指定して映像ソースをエンコードする。また、エンコーダ17は、上述の参照情報または再生制御ファイルにより、Iピクチャを含まないビットレートのGOPの第4番目のPピクチャをデコードする際に参照する画像として、直前の第3番目のPピクチャを指定して映像ソースをエンコードする。
【0051】
図9に示す例の場合、Iピクチャは、高ビットレートのGOPに生成されている。このため、デコーダ27は、高ビットレートのGOPのIピクチャを参照して、各ビットレートのGOPの先頭のPピクチャをデコードする。また、デコーダ27は、Iピクチャを含むGOPの各Pピクチャを、直前のPピクチャを用いてデコードする。
【0052】
また、デコーダ27は、Iピクチャを含まないGOPの第2番目のPピクチャを、Iピクチャを用いてデコードされた先頭のPピクチャを参照してデコードする。また、デコーダ27は、Iピクチャを含まないGOPの第3番目のPピクチャを、Iピクチャを含む高ビットレートのGOPの第2番目のPピクチャを参照してデコードする。さらに、デコーダ27は、Iピクチャを含まないGOPの第4番目のPピクチャを、直前の第3番目のPピクチャを参照してデコードする。すなわち、デコーダ27は、所定数のPピクチャのデコード処理を行う毎に、Iピクチャを含むGOPのIピクチャまたはPピクチャを参照してデコード処理を行う。
【0053】
これにより、第3の実施の形態のストリーミングシステムは、
図9に示すIピクチャのタイミング、および、各GOPの先頭のPピクチャのタイミングで、映像ストリームの切り替えを可能とすることができる等、上述の第2の実施の形態と同様の効果を得ることができる。第3の実施の形態のストリーミングシステムの場合、切り替えは、参照元のIピクチャ、または、Pピクチャを含む映像ストリームから参照先の映像ストリームの一方向のみ可能となる。しかし、第3の実施の形態のストリーミングシステムは、参照先が直前のフレームとなるため、参照先のフレームのデータ量を削減することができる。
【0054】
[第4の実施の形態]
次に、第4の実施の形態のストリーミングシステムの説明をする。第4の実施の形態のストリーミングシステムは、上述の複数の異なるビットレートのGOPと共に、画像の一部を高画質化した画像を含むGOPで各映像ストリームを構成したものである。
【0055】
第4の実施の形態のストリーミングシステムの場合、サーバ装置1のエンコーダ17は、
図10に示すように、複数の異なるビットレートのGOPと共に、部分的に高画質化したビットレートのGOPで各映像ストリームを構成するように、映像ソースをエンコードする。すなわち、
図10に示す「H」、「M」、「L」、「P」は、それぞれ高ビットレートのGOP、中間ビットレートのGOP、低ビットレートのGOP、部分的に高画質化された低ビットレートのGOPを示している。すなわち、部分的に高画質化された低ビットレートのGOPは、低画質の画像のGOPである。そして、低画質の画像のうち、一部または複数の部分が高画質の画像となっている。また、「H1」、「M1」、「L1」、「P1」は、第1の映像ストリームに含まれるGOPを示している。同様に、「H2」、「M2」、「L2」、「P2」は、第2の映像ストリームに含まれるGOPを、「H3」、「M3」、「L3」、「P3」は、第3の映像ストリームに含まれるGOPを示している。
【0056】
また、各映像ストリームの各GOPは、第1の実施の形態〜第3の実施の形態で説明した構成となっている。すなわち、各映像ストリームの各GOPは、Pピクチャのデコードは、いずれかのビットレートのIピクチャを参照してデコードする構成となっている。または、各映像ストリームの各GOPは、いずれかのビットレートのIピクチャを参照してデコード済みのPピクチャを参照してデコードする構成となっている。
【0057】
なお、この例では、低ビットレートのGOPに、高画質化された部分的な画像を含ませることとしたが、中間ビットレートのGOPまたは高ビットレートのGOPに、高画質化された部分的な画像を含ませてもよい。
【0058】
クライアント装置2においては、デコーダ27が、映像ストリームの受信中に通信帯域を計測する。そして、デコーダ27は、計測した通信帯域に応じて、次に受信するビットレートを選択して映像ストリームを受信する。
【0059】
具体的には、デコーダ27は、通信帯域に余裕があるときには、高ビットレートのGOPを選択して受信しデコードする。これに対して、通信帯域に余裕が無いときには、デコーダ27は、低ビットレートのGOPを選択してデコードする。さらに、通信帯域に余裕が無いときにおいて、高画質な画像を得たい場合には、部分的に高画質化された低ビットレートのGOPを選択して受信しデコードする。部分的に高画質化された低ビットレートのGOPを選択することで、低ビットレートのGOPをスムーズに受信しながら、部分的ではあるが、所望の部分が高画質化された画像を得ることができる。
【0060】
このような第4の実施の形態のストリーミングシステムは、部分的に高画質化したGOPを取り扱うストリーミングシステムを、アダプティブストリーミングによる映像ストリームの切り替えで実現する際に、生成する映像データの組み合わせを減らし応答遅延を減らすことができる他、上述の各実施の形態と同様の効果を得ることができる。
【0061】
[第5の実施の形態]
次に、第5の実施の形態のストリーミングシステムの説明をする。高ビットレートの画像であっても、部分的にズームアップさせると、ぼやけた画像となる。このため、第5の実施の形態のストリーミングシステムでは、全体画像から選択された部分的な高画質画像を配信することで、ユーザが全体画像中の所望の部分を高画質で見ることができるようにしたものである。
【0062】
図11は、第5の実施の形態のストリーミングシステムで用いられる画像の生成の仕方を説明するための図である。第5の実施の形態のストリーミングシステムの場合、サーバ装置1のエンコーダ17は、
図11に示すように、例えば横×縦が3840画素×2160画素の広角かつ高解像度の映像ソースを用いる。そして、エンコーダ17は、広角かつ高解像度の映像ソースを、横×縦を1280画素×720画素に縮小した縮小画像のGOPを生成する。また、エンコーダ17は、広角かつ高解像度の映像ソースを、所定の画素数のトリミング領域に分割する。そして、エンコーダ17は、各トリミング領域のGOPを生成する。
図11に示す第1のトリミング領域〜第nのトリミング領域は、それぞれ広角かつ高解像度の映像ソースから分割された所定の画素数のトリミング領域を示している。第nのトリミング領域の「n」は、自然数である。
【0063】
また、第5の実施の形態のストリーミングシステムの場合、各トリミング領域のGOPにおいてPピクチャをデコードする際、第1の実施の形態で説明したように、例えば縮小画像のGOPのIピクチャを参照する構成となっている(
図5および
図6参照)。または、第5の実施の形態のストリーミングシステムの場合、第2の実施の形態で説明したように、各トリミング領域のGOPの先頭のPピクチャをデコードする際、縮小画像のGOPのIピクチャを参照してデコードし、以後、後続するPピクチャを、デコードされた直前のPピクチャを参照してデコードする構成となっている(
図8参照)。または、第5の実施の形態のストリーミングシステムの場合、第3の実施の形態で説明したように、各トリミング領域のGOPにおいてPピクチャをデコードする際、縮小画像のGOPのIピクチャまたは縮小画像のGOPのデコード済みのPピクチャを用いて、各トリミング領域のGOPのPピクチャをデコードする構成となっている(
図9参照)。
【0064】
次に、
図12は、第5の実施の形態のストリーミングシステムにおける映像ストリームの配信形態を説明するための図である。第5の実施の形態のストリーミングシステムの場合、ユーザは、クライアント装置2において、縮小化された全体画像を受信する。クライアント装置2のデコーダ27は、受信した全体画像をデコードしてモニタ装置に表示する。次に、クライアント装置2は、ユーザにより、全体画像中の所望の領域が指定されると、デコーダ27が、サーバ装置1に対して、ユーザに指定された指定領域の画像の送信要求を行う。サーバ装置1は、送信要求に対応する指定領域の高解像度のズーム画像をエンコードしてクライアント装置2に送信する。
図11に示す第1のトリミング領域〜第nのトリミング領域が、ユーザにより指定された各指定領域の高解像度のズーム画像(トリミング領域のGOP)を示している。デコーダ27は、送信された高解像度のズーム画像を受信してデコードし、モニタ装置に表示する。これにより、全体画像中の所望の部分に対応する、ボケが発生していない高画質な部分的な画像を見ることができる。
【0065】
なお、他の部分の高画質なズーム画像を見る場合、ユーザは、縮小化された全体画像から所望の部分を再度指定する。これにより、上述と同様に、ユーザに指定された部分的な高画質なズーム画像がサーバ装置1から配信される。そして、サーバ装置1から配信されたズーム画像をデコードすることで、モニタ装置を介して見ることができる。
【0066】
このような第5の実施の形態のストリーミングシステムも、上述の第4の実施の形態と同様に、部分的に高画質化したズーム画像を取り扱うストリーミングシステムを、アダプティブストリーミングによる映像ストリームの切り替えで実現する際に、生成する映像データの組み合わせを減らし応答遅延を減らすことができる他、上述の各実施の形態と同様の効果を得ることができる。
【0067】
なお、第5の実施の形態の場合、例えば横×縦が3840画素×2160画素の広角かつ高解像度の映像ソースを、横×縦を1280画素×720画素に縮小した全体画像表示用のGOPを生成した。そして、第5の実施の形態の場合、横×縦を1280画素×720画素に縮小した全体画像表示用のGOPのIピクチャ(Pピクチャの場合もある)を基準画像として、各トリミング領域のPピクチャをデコードした。
【0068】
しかし、デコード時に基準画像として参照されるIピクチャを含むGOPのみ、元の解像度のままとし、Iピクチャを含むGOPに続く各GOPは、縮小画像を用いて生成したGOPとしてもよい。この場合、Iピクチャを含むGOPを、横×縦が3840画素×2160画素の広角かつ高解像度の映像ソースで生成する。また、横×縦が3840画素×2160画素の映像ソースを、横×縦が1280画素×720画素に縮小した映像ソースで、Iピクチャを含むGOPに続く各トリミング領域のGOPを生成する。
【0069】
これにより、各トリミング領域のGOPの各Pピクチャは、横×縦が3840画素×2160画素の広角かつ高解像度の映像ソースで生成されたIピクチャ(Pピクチャの場合もある)を参照してデコードされる。このため、トリミング領域等の高画質画像(ボケの生じていない画像)を得ることができる。なお、ネットワークの通信帯域に余裕が無いことが明白な場合、Iピクチャを含む最初のGOPは、トリミング領域と同一の一部分のみに対応するGOPを転送するように、クライアント装置2が送信要求、または、サーバ装置1が配信してもよい。
【0070】
最後に、以上説明した各実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な各実施の形態は、その他の様々な形態で実施可能である。また、これら新規な各実施の形態は、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更が可能である。そして、各実施の形態およびその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明に対して均等の範囲に含まれるものである。