JP2008079061A - 画像ストリーミングシステム - Google Patents
画像ストリーミングシステム Download PDFInfo
- Publication number
- JP2008079061A JP2008079061A JP2006256666A JP2006256666A JP2008079061A JP 2008079061 A JP2008079061 A JP 2008079061A JP 2006256666 A JP2006256666 A JP 2006256666A JP 2006256666 A JP2006256666 A JP 2006256666A JP 2008079061 A JP2008079061 A JP 2008079061A
- Authority
- JP
- Japan
- Prior art keywords
- encoded data
- frame
- header
- streaming
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】画像データをスムーズにストリーミングする画像ストリーミングシステムを得ることを目的とする。
【解決手段】送信サーバから受信クライアントへ画像データをストリーミングする画像ストリーミングシステムにおいて、送信サーバ2は、フレーム内符号化データおよびフレーム間予測符号化データの画像データを生成する動画像符号化器22と、生成した画像データを受信クライアント3へストリーミングするとともに受信クライアント3へストリーミングする画像データのうちフレーム内符号化データを記憶しておくサーバ制御部24と、を備え、サーバ制御部24は、自サーバと既に接続中の受信クライアントへストリーミングするデータがフレーム内符号化データ以外のタイミングである場合、記憶しておいたフレーム内符号化データを用いて新たな受信クライアントへのストリーミングを開始する。
【選択図】図2
【解決手段】送信サーバから受信クライアントへ画像データをストリーミングする画像ストリーミングシステムにおいて、送信サーバ2は、フレーム内符号化データおよびフレーム間予測符号化データの画像データを生成する動画像符号化器22と、生成した画像データを受信クライアント3へストリーミングするとともに受信クライアント3へストリーミングする画像データのうちフレーム内符号化データを記憶しておくサーバ制御部24と、を備え、サーバ制御部24は、自サーバと既に接続中の受信クライアントへストリーミングするデータがフレーム内符号化データ以外のタイミングである場合、記憶しておいたフレーム内符号化データを用いて新たな受信クライアントへのストリーミングを開始する。
【選択図】図2
Description
本発明は圧縮符号化された画像を送信サーバから受信クライアントへストリーミングする画像ストリーミングシステムに関するものである。
近年、インターネット、イントラネット、携帯電話網等のネットワークの広帯域化に伴って、音声や画像をリアルタイムに通信できる環境が整いつつある。例えば、圧縮符号化された画像をストリーミングするストリーミングシステム(画像ストリーミングシステム)では、送信サーバから送出される画像データがネットワークを介して受信クライアントへストリーミングされる。
従来の画像ストリーミングシステムについて、図11〜図14を用いて説明する。図11は、従来の画像ストリーミングの第1例を説明するための図であり、図12は、従来の画像ストリーミングの第1例の処理手順を示すフローチャートであり、図13は、従来の画像ストリーミングの第2例を説明するための図であり、図14は、従来の画像ストリーミングの第2例の処理手順を示すフローチャートである。なお、図12および図14では、従来の送信サーバにおける動画像ストリーミング制御(動画像ストリーミング制御)の処理手順を示している。
まず、従来の画像ストリーミングとして、接続中の受信クライアントへの動画像ストリーミング制御(第1例)について説明する。図12に示すように、画像ストリーミングシステムの送信サーバは、まずカメラ等からの画像入力処理を行う(S50)。そして、送信サーバは受信クライアントから新規の配信要求(新規配信要求)を受けたか否かを判断する(S51)。
受信クライアントから新規配信要求を受け付けていない場合(S51、NO)、送信サーバは、キーフレームを送出(ストリーミング)するか否かを判断する(S52)。
キーフレームを送出しないと判断した場合は(S52、NO)、フレーム間予測符号化(インター符号化、又は動き補償予測符号化)処理を行う(S53)。一方、キーフレームを送出すると判断した場合は(S52、YES)、フレーム内符号化(イントラ符号化)処理を行う(S54)。
S54又はS53の処理の後、動画像符号化データはサーバ処理(動画像データをネットワークを介して受信クライアントへストリーミング)される(S55)。
ネットワークへのストリーミングの後、再度カメラ等からの画像入力処理が行われ(S50)、前述した一連の処理(S50〜S55)が連続して繰り返し実行される。これにより、送信サーバから受信クライアントへのストリーミングが継続される。なお、S50に示す画像入力処理、S53、S54に示す符号化処理、S55に示すサーバ処理は、送信サーバ内で並列処理される場合もある。
ここで、先述したフレーム内符号化とフレーム間予測符号化及びキーフレームについて説明する。例えば、MPEG−4(Moving Picture Experts Group phase 4)に代表されるように、動画像の圧縮符号化では一般的にフレーム内符号化とフレーム間予測符号化が利用されている。フレーム内符号化は、入力された画像データを複数のブロックに分割し、全てのブロックデータを離散コサイン変換(DCT)、量子化、エントロピー符号化等を行い、圧縮効率を高めるものである。
フレーム間予測符号化は、フレーム内符号化よりも更に圧縮効率を高めるために、動画像の現在のフレームとその直前のフレームは類似しているという性質を利用し、入力画像と予測画像の差分データを符号化する方式である。フレーム間予測符号化を用いると、予測による符号化であるため圧縮効率は良いものの、実際の入力画像との誤差が受信クライアントで徐々に蓄積される。この不具合を避けるために、定期的にフレーム内符号化を行うことが一般的手法である。この定期的に実施するフレーム内符号化で生成される符号化データを、先述したキーフレームと呼ぶ。
送信サーバへ接続後の受信クライアントにおいて画像表示を開始するためには、差分データを符号化したフレーム間予測符号化データ(Pフレーム)ではなく、キーフレームである全てのブロックデータを符号化したフレーム内符号化データ(Iフレーム)を受信する必要がある。送信サーバは、キーフレームを受信することにより、以降はフレーム間予測符号化データの受信により画像表示を更新できることとなる。
ここで動画像ストリーミング制御中に新規に受信クライアントが接続した場合の動作について説明する。接続中の受信クライアント(既存クライアント)へのストリーミング中に、新規に接続した受信クライアント(新規クライアント)が存在する場合は、S51の処理において新規配信要求があると判断し、新規配信識別の設定(新たな受信クライアントと接続を行なうための設定)を実行する(S56)。
そして、新規配信識別を設定した後、送信サーバは、これから送出するデータがキーフレームであるか否かを判断する(S52)。送信サーバは、フレーム間予測符号化処理(S53)またはフレーム内符号化処理(S54)の何れかを実行した後、サーバ処理(S55)を行う。
このS55のサーバ処理では、S53又はS54の処理において生成した符号化データを既存クライアントへストリーミングする。さらに、新規配信識別が設定されていてかつS54の処理でフレーム内符号化データを生成している場合に、新規クライアントへストリーミングを開始するとともに新規配信識別を解除する。
図11では従来の送信サーバにおける動画像ストリーミングのフレーム構成の第1例を示している。図12に示した処理の場合、送信サーバからネットワークへは、例えば図11に示した動画像データが送出される。図11に示すように、既存クライアントへはPフレーム50y、Pフレーム50z、Iフレーム51、Pフレーム51a、Pフレーム51bと順次ストリーミングを行っている。なお、Iフレームは、フレーム内符号化された動画像データであり、Pフレームは、フレーム間予測符号化された動画像データである。
ここで、図12のフローチャートで示した新規配信要求のタイミングで新規クライアントが接続すると、既存クライアントへはPフレーム51bをストリーミングしており、その後もPフレーム51c、Pフレーム51dと順次ストリーミングを続ける。
この期間中、図12のS56の処理で説明した新規配信識別は設定されているが、S55のサーバ処理で既存クライアントへはストリーミング(フレーム間予測符号化データ)しているものの新規クライアントへのストリーミングを開始していない状態である。
既存クライアントへのストリーミングは継続して実行されているが、Iフレーム52を既存クライアントへストリーミングする際に、新規クライアントへもIフレーム52のストリーミングを開始する。そして、Iフレーム52以降にPフレーム52a、Pフレーム52bと順次、既存クライアント及び新規クライアントへ同じタイミングのストリーミングを行う(特許文献1の第4頁、図14参照)。
次に、従来の画像ストリーミングとして、接続中の受信クライアントへの動画像ストリーミング制御(第2例)について説明する。図14に示すように、画像ストリーミングシステムの送信サーバは、まずカメラ等からの画像入力処理を行う(S50)。送信サーバは受信クライアントから新規の配信要求を受けたか否かを判断する(S51)。
受信クライアントから新規配信要求を受け付けていない場合(S51、NO)、送信サーバは、キーフレームを送出するか否かを判断する(S52)。キーフレームを送出しないと判断した場合は(S52、NO)、フレーム間予測符号化処理を行う(S53)。一方、キーフレームを送出すると判断した場合は(S52、YES)、フレーム内符号化処理を行う(S54)。
S54又はS53の処理の後、動画像符号化データはサーバ処理される(S57)。ネットワークへのストリーミングの後、再度カメラ等からの画像入力処理が行われ(S50)、先述した一連の処理(S50〜S54、S57)が連続して繰り返し実行される。これにより、送信サーバから受信クライアントへのストリーミングが継続される。なお、S50に示す画像入力処理、S53、S54に示す符号化処理、S57に示すサーバ処理は、送信サーバ内で並列処理される場合もある。
ここで動画像ストリーミング制御中に新規に受信クライアントが接続した場合の動作について説明する。接続中の既存クライアントへのストリーミング中に、新規に接続した新規クライアントが存在する場合は、S51の処理において新規配信要求があると判断し、新規配信識別を設定するとともに送出するデータをキーフレームに強制的に設定する(S58)。
そして、新規配信識別を設定した後、送信サーバは、送出するデータがキーフレームであるか否かを判断する(S52)。ここでの送信サーバは、新規クライアントが存在しS57でキーフレームに設定しているため、フレーム内符号化処理(S54)を実行した後、サーバ処理を行う(S58)。
このS58のサーバ処理では、S54の処理において生成したフレーム内符号化データを既存クライアントへストリーミングする。さらに、新規配信識別が設定されているので、新規クライアントへもフレーム内符号化データのストリーミングを開始するとともに新規配信識別を解除する。
図13では従来の送信サーバにおける動画像ストリーミングのフレーム構成の第2例を示している。図14に示した処理の場合、送信サーバからネットワークへは、例えば図13に示した動画像データが送出される。図13に示すように、既存クライアントへはPフレーム50y、Pフレーム50z、Iフレーム51、Pフレーム51a、Pフレーム51bと順次ストリーミングを行っている。
ここで、図14のフローチャートで示した新規配信要求のタイミングで新規クライアントが接続すると、既存クライアントへはPフレーム51bをストリーミングしているが、その後はPフレーム51c、Pフレーム51d以降のフレームはストリーミングされない。そして。新規クライアント及び既存クライアントへ、新たなIフレーム61、Pフレーム61a、Pフレーム61bと順次ストリーミングを行い、新規配信要求後の最初のIフレームであるIフレーム61の生成時に再計算した新たなキーフレーム間隔でIフレーム62をストリーミングする(特許文献1の第11頁、図1参照)。
特開2002−344932号公報
しかしながら、上記前者の従来の画像ストリーミングシステム(第1例として説明した従来の技術)では、新規クライアントから配信要求があった際、新規クライアントが配信要求からIフレームを受信するまでの時間が送信サーバのキーフレーム間隔に依存しているため、新規クライアントにおいて動画像が表示されるまでに長時間を要するという問題があった。
また、上記後者の従来の画像ストリーミングシステム(第2例として説明した従来の技術)では、送信サーバは新規の配信要求を検出した後、すぐにIフレームをストリーミングするため、新規接続の度にIフレームを生成しキーフレームとしてストリーミングしなければならない。このため、既存の受信クライアントへの発生符号量の制御が狂い、既存の受信クライアントでは安定した画像が得られないという問題があった。特に頻繁に新規の接続が発生する場合や、ネットワークの制約でキーフレーム送出のタイミングを変更できない場合は、既存の受信クライアントで安定した画像が得られないという問題が顕著となる。
本発明は、上記に鑑みてなされたものであって、新規クライアントから送信サーバへ新規の接続があった際に、既存クライアントおよび新規クライアントへスムーズにストリーミングを行なう画像ストリーミングシステムを得ることを目的とする。
上記課題を解決するために本発明は、動画像データを圧縮符号化するとともに圧縮符号化した圧縮符号化データをネットワークを介してストリーミングする送信サーバと、送信サーバがストリーミングした圧縮符号化データをネットワークを介して受信するとともに受信した圧縮符号化データを伸張復号化して画像の表示を行う複数の受信クライアントとを有し、送信サーバから受信クライアントへは圧縮符号化データをフレーム内符号化で生成したフレーム内符号化データおよび圧縮符号化データをフレーム間予測符号化で生成したフレーム間予測符号化データをストリーミングする画像ストリーミングシステムにおいて、送信サーバは、フレーム内符号化データおよびフレーム間予測符号化データを生成する符号化データ生成部と、符号化データ生成部が生成したフレーム内符号化データおよびフレーム間予測符号化データを受信クライアントへストリーミングするとともに受信クライアントへストリーミングするフレーム内符号化データを記憶しておくストリーミング部と、を備え、ストリーミング部は、自サーバと既に接続中の受信クライアントである接続中クライアントへストリーミングするデータがフレーム内符号化データ以外の圧縮符号化データのタイミングである場合に接続中クライアントとは別の新たな受信クライアントである新規クライアントから接続要求を受けると、記憶しておいたフレーム内符号化データを用いて新規クライアントへのストリーミングを開始するものである。
本発明によれば、送信サーバに接続中の接続中クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なくフレーム内符号化データをストリーミングできるので、接続中クライアントへの安定したストリーミングを持続しながら、新規クライアントでは短時間で画像を表示することができる画像ストリーミングシステムが得られる。
本発明の第1の発明の画像ストリーミングシステムは、動画像データを圧縮符号化するとともに圧縮符号化した圧縮符号化データをネットワークを介してストリーミングする送信サーバと、送信サーバがストリーミングした圧縮符号化データをネットワークを介して受信するとともに受信した圧縮符号化データを伸張復号化して画像の表示を行う複数の受信クライアントとを有し、送信サーバから受信クライアントへは圧縮符号化データをフレーム内符号化で生成したフレーム内符号化データおよび圧縮符号化データをフレーム間予測符号化で生成したフレーム間予測符号化データをストリーミングする画像ストリーミングシステムにおいて、送信サーバは、フレーム内符号化データおよびフレーム間予測符号化データを生成する符号化データ生成部と、符号化データ生成部が生成したフレーム内符号化データおよびフレーム間予測符号化データを受信クライアントへストリーミングするとともに受信クライアントへストリーミングするフレーム内符号化データを記憶しておくストリーミング部と、を備え、ストリーミング部は、自サーバと既に接続中の受信クライアントである接続中クライアントへストリーミングするデータがフレーム内符号化データ以外の圧縮符号化データのタイミングである場合に接続中クライアントとは別の新たな受信クライアントである新規クライアントから接続要求を受けると、記憶しておいたフレーム内符号化データを用いて新規クライアントへのストリーミングを開始するものであり、送信サーバに接続中の接続中クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なくフレーム内符号化データをストリーミングできるという作用を有する。
第2の発明の画像ストリーミングシステムは、第1の発明の画像ストリーミングシステムにおいて、ストリーミング部は、新規クライアントへのストリーミングを開始した後、符号化データ生成部が生成し接続中クライアントへストリーミングするフレーム内符号化データおよびフレーム間予測符号化データを接続中クライアントへのストリーミングと同じタイミングで新規クライアントへストリーミングするものであり、接続中クライアントと新規クライアントへのストリーミングを同じタイミングで容易に行なうことができるという作用を有する。
第3の発明の画像ストリーミングシステムは、第1の発明の画像ストリーミングシステムにおいて、符号化データ生成部は、フレーム内符号化データを記憶してから記憶した当該フレーム内符号化データを用いた新規クライアントへのストリーミングを行うまでの間に接続中クライアントへストリーミングしたフレーム間予測符号化データのフレーム数と同数のフレーム間予測符号化データであって、フレーム数に応じたヘッダを設定したフレーム間予測符号化データを生成し、ストリーミング部は、新規クライアントへのストリーミングを開始すると、記憶しておいたフレーム内符号化データ、符号化データ生成部にヘッダを設定されたフレーム数と同数のフレーム間予測符号化データ、記憶しておいたフレーム内符号化データを新規クライアントへストリーミングした後に接続中クライアントへストリーミングしたフレーム間予測符号化データの順番でフレーム内符号化データおよび各フレーム間予測符号化データを新規クライアントへストリーミングするものであり、接続中クライアントと新規クライアントへのストリーミングを異なるタイミングで容易に行なうことができるという作用を有する。
第4の発明の画像ストリーミングシステムは、第3の発明の画像ストリーミングシステムにおいて、符号化データ生成部は、記憶しておいたフレーム内符号化データの次に新規クライアントへストリーミングするフレーム間予測符号化データとして、フレーム内符号化データを記憶してからの経過時間を示すヘッダを設定したフレーム間予測符号化データを生成し、ストリーミング部は、新規クライアントへのストリーミングを開始すると、記憶しておいたフレーム内符号化データ、符号化データ生成部にヘッダを設定されたフレーム間予測符号化データの順番でフレーム内符号化データおよびフレーム間予測符号化データを新規クライアントへストリーミングするものであり、新規クライアントがフレーム内符号化データを記憶してからの経過時間を認識することができるという作用を有する。
第5の発明の画像ストリーミングシステムは、第1〜第4の発明の画像ストリーミングシステムにおいて、符号化データ生成部は、画像の表示を行う際の制御パラメータをヘッダに設定してフレーム内符号化データを生成し、ストリーミング部は、フレーム内符号化データをストリーミングまたは記憶する際には、符号化データ生成部が設定したヘッダとともにフレーム内符号化データをストリーミングまたは記憶するものであり、画像の表示を行う際の制御パラメータを新規クライアントが取得できるという作用を有する。
第6の発明の画像ストリーミングシステムは、動画像データを圧縮符号化するとともに圧縮符号化した圧縮符号化データをネットワークを介してストリーミングする送信サーバと、送信サーバがストリーミングした圧縮符号化データをネットワークを介して受信するとともに受信した圧縮符号化データを伸張復号化して画像の表示を行う複数の受信クライアントとを有し、送信サーバから受信クライアントへは圧縮符号化データをフレーム内符号化で生成したフレーム内符号化データおよび圧縮符号化データをフレーム間予測符号化で生成したフレーム間予測符号化データをストリーミングする画像ストリーミングシステムにおいて、送信サーバは、フレーム内符号化データおよびフレーム間予測符号化データを生成する符号化データ生成部と、自サーバと既に接続中の受信クライアントである接続中クライアントとは別の新たな受信クライアントである新規クライアントから接続要求を受けた際に、静止画像データを圧縮符号化して静止画符号化データを生成する静止画データ生成部と、符号化データ生成部が生成したフレーム内符号化データおよびフレーム間予測符号化データ、および静止画データ生成部が生成した静止画符号化データを受信クライアントへストリーミングするストリーミング部と、を備え、ストリーミング部は、接続中クライアントへストリーミングするデータがフレーム内符号化データ以外の圧縮符号化データのタイミングである場合に新規クライアントから接続要求を受けると、静止画データ生成部が生成した静止画符号化データを新規クライアントへ送出した後、符号化データ生成部が生成し接続中クライアントへストリーミングするフレーム内符号化データおよびフレーム間予測符号化データを接続中クライアントへのストリーミングと同じタイミングで新規クライアントへストリーミングするものであり、接続中の既存クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なく静止画符号化データを送出できるという作用を有する。
第7の発明の画像ストリーミングシステムは、第6の発明の画像ストリーミングシステムにおいて、静止画データ生成部は、新規クライアントから接続要求を受けた際に、複数の静止画符号化データを生成し、ストリーミング部は、静止画データ生成部が生成した複数の静止画符号化データを新規クライアントへ連続して送出するものであり、接続中の既存クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なく静止画符号化データを連続して送出できるという作用を有する。
第8の発明の画像ストリーミングシステムは、第7の発明の画像ストリーミングシステムにおいて、静止画データ生成部は、接続要求を受けた新規クライアントへ最初のフレーム内符号化データをストリーミングするまでの間、静止画符号化データを生成するタイミングになると新規クライアントへ送出した静止画符号化データおよび所定パターンのデータの累積符号量に基づいて静止画符号化データを生成するか否かを判断し、静止画符号化データを生成すると判断した場合に静止画符号化データを生成して新規クライアントへ送出するものであり、静止画符号化データによって伝送帯域を占有することが減少し、効率よく伝送帯域を使用できるという作用を有する。
第9の発明の画像ストリーミングシステムは、第6〜第8の発明の画像ストリーミングシステムにおいて、符号化データ生成部は、画像の表示を行う際の制御パラメータをヘッダに設定してフレーム内符号化データを生成し、ストリーミング部は、フレーム内符号化データをストリーミングする際には、符号化データ生成部が設定したヘッダとともにフレーム内符号化データをストリーミングするものであり、画像の表示を行う際の制御パラメータを新規クライアントが取得できるという作用を有する。
第10の発明の画像ストリーミングシステムは、第5または第9の発明の画像ストリーミングシステムにおいて、符号化データ生成部が制御パラメータを設定するヘッダは、MPEG−4に規定のGOVヘッダ93またはMPEG−4とは異なる他の動画像符号化方式で規定されたGOVヘッダに対応するヘッダとしたものであり、受信クライアントはGOVヘッダ又はこれに対応するヘッダに含まれる情報を取得できるという作用を有する。
第11の発明の画像ストリーミングシステムは、第5、第9または第10の発明の画像ストリーミングシステムにおいて、符号化データ生成部が制御パラメータを設定するヘッダは、MPEG−4に規定のGOVヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたGOVヘッダに対応するヘッダ、およびMPEG−4に規定のVOLヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたVOLヘッダに対応するヘッダとしたものであり、受信クライアントはGOVヘッダ又はこれに対応するヘッダに含まれる情報と、VOLヘッダ又はこれに対応するヘッダに含まれる情報との両方を取得できるという作用を有する。
第12の発明の画像ストリーミングシステムは、第5、第9〜第11の発明の画像ストリーミングシステムにおいて、符号化データ生成部が制御パラメータを設定するヘッダは、MPEG−4に規定のGOVヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたGOVヘッダに対応するヘッダ、MPEG−4に規定のVOLヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたVOLヘッダに対応するヘッダ、およびMPEG−4に規定のVOヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたVOヘッダに対応するヘッダとしたものであり、受信クライアントはGOVヘッダ又はこれに対応するヘッダに含まれる情報と、VOLヘッダ又はこれに対応するヘッダに含まれる情報と、VOヘッダ又はこれに対応するヘッダに含まれる情報との全てを取得できるという作用を有する。
第13の発明の画像ストリーミングシステムは、第5、第9〜第12の発明の画像ストリーミングシステムにおいて、符号化データ生成部が制御パラメータを設定するヘッダは、MPEG−4に規定のGOVヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたGOVヘッダに対応するヘッダ、MPEG−4に規定のVOLヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたVOLヘッダに対応するヘッダ、MPEG−4に規定のVOヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたVOヘッダに対応するヘッダ、およびMPEG−4に規定のVOSヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定されたVOSヘッダに対応するヘッダとしたものであり、受信クライアントはGOVヘッダ又はこれに対応するヘッダに含まれる情報と、VOLヘッダ又はこれに対応するヘッダに含まれる情報と、VOヘッダ又はこれに対応するヘッダに含まれる情報と、VOSヘッダ又はこれに対応するヘッダに含まれる情報との全てを取得できるという作用を有する。
第14の発明の画像ストリーミングシステムは、第1〜第13の発明の画像ストリーミングシステムにおいて、符号化データ生成部は、複数からなり、新規クライアントから接続要求のあった際に、新規クライアントから接続要求のあった動画解像度と同じ解像度で接続中クライアントにフレーム内符号化データおよびフレーム間予測符号化データを生成中の符号化データ生成部が存在する場合、当該符号化データ生成部が接続要求をした新規クライアントにフレーム内符号化データおよびフレーム間予測符号化データを生成させるものであり、全ての符号化データ生成部が符号化データを生成中の場合であっても同じ解像度で符号化データを生成中の符号化データ生成部で新規クライアントへストリーミングできるという作用を有する。
以下、本発明の実施の形態について説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係る画像ストリーミングシステムの概略構成を示す図である。画像ストリーミングシステムにおいて、2は送信サーバ、1はインターネットなどの通信のネットワーク、3は受信クライアントである。送信サーバ2と受信クライアント3はネットワーク1を介して接続している。受信クライアント3は、必要に応じて送信サーバ2に接続し、送信サーバ2から画像データを取得する。すなわち、送信サーバ2から送出される画像データは、ネットワーク1を介して、受信クライアント3へストリーミングされる。
図1は、本発明の実施の形態1に係る画像ストリーミングシステムの概略構成を示す図である。画像ストリーミングシステムにおいて、2は送信サーバ、1はインターネットなどの通信のネットワーク、3は受信クライアントである。送信サーバ2と受信クライアント3はネットワーク1を介して接続している。受信クライアント3は、必要に応じて送信サーバ2に接続し、送信サーバ2から画像データを取得する。すなわち、送信サーバ2から送出される画像データは、ネットワーク1を介して、受信クライアント3へストリーミングされる。
送信サーバ2は、カメラ等の画像(動画)の入力機能、画像の符号化機能、画像の送信機能などを備えている。受信クライアント3は、例えばパーソナルコンピュータや携帯電話であり、画像の受信機能、画像の復号化機能、表示モニタなどの画像の出力機能などを備えている。
以下、説明の便宜上、送信サーバ2に接続済みの受信クライアント3を既存クライアント(接続中クライアント)、送信サーバ2に新たに接続する受信クラインと3を新規クライアントという場合がある。
図2は、本発明の実施の形態1に係る画像ストリーミングシステムの構成を示すブロック図である。図2の送信サーバ2において、21は画像入力部、22は動画像符号化器、23はアプリケーション処理部、24はサーバ制御部である。図2の受信クライアント3において、31は画像出力部、32は動画像復号化器、33はアプリケーション処理部、34はクライアント制御部である。
画像入力部21は、内蔵または外部接続されたCCD(Charge Coupled Devices)センサーやCMOS(Complementary Metal Oxide Semiconductor)センサーなどを搭載した撮像カメラなどから画像を取り込み、必要に応じて適切なサイズの解像度に変換する。画像入力部21は、取り込んだ画像(動画像データ)を動画像符号化器22に入力する。
動画像符号化器(符号化データ生成部)22は、画像入力部21からの画像データを、MPEG−4等の規定に従って動画像圧縮符号化を行い、アプリケーション処理部23に入力する。アプリケーション処理部23は、送信サーバ2内部の制御を全て統括し、受信クライアント3からの新規配信要求やキーフレーム挿入のための制御などを実行する。
サーバ制御部(ストリーミング部)24は、受信クライアント3からの接続要求や切断要求に対する接続制御や切断制御、ストリーミングの開始や停止等のプロトコル制御を行うとともに、動画像符号化器22で生成された符号化データをネットワーク1を介して受信クライアント3へストリーミングする。
クライアント制御部34は、送信サーバ2への接続要求や切断要求、ストリーミングの開始や停止等のプロトコル制御を行うとともに、ネットワーク1を介して送信サーバ2からストリーミングされる符号化データの受信制御を行う。アプリケーション処理部33は、受信クライアント3の内部の制御を全て統括するとともに、ユーザインタフェース制御を実行する。
動画像復号化器32は、送信サーバ2から受信したMPEG−4等の動画像符号化データを伸張し復号化する。画像出力部31は、動画像復号化器32によって生成された画像データを、必要に応じて適切な解像度に変換し、LCD(Liquid Crystal Monitor)やディスプレイなどの表示モニタへ出力する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。
図3は、送信サーバにおけるストリーミング制御の処理手順を示すフローチャートである。まず、送信サーバ2に接続中の受信クライアント3への動画像ストリーミング制御について説明する。
送信サーバ2の画像入力部21は、カメラ等から画像の入力処理を行う(S10)。アプリケーション処理部23は、受信クライアント3から新規配信要求を受けたか否かを判断する(S11)。
受信クライアント3から新規配信要求を受け付けていない場合(S11、NO)、アプリケーション処理部23は、キーフレームを送出するか否か(キーフレームをストリーミングするタイミングであるか否か)を判断する(S12)。
キーフレームを送出しないと判断した場合は(S12、NO)、動画像符号化器22はフレーム間予測符号化(インター符号化、又は動き補償予測符号化)処理を行う(S13)。なお、実施の形態1では、動画像符号化器22がフレーム間予測符号化処理を行った後、新規配信要求検出後の処理(後述のヘッダの時間情報の変更など)(S14の処理)は行わない。一方、キーフレームを送出すると判断した場合(S12、YES)、動画像符号化器22はフレーム内符号化(イントラ符号化)処理を行う(S15)。
動画像符号化器22がフレーム内符号化処理を行うと、動画像符号化器22が生成したフレーム内符号化データの保存を行う(S16)。動画像符号化器22が生成したフレーム内符号化データは、送信サーバ2が備える所定の記憶手段などによって記憶される。なお、動画像符号化器22が生成したフレーム内符号化データは、アプリケーション処理部23やサーバ制御部24が記憶する構成としてもよい。
動画像符号化器22が生成した動画像符号化データ(フレーム内符号化データやフレーム間予測符号化データ)は、サーバ制御部24によるサーバ処理の制御によってサーバ処理(動画像データをネットワークを介して受信クライアントへストリーミング)される(S17)。
送信サーバ2では、ネットワーク1上へのストリーミングの後、再度カメラ等からの画像入力処理が行われ(S10)、前述した一連の処理(S10〜S17)が連続して繰り返し実行される。これにより、送信サーバ2から受信クライアント3へのストリーミングが継続される。なお、S10に示す画像入力処理、S13、S15に示す符号化処理、S17に示すサーバ処理は、送信サーバ2内で並列処理してもよい。
ここで動画像ストリーミング制御中に新規に受信クライアントが接続した場合の動作について説明する。接続中の受信クライアント(既存クライアント)3へのストリーミング中に、新規に接続した受信クライアント(新規クライアント)3が存在する場合は、S11の処理において新規配信要求があると判断し、アプリケーション処理部23は新規に接続する受信クライアント3との接続設定と新規配信要求検出時の処理を行う(S18)。
まず、アプリケーション処理部23は、送出するデータがキーフレームであるか否かを判断する。アプリケーション処理部23は、既存クライアントへ次にストリーミングする符号化データがキーフレームである場合(キーフレームを送出するタイミングの場合)には何も実行しない。
一方、既存クライアントへ次にストリーミングする符号化データがキーフレームでない場合(フレーム内符号化データ以外の圧縮符号化データを送信するタイミングの場合)は、S16の処理で保存しておいたキーフレーム(フレーム内符号化データ)をサーバ制御部24による制御によって新規クライアントへサーバ処理する(図3に破線で示した流れ)。これにより、新規クライアントへのストリーミングが開始する。
この後、送信サーバ2はS12の処理へ移行する。すなわち、新規クライアントと既存クライアントへ同じ動画データを同じタイミングでストリーミングする。この後の処理は先述した接続中の受信クライアント3への動画像ストリーミング制御と同様であるが、S12の処理において送出するデータがキーフレームであるとアプリケーション処理部23が判断した場合(例えば最後のPフレーム(後述のPフレーム11zなど)と次のIフレーム(後述のIフレーム12など)の間に新規配信要求があった場合)は、新規クライアントへもS15で符号化するフレーム内符号化データのストリーミングを行う。例えば、保存されていたn(nは自然数)番目のIフレームが新規クライアントに送信された後、直ちにS15で符号化する(n+1)番目のIフレームが新規クライアントに送信される。
受信クライアント3(既存クライアントや新規クライアント)では、クライアント制御部34が、ネットワーク1を介して送信サーバ2からストリーミングされる符号化データの受信制御を行って符号化データを受信する。アプリケーション処理部33は、ユーザインタフェース制御を実行し、符号化データ(動画像符号化データ)を動画像復号化器32に送る。
動画像復号化器32は、送信サーバ2から受信したMPEG−4等の動画像符号化データを伸張し復号化する。画像出力部31は、動画像復号化器32によって生成された画像データを、必要に応じて適切な解像度に変換し、表示モニタへの出力(画像の表示)を行う。
図4は、動画像ストリーミングのフレーム構成を示す図である。図4に示すように、既存クライアントへはPフレーム10y、Pフレーム10z、Iフレーム11、Pフレーム11a、Pフレーム11bと順次ストリーミングを行っている。
ここで、既存クライアントへPフレーム11bをストリーミング中に、新規クライアントが送信サーバ2に接続すると(新規配信要求の発生)(図3のS11、YES)、既存クライアントへは、その後もPフレーム11c、Pフレーム11dと順次ストリーミングを続ける。新規クライアントへは、保存しておいたキーフレームであるIフレーム11をストリーミングし、以降は既存クライアントと新規クライアントへ同じタイミングでPフレーム11c、Pフレーム11d、Pフレーム11eと順次ストリーミングする。
このように実施の形態1によれば、接続中の既存クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なくキーフレームをストリーミングできるので、既存クライアントへの安定したストリーミングを持続しながら、新規クライアントでは短時間で画像を表示することが可能となる。
(実施の形態2)
つぎに、図1〜図3、図5、図6を用いて本発明の実施の形態2について説明する。実施の形態2では、保存しておいたキーフレームを新規クライアントへサーバ処理する際に、キーフレーム以降に既存クライアントへストリーミングしたフレーム間予測符号化データ数分のデータを生成し新規クライアントへ送信する。なお、実施の形態2の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
つぎに、図1〜図3、図5、図6を用いて本発明の実施の形態2について説明する。実施の形態2では、保存しておいたキーフレームを新規クライアントへサーバ処理する際に、キーフレーム以降に既存クライアントへストリーミングしたフレーム間予測符号化データ数分のデータを生成し新規クライアントへ送信する。なお、実施の形態2の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
まず、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態2の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1で説明した処理と同様であるためその説明を省略する。ここでは、実施の形態1の画像ストリーミングシステムと異なる動作として、動画像ストリーミング制御中に新規に受信クライアントが接続した場合の動作について説明する。
接続中の受信クライアント(既存クライアント)3へのストリーミング中に、新規に接続した受信クライアント(新規クライアント)3が存在する場合は、S11の処理において新規配信要求があると判断し、アプリケーション処理部23は新規に接続する受信クライアント3との接続設定と新規配信要求検出時の処理を行う(S18)。
まず、アプリケーション処理部23は、送出するデータがキーフレームであるか否かを判断する。アプリケーション処理部23は、既存クライアントへ次にストリーミングする符号化データがキーフレームである場合には何も実行しない。
一方、既存クライアントへ次にストリーミングする符号化データがキーフレームでない場合は、S16の処理で保存しておいたキーフレーム(フレーム内符号化データ)をサーバ制御部24による制御によって新規クライアントへサーバ処理する(図3に破線で示した流れ)。さらに、保存しておいたキーフレーム以降(既存クライアントがキーフレームを保存してから新規クライアントへキーフレームを送出するまで)に既存クライアントへストリーミングしたフレーム間予測符号化データ数分のデータ(後述する空のフレーム間予測符号化データ)(ストリーミングしたフレーム数と同数のデータ)を生成しサーバ制御部24による制御によって新規クライアントへサーバ処理する。
ここで図5を用いて、フレーム内符号化データ及びフレーム間予測符号化データの内部構成について説明する。
図5は、フレーム内符号化データとフレーム間予測符号化データの内部構成を説明するための図である。図5では動画像フレーム9の内部構成を示している。図5に示す動画像フレーム9において、90はVOS(Visual Object Sequence)ヘッダであり、91はVO(Visual Object)ヘッダであり、92はVOL(Video Object Layer)ヘッダであり、93はGOV(Group Of Video object Plane)ヘッダであり、94はVOPヘッダであり、95は符号化データである。
動画像フレーム9において、フレーム内符号化データ及びフレーム間予測符号化データは、VOP(Video Object Plane)ヘッダ94及び符号化データ95により構成される。
動画像フレーム9のVOPヘッダ94において、94aがvop_start_code、94bがvop_coding_type、94cがmodulo_time_base、94dがvop_time_increment、94eがvop_coded_flag、95fがその他複数のヘッダ要素である。
例えば、vop_coding_type94bにより、フレーム内符号化データとフレーム間予測符号化データが識別される。modulo_time_base94cとvop_time_increment94dは対で利用される時間情報であり基準となる周波数に従って更新される情報であるため、動画像フレーム受信側での表示タイミング制御に利用される。vop_coded_flag94eは、以降にデータが連続するか否かを識別するための情報である。なお、ここでは、動画像フレーム9の構成として、MPEG−4で規定されている内部構成を一例として示したが、他の動画像符号化方式でも類似したものが用いられており、他の動画像符号化方式を用いてもよい。
前述した空のフレーム間予測符号化データとは、保存しておいたキーフレーム以降に既存クライアントへストリーミングしたフレーム間予測符号化データ(フレーム数)に従って、時間情報(modulo_time_base94cとvop_time_increment94d)を設定し、以降にデータが連続しない旨を示すvop_coded_flag94eを設定したフレーム間予測符号化データのことである。
S18の処理(新規クライアントへの保存しておいたフレーム内符号化データおよび後述の空のフレーム間予測符号化データのストリーミング)の後、送信サーバ2は、S12の処理へ移行する。以降の処理は実施の形態1で説明した接続中の受信クライアントへの動画像ストリーミング制御と同様である。
なお、実施の形態2でも実施の形態1と同様に、S12の処理において送出するデータがキーフレームであるとアプリケーション処理部23が判断した場合は、新規クライアントへも直ちにS15で符号化したフレーム内符号化データのストリーミングを行う。
また、実施の形態2でも実施の形態1と同様に、動画像符号化器22がフレーム間予測符号化処理を行った後、新規配信要求検出後の処理(後述のヘッダの時間情報の変更など)(S14の処理)は行わない。
また、受信クライアント3(既存クライアントや新規クライアント)では、実施の形態1での処理と同様に、送信サーバ2からストリーミングされる符号化データ95を受信して画像表示する。
図6は、動画像ストリーミングのフレーム構成を示す図である。図6に示すように、既存クライアントへはPフレーム10y、Pフレーム10z、Iフレーム11、Pフレーム11a、Pフレーム11bと順次ストリーミングを行っている。
ここで、既存クライアントへPフレーム11bをストリーミング中に、新規クライアントが送信サーバ2に接続すると(新規配信要求の発生)(図3のS11、YES)、既存クライアントへは、その後もPフレーム11c、Pフレーム11dと順次ストリーミングを続ける。
新規クライアントへは、保存しておいたキーフレームであるIフレーム11をストリーミングし、続いて空のフレーム内予測符号化データであるPフレーム11a1およびPフレーム11b1をストリーミングする。以降は既存クライアントへも新規クライアントへもPフレーム11c、Pフレーム11d、Pフレーム11eと順次ストリーミングを行う。
このように実施の形態2によれば、接続中の既存クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なくキーフレーム及び空のPフレームをストリーミングできるので、既存クライアントへの安定したストリーミングを持続しながら、新規クライアント側では短時間で実施の形態1よりも滑らかな画像を表示することが可能となる。
(実施の形態3)
つぎに、図1〜図4を用いて本発明の実施の形態3について説明する。実施の形態3では、アプリケーション処理部23は、新規クライアントへストリーミングするフレーム間予測符号化データのみを対象に、保存しておいたキーフレーム以降に既存クライアントへストリーミングしたフレーム間予測符号化データ数から保存されたキーフレーム以降の時間情報を算出する。そして、算出した時間情報にヘッダの時間情報を変更したフレーム間予測符号化データを生成し、受信クライアント3へ送信する。実施の形態3の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
つぎに、図1〜図4を用いて本発明の実施の形態3について説明する。実施の形態3では、アプリケーション処理部23は、新規クライアントへストリーミングするフレーム間予測符号化データのみを対象に、保存しておいたキーフレーム以降に既存クライアントへストリーミングしたフレーム間予測符号化データ数から保存されたキーフレーム以降の時間情報を算出する。そして、算出した時間情報にヘッダの時間情報を変更したフレーム間予測符号化データを生成し、受信クライアント3へ送信する。実施の形態3の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態3の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1で説明した処理と同様であるためその説明を省略する。
ここでは、実施の形態1、2の画像ストリーミングシステムと異なる動作として、動画像ストリーミング制御中に新規に受信クライアントが接続した場合の動作について説明する。接続中の受信クライアント(既存クライアント)3へのストリーミング中に、新規に接続した受信クライアント(新規クライアント)3が存在する場合は、S11の処理において新規配信要求があると判断し、アプリケーション処理部23は新規に接続する受信クライアント3との接続設定と新規配信要求検出時の処理を行う(S18)。
まず、アプリケーション処理部23は、送出するデータがキーフレームであるか否かを判断する。アプリケーション処理部23は、既存クライアントへ次にストリーミングする符号化データ95がキーフレームである場合には何も実行しない。
一方、既存クライアントへ次にストリーミングする符号化データ95がキーフレームでない場合、アプリケーション処理部23は新規配信識別の設定(新規クライアントの接続があったか否かを判断するためのフラグの設定)を行なうとともに、S16の処理で保存しておいたキーフレーム(フレーム内符号化データ)をサーバ制御部24による制御によって新規クライアントへサーバ処理する(図3に破線で示した流れ)(S18)。
S18の処理(新規クライアントへの保存しておいたフレーム内符号化データのストリーミング)の後、送信サーバ2は、S12の処理へ移行する。以降の処理は実施の形態1で説明した接続中の受信クライアントへの動画像ストリーミング制御と同様である。
なお、実施の形態3でも実施の形態1、2と同様に、S12の処理において送出するデータがキーフレームであるとアプリケーション処理部23が判断した場合は、新規クライアントへもS15で符号化するフレーム内符号化データのストリーミングを行う。
また、実施の形態3では、新規配信識別が設定されている場合、S13の処理の後、新規配信要求検出後の処理を行う。具体的には、アプリケーション処理部23は、新規クライアントへストリーミングするフレーム間予測符号化データのみを対象に、S16の処理で保存しておいたキーフレーム以降(既存クライアントがキーフレームを保存してから新規クライアントへキーフレームを送出するまで)に既存クライアントへストリーミングしたフレーム間予測符号化データ数から保存されたキーフレーム以降の時間情報を算出する。そして、算出した時間情報をmodulo_time_base94cとvop_time_increment94dに設定して、ヘッダの時間情報が変更されたフレーム間予測符号化データを生成し、新規配信識別を解除する(S14)。換言すると、次のフレーム間予測符号化データが、保存したフレーム内符号化データが生成された時間からの経過時間を示すよう動画像フレームのヘッダー内の時間情報を変更したフレーム間予測符号化データをストリーミングする。
この後、時間情報が変更されたフレーム間予測符号化データをサーバ制御部24による制御によって新規クライアントへサーバ処理する(S18)。これにより、新規クライアントへのみ時間情報が変更されたフレーム間予測符号化データをストリーミングする。
受信クライアント3(既存クライアントや新規クライアント)では、実施の形態1での処理と同様に、送信サーバ2からストリーミングされる符号化データ(時間情報が変更されたフレーム間予測符号化データ)を受信して画像表示する。
実施の形態3に係る動画像ストリーミングのフレーム構成は、実施の形態1で説明した図4のフレーム構成と同様の構成を有している。実施の形態1のフレームと実施の形態3のフレームの違いは、既存クライアントへのPフレーム11cのヘッダ内の時間情報と、新規クライアントへのPフレーム11cのヘッダ内の時間情報が実施の形態3では異なることである。新規クライアントへストリーミングするPフレーム11cのヘッダ内の時間情報は、S16の処理で保存したキーフレーム(フレーム内符号化データ)の生成時間からの経過時間に関する情報を示している。
このように、送信サーバ2のアプリケーション処理部23が、新規クライアントへストリーミングするフレーム間予測符号化データのみを対象に、保存しておいたキーフレーム以降に既存クライアントへストリーミングしたフレーム間予測符号化データ数から保存されたキーフレーム以降の時間情報を算出し、算出した時間情報に基づいてヘッダの時間情報を変更したフレーム間予測符号化データを生成している。このため、受信クライアント3は、ヘッダ内の時間情報を用いて滑らかな画像を表示できる。
このように実施の形態3によれば、接続中の既存クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なくキーフレーム及び時間情報の変更されたフレーム間予測符号化データをストリーミングできるので、既存クライアントへの安定したストリーミングを持続しながら、新規クライアント側では短時間で実施の形態1よりも滑らかな画像を表示することが可能となる。
また、新規クライアントが接続した後、次のIフレームの送出までの時間が長い場合であっても、空のPフレームを送信する必要がないので、実施の形態2のよりも容易に滑らかな画像を表示することが可能となる。
(実施の形態4)
つぎに、図1〜図3、図5を用いて本発明の実施の形態4について説明する。実施の形態4では、動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにGOVヘッダ93を保存し、受信クライアント3へ送信する。実施の形態4の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
つぎに、図1〜図3、図5を用いて本発明の実施の形態4について説明する。実施の形態4では、動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにGOVヘッダ93を保存し、受信クライアント3へ送信する。実施の形態4の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態4の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3で説明した処理と同様であるためその説明を省略する。
ここでは、実施の形態1〜3の画像ストリーミングシステムと異なる動作として、図3のS16の処理動作(キーフレーム保存)について説明する。実施の形態4では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにGOVヘッダ93の保存も行う(S16)。
例えば、MPEG−4を利用した場合では、保存するGOVヘッダ93は図5に示すGOVヘッダ93であり、保存するキーフレームは図5に示すVOPヘッダ94および符号化データ95からなる。ここでは、図3のS11の処理において新規配信要求があると判断した場合、S16の処理で保存したGOVヘッダ93とともに、フレーム内符号化データをサーバ処理する(S17)。
具体的には、次にストリーミングする符号化データ95がキーフレームでない場合は、S16の処理で保存したキーフレーム(GOVヘッダ93を有したフレーム内符号化データ)であるフレーム内符号化データをサーバ処理する。一方、次にストリーミングする符号化データがキーフレームである場合はS15の処理においてフレーム内符号化したフレーム内符号化データをサーバ処理する。このとき、動画像符号化器22が生成したフレーム内符号化データとともにGOVヘッダ93もサーバ処理する。これにより、保存したGOVヘッダ93とともにフレーム内符号化データを、新規クライアントへストリーミングする。
なお、実施の形態4では、動画像符号化器22が生成したフレーム内符号化データとともにMPEG−4に規定のGOVヘッダ93の保存を行ない、新規クライアントへストリーミングすることとしたが、フレーム内符号化データとともに保存し新規クライアントへストリーミングするヘッダはMPEG−4に規定のGOVヘッダ93に限られない。すなわち、動画像符号化器22が生成したフレーム内符号化データとともに、他の動画像符号化方式(H.263やH264など)で規定されたヘッダ(GOVヘッダ93と同等のヘッダ)を保存し新規クライアントへストリーミングしてもよい。
例えば、図5に示したVOSヘッダ90、VOヘッダ91、VOLヘッダ92、GOVヘッダ93などのヘッダ(MPEG−4で規定されるレイヤ毎のヘッダ)をフレーム内符号化データとともに保存し新規クライアントへストリーミングしてもよい。
ここでのVOSヘッダ90は、開始コード、プロファイル情報、レベル情報などを格納している。VOヘッダ91は、開始コード、ビジュアルオブジェクトを識別する情報、ビジュアルオブジェクトの優先度情報、ビジュアルオブジェクトのタイプ別の種々の情報などを格納している。VOLヘッダ92は、開始コード、ショートビデオヘッダを識別する情報、ビジュアルオブジェクトレイヤを識別する情報、画像アスペクト情報、VOL制御パラメータ群などを格納している。GOVヘッダ93は、開始コード、時間コードなどを格納している。
このように実施の形態4によれば、新規クライアントは、GOVヘッダ93又はこれと同等のヘッダに含まれる情報を取得できるので、受信クライアントは予め決められた制御パラメータで動作する必要はなく、実施の形態1〜3の画像ストリーミングシステムよりも融通度の高い画像ストリーミングシステムを提供することが可能となる。
(実施の形態5)
つぎに、図1〜図3、図5を用いて本発明の実施の形態5について説明する。実施の形態5では、動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOLヘッダ92およびGOVヘッダ93を保存し、受信クライアント3へ送信する。実施の形態5の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
つぎに、図1〜図3、図5を用いて本発明の実施の形態5について説明する。実施の形態5では、動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOLヘッダ92およびGOVヘッダ93を保存し、受信クライアント3へ送信する。実施の形態5の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態5の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3で説明した処理と同様であるためその説明を省略する。
ここでは、実施の形態1〜3の画像ストリーミングシステムと異なる動作として、図3のS16の処理動作(キーフレーム保存)について説明する。実施の形態5では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のVOLヘッダ92およびGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにVOLヘッダ92およびGOVヘッダ93の保存も行う(S16)。
例えば、MPEG−4を利用した場合では、保存するVOLヘッダは図5に示すVOLヘッダ92であり、保存するGOVヘッダ93は図5に示すGOVヘッダ93であり、保存するキーフレームは図5に示すVOPヘッダ94および符号化データ95からなる。
ここでは、図3のS11の処理において新規配信要求があると判断した場合、S16の処理で保存したVOLヘッダ92およびGOVヘッダ93とともに、フレーム内符号化データをサーバ処理する(S17)。
具体的には、次にストリーミングする符号化データ95がキーフレームでない場合は、S16の処理で保存したキーフレームであるフレーム内符号化データをサーバ処理する。一方、次にストリーミングする符号化データ95がキーフレームである場合はS15の処理においてフレーム内符号化したフレーム内符号化データをサーバ処理する。これにより、保存した複数のヘッダ(VOLヘッダ92およびGOVヘッダ93)とともにフレーム内符号化データを、新規クライアントへストリーミングする。
なお、実施の形態5では、動画像符号化器22が生成したフレーム内符号化データとともにMPEG−4に規定のVOLヘッダ92、GOVヘッダ93の保存を行ない、新規クライアントへストリーミングすることとしたが、フレーム内符号化データとともに保存し新規クライアントへストリーミングするヘッダはMPEG−4に規定のVOLヘッダ92、GOVヘッダ93に限られない。すなわち、動画像符号化器22が生成したフレーム内符号化データとともに、他の動画像符号化方式で規定された複数のヘッダ(VOLヘッダ92と同等のヘッダ、GOVヘッダ93と同等のヘッダ)を保存し新規クライアントへストリーミングしてもよい。
このように実施の形態5によれば、新規クライアントは、複数のヘッダに含まれる情報(VOLヘッダ92又はこれと同等のヘッダに含まれる情報と、GOVヘッダ93又はこれと同等のヘッダに含まれる情報)を取得できるので、受信クライアントは予め決められた制御パラメータで動作する必要はなく、実施の形態1〜4の画像ストリーミングシステムよりも融通度の高い画像ストリーミングシステムを提供することが可能となる。
(実施の形態6)
つぎに、図1〜図3、図5を用いて本発明の実施の形態6について説明する。実施の形態6では、動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOヘッダ91、VOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOヘッダ91、VOLヘッダ92およびGOVヘッダ93を保存し、受信クライアント3へ送信する。実施の形態5の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
つぎに、図1〜図3、図5を用いて本発明の実施の形態6について説明する。実施の形態6では、動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOヘッダ91、VOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOヘッダ91、VOLヘッダ92およびGOVヘッダ93を保存し、受信クライアント3へ送信する。実施の形態5の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態5の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3で説明した処理と同様であるためその説明を省略する。
ここでは、実施の形態1〜3の画像ストリーミングシステムと異なる動作として、図3のS16の処理動作(キーフレーム保存)について説明する。実施の形態6では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のVOヘッダ91、VOLヘッダ92およびGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにVOLヘッダ92およびGOVヘッダ93の保存も行う(S16)。
例えば、MPEG−4を利用した場合では、保存するVOヘッダ91は図5に示すVOヘッダ91であり、VOLヘッダは図5に示すVOLヘッダ92であり、保存するGOVヘッダは図5に示すGOVヘッダ93であり、保存するキーフレームは図5に示すVOPヘッダ94および符号化データ95からなる。
ここでは、図3のS11の処理において新規配信要求があると判断した場合、S16の処理で保存したVOヘッダ91、VOLヘッダ92およびGOVヘッダ93とともに、フレーム内符号化データをサーバ処理する(S17)。
具体的には、次にストリーミングする符号化データ95がキーフレームでない場合は、S16の処理で保存したキーフレームであるフレーム内符号化データをサーバ処理する。一方、次にストリーミングする符号化データ95がキーフレームである場合はS15の処理においてフレーム内符号化したフレーム内符号化データをサーバ処理する。これにより、保存した複数のヘッダ(VOヘッダ91、VOLヘッダ92およびGOVヘッダ93)とともにフレーム内符号化データを、新規クライアントへストリーミングする。
なお、実施の形態6では、動画像符号化器22が生成したフレーム内符号化データとともにMPEG−4に規定のVOヘッダ91、VOLヘッダ92、GOVヘッダ93の保存を行ない、新規クライアントへストリーミングすることとしたが、フレーム内符号化データとともに保存し新規クライアントへストリーミングするヘッダはMPEG−4に規定のVOヘッダ91、VOLヘッダ92、GOVヘッダ93に限られない。すなわち、動画像符号化器22が生成したフレーム内符号化データとともに、他の動画像符号化方式で規定された複数のヘッダ(VOヘッダ91と同等のヘッダ、VOLヘッダ92と同等のヘッダ、GOVヘッダ93と同等のヘッダ)を保存し新規クライアントへストリーミングしてもよい。
このように実施の形態6によれば、新規クライアントは、複数のヘッダに含まれる情報(VOヘッダ91又はこれと同等のヘッダに含まれる情報、VOLヘッダ92又はこれと同等のヘッダに含まれる情報、GOVヘッダ93又はこれと同等のヘッダに含まれる情報)を取得できるので、受信クライアントは予め決められた制御パラメータで動作する必要はなく、実施の形態1〜5の画像ストリーミングシステムよりも融通度の高い画像ストリーミングシステムを提供することが可能となる。
(実施の形態7)
つぎに、図1〜図3、図5を用いて本発明の実施の形態7について説明する。実施の形態7では、動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93を保存し、受信クライアント3へ送信する。実施の形態7の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
つぎに、図1〜図3、図5を用いて本発明の実施の形態7について説明する。実施の形態7では、動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93を保存し、受信クライアント3へ送信する。実施の形態7の画像ストリーミングシステムは、実施の形態1で説明した図1および図2の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態5の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3で説明した処理と同様であるためその説明を省略する。
ここでは、実施の形態1〜3の画像ストリーミングシステムと異なる動作として、図3のS16の処理動作(キーフレーム保存)について説明する。実施の形態7では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93の保存も行う(S16)。
例えば、MPEG−4を利用した場合では、保存するVOSヘッダ90は図5に示すVOSヘッダ90であり、保存するVOヘッダは図5に示すVOヘッダ91であり、VOLヘッダは図5に示すVOLヘッダ92であり、保存するGOVヘッダ93は図5に示すGOVヘッダ93であり、保存するキーフレームは図5に示すVOPヘッダ94および符号化データ95からなる。
ここでは、図3のS11の処理において新規配信要求があると判断した場合、S16の処理で保存したVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93とともに、フレーム内符号化データをサーバ処理する(S17)。
具体的には、次にストリーミングする符号化データ95がキーフレームでない場合は、S16の処理で保存したキーフレームであるフレーム内符号化データをサーバ処理する。一方、次にストリーミングする符号化データ95がキーフレームである場合はS15の処理においてフレーム内符号化したフレーム内符号化データをサーバ処理する。これにより、保存した複数のヘッダ(VOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93)とともにフレーム内符号化データを、新規クライアントへストリーミングする。
なお、実施の形態7では、動画像符号化器22が生成したフレーム内符号化データとともにMPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92、GOVヘッダ93の保存を行ない、新規クライアントへストリーミングすることとしたが、フレーム内符号化データとともに保存し新規クライアントへストリーミングするヘッダはMPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92、GOVヘッダ93に限られない。すなわち、動画像符号化器22が生成したフレーム内符号化データとともに、他の動画像符号化方式で規定されたヘッダ(VOSヘッダ90と同等のヘッダ、VOヘッダ91と同等のヘッダ、VOLヘッダ92と同等のヘッダ、GOVヘッダ93と同等のヘッダ)を保存し新規クライアントへストリーミングしてもよい。
このように実施の形態7によれば、新規クライアントは、複数のヘッダに含まれる情報(VOSヘッダ90又はこれと同等のヘッダに含まれる情報、VOヘッダ91又はこれと同等のヘッダに含まれる情報、VOLヘッダ92又はこれと同等のヘッダに含まれる情報、GOVヘッダ93又はこれと同等のヘッダに含まれる情報)を取得できるので、受信クライアントは予め決められた制御パラメータで動作する必要はなく、実施の形態1〜6の画像ストリーミングシステムよりも融通度の高い画像ストリーミングシステムを提供することが可能となる。
(実施の形態8)
つぎに、図1、3、7、8を用いて本発明の実施の形態8について説明する。実施の形態8では、送信サーバ2に接続中の既存クライアントへのストリーミング中に、新規クライアントが送信サーバ2に接続すると、静止画符号化データを生成して新規クライアントに送信し、その後既存クライアントへ次のキーフレーム(Iフレーム)を送信する時から、既存クライアントと同じ動画データを新規クライアントに送信する。
つぎに、図1、3、7、8を用いて本発明の実施の形態8について説明する。実施の形態8では、送信サーバ2に接続中の既存クライアントへのストリーミング中に、新規クライアントが送信サーバ2に接続すると、静止画符号化データを生成して新規クライアントに送信し、その後既存クライアントへ次のキーフレーム(Iフレーム)を送信する時から、既存クライアントと同じ動画データを新規クライアントに送信する。
図7は、本発明の実施の形態8に係る画像ストリーミングシステムの構成を示すブロック図である。図7の各構成要素のうち図2に示す実施の形態1の画像ストリーミングシステムと同一機能を達成する構成要素については同一番号を付しており、重複する説明は省略する。
実施の形態8に係る画像ストリーミングシステムの送信サーバ2は、画像入力部21、動画像符号化器22、アプリケーション処理部23、サーバ制御部24に加えて、静止画像符号化器25を備えている。画像入力部21は、動画像符号化器22と静止画像符号化器25に接続し、動画像符号化器22と静止画像符号化器25がアプリケーション処理部23に接続している。
静止画像符号化器(静止画データ生成部)25は、画像入力部21からの画像データを、JPEG(Joint Photographic Experts Group)等の規定に従って静止画像圧縮符号化を行い、アプリケーション処理部23に入力する。
また、ここでのサーバ制御部24は、受信クライアント3からの接続要求や切断要求に対する接続制御や切断制御、ストリーミングの開始や停止等のプロトコル制御を行うとともに、動画像符号化器22や静止画像符号化器25で生成された符号化データをネットワーク1を介して受信クライアント3へストリーミングする。
また、実施の形態8に係る画像ストリーミングシステムの受信クライアント3は、画像出力部31、動画像復号化器32、アプリケーション処理部33、クライアント制御部34に加えて、静止画像復号化器35を備えている。画像出力部31は、動画像復号化器32と静止画像復号化器35に接続し、動画像復号化器32と静止画像復号化器35はアプリケーション処理部33に接続している。
静止画像復号化器35は、送信サーバ2から受信したJPEG−4等の静止画像符号化データを伸張し復号化する。画像出力部31は、動画像復号化器32によって生成された画像データ、静止画像復号化器35によって生成された画像データを、必要に応じて適切な解像度に変換し、LCDやディスプレイなどの表示モニタ(図示せず)へ出力する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態8の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3で説明した処理と同様であるためその説明を省略する。
ここでは、実施の形態1〜3の画像ストリーミングシステムと異なる動作として、動画像ストリーミング制御中に新規に受信クライアントが接続した場合の動作について説明する。
接続中の受信クライアント(既存クライアント)3へのストリーミング中に、新規に接続した受信クライアント(新規クライアント)3が存在する場合は、S11の処理において新規配信要求があると判断し、アプリケーション処理部23は新規に接続する受信クライアント3との接続設定と新規配信要求検出時の処理を行う(S18)。
まず、アプリケーション処理部23は、送出するデータがキーフレームであるか否かを判断する。アプリケーション処理部23は、既存クライアントへ次にストリーミングする符号化データがキーフレームである場合には何も実行しない。
一方、既存クライアントへ次にストリーミングする符号化データがキーフレームでない場合は、静止画像符号化器25によって静止画符号化データを生成し、サーバ制御部24による制御によって新規クライアントへサーバ処理する(図3に破線で示した流れ)。これにより、新規クライアントへ静止画符号化データが送出されてストリーミングが開始される。
この後、送信サーバ2は、S12の処理へ移行する。この後の処理は実施の形態1で説明した接続中の受信クライアント3への動画像ストリーミング制御と同様であるが、S12の処理において送出するデータがキーフレームであるとアプリケーション処理部23が判断した場合は、新規クライアントへもS15で符号化したフレーム内符号化データのストリーミングを行う。
アプリケーション処理部23が新規配信識別の設定を行った後、アプリケーション処理部23が新規配信識別が設定されていることを検出すると(S14)、次回の符号化処理がキーフレーム作成のためのフレーム内符号化である場合にのみ新規配信識別を解除し、以降は既存クライアントと同じ動画像符号化データを新規クライアントへストリーミングする。
受信クライアント3(既存クライアントや新規クライアント)では、実施の形態1での処理と同様に、送信サーバ2からストリーミングされる符号化データを受信して画像表示する。なお、実施の形態8では、動画像符号化器22がフレーム内符号化処理を行った後、動画像符号化器22が生成したフレーム内符号化データの保存(S16)を行わない。
図8は、実施の形態8の画像ストリーミングのフレーム構成を示す図である。図8に示すように、既存クライアントへはPフレーム10y、Pフレーム10z、Iフレーム11、Pフレーム11a、Pフレーム11bと順次ストリーミングを行っている。
ここで、既存クライアントへPフレーム11bをストリーミング中に、新規クライアントが送信サーバ2に接続すると(図3のS11、YES)、既存クライアントへは、その後もPフレーム11c、Pフレーム11dと順次ストリーミングを続ける。
新規クライアントへは、静止画像符号化器25が生成した静止画フレーム20(静止画符号化データ)を送出し、以降は既存クライアントへの次のキーフレームであるIフレーム12から、既存クライアントと同じタイミングでPフレーム12a、Pフレーム12bと順次ストリーミングを行う。
このように実施の形態8によれば、接続中の既存クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なく静止画符号化データを送出できるので、既存クライアントへの安定したストリーミングを持続しながら、新規クライアント側では動画像の表示開始を待つことなく、短時間で静止画像を表示しその後動画を表示することが可能となる。
(実施の形態9)
つぎに、図1、3、7、9を用いて本発明の実施の形態9について説明する。実施の形態9では、新規クライアントへの静止画符号化データを連続して生成し新規クライアントに送信する。その後既存クライアントへ次のキーフレーム(Iフレーム)を送信する時から、既存クライアントと同じ動画データを送信する。実施の形態9の画像ストリーミングシステムは、実施の形態1、8で説明した図1、7の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
つぎに、図1、3、7、9を用いて本発明の実施の形態9について説明する。実施の形態9では、新規クライアントへの静止画符号化データを連続して生成し新規クライアントに送信する。その後既存クライアントへ次のキーフレーム(Iフレーム)を送信する時から、既存クライアントと同じ動画データを送信する。実施の形態9の画像ストリーミングシステムは、実施の形態1、8で説明した図1、7の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3、8と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態9の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3で説明した処理と同様であるためその説明を省略する。
ここでは、実施の形態1〜3、8の画像ストリーミングシステムと異なる動作として、動画像ストリーミング制御中に新規に受信クライアントが接続した場合の動作について説明する。
接続中の受信クライアント(既存クライアント)3へのストリーミング中に、新規に接続した受信クライアント(新規クライアント)3が存在する場合は、S11の処理において新規配信要求があると判断し、アプリケーション処理部23は新規に接続する受信クライアント3との接続設定と新規配信要求検出時の処理を行う(S18)。
まず、アプリケーション処理部23は、送出するデータがキーフレームであるか否かを判断する。アプリケーション処理部23は、既存クライアントへ次にストリーミングする符号化データがキーフレームである場合には何も実行しない。
一方、既存クライアントへ次にストリーミングする符号化データがキーフレームでない場合は、静止画像符号化器25によって静止画符号化データを生成し、サーバ制御部24による制御によって新規クライアントへサーバ処理する(図3に破線で示した流れ)。これにより、新規クライアントへ静止画符号化データが送出されてストリーミングが開始される。
この後、送信サーバ2は、S12の処理へ移行する。この後の処理は実施の形態1、8で説明した接続中の受信クライアント3への動画像ストリーミング制御と同様であるが、S12の処理において送出するデータがキーフレームであるとアプリケーション処理部23が判断した場合は、新規クライアントへもS15で符号化したフレーム内符号化データのストリーミングを行う。
アプリケーション処理部23が新規配信識別の設定を行った後、アプリケーション処理部23が新規配信識別が設定されていることを検出すると(S14)、静止画像符号化器25によって静止画符号化データ(2つ目以降の静止画符号化データ)を生成し、サーバ制御部24による制御によって新規クライアントへサーバ処理する。これにより、新規クライアントへ静止画符号化データが送出される。次回の符号化処理が、キーフレーム作成のためのフレーム内符号化となるまで、静止画像符号化器25によって静止画符号化データを生成し、サーバ制御部24による制御によって新規クライアントへサーバ処理する。アプリケーション処理部23は、次回の符号化処理がキーフレーム作成のためのフレーム内符号化である場合にのみ新規配信識別を解除し、以降は既存クライアントと同じ動画像符号化データを新規クライアントへストリーミングする。
このようにS17のサーバ処理によって次のキーフレームまで静止画符号化データが連続して新規クライアントへ送出されるが、その際M−JPEG(Motion−JPEG)などの方式を利用して静止画符号化データを送出してもよい。
受信クライアント3(既存クライアントや新規クライアント)では、実施の形態1での処理と同様に、送信サーバ2からストリーミングされる符号化データを受信して画像表示する。なお、実施の形態9では、動画像符号化器22がフレーム内符号化処理を行った後、動画像符号化器22が生成したフレーム内符号化データの保存(S16)を行わない。
図9は、実施の形態9の画像ストリーミングのフレーム構成を示す図である。図9に示すように、既存クライアントへはPフレーム10y、Pフレーム10z、Iフレーム11、Pフレーム11a、Pフレーム11bと順次ストリーミングを行っている。
ここで、既存クライアントへPフレーム11bをストリーミング中に、新規クライアントが送信サーバ2に接続すると(図3のS11、YES)、既存クライアントへは、その後もPフレーム11c、Pフレーム11dと順次ストリーミングを続ける。
新規クライアントへは、静止画像符号化器25が生成した静止画フレーム30a(静止画符号化データ)を送出し、以降は既存クライアントへはPフレーム11c、Pフレーム11d、Pフレーム11eと順次ストリーミングを行いながら、新規クライアントへは静止画フレーム30b、静止画フレーム30cと順次静止画フレームの送出を行う。
その後、新規クライアントへは、既存クライアントへの次のキーフレームであるIフレーム12から、既存クライアントと同じタイミングでPフレーム12a、Pフレーム12bと順次ストリーミングを行う。
このように実施の形態9によれば、接続中の既存クライアントへは一連のストリーミングを何ら変更することなく持続でき、新規に接続した新規クライアントへは遅延なく静止画符号化データを連続して送出できるので、既存クライアントへの安定したストリーミングを持続しながら、新規クライアントでは動画像の表示開始を待つ必要がなく、短時間で静止画像を連続表示しその後動画を表示することが可能となる。
(実施の形態10)
つぎに、図1、図3、図7〜図9を用いて本発明の実施の形態10について説明する。実施の形態10では、新規クライアントへ送出した静止画符号化データの累積符号量などに基づいて静止画像圧縮符号化を実行するか否かを判断し、静止画像圧縮符号化を実行すると判断した場合のみ静止画符号化データを生成して新規クライアントへ送出する。実施の形態10の画像ストリーミングシステムは、実施の形態1、8、9で説明した図1、7の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
つぎに、図1、図3、図7〜図9を用いて本発明の実施の形態10について説明する。実施の形態10では、新規クライアントへ送出した静止画符号化データの累積符号量などに基づいて静止画像圧縮符号化を実行するか否かを判断し、静止画像圧縮符号化を実行すると判断した場合のみ静止画符号化データを生成して新規クライアントへ送出する。実施の形態10の画像ストリーミングシステムは、実施の形態1、8、9で説明した図1、7の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3、8、9と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態10の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3で説明した処理と同様であるためその説明を省略する。ここでは、実施の形態9と異なるストリーミング制御の処理手順について説明する。
アプリケーション処理部23が新規配信識別の設定を行った後、アプリケーション処理部23が新規配信識別が設定されていることを検出すると(S14)、アプリケーション処理部23は、予め決められたパターン(例えば、ブルーバックに所定の文字や絵が記されたパターン画など)(受信クライアント3で最初の画像表示を行なうまでの繋ぎの画像)や新規クライアントへ送出した静止画符号化データの累積した符号量(ストリーミング済みのデータ量)に基づいて静止画像圧縮符号化を実行するか否かを判断する。アプリケーション処理部23は、静止画符号化データを生成するタイミングになると、静止画符号化データを生成するタイミング毎に静止画像圧縮符号化を実行するか否かを判断する。
静止画像圧縮符号化を実行する場合は、静止画像符号化器25によって静止画符号化データを生成し、サーバ制御部24による制御によって新規クライアントへサーバ処理する。これにより、新規クライアントへ静止画符号化データが送出される。次回の符号化処理がキーフレーム作成のためのフレーム内符号化である場合にのみ新規配信識別を解除し、以降は既存クライアントと同じ動画像符号化データを新規クライアントへストリーミングする。
実施の形態10の画像ストリーミングのフレーム構成は、図9に示した実施の形態9の画像ストリーミングのフレーム構成と同様の構成を有している。実施の形態10では、新規クライアントへの静止画フレームの送出が発生する場合(タイミング)と、発生しない場合がある点が実施の形態9と異なる。
このように実施の形態10によれば、接続中の既存クライアントへは一連のストリーミングを何ら変更することなく持続できる。また、新規に接続した新規クライアントへは遅延なく静止画符号化データを予め決められたパターンに従って送出でき、動画像データと比べて一般的にデータ量の多い静止画データによって伝送帯域を占有することがない。これにより、既存クライアントへの安定したストリーミングを持続しながら、新規クライアントでは動画像の表示開始を待つ必要がなく、短時間で静止画像を連続表示しその後短時間で動画を表示することが可能となる。
(実施の形態11)
つぎに、図1、3、5、7、8を用いて本発明の実施の形態11について説明する。実施の形態11では、実施の形態8〜10において動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにGOVヘッダ93などを保存し、受信クライアント3へ送信する。
つぎに、図1、3、5、7、8を用いて本発明の実施の形態11について説明する。実施の形態11では、実施の形態8〜10において動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにGOVヘッダ93などを保存し、受信クライアント3へ送信する。
実施の形態11の画像ストリーミングシステムは、実施の形態1で説明した図1の画像ストリーミングシステム、実施の形態8〜10で説明した図7の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3、8〜10と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態11の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3、8〜10で説明した処理と同様であるためその説明を省略する。
接続中の受信クライアントである既存クライアントへのストリーミング中に新規に接続した受信クライアントである新規クライアントが存在する場合の処理は、以下に説明する内容を除いて実施の形態8〜10で説明した内容と同様である。
まず、実施の形態11では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにGOVヘッダ93の保存も行う(S16)。
さらに、実施の形態8〜10との相違点は、S14での新規配信識別の解除を行わないこと、S15においてフレーム内符号化データを生成した際に新規配信識別が設定されていれば新規配信識別の解除を行い、S16において保存したGOVヘッダ93とともにフレーム内符号化データをサーバ処理する(S17)。これにより、新規クライアントから新規配信要求があった場合に、送信サーバ2が既存クライアントへ送出するデータがキーフレームであると、新規クライアントへも保存しておいたGOVヘッダ93とともにフレーム内符号化データを新規クライアントへストリーミングすることができる。なお、送信サーバは、GOVヘッダ93を有したフレーム内符号化データを保存することなく新規クライアントや既存クライアントへ送出してもよい。
なお、実施の形態11では、動画像符号化器22が生成したフレーム内符号化データとともにMPEG−4に規定のGOVヘッダ93の保存を行ない、新規クライアントへストリーミングすることとしたが、フレーム内符号化データとともに保存し新規クライアントへストリーミングするヘッダはMPEG−4に規定のGOVヘッダ93に限られない。すなわち、動画像符号化器22が生成したフレーム内符号化データとともに、他の動画像符号化方式で規定されたヘッダ(GOVヘッダ93と同等のヘッダ)を保存し新規クライアントへストリーミングしてもよい。
このように実施の形態11によれば、実施の形態8〜10の効果に加えて、新規クライアントは、GOVヘッダ93又はこれと同等のヘッダに含まれる情報を取得できるので、受信クライアントは予め決められた制御パラメータで動作する必要はなく、実施の形態8〜10の画像ストリーミングシステムよりも融通度の高い画像ストリーミングシステムを提供することが可能となる。
(実施の形態12)
つぎに、図1、3、5、7、8を用いて本発明の実施の形態12について説明する。実施の形態12では、実施の形態8〜10において動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOLヘッダ92およびGOVヘッダ93などを保存し、受信クライアント3へ送信する。
つぎに、図1、3、5、7、8を用いて本発明の実施の形態12について説明する。実施の形態12では、実施の形態8〜10において動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOLヘッダ92およびGOVヘッダ93などを保存し、受信クライアント3へ送信する。
実施の形態12の画像ストリーミングシステムは、実施の形態1で説明した図1の画像ストリーミングシステム、実施の形態8〜10で説明した図7の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3、8〜10と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態12の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3、8〜10で説明した処理と同様であるためその説明を省略する。
接続中の受信クライアントである既存クライアントへのストリーミング中に新規に接続した受信クライアントである新規クライアントが存在する場合の処理は、以下に説明する内容を除いて実施の形態8〜10で説明した内容と同様である。
まず、実施の形態12では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のVOLヘッダ92およびGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにVOLヘッダ92およびGOVヘッダ93の保存も行う(S16)。
さらに、実施の形態8〜10との相違点は、S14での新規配信識別の解除を行わないこと、S15においてフレーム内符号化データを生成した際に新規配信識別が設定されていれば新規配信識別の解除を行い、S16において保存したVOLヘッダ92およびGOVヘッダ93とともにフレーム内符号化データをサーバ処理する(S17)。これにより、保存しておいたVOLヘッダ92およびGOVヘッダ93とともにフレーム内符号化データを新規クライアントへストリーミングすることができる。
なお、実施の形態12では、動画像符号化器22が生成したフレーム内符号化データとともにMPEG−4に規定のVOLヘッダ92、GOVヘッダ93の保存を行ない、新規クライアントへストリーミングすることとしたが、フレーム内符号化データとともに保存し新規クライアントへストリーミングするヘッダはMPEG−4に規定のVOLヘッダ92、GOVヘッダ93に限られない。すなわち、動画像符号化器22が生成したフレーム内符号化データとともに、他の動画像符号化方式で規定されたヘッダ(VOLヘッダ92と同等のヘッダ、GOVヘッダ93と同等のヘッダ)を保存し新規クライアントへストリーミングしてもよい。
このように実施の形態12によれば、実施の形態8〜10の効果に加えて、新規クライアントは、複数のヘッダに含まれる情報(VOLヘッダ92又はこれと同等のヘッダに含まれる情報と、GOVヘッダ93又はこれと同等のヘッダに含まれる情報)を取得できるので、受信クライアントは予め決められた制御パラメータで動作する必要はなく、実施の形態8〜11の画像ストリーミングシステムよりも融通度の高い画像ストリーミングシステムを提供することが可能となる。
(実施の形態13)
つぎに、図1、3、5、7、8を用いて本発明の実施の形態13について説明する。実施の形態13では、実施の形態8〜10において動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOヘッダ91、VOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOヘッダ91、VOLヘッダ92およびGOVヘッダ93などを保存し、受信クライアント3へ送信する。
つぎに、図1、3、5、7、8を用いて本発明の実施の形態13について説明する。実施の形態13では、実施の形態8〜10において動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOヘッダ91、VOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOヘッダ91、VOLヘッダ92およびGOVヘッダ93などを保存し、受信クライアント3へ送信する。
実施の形態13の画像ストリーミングシステムは、実施の形態1で説明した図1の画像ストリーミングシステム、実施の形態8〜10で説明した図7の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3、8〜10と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態12の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3、8〜10で説明した処理と同様であるためその説明を省略する。
実施の形態13では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のVOLヘッダ92およびGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにVOヘッダ91、VOLヘッダ92およびGOVヘッダ93の保存も行う(S16)。
接続中の受信クライアントである既存クライアントへのストリーミング中に新規に接続した受信クライアントである新規クライアントが存在する場合の処理は、次に説明する内容を除いて実施の形態8〜10で説明した内容と同様である。
まず、実施の形態13では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のVOLヘッダ92およびGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにVOヘッダ91、VOLヘッダ92およびGOVヘッダ93の保存も行う(S16)。
さらに、実施の形態8〜10との相違点は、S14での新規配信識別の解除を行わないこと、S15においてフレーム内符号化データを生成した際に新規配信識別が設定されていれば新規配信識別の解除を行い、S16において保存したVOヘッダ91、VOLヘッダ92およびGOVヘッダ93とともにフレーム内符号化データをサーバ処理する(S17)。これにより、保存しておいたVOヘッダ91、VOLヘッダ92およびGOVヘッダ93とともにフレーム内符号化データを新規クライアントへストリーミングすることができる。
なお、実施の形態13では、動画像符号化器22が生成したフレーム内符号化データとともにMPEG−4に規定のVOヘッダ91、VOLヘッダ92、GOVヘッダ93の保存を行ない、新規クライアントへストリーミングすることとしたが、フレーム内符号化データとともに保存し新規クライアントへストリーミングするヘッダはMPEG−4に規定のVOヘッダ91、VOLヘッダ92、GOVヘッダ93に限られない。すなわち、動画像符号化器22が生成したフレーム内符号化データとともに、他の動画像符号化方式で規定されたヘッダ(VOヘッダ91と同等のヘッダ、VOLヘッダ92と同等のヘッダ、GOVヘッダ93と同等のヘッダ)を保存し新規クライアントへストリーミングしてもよい。
このように実施の形態13によれば、実施の形態8〜10の効果に加えて、新規クライアントは、複数のヘッダに含まれる情報(VOヘッダ91又はこれと同等のヘッダに含まれる情報、VOLヘッダ92又はこれと同等のヘッダに含まれる情報、GOVヘッダ93又はこれと同等のヘッダに含まれる情報)を取得できるので、受信クライアントは予め決められた制御パラメータで動作する必要はなく、実施の形態8〜12の画像ストリーミングシステムよりも融通度の高い画像ストリーミングシステムを提供することが可能となる。
(実施の形態14)
つぎに、図1、3、5、7、8を用いて本発明の実施の形態14について説明する。実施の形態14では、実施の形態8〜10において動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOSヘッダ90、VOヘッダ91VOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93などを保存し、受信クライアント3へ送信する。
つぎに、図1、3、5、7、8を用いて本発明の実施の形態14について説明する。実施の形態14では、実施の形態8〜10において動画像符号化器22がフレーム内符号化処理を行なった際に、MPEG−4に規定のVOSヘッダ90、VOヘッダ91VOLヘッダ92およびGOVヘッダ93などが生成された場合は、フレーム内符号化データとともにVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93などを保存し、受信クライアント3へ送信する。
実施の形態14の画像ストリーミングシステムは、実施の形態1で説明した図1の画像ストリーミングシステム、実施の形態8〜10で説明した図7の画像ストリーミングシステムと同様の構成を有しているためその説明を省略する。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3、8〜10と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態12の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態1〜3、8〜10で説明した処理と同様であるためその説明を省略する。
実施の形態14では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93の保存も行う(S16)。
接続中の受信クライアントである既存クライアントへのストリーミング中に新規に接続した受信クライアントである新規クライアントが存在する場合の処理は、次に説明する内容を除いて実施の形態8〜10で説明した内容と同様である。
まず、実施の形態13では、動画像符号化器22がフレーム内符号化処理を行なった際に(S15)、MPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93が生成された場合は、動画像符号化器22が生成したフレーム内符号化データとともにVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93の保存も行う(S16)。
さらに、実施の形態8〜10との相違点は、S14での新規配信識別の解除を行わないこと、S15においてフレーム内符号化データを生成した際に新規配信識別が設定されていれば新規配信識別の解除を行い、S16において保存したVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93とともにフレーム内符号化データをサーバ処理する(S17)。これにより、保存しておいたVOSヘッダ90、VOヘッダ91、VOLヘッダ92およびGOVヘッダ93とともにフレーム内符号化データを新規クライアントへストリーミングすることができる。
なお、実施の形態14では、動画像符号化器22が生成したフレーム内符号化データとともにMPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92、GOVヘッダ93の保存を行ない、新規クライアントへストリーミングすることとしたが、フレーム内符号化データとともに保存し新規クライアントへストリーミングするヘッダはMPEG−4に規定のVOSヘッダ90、VOヘッダ91、VOLヘッダ92、GOVヘッダ93に限られない。すなわち、動画像符号化器22が生成したフレーム内符号化データとともに、他の動画像符号化方式で規定されたヘッダ(VOSヘッダ90と同等のヘッダ、VOヘッダ91と同等のヘッダ、VOLヘッダ92と同等のヘッダ、GOVヘッダ93と同等のヘッダ)を保存し新規クライアントへストリーミングしてもよい。
このように実施の形態14によれば、実施の形態8〜10の効果に加えて、新規クライアントは、複数のヘッダに含まれる情報(VOSヘッダ90又はこれと同等のヘッダに含まれる情報、VOヘッダ91又はこれと同等のヘッダに含まれる情報、VOLヘッダ92又はこれと同等のヘッダに含まれる情報、GOVヘッダ93又はこれと同等のヘッダに含まれる情報)を取得できるので、受信クライアントは予め決められた制御パラメータで動作する必要はなく、実施の形態8〜13の画像ストリーミングシステムよりも融通度の高い画像ストリーミングシステムを提供することが可能となる。
(実施の形態15)
つぎに、図1、3、8、10を用いて本発明の実施の形態15について説明する。実施の形態15では、複数の動画像符号化器の中から所定の動画像符号化器を選択して新規クライアントへのストリーミングを行う。
つぎに、図1、3、8、10を用いて本発明の実施の形態15について説明する。実施の形態15では、複数の動画像符号化器の中から所定の動画像符号化器を選択して新規クライアントへのストリーミングを行う。
図10は、本発明の実施の形態15に係る画像ストリーミングシステムの構成を示すブロック図である。図15の各構成要素のうち図2、7に示す実施の形態1、8の画像ストリーミングシステムと同一機能を達成する構成要素については同一番号を付しており、重複する説明は省略する。
実施の形態15に係る画像ストリーミングシステムの送信サーバ2は、画像入力部21、複数の動画像符号化器22A〜22Z、静止画像符号化器25、アプリケーション処理部23、サーバ制御部24を備えている。画像入力部21は、動画像符号化器22A〜22Zと静止画像符号化器25に接続し、動画像符号化器22A〜22Zと静止画像符号化器25がアプリケーション処理部23に接続している。
複数の動画像符号化器22A〜22Zは、動画像符号化器22A〜22Z毎に設定された種々の解像度(動画像解像度)で画像入力部21からの画像データを、MPEG−4等の規定に従って動画像圧縮符号化を行う。
また、ここでのサーバ制御部24は、受信クライアント3からの接続要求や切断要求に対する接続制御や切断制御、ストリーミングの開始や停止等のプロトコル制御を行うとともに、動画像符号化器22A〜22Zや静止画像符号化器25で生成された符号化データをネットワーク1を介して受信クライアント3へストリーミングする。
また、実施の形態15に係る画像ストリーミングシステムの受信クライアント3は、図7に示した実施の形態8に係る画像ストリーミングシステムの受信クライアント3と同様の構成を有している。
次に、送信サーバ2におけるストリーミング制御の処理手順について説明する。ここでは、実施の形態1〜3、8と同様に図3のフローチャートを用いて送信サーバ2におけるストリーミング制御の処理手順について説明する。なお、実施の形態15の画像ストリーミングシステムにおいて、接続中の受信クライアント3への動画像ストリーミング制御については、実施の形態8で説明した処理と同様であるためその説明を省略する。ここでは、実施の形態8の画像ストリーミングシステムと異なる動作として、動画像ストリーミング制御中に新規に受信クライアントが接続した場合の動作について説明する。
送信サーバ2に新規クライアントが接続した際、新規クライアントが要求している動画像解像度と同じ解像度で符号化を実行している動画像符号化器が存在すればその動画像符号化器を選択し、実施の形態1〜実施の形態14で説明した何れかの手順に従って新規クライアントへのストリーミングを行う。
新規クライアントが要求している動画像解像度と同じ解像度で符号化を実行している動画像符号化器が存在せず、複数の動画像符号化器のうち符号化を実行していない空きの(使用中でない)動画像符号化器がある場合は、空きの動画像符号化器を選択して実施の形態1などの手順(受信クライアントへの動画像ストリーミング制御と同様の制御)に従って新規クライアントへのストリーミングを行う。なお、前述した内容で新規クライアントへのストリーミングを実施するための動画像符号化器を選択できない場合は、新規受信クライアントとの接続を切断する。
また、実施の形態15では画像ストリーミングシステムの送信サーバ2が、静止画像符号化器25を備える構成としたが、送信サーバ2は静止画像符号化器25を備えない構成としてもよい。
また、実施の形態15では画像ストリーミングシステムの受信クライアント3が、静止画像符号化器35を備える構成としたが、受信クライアント3は静止画像符号化器35を備えない構成としてもよい。
このように実施の形態15によれば、新規クライアントから接続があった際、複数の動画像符号化器が全て実行中の場合であっても同じ解像度で符号化実行中の動画像符号化器を選択し、実施の形態1〜14で説明した何れかの手順に従って新規クライアントへのストリーミングができるので、既存クライアントへの安定したストリーミングを持続しながら、新規クライアントでは短時間で画像を表示することが可能となる。
以上のように、本発明にかかる画像ストリーミングシステムは、画像データのストリーミングに適している。
1 ネットワーク
2 送信サーバ
3 受信クライアント
9 動画像フレーム
21 画像入力部
22、22A〜22Z 動画像符号化器(符号化データ生成部)
23 アプリケーション処理部
24 サーバ制御部(ストリーミング部)
25 静止画像符号化器(静止画データ生成部)
31 画像出力部
32 動画像復号化器
33 アプリケーション処理部
34 クライアント制御部
35 静止画像符号化器
90 VOSヘッダ
91 VOヘッダ
92 VOLヘッダ
93 GOVヘッダ
94 VOPヘッダ
95 符号化データ
2 送信サーバ
3 受信クライアント
9 動画像フレーム
21 画像入力部
22、22A〜22Z 動画像符号化器(符号化データ生成部)
23 アプリケーション処理部
24 サーバ制御部(ストリーミング部)
25 静止画像符号化器(静止画データ生成部)
31 画像出力部
32 動画像復号化器
33 アプリケーション処理部
34 クライアント制御部
35 静止画像符号化器
90 VOSヘッダ
91 VOヘッダ
92 VOLヘッダ
93 GOVヘッダ
94 VOPヘッダ
95 符号化データ
Claims (14)
- 動画像データを圧縮符号化するとともに圧縮符号化した圧縮符号化データをネットワークを介してストリーミングする送信サーバと、前記送信サーバがストリーミングした圧縮符号化データを前記ネットワークを介して受信するとともに受信した圧縮符号化データを伸張復号化して画像の表示を行う複数の受信クライアントとを有し、前記送信サーバから前記受信クライアントへは前記圧縮符号化データをフレーム内符号化で生成したフレーム内符号化データおよび前記圧縮符号化データをフレーム間予測符号化で生成したフレーム間予測符号化データをストリーミングする画像ストリーミングシステムにおいて、
前記送信サーバは、
前記フレーム内符号化データおよび前記フレーム間予測符号化データを生成する符号化データ生成部と、
前記符号化データ生成部が生成した前記フレーム内符号化データおよび前記フレーム間予測符号化データを前記受信クライアントへストリーミングするとともに前記受信クライアントへストリーミングする前記フレーム内符号化データを記憶しておくストリーミング部と、
を備え、
前記ストリーミング部は、
自サーバと既に接続中の受信クライアントである接続中クライアントへストリーミングするデータが前記フレーム内符号化データ以外の圧縮符号化データのタイミングである場合に前記接続中クライアントとは別の新たな受信クライアントである新規クライアントから接続要求を受けると、記憶しておいたフレーム内符号化データを用いて前記新規クライアントへのストリーミングを開始することを特徴とする画像ストリーミングシステム。 - 前記ストリーミング部は、前記新規クライアントへのストリーミングを開始した後、前記符号化データ生成部が生成し前記接続中クライアントへストリーミングする前記フレーム内符号化データおよび前記フレーム間予測符号化データを前記接続中クライアントへのストリーミングと同じタイミングで前記新規クライアントへストリーミングすることを特徴とする請求項1に記載の画像ストリーミングシステム。
- 前記符号化データ生成部は、前記フレーム内符号化データを記憶してから記憶した当該フレーム内符号化データを用いた前記新規クライアントへのストリーミングを行うまでの間に前記接続中クライアントへストリーミングしたフレーム間予測符号化データのフレーム数と同数のフレーム間予測符号化データであって、前記フレーム数に応じたヘッダを設定したフレーム間予測符号化データを生成し、
前記ストリーミング部は、前記新規クライアントへのストリーミングを開始すると、記憶しておいた前記フレーム内符号化データ、前記符号化データ生成部にヘッダを設定された前記フレーム数と同数のフレーム間予測符号化データ、記憶しておいた前記フレーム内符号化データを前記新規クライアントへストリーミングした後に前記接続中クライアントへストリーミングしたフレーム間予測符号化データの順番で前記フレーム内符号化データおよび前記各フレーム間予測符号化データを前記新規クライアントへストリーミングすることを特徴とする請求項1に記載の画像ストリーミングシステム。 - 前記符号化データ生成部は、記憶しておいた前記フレーム内符号化データの次に新規クライアントへストリーミングするフレーム間予測符号化データとして、前記フレーム内符号化データを記憶してからの経過時間を示すヘッダを設定したフレーム間予測符号化データを生成し、
前記ストリーミング部は、前記新規クライアントへのストリーミングを開始すると、記憶しておいた前記フレーム内符号化データ、前記符号化データ生成部にヘッダを設定されたフレーム間予測符号化データの順番で前記フレーム内符号化データおよび前記フレーム間予測符号化データを前記新規クライアントへストリーミングすることを特徴とする請求項3に記載の画像ストリーミングシステム。 - 前記符号化データ生成部は、画像の表示を行う際の制御パラメータをヘッダに設定して前記フレーム内符号化データを生成し、
前記ストリーミング部は、前記フレーム内符号化データをストリーミングまたは記憶する際には、前記符号化データ生成部が設定したヘッダとともに前記フレーム内符号化データをストリーミングまたは記憶することを特徴とする請求項1〜4のいずれか1つに記載の画像ストリーミングシステム。 - 動画像データを圧縮符号化するとともに圧縮符号化した圧縮符号化データをネットワークを介してストリーミングする送信サーバと、前記送信サーバがストリーミングした圧縮符号化データを前記ネットワークを介して受信するとともに受信した圧縮符号化データを伸張復号化して画像の表示を行う複数の受信クライアントとを有し、前記送信サーバから前記受信クライアントへは前記圧縮符号化データをフレーム内符号化で生成したフレーム内符号化データおよび前記圧縮符号化データをフレーム間予測符号化で生成したフレーム間予測符号化データをストリーミングする画像ストリーミングシステムにおいて、
前記送信サーバは、
前記フレーム内符号化データおよび前記フレーム間予測符号化データを生成する符号化データ生成部と、
自サーバと既に接続中の受信クライアントである接続中クライアントとは別の新たな受信クライアントである新規クライアントから接続要求を受けた際に、静止画像データを圧縮符号化して静止画符号化データを生成する静止画データ生成部と、
前記符号化データ生成部が生成した前記フレーム内符号化データおよび前記フレーム間予測符号化データ、および前記静止画データ生成部が生成した静止画符号化データを前記受信クライアントへストリーミングするストリーミング部と、
を備え、
前記ストリーミング部は、
前記接続中クライアントへストリーミングするデータが前記フレーム内符号化データ以外の圧縮符号化データのタイミングである場合に前記新規クライアントから接続要求を受けると、前記静止画データ生成部が生成した静止画符号化データを前記新規クライアントへ送出した後、前記符号化データ生成部が生成し前記接続中クライアントへストリーミングする前記フレーム内符号化データおよび前記フレーム間予測符号化データを前記接続中クライアントへのストリーミングと同じタイミングで前記新規クライアントへストリーミングすることを特徴とする画像ストリーミングシステム。 - 前記静止画データ生成部は、前記新規クライアントから接続要求を受けた際に、複数の静止画符号化データを生成し、
前記ストリーミング部は、前記静止画データ生成部が生成した複数の静止画符号化データを前記新規クライアントへ連続して送出することを特徴とする請求項6に記載の画像ストリーミングシステム。 - 前記静止画データ生成部は、
接続要求を受けた新規クライアントへ最初のフレーム内符号化データをストリーミングするまでの間、前記静止画符号化データを生成するタイミングになると前記新規クライアントへ送出した静止画符号化データおよび所定パターンのデータの累積符号量に基づいて前記静止画符号化データを生成するか否かを判断し、前記静止画符号化データを生成すると判断した場合に前記静止画符号化データを生成して前記新規クライアントへ送出することを特徴とする請求項7に記載の画像ストリーミングシステム。 - 前記符号化データ生成部は、画像の表示を行う際の制御パラメータをヘッダに設定して前記フレーム内符号化データを生成し、
前記ストリーミング部は、前記フレーム内符号化データをストリーミングする際には、前記符号化データ生成部が設定したヘッダとともに前記フレーム内符号化データをストリーミングすることを特徴とする請求項6〜8のいずれか1つに記載の画像ストリーミングシステム。 - 前記符号化データ生成部が前記制御パラメータを設定するヘッダは、
MPEG−4に規定のGOVヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記GOVヘッダに対応するヘッダであることを特徴とする請求項5または9に記載の画像ストリーミングシステム。 - 前記符号化データ生成部が前記制御パラメータを設定するヘッダは、MPEG−4に規定のGOVヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記GOVヘッダに対応するヘッダ、およびMPEG−4に規定のVOLヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記VOLヘッダに対応するヘッダであることを特徴とする請求5,9または10のいずれか1つに記載の画像ストリーミングシステム。
- 前記符号化データ生成部が前記制御パラメータを設定するヘッダは、MPEG−4に規定のGOVヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記GOVヘッダに対応するヘッダ、MPEG−4に規定のVOLヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記VOLヘッダに対応するヘッダ、およびMPEG−4に規定のVOヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記VOヘッダに対応するヘッダであることを特徴とする請求5,9〜11のいずれか1つに記載の画像ストリーミングシステム。
- 前記符号化データ生成部が前記制御パラメータを設定するヘッダは、MPEG−4に規定のGOVヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記GOVヘッダに対応するヘッダ、MPEG−4に規定のVOLヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記VOLヘッダに対応するヘッダ、MPEG−4に規定のVOヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記VOヘッダに対応するヘッダ、およびMPEG−4に規定のVOSヘッダまたはMPEG−4とは異なる他の動画像符号化方式で規定された前記VOSヘッダに対応するヘッダであることを特徴とする請求5,9〜12のいずれか1つに記載の画像ストリーミングシステム。
- 前記符号化データ生成部は、複数からなり、
前記新規クライアントから接続要求のあった際に、前記新規クライアントから接続要求のあった動画解像度と同じ解像度で前記接続中クライアントに前記フレーム内符号化データおよび前記フレーム間予測符号化データを生成中の符号化データ生成部が存在する場合、当該符号化データ生成部が接続要求をした前記新規クライアントに前記フレーム内符号化データおよび前記フレーム間予測符号化データを生成させることを特徴とする請求項1〜13のいずれか1つに記載の画像ストリーミングシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006256666A JP2008079061A (ja) | 2006-09-22 | 2006-09-22 | 画像ストリーミングシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006256666A JP2008079061A (ja) | 2006-09-22 | 2006-09-22 | 画像ストリーミングシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008079061A true JP2008079061A (ja) | 2008-04-03 |
Family
ID=39350639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006256666A Pending JP2008079061A (ja) | 2006-09-22 | 2006-09-22 | 画像ストリーミングシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008079061A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009145293A1 (ja) * | 2008-05-30 | 2009-12-03 | 日本電気株式会社 | サーバ装置と通信方法ならびにプログラム |
JP2014017554A (ja) * | 2012-07-05 | 2014-01-30 | Canon Inc | 画像符号化装置 |
JP2019009492A (ja) * | 2017-06-20 | 2019-01-17 | キヤノン株式会社 | 撮像装置、撮像装置の処理方法およびプログラム |
WO2019180869A1 (ja) * | 2018-03-22 | 2019-09-26 | 株式会社Hysエンジニアリングサービス | 画像伝送システム、画像送信装置及び画像受信装置 |
-
2006
- 2006-09-22 JP JP2006256666A patent/JP2008079061A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009145293A1 (ja) * | 2008-05-30 | 2009-12-03 | 日本電気株式会社 | サーバ装置と通信方法ならびにプログラム |
CN102047676A (zh) * | 2008-05-30 | 2011-05-04 | 日本电气株式会社 | 服务器装置和通信方法以及程序 |
JP5257448B2 (ja) * | 2008-05-30 | 2013-08-07 | 日本電気株式会社 | サーバ装置と通信方法ならびにプログラム |
US8693536B2 (en) | 2008-05-30 | 2014-04-08 | Nec Corporation | Server apparatus, communication method and program |
JP2014017554A (ja) * | 2012-07-05 | 2014-01-30 | Canon Inc | 画像符号化装置 |
JP2019009492A (ja) * | 2017-06-20 | 2019-01-17 | キヤノン株式会社 | 撮像装置、撮像装置の処理方法およびプログラム |
WO2019180869A1 (ja) * | 2018-03-22 | 2019-09-26 | 株式会社Hysエンジニアリングサービス | 画像伝送システム、画像送信装置及び画像受信装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107534669B (zh) | 用于多用户视频会议的单一流传输方法 | |
JP5780582B2 (ja) | 配信システムと方法並びに変換装置 | |
JP2002152727A (ja) | 画像情報変換装置及び画像情報変換方法 | |
CN1265644C (zh) | 视频传输***、视频传输单元和编码/解码视频数据的方法 | |
JP2014519246A (ja) | 小待ち時間レート制御システムおよび方法 | |
US7266610B2 (en) | Picture distribution system and method, picture distribution apparatus and a method therefor, picture receiving apparatus and a method therefore, and recording medium and program used therewith | |
AU2002321220A1 (en) | Video transmission system video transmission unit and methods of encoding decoding video data | |
JP5560009B2 (ja) | 動画像符号化装置 | |
WO2011131099A1 (zh) | 对图像数据进行压缩编码的方法和装置 | |
WO2008146892A1 (ja) | 動画像変換装置、動画像変換方法、および動画像変換プログラム | |
JP2008079061A (ja) | 画像ストリーミングシステム | |
JP2006019771A (ja) | 動画受信装置、動画送信装置およびプログラム | |
US20140321556A1 (en) | Reducing amount of data in video encoding | |
JP6089846B2 (ja) | 映像配信システム及びデコーダ並びに映像配信方法 | |
JP4799191B2 (ja) | 通信端末、通信システムおよび通信方法 | |
JP2002125227A (ja) | 画像情報変換装置及び方法 | |
JP2013168941A (ja) | 画像データを表示するためのビデオシステム及び方法及びコンピュータプログラムならびに符号化装置 | |
JP2009081622A (ja) | 動画像圧縮符号化装置 | |
US20110211631A1 (en) | Moving image data distribution system, its method, and its program | |
Endoh et al. | Low delay live video streaming system for interactive use | |
JPH11187383A (ja) | 映像監視システム及び映像監視方法 | |
KR20040046320A (ko) | 동영상 부호화 방법 | |
JP2005341093A (ja) | コンテンツ適応化装置、コンテンツ適応化システム、コンテンツ適応化方法 | |
KR100647369B1 (ko) | 영상전화의 립싱크 동기화 방법 및 영상전화 단말장치 | |
JP2002010266A (ja) | 画像情報変換装置及び方法 |