(58)【調査した分野】(Int.Cl.,DB名)
前記所定規則は、各個別映像にて時刻の対応するフレーム同士を空間的に合成することで、前記合成映像における当該対応する時刻におけるフレームを形成するものであることを特徴とする請求項1に記載の復号装置。
前記表示部は、前記得られた個別映像の各々の復号フレーム同士を、前記対応する時刻を一致させたうえで、前記メインコンテンツ内において同期して再生される映像として表示することを特徴とする請求項2に記載の復号装置。
前記変換部では、前記得られた合成映像の復号フレームに対して、単一のメモリ空間を使用して、前記複数合成するための所定規則を逆に適用することによって、前記個別映像の各々の復号フレームを得ることを特徴とする請求項1ないし3のいずれかに記載の復号装置。
前記所定規則は、合成映像の各フレーム内の複数の所定領域をそれぞれ個別映像の領域として割り当てるものであり、当該領域間の対応付けは並進、拡大縮小及び回転の少なくとも1つを含んで与えられている請求項1ないし5のいずれかに記載の復号装置。
前記変換部では、メインコンテンツにおける映像以外のコンテンツを描画したうえでさらに、前記個別映像の各々の復号フレームに対して予め定義されている変換処理を適用して変換描画領域として前記個別映像の各々の復号フレームを描画することにより、前記表示部にて表示するメインコンテンツを描画することを特徴とする請求項1ないし8のいずれかに記載の復号装置。
前記変換部では、メインコンテンツにおける映像以外のコンテンツを描画したうえでさらに、単一のメモリ空間を使用して、前記個別映像の各々の復号フレームに対して予め定義されている変換処理を適用して変換描画領域として前記個別映像の各々の復号フレームを描画することにより、前記表示部にて表示するメインコンテンツを描画することを特徴とする請求項1ないし10のいずれかに記載の復号装置。
前記変換部では、メインコンテンツにおける映像以外のコンテンツを描画したうえでさらに、前記表示部が表示を行うために参照するビデオメモリにおいて構成される単一のメモリ空間を使用して、前記個別映像の各々の復号フレームに対して予め定義されている変換処理を適用して変換描画領域として前記個別映像の各々の復号フレームを描画することにより、前記表示部にて表示するメインコンテンツを描画することで、前記個別映像の各々の復号フレームは前記単一のメモリ空間以外の保存機構に保存されることなく、前記描画される変換描画領域として前記表示部に表示されることを特徴とする請求項1ないし11のいずれかに記載の復号装置。
【発明を実施するための形態】
【0015】
図1は、一実施形態に係る配信システムの構成図である。配信システム100は、サーバ20及び複数(1以上の任意のN台)の復号装置10-1,10-2,…,10-Nを備える。サーバ20とそれぞれの復号装置10(以下、このように複数の復号装置10-1,..,10-Nのうちの任意の個別の1台を復号装置10と称するものとする。)とは、ネットワークNを介して相互に通信可能に構成されている。携帯電話端末その他のユーザ端末に相当する復号装置10よりサーバ20へとリクエストを送信することにより、サーバ20から復号装置10へと符号化された映像を含むコンテンツが送信され、復号装置10において当該映像を復号してコンテンツと共に表示することにより、ユーザは映像を含むコンテンツを閲覧することができる。
【0016】
図2は、一実施形態に係る
図1の配信システム100における復号装置10及びサーバ20の相互処理及び内部処理を説明するための機能ブロック図である。図示するように、復号装置10は、第一送信部11、第一受信部12、復号部13、変換部14及び表示部15を備え、サーバ20は、作成部21、符号化部22、第二受信部23及び第二送信部24を備える。
【0017】
図3は、一実施形態に係る
図1及び
図2で示した配信システム100の動作のフローチャートである。
図4は、当該動作において扱われるデータの模式的な一例を、当該動作に沿って[1]〜[4]と分けて示す図である。以下、
図3の各ステップを説明しながら、
図2の機能ブロック図に示した各機能部の処理内容を説明する。当該説明においては適宜、
図4の模式的な例を参照する。
【0018】
ステップS1では、サーバ20において配信用のコンテンツの構築を行ってから、ステップS2へと進む。具体的にはステップS1では、作成部21において管理者等のマニュアル入力等を受け付けることによってメインコンテンツの作成を行うと共に、符号化部22において、当該メインコンテンツ内に配置して表示するための複数の映像を1つの映像として合成したものの符号化を行うことでその符号化情報(符号化データ)を得る。
【0019】
図4の例では、[3]に作成部21の作成するメインコンテンツMCの例が示され、また、[1]及び[2]に当該メインコンテンツMCに対応するものとして符号化部22において符号化される映像を説明するための例が示されている。これらは具体的には以下の通りである。
【0020】
まず、
図4の[3]では、メインコンテンツMCは、左上の点Oを原点としx方向(横方向・右方向)に幅Wを有しy方向(縦方向・下方向)に高さHを有する矩形上の表示領域を備えるものとして作成されている。当該表示領域内においてメインコンテンツMC内には、具体的なコンテンツ内容として、テキスト及び/又は静止画像その他で構成された(例示として4ブロック分の)コンテンツC0,C1,C2及びC3が図示するような所定の矩形範囲内に配置されるものとして作成されている。また、当該表示領域内においてメインコンテンツMCには、複数(例示として3つ)の映像V1,V2,V3(不図示・後述)をそれぞれ表示させるための定義領域TR1,TR2,TR3が、所定の矩形範囲として定義されて作成されている。
【0021】
このように管理者等のマニュアル入力等を受け付けて作成部21において作成されるメインコンテンツは、復号装置10のユーザが閲覧するものとして任意内容且つ任意レイアウト構成のものを作成することができる。例えば、コンテンツC0をユーザが閲覧するニュース情報として作成し、コンテンツC1,C2,C3は
図4の[3]に示すようにそれぞれその近傍上部の定義領域TR1,TR2,TR3に表示される映像V1,V2,V3の内容に関連した情報として作成してよい。例えば、定義領域TR1に表示される映像V1及びその下部のコンテンツC1によってユーザに対する第1の広告表示を形成し、同様に、定義領域TR2に表示される映像V2及びその下部のコンテンツC2によってユーザに対する第2の広告表示を形成し、定義領域TR3に表示される映像V3及びその下部コンテンツC3によってユーザに対する第3の広告表示を形成するようにしてよい。後述するように、本発明によれば当該複数の映像V1〜V3を復号装置10において大きな処理負荷を要することなく同期して再生表示することが可能である。
【0022】
以上のような作成部21において作成するメインコンテンツは例えば、既存技術であるHTML言語において規定される様式に従って記述設定することができ、後述する復号装置10における表示の際には、当該HTML言語を解釈可能な既存のブラウザ技術を用いることができるが、その他の任意の技術によってメインコンテンツの作成・表示を行うようにしてもよい。
【0023】
なお、定義領域TR1,TR2,TR3に関しては、映像V1,V2,V3が当該領域に合致してそれぞれ表示されるために必要となる所定の変換処理の情報(座標変換情報)も対応付けておくことにより、作成部21により当該座標変換情報も含んだものとしてメインコンテンツを作成する。当該座標変換情報及び変換処理については後述のステップS4の説明において詳述する。
【0024】
また、
図4の[1]及び[2]は、符号化部22において符号化される対象としての映像Vを説明するための例を、以上の[3]に対応するものとして示している。映像Vは単独の1個の映像であるが、内容としては映像V1,V2,V3の3つを含むように各時刻フレームにおいて空間的に合成されたものを符号化前の映像データとして管理者等が用意しておき、符号化部22において符号化する。
【0025】
具体的には、
図4の[1]に示すように、映像Vの各フレームFにおいては、当該フレームF内において映像V1,V2,V3を分割して表示するための所定の矩形領域R1,R2,R3がそれぞれ、管理者等の事前設定により与えられている。当該複数の映像を空間的に分割した領域にそれぞれ割りあてることで合成して表示するための事前設定に従うことで、
図4の[2]に示すように、合成されたものとしての映像Vを用意しておくことが可能である。すなわち、合成映像Vは、各時刻t(t=1,2,3,…,L;Lは映像Vの長さ・総フレーム数)のフレームF(t)に関して、領域R1には合成対象の映像V1における時刻tのフレームR1(t)が表示され、領域R2には合成対象の映像V2における時刻tのフレームR2(t)が表示され、領域R3には合成対象の映像V3における時刻tのフレームR3(t)が表示されるようなものとして、3つの映像V1,V2,V3を空間的に合成したものとして用意しておくことができる。
【0026】
すなわち、3つの映像Vi(i=1,2,3)はそれぞれ時刻t(t=1,2,…,L)のフレームがRi(t)(i=1,2,3)として与えられる別内容のものであるが、本発明においてはこれらを各時刻tにおいて所定配置で空間的に合成したものとしてフレームF(t)を定義することで、当該フレームF(t)を時刻tのフレームとして有するような1つの映像Vを、3つの映像Vi(i=1,2,3)を合成した1つの映像として準備することができる。符号化部22においてはこのように準備された映像Vを符号化するが、符号化手法そのものに関しては国際標準規格であるH.265その他の、任意の既存手法を利用してよい。
【0027】
図2の各ステップの説明に戻り、上記のようなステップS1におけるコンテンツ構築(メインコンテンツ作成並びにこれに対応する複数映像の合成映像の用意及びその符号化)を終えるとステップS2へと進む。ステップS2では、当該構築されたコンテンツに対して、ユーザにより復号装置10からサーバ20へと向けたリクエストの送信及びその受信を行ってから、ステップS3へと進む。
【0028】
ステップS2では具体的には、ユーザによるリクエストを復号装置10の第一送信部11より送信し、当該送信されたリクエストをネットワークN(
図1)経由でサーバ20の第二受信部23において受信する。
【0029】
ステップS3では、ステップS2にてリクエストを受け付けたコンテンツをサーバ20から当該リクエストしたユーザの復号装置10へと向けてネットワークN経由で配信してから、ステップS4へと進む。具体的には、サーバ20の第二送信部24において当該コンテンツにおけるメインコンテンツ及び符号化情報(複数動画の合成動画の符号化データ)をそれぞれ作成部21及び符号化部22より受け取ったうえで、第二送信部24から復号装置10の第一受信部12へと当該コンテンツを送信し、第一受信部12において当該コンテンツを受信する。
【0030】
なお、サーバ20の作成部21及び符号化部22では、ステップS1でそれぞれ作成したメインコンテンツ及び符号化情報を保存する機能を有することにより、ステップS3において第二送信部24に対して当該保存してあるメインコンテンツ及び符号化情報を出力することができる。
【0031】
ステップS4では、上記ステップS3により配信されたコンテンツを復号装置10において復号処理等を経てユーザに対して表示したうえで、当該
図3のフローは終了する。具体的にはステップS4では、次の(1)〜(4)の処理により表示が行われる。
【0032】
すなわち、(1)第一受信部12においてステップS3で受信した配信コンテンツのうちメインコンテンツ及び符号化情報をそれぞれ変換部14及び復号部13が取得する。次に、(2)復号部13が当該取得した符号化情報を復号して複数映像V1,V2,V3の合成動画としての映像Vの復号情報を生成し、変換部14へと出力する。当該復号処理は符号化部22の符号化処理の逆の処理として、H.265その他の既存手法を用いることができる。また、当該処理を行う復号部13は復号処理専用のハードウェアデコーダ等によって、あるいは、汎用CPUが復号処理プログラムを読み込んで実行することによって、実現することができる。
【0033】
さらに、(3)変換部14が当該取得したメインコンテンツにおいて、当該出力された映像Vの復号情報に座標変換情報を(前述の合成する際の逆向きで)適用して複数の映像V1,V2,V3の各フレームを得ると共に、各フレームを当該メインコンテンツ内に変換配置することにより、当該メインコンテンツをレンダリングしたものとしての表示情報を生成し、表示部15へと出力する。最後に、(4)表示部15において当該出力された表示情報のユーザに対する表示を行う。
【0034】
図4の[4]には、上記(3)の処理、すなわち、変換部14によってメインコンテンツ内において合成された映像Vの復号情報に座標変換情報を適用することで、映像Vの時刻tのフレームF(t)に対応する表示情報G(t)を生成する処理の例が、前述の
図4の[1]〜[3]に対応するものとして示されている。すなわち、
図4の[4]の表示情報G(t)は、[3]に示すメインコンテンツMCの各コンテンツC0,C1,C2,C3をその設定通りに描画したうえでさらに、定義領域TR1,TR2,TR3に対して合成映像Vの時刻tのフレームF(t)の対応領域R1(t),R2(t),R3(t)を、予め定義されている変換処理を適用したうえで描画することでそれぞれ変換描画領域TG1(t),TG2(t),TG3(t)として描画したものとなっている。
【0035】
ここで、作成部21においてメインコンテンツMCに含まれる情報として予め定義しておき、変換部14によって表示情報G(t)の生成のために適用される座標変換情報とは上記のように、合成映像Vの時刻tのフレームF(t)における合成された個別映像V1,V2,V3の対応領域R1(t),R2(t),R3(t)(すなわち
図4の[1]の領域R1,R2,R3)に当該座標変換を適用することにより、定義領域TR1,TR2,TR3で定義されるメインコンテンツMC内の位置及び形状に整合させて変換描画領域TG1(t),TG2(t),TG3(t)を生成するための情報である。
【0036】
当該座標変換情報INF(i)は一般には、合成映像Vの各時刻tのフレームF(t)内における合成前の個別映像Viに対応する領域Ri(t)ごとに、並進、拡大縮小、回転等の幾何的変換を任意に組み合わせたものとしてメインコンテンツ内で定義しておくことができる。
【0037】
図4の例であれば、合成映像Vの各領域Ri(t)が
図5に示すようなサイズ及び配置で構成されているものとすると、例えば次のような座標変換情報を定義しておき適用することにより、各変換描画領域TGi(t)を生成することができる。ここで、
図5に示すように合成映像Vの各領域Ri(t)は時刻tによらず常にサイズ40×30で構成される領域R1と、サイズ40×70で構成される領域R2と、サイズ130×100で構成される領域R3であり、各領域Ri(t)は
図5に示すような相互配置関係で合成映像Vにおけるサイズ170×100の矩形フレームF(t)内にあるものとする。
【0038】
この場合例えば、サイズ130×100の領域R3(t)に関しては、サイズはそのままで定義領域TR3(サイズ130×100)の位置に並進移動させることで描画領域TG3(t)が生成されるものとして、座標変換情報INF(3)を定義しておくことができる。また例えば、サイズ40×30の領域R1(t)に関しては、サイズを2倍の80×60に拡大したうえで、定義領域TR1(サイズ80×60)の位置に並進移動させることで描画領域TG1(t)が生成されるものとして、座標変換情報INF(1)を定義しておくことができる。さらに例えば、サイズ40×70の領域R2(t)に関しては、時計回りに90°の回転処理を適用してサイズ70×40の領域に変換したうえでさらに、同サイズ70×40のままで定義領域TR2(サイズ70×40)の位置に並進移動させることで描画領域TG2(t)が生成されるものとして、座標変換情報INF(2)を定義しておくことができる。なお、各描画領域TGi(t)の位置を特定するための表示領域G(t)の座標系は
図4の[4]に示すように、[3]のメインコンテンツMC座標系と同様に左上を原点Oとし右に+x軸、下に+y軸を取ればよい。
【0039】
なお、上記の例より明らかなように、メインコンテンツ内で定義される座標変換情報に従う描画で定義領域に描画情報が生成されるため、定義領域の情報は座標変換情報さえ与えれば自動で生成されるものである。従って、メインコンテンツ内で座標変換情報を定義しておけば、定義領域の情報は不要である。(
図4の[3]の例では説明の便宜上、定義領域TR1,TR2,TR3があるものとしたが、これらは座標変換情報INF(1),INF(2),INF(3)を与えることで自ずと定まるものである。)
【0040】
また、座標変換情報は、上記
図4及び
図5の例におけるフレームF内の領域R1,R2,R3の区別(すなわち、符号化部22にて符号化される対象となった合成映像における各個別動画の領域の区別)の情報も含むものとして、作成部21において作成し変換部14によって適用する。すなわち、座標変換情報INF(i)とは、フレームF内に合成されている個別動画Viに対応する領域Riを特定する情報及び当該領域Riにどのような変換を施すことで表示対象としての描画領域TGiが生成されるかを特定する情報であり、フレームFの時刻tによらず固定された情報として定義しておいてもよいし、時刻tに依存する情報として定義しておいてもよい。
【0041】
本発明においては特に、複数の映像Vi(i=1,2,…)を各フレームFにおいて空間的に合成したものとして単一の映像Vを作成して符号化部22において符号化し、当該符号化データに対して単一の映像の復号処理を復号部13において適用し、変換部14によって座標変換情報INF(i)を適用することで当初の個別の映像Viの描画結果をそれぞれ得ている。従って、本発明による効果として、復号部13による復号処理は1個の映像Vのみを対象とするため、従来技術のように複数の映像を個別に復号する必要がなく、処理負荷を抑制することができ、当該抑制された復号処理負荷のもとで、一般に処理負荷の低い座標変換情報INF(i)の適用を行うことにより、実質的に複数の映像Vi(i=1,2,…)の復号・個別表示を低負荷で実現できる。また、映像Vの各時刻tのフレームにおいて座標変換情報INF(i)を適用することから、その実内容が互いに異なる(異なっていてもよい)複数の映像Vi(i=1,2,…)を再生表示するに際して当該時刻tを映像同士の間で共通のものとすることで、複数映像Viを相互に同期して再生して表示することも可能となる。
【0042】
以下、(1)〜(11)と分けて、本発明における説明上の補足ないし追加を行う。
【0043】
(1)作成部21において設定しておき変換部14で適用される座標変換情報に関しては、
図4及び
図5の例でも説明した通り、一実施形態では、合成映像Vの各時刻tのフレームF(t)に対して、合成前の個別映像Viに対応する領域Ri(t)を特定する情報と、当該領域Ri(t)に対してどのような座標変換を適用することで表示部15による表示対象となる領域TGi(t)を生成するか、という内容で構成されている。
【0044】
ここで、より明確な理解を得るという観点から、座標変換情報の一例の追加説明を行う。
図6は当該追加の一例を説明するための図である。
図6の例では、左側に示すように、合成映像Vの各フレームFはサイズw×hであり、横方向にn等分、縦方向にm等分することでそれぞれがサイズw/n×h/mである合計n×m個の個別映像V[i,j]が合成されているものとする。ここで、[i,j]のペアによって図示するようにフレームF内における右方向(+x方向)にi番目(i=1,2,…,n)、下方向(+y方向)にj番目(j=1,2,…,m)の位置にある個別映像V[i,j]を識別するものとする。
【0045】
この場合、フレームF内の個別映像V[i,j]の占める領域に対して適用される座標変換情報INF[i,j]の一例として、
図6の左側に示す表示部15での時刻tにおける表示情報G(t)へと並進のみを行うものは、以下のように、フレームFの個別映像V[i,j]の各位置(x_i,y_j)の画素値P(x_i, y_j)の値をそのまま表示情報G(t)の位置(X_i, Y_j)における画素値P(X_i, Y_j)としてコピーすることとして表現することができる。
P(X_i, Y_j) = P(x_i, y_j) …(1)
X_i = x_i - w*(i-1)/n + RX_i …(2)
Y_j = y_j - h*(j-1)/m + RY_j …(3)
【0046】
上記の式(1)〜(3)において、各位置(x_i,y_j)は
図6に示されるようなフレームFの個別映像V[i,j]の位置であり、具体的には図示されるようにフレームFの左上頂点を原点O1として右方向に+x軸、下方向に+y軸を定める座標系において、以下の範囲にあるものである。
w*(i-1)/n≦x_i<w*i/n …(4)
h*(j-1)/m≦y_j<h*j/m …(5)
また、各位置(X_i, Y_j)は個別映像V[i,j]の画像の、表示情報G(t)へのコピー先の各画素位置であり、上記の式(2),(3)で示されるように所定点(RX_i, RY_j)をRX(
図6参照)として個別映像V[i,j]と同一形状を有する
図6の領域TG[i,j](t)内の各位置である。表示情報G(t)の座標系も図示する通り、左上頂点を原点O2として右方向に+X軸、下方向に+Y軸を定めるものである。
【0047】
以上、式(1)〜(3)の例は合成映像Vを同一サイズのn×m個の個別映像V[i,j]を合成したものとして作成し、座標変換情報INF[i,j]としては表示情報G(t)において左上位置が所定点(RX_i, RY_j)となるよう並進移動のみを行う例であり、合成映像Vから所定範囲をいわば切り出すのみという簡素な座標変換情報の例である。本発明においてはこのように、座標系の変換という簡素な処理の適用により、実質的な内容としては独立した複数の映像コンテンツである個別映像V[i,j]を従来技術のように別のメモリ空間に分離・保持して処理する必要なく、単一のメモリ空間を使用して処理可能であり、省メモリ化の効果が得られる。
【0048】
なお、前述の通り、当該切り出す(所定範囲を並進移動する)のみならず、回転や拡大等の操作を加えたより複雑なものとして座標変換情報を構成することも可能であり、このような場合でも上記と同様の省メモリ化の効果が得られる。
【0049】
(2)座標変換情報の変形例として、上記の(1)の例における並進移動の情報も省略して、合成映像Vの各フレームFにおいて各映像Vi(i=1,2,…)がどのように空間的に合成されているかのみを、複数映像を合成するための所定規則として定義しておくようにしてもよい。この場合、変換部14では合成映像Vに座標変換情報(合成のための所定規則)を合成の際の逆方向に適用することで、各映像Viを個別のものとして認識して出力することができ、表示部15で表示するための各映像Viのレイアウト指定(上記(1)の例における並進移動の指定)については、不定のものとしてもよいし、復号装置10を利用するユーザが所望の形で与えるようにすればよい。
【0050】
例えば、
図6の例であれば個別映像V[i,j]の表示位置を指定する頂点P[i,j]は、ユーザによってマウスポインタその他のインタフェースで自由に指定できるようにして、各映像Viの表示位置を定めるようにしてもよい。この場合、表示情報G(t)としては
図4の[4]で例示したようなhtml等による固定レイアウトではなく、ユーザ操作によって自由に配置できるようにしてよい。例えば、計算機オペレーティングシステムにおけるグラフィカルユーザインタフェースとして利用されている周知の複数のウィンドウ領域に個別映像V[i,j]をそれぞれ表示するようにして、当該個別映像V[i,j]が表示されている各ウィンドウはユーザ操作により自由に移動や拡大縮小が可能なように表示情報G(t)を構成してよい。
【0051】
(3)上記の複数映像を合成するための所定規則に関しては、合成映像の各フレームFにて各映像Vi(i=1,2,…)がどのように空間的に合成されているかを特定するものであれば、任意の所定規則を作成部21において定めておくことができる。すなわち、合成映像Vの各時刻tのフレームF(t)に属する各位置の画素が、いずれの映像Viに属するものであり、当該映像Viの対応時刻tのフレームにおけるいずれの位置の画素に対応するものであるか、を特定するものであれば、任意の所定規則を設定しておくことができる。例えば、
図4〜6等の例では、フレーム内の矩形状の連続領域が各映像Vi(i=1,2,…)の構成フレームになっているという制限があったが、このような制限のない所定規則を設定してもよい。
【0052】
例えば、矩形形状という制限を設けないようにしてもよい。すなわち、合成映像の各フレームF内が矩形ではない形状の領域(台形等や何らかのシルエット形状等の任意形状)も含んで各映像Vi(i=1,2,…)の領域として分割されており、当該任意形状の領域がそのまま各映像Viの形状を構成しているように設定してもよいし、当該任意形状の領域をさらに変形(あるいは画素を並べ替え)することで矩形状又はその他の任意形状の各映像Vi(i=1,2,…)の領域が得られるように設定してもよい。当該変形(あるいは画素の並び替え)の情報も、所定規則に含めておくことができる。
【0053】
また、合成映像Vの各フレームF内に合成される各映像Viの領域について、連続領域という制限を設けないようにしてもよい。例えば、フレーム内の各画素位置を整数による格子点(i,j)で指定するものとして、i+jの和を所定数Mで割った際の剰余によって、当該格子点(i,j)の位置にある画素がM個の合成対象の各映像Vi(表示する観点からは、当該映像は連続領域であることが好ましい)のいずれに属するかを設定するようにしてもよい。同様に、垂直方向位置iのMによる剰余や、水平方向位置jのMによる剰余で当該位置にある画素がM個の合成画像のいずれに属するかを設定するようにしてもよい。これらの例においては、Mによる剰余でいずれの映像Viに属するかを特定した後、所定規則の並び(又は並び替え)を施すことで映像Viのフレーム形状及び画素配置が再現されるように設定しておけばよい。
【0054】
同様に、合成映像Vの各フレームF内には
図6の左側で示したようなn×mの分割ブロックの映像を配置しておき、当該分割ブロックから所定の複数を選んで所定配置で組み合わせることで各映像Viが再現されるように設定しておいてもよい。
【0055】
以上のような任意の所定規則を設定しておき利用する場合も、
図6で説明したような座標系の変換により所定領域を切り出すことで個別映像V[i,j]を再現する場合と同様に、単一のメモリ空間を使用して処理可能であり、複数の個別映像をそれぞれ独立して復号してから表示する従来技術と比べて、省メモリ化の効果を得ることができる。
【0056】
(4)上記の(3)における複数映像を合成するための所定規則は、空間的なものであったが、別実施形態として、時間的な所定規則を用いるようにしてよい。この場合、合成映像Vの各フレームF(t)の時刻tによって、当該フレームF(t)が個別映像Vi(i=1,2,…)のいずれに対応するものであるかが決定されるように所定規則を設定しておき、表示部15においては個別映像Viを表示するに際して、当該時刻tの進行順に映像Viに対応するものとして決定されたフレームを順次表示することで、映像Viを再現して再生・表示することができる。
【0057】
例えば、合成映像VにM個の個別映像Vi(i=1,2,...,M)を時間的に合成する場合、合成映像VのフレームF(t)の時刻t(t=1,2,3,…)をMで割った剰余がiである場合、当該時刻tのフレームF(t)は個別映像Viの「tをMで割った商」番目の時刻のフレームであるものと設定することができる。(剰余0は個別映像VMに対応させればよい。)複数の個別映像Viを同時再生して表示する場合は、当該「tをMで割った商」を共通時刻として採用して互いに同期させながら再生・表示すればよい。さらに、空間的な所定規則と時間的な所定規則とを組み合わせて設定してもよい。
【0058】
(5)以上の説明では複数映像Vi(i=1,2,…)を合成する所定規則において、各映像Viはそれぞれ単独で意味をなす(ユーザによる閲覧対象となる実内容を有する)個別コンテンツとしての映像であるものとして説明した。例えば、映像V1は商品1の広告であり、映像V2は商品2の広告であり、といったような個別コンテンツであるものとした。
【0059】
別の一実施形態として、複数映像Vi(i=1,2,…)の全部または任意の一部が、所定の編集規則で組み合わせることにより個別コンテンツが形成されるようにしておいてもよい。つまり、当該一部の映像Viは、必ずしも単独で意味をなすものである必要はなく、当該編集して組み合わせられるための部品の映像として構成されていてもよい。
【0060】
このような場合、当該所定の編集規則の情報を以上説明したような合成する所定規則の情報に対して作成部21において追加で設定しておくようにし、変換部14で合成所定規則を合成の際の逆方向の形で適用して個別映像Viを再現すると共に、当該所定の編集規則による編集処理の適用で、全部または一部の映像Viを組み合わせた個別コンテンツを生成すればよい。
【0061】
図7は、当該編集規則を適用する例を示す図であり、個別映像ViとしてはV11,V12,V13(不図示)の3種類が合成映像Vに合成されており、当該3種類の個別映像V11,V12,V13の全部が編集処理に利用される部品としての映像である場合の例を示す図である。個別映像V11,V12,V13の時刻tのフレームがそれぞれ図示するF11(t),F12(t),F13(t)であり、F11(t)には背景としての地面及び空が、F12(t)には家屋及び人物が、F13(t)には雲及び人物が映っている。ここで、編集処理として各フレームをレイヤとして透過処理等を用いて重複することで、編集映像としての個別映像V10が生成される場合の例が
図7であり、当該個別映像V10の時刻tのフレームがフレームF10(t)として、F11(t)を背景にF12(t)の家屋が映り、さらにこれらの全面にF13(t)の雲が半透明の状態で映っている(人物は映っていない)ものとして図示されている。当該編集は以下のようにして可能となる。
【0062】
第一に、当該レイヤ重複を実施するために、3つの個別映像V11,V12,V13にはそれぞれマスク情報(各画素位置の画素について透過度(アルファ値)を対応付けた情報)を対応付けておくものとする。
図7では、各個別映像の時刻tのフレームF11(t),F12(t),F13(t)にそれぞれその右側に示されるようなマスク情報M11(t),M12(t),M13(t)が対応付けられている。当該図示するマスク情報は、白色が透過度0%(完全不透明状態)を、黒色が透過度100%(完全透明状態)を意味し、グレー色はその中間の透過度を意味するものとする。従って、マスク情報M11(t)はフレームF11(t)の全体を完全不透明状態(通常の画像の状態)として利用することを意味し、マスク情報M12(t)はフレームF12(t)の家屋の領域の部分だけを完全不透明状態として利用し、人物を含む他の領域は完全透明状態として利用することを意味し、マスク情報M13(t)はフレームF13(t)の雲の領域の部分だけを所定パーセントの透明状態として利用し、人物を含む他の領域は完全透明状態として利用することを意味している。
【0063】
第二に、当該レイヤ重複を実施するために、上記のようにマスク情報が設定された3つの個別映像V11,V12,V13について、当該マスク情報を反映したうえでどの順番でレイヤ重複を実施して最終的な編集映像V10を得るかという、順番の情報を設定しておくものとする。
図7の例では、映像V11が最背面、映像V12が中間面、映像V13が最前面というレイヤ順を設定しておく。
【0064】
以上のように、
図7の例では、個別映像V11,V12,V13に「透過度映像」(透過度画像を映像フレーム順に並べた映像)としてのマスク情報を対応付けて設定しておき、且つ、当該個別映像同士を重複する際のレイヤの前後関係を設定しておくことで、時刻tのフレームをF10(t)として示すような編集映像V10を生成可能である。
図7の例では3つの映像を重ね合わせたが、任意数の映像を任意の順番で重ね合わせるよう設定することが可能である。重ね合わせのレイヤ順序は時間変化するものとして設定してもよい。
【0065】
なお、透過度映像については、
図7にも例示するように透過度の値が各画素位置にマッピングされた画像で構成された映像に相当するものであるため、通常の映像と同様に、あるいは、対応する映像の追加チャネルを構成しているものとして(例えば、映像のRGBの3チャネルに対して4番目の「透過度チャネル」が追加されているものとして)、H.265等の既存手法により符号化部22において符号化し、復号部13において復号することができる。ただし、作成部21にて設定する所定規則において、合成映像Vのどの領域がどの個別映像Vi(i=1,2,…)の領域Riであり、且つ、合成映像Vのどの領域が当該領域Riに対応する形で個別映像Viの透過度映像を与えている領域TPRiであるか、ということを特定しておく必要がある。(透過度チャネルを用いる場合も同様に、当該チャネル情報を特定しておく必要がある。)
【0066】
例えば
図7の例では、個別映像V11,V12,V13のフレームF11(t),F12(t),F13(t)が3つのブロック状の領域として縦に並べられ、その右側に同様に対応するマスク情報M11(t),M12(t),M13(t)が3つのブロック状の領域として縦に並べられているが、これらをそのまま結合して、縦方向に3ブロック×横方向に2ブロックの6ブロックの領域で合成映像Vの各フレームを形成し、各ブロックが当該
図6に示すような個別映像又はそのマスク情報に対応している旨を、作成部21において所定規則として設定しておくことができる。(また、個別映像V11,V12,V13による1×3ブロック領域で合成映像Vが形成されており、マスク情報は各映像に追加チャネルとして与えられている旨を所定規則として設定しておくこともできる。)
【0067】
(6)以上の説明では、複数の個別映像を合成する所定規則は管理者等によって定められサーバ20の作成部21に入力される所与のものとしていた。当該所定規則は、管理者等によって完全にマニュアルで設定する他にも、合成対象となる複数の個別映像のそれぞれのサイズの情報のみを管理者等の入力によってサーバ20に与えたうえで、複数映像を合成するための配置として最適と判定されるものをサーバ20において自動決定し、所定規則を当該最適配置と判定されたものに即したものとして自動決定するようにしてもよい。
【0068】
具体的には例えば、複数映像の形状は全て矩形であるものとしてそのサイズ情報をサーバ20に入力し、サーバ20において周知の長方形(矩形)詰め込み問題を解く所定のアルゴリズムによる計算を行うことにより、余白が最小(矩形をなす合成映像の全体面積が最小)と判定される矩形の配置を最適配置として決定し、当該最適配置を所定配置として採用して複数映像を合成した合成映像を生成してから符号化部22による符号化を行うようにしてもよい。
【0069】
例えば、
図5に示したような前述の通りの具体的なサイズを有する領域R1,R2,R3に関して、
図5に示される配置は当該3つの個別映像V1,V2,V3を余白が全く存在しない状態でサイズ170×100の矩形に詰め込んだ状態となっており、結果的に最適配置となっている。
図8は、
図5の具体的なサイズと同サイズの領域R1,R2,R3を
図5の最適配置とは異なる配置で並べた一例を示す図であり、斜線で示すようにサイズ40×10の領域RN1及びサイズ20×40の領域RN2が余白として存在し、
図5と比べて最適とはいえない配置(全体のサイズは130×140であり、最小面積である
図5よりも大きい)となっているが、サーバ20において上記のように最適配置の計算を行うことで、
図8のような配置ではなく
図5の配置を自動決定して採用することができる。
【0070】
(7)合成映像を構成するために個々の個別映像を所定配置で組み合わせる際の管理者等のポリシーとして、各映像の重要度、優先度、難易度その他の属性に応じて異なる形状及び/またはサイズを採用するようにしてよい。例えば、各映像が所定ユーザに対する各内容の広告映像である場合、広告主の広告料が重要度に比例するものとして、当該重要度に応じたサイズの個別映像(広告料が高いほどサイズが大きい)を採用してよく、当該所定ユーザの属性情報(性別、職業、年齢その他)との一致度が高い属性を有する個別映像ほど優先度が高いものとして、当該優先度に応じたサイズの個別映像(属性が一致するほどサイズが大きい)を採用してよい。また、各映像の難易度を、個別映像として互いに同条件(ビットレート等の条件)で符号化した際の符号化データのサイズ(個別映像符号化データファイルのサイズ)として数値化し、合成の際は合成対象となる各映像のビットレートを当該難易度で規格化することで、合成映像内において各映像が占めていると考えられるデータサイズが均一化されるようにしてもよい。
【0071】
なお、合成対象の所定数Mの個別映像Vi(i=1,2,…,M)を用意しておいたうえで、各映像Viの属性ATiを与える(すなわち、作成部21において管理者等が入力しておく)ことにより、合成映像を構成するための所定規則を自動生成し、当該所定規則に従って実際に符号化部22による符号化が行われるようにしてもよい。この場合、各映像Viの各属性ATi(i=1,2,…,M)を入力として合成映像Vを構成する所定規則が自動出力されるように、ルールベース等の所定の対応規則を設けておき、当該対応規則を参照して自動出力を実施すればよい。
【0072】
例えば、M=3個の個別映像V1,V2,V3において属性として「重要度」のみを利用し、各重要度(属性)がAT1=「小」、AT2=「中」、AT3=「大」である場合、前述の
図5に示すような所定規則で領域R1,R2,R3を配置するといったような対応規則を設けておくことができる。この場合、各個別映像V3,V2,V1は重要度「大」、「中」、「小」に応じて
図5の領域R3,R2,R1の解像度に対応するものを設けておくようにしてもよいし、領域R3に対応する最高解像度の映像のみを設けておき領域R2,R1が適用される場合には解像度変換するようにしてもよい。
【0073】
(8)
図9は、復号装置10又はサーバ20を実現することのできる機器のハードウェア構成の一例を示す図である。当該示す機器1の構成の全部または一部として復号装置10及びサーバ20をそれぞれ実現することができるが、復号装置10及びサーバ20ではその他のハードウェアを有していてもよい。
【0074】
機器1は、CPU(中央演算処理装置)2、主記憶装置3、補助記憶装置4、入力インタフェース5、通信インタフェース6、ビデオメモリ7、ディスプレイ8、専用エンコーダ91、専用デコーダ92、バスB1及び専用バスB2を備える。バスB1は各部2〜7,91,92間で相互にデータ通信を行うことを可能とし、専用バスB2はディスプレイ8及びビデオメモリ7間のデータ通信を可能とする。
【0075】
CPU2は、RAM等で構成された主記憶装置3をワークエリアと利用して種々の制御処理を実行する。補助記憶装置4はフラッシュメモリ等のROM及び/又はハードディスク等で構成され、CPU2が読み込んで制御処理を実行するためのプログラム等を記憶する。補助記憶装置4はまた、CPU2の処理により得られたデータを長期保存する際の記憶領域を提供したり、主記憶装置3にキャッシュ領域を提供したり等の周知の処理を行う。
【0076】
入力インタフェース5は、マウス、キーボード、キーパッド、タッチパネルその他のユーザが機器1への指示入力を行うための1つ以上のインタフェースである。例えば、
図2のサーバの作成部21で管理者等がメインコンテンツを作成する際は、マウス及びキーボードとして構成された入力インタフェース5を利用してメインコンテンツを直接入力してよいし、当該入力インタフェース5を利用して当該メインコンテンツの所在(URL等)を入力することで通信インタフェース6を介してメインコンテンツを入手してもよい。通信インタフェース6は、機器1がネットワークを経由して通信を行うためのインタフェースを提供する。
【0077】
ビデオメモリ7はディスプレイ8が表示するための情報(
図4の表示情報G(t)等)を記憶し、ディスプレイ8は専用バスB2を介して当該記憶されている情報を取得し、表示を行う。当該ハードウェア(液晶、有機ELその他既存の表示機能を有する機器で実現できる)としてのディスプレイ8によって表示部15が実現される。
【0078】
なお、CPU2によって実現可能な変換部14で得られた個別映像Vi(i=1,2,…)の各々の復号フレームの情報は、その他の保存機構に保存されることなく直接、バスB1を経由して表示部15を実現するディスプレイ8が表示を行うために参照するメモリとしての当該ビデオメモリ7へと転送されるようにしてよい。すなわち、
図6を参照して説明した変換部14による座標系の変換やその他一般の所定規則による個別映像の復号フレームの取得結果は、このようにしてビデオメモリ7へと直接に転送されるようにしてよい。ビデオメモリ7はディスプレイ8で表示を行うに際して、周知のバッファ機能を提供してもよい。
【0079】
専用エンコーダ91は符号化処理の専用回路として構成されており、サーバ20の符号化部22を実現することができるが、符号化部22はCPU2が符号化プログラムを読み込んで実行することによって実現されてもよい。専用デコーダ92は復号処理の専用回路として構成されており、復号装置10の復号部13を実現することができるが、復号部13はCPU2が復号プログラムを読み込んで実行することによって実現されてもよい。また、符号化部22及び復号部13に関して、CPU2と専用エンコーダ91及び専用デコーダ92のそれぞれとで機能分担して実現されてもよい。
【0080】
その他、符号化部22及び復号部13以外の
図2のサーバ20及び復号装置10の各部はそれぞれ、CPU2が所定プログラムを読み込んで対応する処理を(適宜、その他のハードウェアと連携しながら)実施することで実現できる。
【0081】
(9)
図3のフローチャートで示した動作は一例に過ぎず、種々の変形が可能である。例えば、ステップS2におけるユーザ側の復号装置10からのリクエスト送信は省略して、サーバ20側でプッシュ方式等で自動的にメインコンテンツ及び符号化情報を送信してもよい。ステップS3の配信及びステップS4の復号・表示は並行して実施することで、ストリーミング形式でリアルタイムに配信及び復号・表示を実施してもよいし、ステップS3でメインコンテンツ及び符号化情報を全て配信し終わった後に、復号装置10に当該保存されているメインコンテンツ及び符号化情報を対象としてステップS4を実施してもよい。また前述の通り、htmlファイル等で与えられるメインコンテンツに関しては省略して、符号化情報において複数の個別映像が合成されている所定規則のみが復号装置10に送信されるようにしてもよい。
【0082】
(10)
図3のフローに従って配信される、
図4等を例示として参照して説明したメインコンテンツ及び対応する合成映像については、復号装置10のユーザからのリクエストに応じたものとすることができる。このため、メインコンテンツ及び対応する合成映像に関して、想定されるリクエスト等に応じた複数種類のものをサーバ20(作成部21及び符号化部22)において予め用意して保存しておき、ユーザリクエストの内容をサーバ20において解析したうえで、当該ユーザの復号装置10へ向けて配信すべきメインコンテンツ及び合成映像を保存されている中から検索し(かつ、適切な配置の合成映像の符号化データが存在しない場合はその場で符号化部22において符号化し)、配信を実施するようにしてよい。
【0083】
すなわち、
図3のフローの変形例として、ステップS1における配信コンテンツ(メインコンテンツ及び符号化された合成映像)の構築は、想定される各種のリクエスト(ステップS2のリクエスト)に応じた複数のものを構築しておき、ステップS3における配信は、ステップS2で実際に受信したリクエストや補足(7)にて前述したユーザ属性等に応じたものを配信するようにしてもよい。
【0084】
図10は、上記の
図3のフローの変形例を実施することができる、一実施形態に係る配信システム100の復号装置10及びサーバ20の機能ブロック図である。
図10の構成においては、
図2の一実施形態で示した構成との相違点として、サーバ20が追加構成として保存部25及び検索部26を備えているが、その他の各部の動作については以下説明する以外は
図2の構成と同様であるため、重複した説明は省略する。
【0085】
図10の構成では、
図3のステップS1におけるコンテンツ構築は、作成部21及び符号化部22が、想定されるリクエスト等に応じた複数のメインコンテンツの作成及び対応する合成映像の符号化を行っておき、当該想定されるリクエストの情報を紐付けたうえで、保存部25へと保存する。また、ステップS2において、復号装置10の第一送信部11から送信されたリクエストはサーバ20の第二受信部23において受信されたうえでさらに、検索部26へと送られる。
【0086】
さらに、ステップS3におけるコンテンツ配信のために、検索部26はステップS2で受信したリクエストに応じたメインコンテンツ及び符号化情報を、保存部25を参照して検索して第二送信部24へと出力する。この際、補足(7)で前述したようにユーザ属性(リクエストの情報内にユーザ属性が含まれるものとする)に応じた所定配置で合成映像を生成する場合等であって、当該合成映像に対応した符号化情報が保存部25に保存されていない場合(ステップS1において対応する符号化情報が生成されていない場合)は、検索部26より符号化部22へと対応する合成映像を符号化するよう命令を送り、符号化部22において対応する符号化情報を生成して保存部25に保存したうえで、検索部26で取得して第二送信部24に出力すればよい。第二送信部24では当該検索し取得されたメインコンテンツ及び符号化情報を復号装置10の第一受信部12へ向けて送信する。ステップS4における表示は前述と同様である。
【0087】
なお、リクエスト情報の具体的な構成並びにメインコンテンツ及び符号化情報とリクエスト情報との対応付けは、配信システム100の具体的な用途等に応じて管理者等が所望の手法で定義しておいたものを利用すればよい。例えばリクエスト情報はURLを含んで構成し、当該URLに一意に対応するメインコンテンツ及び符号化情報を用意しておいてもよいし、当該URLにはメインコンテンツのみが一意で対応し、符号化情報についてはさらに、リクエスト情報に含まれるユーザ属性等に応じて定まるものとしてもよい。
【0088】
(11)サーバ20に関しては、
図2の各部21,22,23,24の全機能が単一のサーバに集約されたものとして説明したが、その任意の一部分を複数のサーバに分けて実現するようにしてもよい。さらに
図10におけるサーバ20の追加構成の各部25,26についても同様である。復号装置10についても同様に、各部11,12,13,14,15の全機能のうち、その任意の一部分の機能を複数の端末に分けて実現するようにしてもよい。