以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(画像伝送システム)
2.第2の実施の形態(画像伝送システム)
3.第3の実施の形態(画像処理システム)
4.第4の実施の形態(符号化部・復号部)
5.第5の実施の形態(コンピュータ)
<1.第1の実施の形態>
[1-1画像伝送システム]
図1は、画像伝送システムの主な構成例を示すブロック図である。
図1に示される画像伝送システム10は、送信装置11および受信装置12を有し、送信装置11から受信装置12へ、画像データが符号化された符号化データを伝送するシステムである。図1においては、送信装置11および受信装置12の同期に関する構成について示してある。
図1に示されるように、送信装置11は、画像用時刻管理部21とネットワーク伝送用時刻管理部22を有する。また、受信装置12は、画像用時刻管理部31とネットワーク伝送用時刻管理部32を有する。
画像用時刻管理部21および画像用時刻管理部31は、画像データの、垂直同期や水平同期等の、画像表示に関する同期を管理する。
ネットワーク伝送用時刻管理部22およびネットワーク伝送用時刻管理部32は、ネットワーク回線の同期制御を行ったり、画像データの伝送に関する同期制御を行ったりする。この場合、どちらか一方がステイ(STAY)となり、他方がフォロワ(Follower)となる。ステイとなった方が主体となって同期制御を行い、フォロワは、ステイの同期制御に従う。
図2は、図1の画像伝送システム10におけるシステムタイミング構成の例を示す図である。映像伝送の同期管理とネットワーク回線の同期管理は、ネットワーク伝送用時刻管理部22およびネットワーク伝送用時刻管理部32が行うので、図2の例のように、映像伝送の同期管理の制御の方向とネットワーク回線の同期管理の制御の方向は、互いに同一方向に限定される。
例えば、映像伝送の同期管理(図2の表の「Video同期」)において、送信装置11がステイであり、受信装置12がフォロワである場合、ネットワーク回線の同期管理(図2の表の「ネットワーク」)においても、送信装置11がステイとなり、受信装置12がフォロワとなる。
汎用回線を介して通信を行う通信システムの場合、ネットワーク構成やシステム構成等、データ伝送の環境が大きく変化し易い。そのため、図1のようなステイとフォロワの関係が常に最適であるとは限らない。
また、映像伝送の同期管理を、ネットワーク回線の同期管理とは全く別に行う方法も考えられるが、その場合、映像伝送の時刻管理と、ネットワーク回線の時刻管理との間の同期をとることが困難であり、より低遅延なデータ伝送を行うことが困難になる恐れがあった。
[1-2画像伝送システム]
そこで、より柔軟な同期制御を行うことができるように、映像伝送の同期制御を、ネットワーク回線の同期管理とは別に行い、さらに、それらを連携(同期接続)や独立(同期解除)を制御することができるようにする。
図3は、画像伝送システムの主な構成例を示すブロック図である。
図3に示される画像伝送システム100は、本技術を適用した通信システムである。画像伝送システム100は、送信装置101および受信装置102を有し、送信装置101から受信装置102へ、画像データが符号化された符号化データを伝送するシステムである。図3においては、送信装置101および受信装置102の同期に関する構成について示してある。
図3に示されるように、送信装置101は、画像用時刻管理部111、伝送用時刻管理部112、ネットワーク伝送用時刻管理部113を有する。また、受信装置102は、画像用時刻管理部121、伝送用時刻管理部122、およびネットワーク伝送用時刻管理部123を有する。
画像用時刻管理部111および画像用時刻管理部121は、画像データの、垂直同期や水平同期等の、画像用の同期タイミングを管理する。伝送用時刻管理部112および伝送用時刻管理部122は、画像データの伝送用の同期タイミングの管理と、画像データの符号化や復号に関する処理用(圧縮用)の同期タイミングの管理を行う。ネットワーク伝送用時刻管理部113およびネットワーク伝送用時刻管理部123は、ネットワーク回線の同期制御を行う。
この圧縮用の同期タイミングは、図5に示されるような各種遅延量よりなるデータ伝送全体の遅延量がより低減するように、符号化処理や復号処理を行うように、制御される。
また、伝送用の同期タイミングの管理は、ネットワーク回線の同期情報に基づいて行われる。さらに、画像用の同期タイミングの管理は、伝送用の同期タイミングの管理と同一の時刻精度で行われる。上述したように、画像用の同期タイミングの管理と、伝送用の同期タイミングの管理とは、互いに異なる処理部により行われる。しかしながら、同期タイミングがセットされると、これらの同期タイミングは、同位相で動作し続ける。
伝送用の同期タイミングの管理は、ネットワーク回線の同期タイミングの管理と関連付けることもできるし、その関連付けを解除することもできる。例えば、伝送用の同期タイミングのみを変更させることもできる。この変更は、ゆっくりと変更しても、一瞬で変更してもよい。なお、伝送用の同期タイミングの「伝送」には、映像(画像データ)の伝送も、音声(音声データ)の伝送も含まれる。
この同期によってオフセット遅延量を判断すると、伝送用時刻管理部112および伝送用時刻管理部122は、伝送用の同期タイミングを、ネットワーク回線の同期タイミングと分離させ、関連付けを解消させる。これにより、伝送用の同期タイミングが自走する。なお、このとき、画像用の同期タイミングと伝送用の同期タイミングが同位相のままとすることができる。
オフセット遅延量がセットされるとすぐに、伝送用時刻管理部112および伝送用時刻管理部122は、伝送用の同期タイミングを、ネットワーク回線の同期タイミングに関連付ける。伝送用時刻管理部112および伝送用時刻管理部122は、ネットワーク伝送用時刻管理部113やネットワーク伝送用時刻管理部123と、同期情報とのやりとりを行い、伝送用の同期タイミングを、ネットワーク回線の同期タイミングに関連付ける。
以上のように、画像伝送システム100の同期管理の場合、容易に、ネットワーク回線の同期タイミングと伝送用の同期タイミングとを分離させたり、関連付けたりすることができる。したがって、例えば、ネットワーク回線の同期制御部が送信側にあっても受信側にあっても正常に動作するようにすることができる。
例えば、図4に示されるように、映像伝送用同期(Video同期)において、受信装置102の伝送用時刻管理部122(STA2)がステイ(Stay)であり、送信装置101の伝送用時刻管理部112(STA1)がフォロワ(Timing Follower)である場合、ネットワーク回線の同期(ネットワーク)のステイは、STA1であってもよいし、STA2であってもよい。
従来のライブ中継を行うカメラシステムでは、カメラとCCU(Camera Control Unit)は光ファイバケーブル、トライアックスケーブルあるいはマルチケーブルと呼ばれる複合ケーブルで接続されていたが、Ethernet(登録商標)やNGN(Next Generation Network)、または無線といった汎用回線に対応させることで、専用回線や衛星回線と比較し、非常に安価であるため、ライブ中継システムの構築が低コストでできる。
また、ネットワーク上で同期を管理する端末に関係なく、映像同期を制御することが可能になり、シンプルな構成での起動シーケンスを構築することができる。
さらに、非同期網を通してカメラをGenLockできるため、複数の中継制御局と複数台のカメラで同時中継を行うような場合でも、同一な起動シーケンスで、低遅延で高画質なカメラの画像を伝送できる。
[1-3同期制御]
データ伝送の際には、データ伝送開始時に行われる同期処理である初期同期処理や、データ伝送中に行われる同期処理である再同期処理が行われる。これらの同期処理の様子を図6乃至図9に示す。
図6および図7は、ネットワーク回線の同期管理のステイであるネットワーク管理部が受信装置側にあり、フォロワであるネットワーク受信部が送信装置側にある場合の様子を示している。なお、伝送用の同期管理のステイは、画像を受信する受信装置側にあり、フォロワは、画像を送信する送信装置側にある。つまり、ネットワーク回線の同期管理と、伝送用の同期管理とで、ステイとフォロワの向きが互いに同一である。図6および図7の詳細については後述する。
[1-4同期制御]
図8および図9は、ネットワーク回線の同期管理のステイであるネットワーク管理部が送信装置側にあり、フォロワであるネットワーク受信部が受信装置側にある場合の様子を示している。なお、伝送用の同期管理のステイは、画像を受信する受信装置側にあり、フォロワは、画像を送信する送信装置側にある。つまり、ネットワーク回線の同期管理と、伝送用の同期管理とで、ステイとフォロワの向きが互いに逆向きである。図8および図9の詳細については後述する。
このように、ネットワーク回線の同期管理のステイは、伝送用の同期管理の向きに関わらず、送信側にすることもできるし、受信側にすることもできる。
より具体的な処理の流れについては、図10乃至図15を参照して説明する。
[1-5初期同期処理の流れ]
まず、図10のフローチャートを参照して、送信装置101による、より低遅延に映像を同期させるための初期同期処理の流れの例を説明する。必要に応じて図6乃至図9を参照して説明する。
製品に電源投入されると,Power On Resetがシステム全体に投入され,システムPLLが動作を開始する。初期状態においては、送受信間の回線同期が獲得されていないため、時刻情報を管理するブロックが送受信間の時刻情報を気にせずに電源の立ち上がりで動作を開始する。
ステップS101において、送信装置101は、ネットワーク伝送用時刻管理部113による管理の基、ネットワーク回線の時刻同期を獲得する(図6の場合、処理152乃至処理158、図8の場合、処理201乃至処理207、処理209)。本機能を実現するために、GPSやIEEE1588といった技術が存在する。
ステップS102において、送信装置101は、画像入力を開始する。この処理のタイミングは任意である。画像入力を開始することにより、ステップS103において設定される初期値が判断される。ステップS103において、送信装置101は、画像圧縮エンコーダの初期化を行う。なお、この処理の有無にかかわらず、初期化の設定値が決定されるようにしてもよい。ステップS104において、送信装置101は、入力された画像データの圧縮を開始する。
ステップS105において、送信装置101は、伝送用時刻管理部112の管理の基、映像伝送を開始し、画像データを符号化した符号化データを、汎用回線を含むネットワークを介して受信装置102に伝送させる(図6の場合処理160、図8の場合処理211)。
ステップS106において、伝送用時刻管理部112は、予め把握している遅延オフセット量をセットする。例えば、前回設定された値を保存しておき(図6の場合処理151、図8の場合処理208)、その保存された値を再セットする(図6の場合処理168、図8の場合処理220)。この処理により、送信装置101は、初期同期にかかる時間を低減させることができる。なお、このステップS106の処理は、図10のシーケンス順に限らないものとする。例えば、図10のステップS106の位置よりも前に処理が行われればよい。
ステップS107において、伝送用時刻管理部112は、受信装置102から遅延オフセット量の測定結果の通知を受け取るまで待機する。通知が受け取られると、処理は、ステップS108に進む。
ステップS108において、伝送用時刻管理部112の制御に従って、送信装置101は、映像のタイミング信号であるVSYNCやHSYNCのタイミングを変更するために、一度入力映像を停止し、映像同期とネットワーク同期との間の同期を外す(図6の場合処理165、図8の場合処理216)。
通常の場合、映像圧縮エンコーダは、VSYNCやHSYNCのタイミングが変更されると、事前に把握していた映像データ分が入力されない可能性があるため、一時的に正常動作しない事がある。そのため、映像圧縮エンコーダが耐えられる程度の周波数シフトのみVSYNCやHSYNCのタイミングが機能を有してもよい。
ステップS109において、伝送用時刻管理部112は、同期獲得位置(SYNC位置)を変更させる(図6の場合処理166、図8の場合処理217)。ステップS109の処理により同期獲得位置が変更されると、伝送用時刻管理部112は、ステップS110において、受信装置102から通知されるオフセット遅延量を基に、伝送用時刻管理部112による映像入力タイミングの再設定(図6の場合処理192、図8の場合処理242)を行う。なお、この間、ネットワーク同期は維持される。
ステップS111において、送信装置101は、測定結果に基づく遅延量で映像入力を再開し、映像同期とネットワーク同期とを同期させる。また、送信装置101は、映像同期の補正処理を終了して、映像伝送が開始できる環境が整う状態を示す。ただし、映像データが乱れても良い、または、VSYNC,HSYNCの間隔が変更されても対応可能な機能がある場合、リセットを行わなくてもよい。
ステップS112において、送信装置101は、映像伝送を開始する(図7の場合処理174、図9の場合処理234)。
ステップS113において、伝送用時間管理部112に制御される送信装置101は、微小なレベルでオフセット遅延量を補正し、その微小なレベルの変化に対応する。つまり、この処理においては、送信装置101は、HD-SDI、3D-SDI、HDMI(登録商標)、Display Port等の標準規格映像入出力インタフェースの規格を満たすぐらいのオフセット量を修正する動作を行う(図7の場合処理177、処理180、および処理181(すなわち、処理194)、図9の場合処理237乃至処理239(すなわち、処理243))。
ステップS114において、送信装置101は、受信装置102からオフセット遅延量に関するコマンドを受信するか否かを確認する。コマンドが受信された場合、処理は、ステップS113に戻り、それ以降の処理が繰り返される。また、受信しない場合、初期動作処理が終了する。
以上のように、送信装置101は、映像伝送中も送受信間のわずかな同期ズレを補正するため、受信装置102からのコマンドによって送信時間管理を微量補正する。
[1-6再同期処理の流れ]
次に、図11および図12のフローチャートを参照して、送信装置101による再同期処理の流れの例を説明する。例えば、ネットワーク回線トポロジ―を変更する場合、この再同期処理が実行される。
今までサービスしていた映像伝送の同期とは異なるタイミングで同期獲得処理が必要になった場合、この再同期処理が開始される。
ステップS131において、送信装置101は、受信装置102からの再同期要求を取得する。なお、ネットワーク回線の同期が終了しているものとする。
ステップS132において、送信装置101は、現状の同期関係とネットワーク回線トポロジ―を変更後の同期関係が異なり、映像伝送の再同期が必要か否かを判断する。再同期が必要でない場合、再同期処理が終了される。
また、再同期が必要な場合、処理は、ステップS133に進む。
ステップS133において、伝送用時刻管理部112により制御される送信装置101は、現状の映像伝送の同期がおかしい状態(Error状態)から映像伝送の再同期を決定する。
ステップS134において、送信装置101は、システム全体を初期化するか否かを判断する。映像伝送の再同期だけでなくシステム全体の再同期が必要であると判定された場合、処理は、図12のステップS141に進む。
また、ステップS134において、映像伝送の再同期が必要だがシステム全体の初期化処理が必要ないと判定された場合、処理は、ステップS135に進む。
ステップS135において、ネットワーク伝送用時刻管理部113により制御される送信装置101は、ネットワーク回線の再起動を行うか否かを判定する。物理層の再起動を行う必要がある場合、処理はステップS136に進む。
ステップS136において、ネットワーク伝送用時刻管理部113により制御される送信装置101は、ネットワーク回線の同期情報を初期化する。ステップS136の処理が終了すると、処理は図12のステップS142に進む。
また、ステップS135において、物理層の再起動を行う必要が無いと判定された場合、処理は、ステップS137に進む。
ステップS137において、伝送用時刻管理部112により制御される送信装置101は、映像伝送の同期タイミングを初期化する。つまり、画像データの符号化処理が初期化される。ステップS137の処理が終了すると、処理は、図12のステップS143に進む。なお、画像データの符号化処理を初期化する代わりに、画像データのフレームのブランク期間を通常よりも短くして、画像データの符号化処理を継続させるようにしてもよい。
図12のステップS141乃至ステップS152の各処理は、図10のステップS103乃至ステップS114の各処理と同様に実行される。
ステップS152において、オフセットとネットワーク遅延量が一致していると判定された場合、処理は、図11に戻り、再同期処理が終了する。
以上のようにして、送信装置101は、図6乃至図9の各処理を実現する。
[1-7初期同期処理の流れ]
次に、受信装置102により実行される各種処理について説明する。図13のフローチャートを参照して、受信装置102による、より低遅延に映像を同期させるための初期同期処理の流れの例を説明する。必要に応じて、図6乃至図9を参照して説明する。
受信装置102は、ステップS201乃至ステップS203の各処理を、図10のステップS101乃至ステップS103の各処理と同様に行う。ステップS201の処理によりネットワーク回線が同期獲得することで、ネットワーク回線を掌る時間管理が伝送用時間管理部112に関し、送信と同じ時間タイミングを通知する(図6の場合処理162、図8の場合処理213)。この処理により、送信側でセットされるオフセット遅延量分だけ、送信側の時間管理が進んでいる状態になる。
ステップS204において、受信装置102は、送信装置101から伝送されたパケットを受信し、ネットワーク回線エラーを訂正する処理を開始する。なお、本ステップの時点では、送受信間のネットワーク回線遅延量を測定している段階なので、映像乱れを回避するために、映像復号を開始しない。低遅延のシステムでは、各処理の遅延量を極力削減させているので、ネットワーク回線遅延量のような不確定要因があるのにも関わらず、映像表示させてしまうと映像乱れが発生しやすいためである。
ステップS205において、受信装置102は、ステップS204の処理により決定された時刻で映像データの受信を開始する。但し、映像表示は行わない状態のままである。
ステップS206において、受信装置102は、受信した映像データのパケットに付加されたタイムスタンプ値と受信装置102が持っているタイムスタンプ値の差分を比較する。タイムスタンプ値は、ステップS204において一時的に獲得された時刻レベルでタイムスタンプは動作しており、映像データがパケットをして伝送する直前に、タイムスタンプが付加される。
ステップS207において、受信装置102は、上記差分情報を統計処理するステップであり、送受信間の遅延量を算出することで、送信側をどれだけオフセット量させるかを把握する(図6の場合処理163(処理191)、図8の場合処理214(処理241))。
ステップS208において、受信装置102は、上記オフセット量がシステム全体として問題ないかを判定する。問題がない場合、処理はステップS209に進む。
ステップS209において、受信装置102は、次の起動のために演算されたオフセット遅延量を不揮発性メモリへ書き込む。ステップS209の処理が終了すると、処理はステップS205に戻る。
ステップS208において、オフセット遅延量が問題ないと判定された場合、処理はステップS210に進む。ステップS210において、受信装置102は、映像伝送用の同期を獲得する(図7の場合処理172、図9の場合処理232)。
ステップS211において、受信装置102は、映像を表示しても乱れないようなシステム設定になったため、映像の表示をOnにする(図7の場合処理173、図9の場合処理233)。
ステップS212において、受信装置102は、映像受信を開始する(図7の場合処理174、図9の場合処理234)。
ステップS212の処理が終了すると、初期同期処理が終了する。
[1-8再同期処理の流れ]
次に、図14および図15のフローチャートを参照して、再同期処理の流れの、他の例を説明する。
再同期処理が開始されると、受信装置102は、ステップS231において、図13のステップS206と同様の処理を行い、初期同期時と変わらない同期タイミングになっているかどうかを監視する。
ステップS232において、受信装置102は、再同期が必要であるか否かを判定する。再同期が必要でないと判定された場合、処理は、ステップS231に戻る。
また、ステップS232において再同期が必要であると判定された場合、処理は、ステップS233に進む。
ステップS233乃至ステップS237の各処理は、図11のステップS133乃至ステップS137の各処理と同様に実行される。ただし、ステップS234においてシステム全体の初期化処理を行うと判定された場合、処理は、図15のステップS241に進む。また、図14のステップS236の処理が終了した場合、処理は、図15のステップS242に進む。さらに、図14のステップS237の処理が終了した場合、処理は、図15のステップS243に進む。
図15のステップS241乃至ステップS250の各処理は、図13のステップS203乃至ステップS212の各処理と同様に実行される。
以上のようにして、受信装置102は、図6乃至図9の各処理を実現する。
つまり、送信装置101および受信装置102は、ネットワーク回線の同期管理のステイと、伝送用の同期管理のステイとが一致する場合もしない場合も同様に、容易に同期制御を行うことができる。
[1-9システム構成変化]
以上のような柔軟な同期制御を実現することにより、システム構成の変化にも容易に対応することができるようになる。図16は、システム構成変化の例を説明する図である。
例えば、図16のスター型ネットワーク環境において、通信装置STA1から通信装置STA2へ映像伝送するシステムを考える。
サービス開始時点では、通信装置STA1と通信装置STA2の間で画像伝送が行われ、その画像転送中に、新たな通信装置STA3および通信装置STA4がシステムに接続されるとする。
図16の例の場合、スター型トポロジにおいて、サービススタート時点では、ネットワーク管理部(STA)は、通信装置STA1である(Case1)。この場合、STA1-STA2間の画像伝送手順のやりとりは図8および図9のとおりである。
その後、通信装置STA3や通信装置STA4が接続されることによって、トポロジが修正され、ネットワーク管理部(STA)が通信装置STA1から通信装置STA2に変更されるとする。この場合、STA1-STA2間の画像伝送手順のやりとりは図6および図7のとおりである。
このように、画像伝送システム100の送信装置101および受信装置102は、サービス中においても、トポロジの変化を把握し、容易に、変更するネットワーク管理部に応じて転送処理手順を変更することができる。
ネットワーク管理部においては、本実施例に限らないものとする。各リンクのネットワーク管理部は、トポロジの変更だけでなく、ネットワークの負荷やトポロジ、時々刻々と変化するネットワークトラフィックに応じ変更してもよい。
図17は、システム構成変化の他の例を説明する図である。図17のAに示されるメッシュ型ネットワーク環境において、STA1からSTA2へ映像伝送するシステムを考える。それぞれのリンクにおいて、ネットワーク管理部(STA)は、STA1-STA3間ではSTA1、STA1-STA4間ではSTA1、STA3-STA4間ではSTA3、STA3-STA2ではSTA3、STA4-STA2間ではSTA4が選択された例とする。
本環境において、STA1からSTA2へ映像データを送信する。STA1からSTA2への伝送経路は図32のとおり、Case1とCase2がある。ネットワークの経路選択方法として、Proactive方式とReactive方式があるが、本実施例では、Proactive方式を用いて、まず、経路選択をCase1に設定する。なお、経路選択とネットワーク管理部による時間管理は異なるものとする。Case1に伝送経路が選択された状態において、STA3ーSTA4間の画像伝送手順のやりとりは図8および図9のとおりである。本動作中またはサービスが終了時点で、Proactive方式による経路選択が行われ、今度はCase2が選択されたとする。Case2の場合、図17の画像転送手順を行う。
このように、本技術は、同じトポロジにおいても、選択される伝送経路に応じて転送処理手順を変更することが可能となる。
ネットワーク管理部においては、本実施例に限らないものとする。各リンクのネットワーク管理部はネットワークの負荷やトポロジ、時々刻々と変化するネットワークトラフィックに応じ変更してもよいものとする。
ネットワークの経路選択方法として、Proactive方式を例に説明を行ったが、Reacive方式でも良いもとする。または両方を用いてもよい。
さらに、Proactive方式は常に最適な経路選択を行うための試みをしており、突然、Case2に変更されるケースも想定する。
[1-10判定処理の流れ]
また、以上のようなネットワーク構成等、環境の変化を検出し、その変化に応じて、ネットワーク回線の同期制御について、自身をステイとするかフォロワとするかを判定するようにしてもよい。
図18のフローチャートを参照して、判定処理の流れの例を説明する。ここでは、送信装置101が実行する場合について説明する。
判定処理が開始されると、送信装置101は、ステップS301において、ネットワークに接続された通信相手を把握する。ステップS302において、送信装置101は、ネットワーク管理に関する情報を通信相手と交換する。
その情報に基づいて、送信装置101は、ステップS303において、ネットワーク回線の同期について、自身をステイとするか否かを判定する。ステイとすると判定された場合、処理は、ステップS304に進む。
ステップS304において、送信装置101は、ネットワーク同期をステイに設定する。ステップS304の処理が終了すると、判定処理が終了する。
また、ステップS303において、自身をステイとしないと判定された場合、処理はステップS305に進む。
ステップS305において、送信装置101は、ネットワーク同期をフォロワに設定する。ステップS305の処理が終了すると、判定処理が終了する。
以上のように判定処理を行うことにより、送信装置101は、システム構成の変化に応じて柔軟にステイ(フォロワ)の設定を行うことができる。なお、受信装置102が実行する場合、この送信装置101が実行する場合と基本的に同様の処理が行われる。つまり、受信装置102も、送信装置101と同様に、システム構成の変化に応じて柔軟にステイ(フォロワ)の設定を行うことができる。
以上のような同期制御は、画像データを伝送するシステムであれば、任意のシステムに適用することができる。例えば、以下に説明するような、遅延量をより低減させるようにFEC処理の遅延制御を行うシステムにも適用することができる。
<2.第2の実施の形態>
[2-1遅延比率例]
従来、インターネットやLAN(Local Area Network)など様々なネットワークを介して、画像データ(特に動画像データ)を転送するアプリケーションやサービスが広く利用されている。
ネットワークを介して画像データを送受信する場合、送信側で符号化(圧縮)処理によりデータ量を減少させた上でネットワークに送出し、受信側で符号化された受信データを復号(伸長)処理して再生するのが一般的である。
例えば、画像圧縮処理の最も知られた手法として、MPEG(Moving Pictures Experts Group)と呼ばれる圧縮技術がある。MPEG圧縮技術を用いる場合、MPEG圧縮技術により生成されたMPEGストリームがIP(Internet Protocol)に従ったIPパケットに格納され、ネットワーク経由で配信される。そして、MPEGストリームは、PC(Personal Computer)やPDA(Personal Digital Assistants)、携帯電話などの通信端末を用いて受信され、各端末の画面上に表示される。
このような状況の中、画像データの配信を主目的とする例えばビデオオンデマンドやライブ映像の配信、あるいはビデオ会議、テレビ電話などのアプリケーションにおいては、ネットワークのジッタによって送信側のデータが全て受信側へ到達しない環境や、異なる能力を持つ端末に画像データが受信される環境があり、それらの環境を想定する必要がある。
例えば、1つの送信源から送信される画像データは、携帯電話などの解像度の低いディスプレイと処理能力の低いCPU(Central Processing Unit)を有する受信端末によって受信され、表示される可能性がある。また、それと同時に、デスクトップPCのように高解像度のモニタと高性能のプロセッサを有する受信端末によって受信され、表示される可能性もある。
このように、ネットワーク接続環境によって、パケット受信状況が異なることを想定する場合、例えば送受信するデータの符号化を階層的に実行する、階層符号化と呼ばれる技術が利用される。階層符号化された画像データにおいては、例えば高解像度のディスプレイを有する受信端末向けの符号化データ、及び低解像度のディスプレイを有する受信端末向けの符号化データが選別して保持され、受信側で画像サイズや画質を適宜変更することができる。
階層符号化が可能な圧縮・伸張方式としては、例えばMPEG4とJPEG(Joint Photographic Experts Group)2000によるビデオストリームが挙げられる。MPEG4では、FGS(Fine Granularity Scalability)技術が標準規格として取り込まれプロファイル化される予定であり、この階層符号化技術によりスケーラブルに低いビットレートから高いビットレートまで配信することが可能と言われている。
また、ウェーブレット(Wavelet)変換を基盤とするJPEG2000では、ウェーブレット変換の特徴を生かして空間解像度をベースにパケットを生成し、または画質をベースに階層的にパケットを生成することが可能である。また、JPEG2000では、静止画だけではなく動画を扱えるMotion JPEG2000(Part3)規格により、階層化したデータをファイルフォーマットで保存することが可能である。
さらに、階層符号化を適用したデータ通信の具体案として提案されているものとして、離散コサイン変換(DCT(Discrete Cosine Transform))を基盤とするものがある。これは通信対象の例えば画像データをDCT処理し、DCT処理により高域と低域とを区別して階層化を実現し、高域と低域との階層で区分したパケットを生成してデータ通信を実行する方法である。
このような階層符号化された画像データを配信する場合、一般的には即時性(リアルタイム性)が要求されるが、現状ではリアルタイム性よりも大画面・高画質の表示が優先される傾向がある。
画像データの配信においてリアルタイム性を確保するためには、IPベースの通信プロトコルとして、通常はUDP(User Datagram Protocol)が用いられる。さらに、UDPの上のレイヤにおいてはRTP(Real-time Transport Protocol)が用いられる。RTPパケットに格納されるデータフォーマットは、アプリケーションごと、即ち符号化方式ごとに定義された個々のフォーマットに従う。
また、通信ネットワークとしては、無線または有線によるLAN、光ファイバー通信、xDSL、電力線通信、またはCo-axといった通信方式が用いられる。これらの通信方式は年々高速化しているが、それを送信する画像コンテンツも高画質化している。
例えば、現在主流になっているMPEG方式またはJPEG2000方式における代表的なシステムのコード遅延(符号化遅延+復号遅延)は2ピクチャ以上であり、これでは画像データ配信における十分な即時性(リアルタイム性)が確保されているとは言い難い。
そこで、近日、1ピクチャをN個のライン(Nは1以上)の集合に分割し、分割した集合(ラインブロックと称する)ごとに画像を符号化することで遅延時間を短くする画像圧縮方式(以下、ラインベース・コーデックと称する)が提案され始めている。
ラインベース・コーデックの利点としては、低遅延のほか、画像圧縮の1単位で取り扱う情報が少ないことにより、高速処理やハードウエア規模の低減が可能といった利点がある。
例えば、特許文献1には、ラインベース・コーデックに基づく通信データについて、ラインブロックごとに適切に欠落データの補完処理を行う通信装置が記載されている。
また、特許文献2には、ラインベース・コーデックを用いる場合の遅延の低減と処理の効率化を図った情報処理装置が記載されている。
さらに、特許文献3には、ラインベース・ウェーブレット変換された画像データの低周波数成分を伝送することにより画質の劣化を抑える送信装置が記載されている。
ラインベース・コーデックの利用により、高画質・低遅延伝送が行えるようになったため、今後、ライブ中継を行うカメラシステムへの適用が期待されている。
しかしながら、画像データはデータ量が多い。そのた画像像データの伝送を、Ethernet(登録商標)やNGN(Next Generation Network)、または無線といった汎用回線を介して行うようにすると、遅延量の増大により、画像データ伝送の即時性(リアルタイム性)が損なわれる恐れがある。
特に、例えば、ライブ中継等を行うカメラシステムにおいては、データ伝送の即時性に対する要求が高い。しかしながら、高画質な動画像データの伝送が行われるため、データ量は多い。そのため、汎用回線を介したデータ伝送では、即時性が破綻する可能性がさらに高くなる。
さらに、汎用回線に対応させるために回線上のエラーをある程度想定したシステム構成を構築する必要がある。専用回線の場合、帯域の制御をローカルに行うことができるが、汎用回線の場合、回線の安定性が保証されていないので、このエラー対策は、事実上必須となる。しかしながら、このような機能追加は、さらなる遅延の発生を招く恐れもある。
図19は、特許文献2に記載のシステムにおけるデータ伝送の遅延比率を示している。このシステムにおいては、低遅延を実現するために、バッファ遅延量が、送信側と受信側シェアされている。ラインベース・コーデックはピクチャベース・コーデックに比べて、演算に費やせる時間が極端に少ない。そこで、送信バッファ待機時間+受信バッファ待機時間を一定とし、難しい画像データの符号化を行う場合、送受信バッファの待機時間の比率を変更し、送信に費やすバッファ待機時間を増やして、受信バッファの待機時間をその分減らすように制御する。送信バッファ待機時間が長くなることで難しい画像によって発生した一時的な大量なデータをシステム遅延的には吸収することができる。Case1乃至Case3は、映像データのメモリ蓄積量の多さによって場合分けした遅延比率の例を示したものである。ケース1(Case1)が、メモリ蓄積量(伝送データ量)が最も多い場合の遅延比率を示しており、ケース3(Case3)が、メモリ蓄積量(伝送データ量)が最も少ない場合の遅延比率を示している。
しかしながら、コーデックだけで低遅延を実現するのには限度があり、同図のような低遅延環境においては、システム全体の様々な機能において低遅延を実現させるノウハウが必要となる。例えば、図19のAの回線遅延において、多少の回線エラーを回復させるような機能として、パケット消失回復機能を実装する環境を考える。
一般的には、パケット訂正機能には、ビットエラー訂正を行う内符号と、ブロック分の訂正や消失回復機能として使われる外符号の2種類が存在する。本明細書では説明を分かりやすくするため、外符号を用いて説明する。外符号は、パケット単位または一定のブロック単位で処理が行われることが多い。外符号には、例えば、リードソロモン符号、LDPC(Low Density Parity Check)符号、ハミング符号、BCH(Bose-Chaudhuri-Hocquenghem)符号、Raptor符号、およびLT(Luby Transform)符号(商標)などがある。図19のAにおいて、パケット消失回復機能を低遅延な期間だけ処理を行わせる方法について考える。勿論、ブロック符号の方式は任意である。
まず、コーデックが持つデータ量と遅延量の特徴について考えてみる。送信側において、伝送データ量が多い場合、符号化データは、かなり小さい遅延量の範囲で所定時間遅らせて送信される。これに対して、伝送データ量が少ない場合、符号化データは、略遅らせられることなく送信される。つまり、送信側においては、伝送データ量に応じた時間(送信バッファ待機時間)、送信される符号化データがバッファに保持される。
受信側においては、デコードを行う時点でデータが揃っている必要がある。そのため、次のプレシンクトのデータ量が多い可能性を考慮して、送信バッファ待機時間+受信バッファ待機時間を一定にするように、デコード開始時刻が制御される。つまり、受信側においては、送信バッファ待機時間に応じた時間(受信バッファ待機時間)、受信された符号化データがバッファに保持される。
図19のBは、ブロック符号であるFEC(Forward Error Correction)を適応させた場合の動作を実施例として記載している。ブロック符号は予め決められたブロック数毎に処理を行うため、そのブロック分のデータを受信するまで受信側で待機するのが一般的である。
受信側では、一定のブロック(またはパケット)分の符号化データを受信した後、パリティを受信して始めてError Correction処理を行う。よって、必然的に受信側は、送信側の誤り訂正パリティ挿入期間と同等の期間を待機する必要がある。
符号化処理を行うシステムの場合、上述したように送信バッファ待機時間が発生する。つまり、伝送データ量が多いものほど必要なブロック分のデータが揃う。そのため、送信側においては、FEC処理時間は小さくなり、伝送データ量が少ないものほどFEC処理時間が長くなる傾向にある。例えば、図19のBのCase1のFEC処理待機時間はCase3の処理時間よりも短い傾向が高い。
つまり、FEC処理を含まない回線遅延が各ケースで一致している場合、Case1のシステム遅延の合計は12になり、Case2では15になり、Case3では18となる。つまり、伝送データ量が少なくなると、システム全体の遅延量が増大してしまう恐れがあった。
[2-2画像伝送システム]
そこで、FEC処理待機時間を送信側で適切に制御し、このような遅延時間の増大を抑制するようにする。
図20は、本技術を適用した画像伝送システムの主な構成例と、その遅延比率の例を説明する図である。
図20のAに示される画像伝送システム1100は、本技術を適用した画像処理システムであり、送信装置1101および受信装置1102を有し、画像データを符号化した符号化データを、汎用回線を含む任意のネットワークを介して、送信装置1101から受信装置1102に伝送するシステムである。
送信装置1101は、本技術を適用した画像処理装置であり、入力された符号化データを受信装置1102に送信する。図20のAに示されるように、送信装置1101は、画像用送信バッファ1111および誤り訂正ブロック長生成部1112を有する。
画像用送信バッファ1111は、画像データを符号化する前段の処理部(図示せず)から入力された符号化データを蓄積し、所定のタイミングにおいて誤り訂正ブロック長生成部1112に供給する。この符号化データを蓄積する時間が送信バッファ待機時間(送信バッファ遅延)である。
誤り訂正ブロック長生成部1112は、供給された符号化データにパリティを付加し、受信装置1102に送信する。この誤り訂正ブロック長生成部1112の処理時間が誤り訂正パリティ挿入期間である。
受信装置1102は、本技術を適用した画像処理装置であり、送信装置1101から伝送された符号化データを受信する。図20のAに示されるように、受信装置1102は、誤り訂正待機バッファ1121と画像用受信バッファ1122を有する。
誤り訂正待機バッファ1121は、誤り訂正処理単位の符号化データ、すなわち、所定のパケット(ブロック)分とパリティを受信するまで、受信した符号化データを保持する。データが揃うと、誤り訂正待機バッファ1121は、誤り訂正処理を行い、訂正後の符号化データを画像用受信バッファ1122に供給する。この符号化データを保持する時間が、誤り訂正遅延である。
画像用受信バッファ1122は、復号処理が開始される所定のタイミングまで、供給された符号化データを保持し、そのタイミングになると、保持している符号化データを、復号処理を行う後段の処理部(図示せず)へ供給する。この符号化データを保持する時間が受信バッファ待機時間(受信バッファ遅延)である。
このような画像伝送システム1100において、受信バッファ待機時間(Decode)とFEC受信遅延時間(FEC Rx)が一致するようなFEC処理量を考えてみる。なお、図20において、システム全体の遅延時間は、送信バッファ待機時間(Encode)と受信バッファ待機時間(Decode)の合計が10になるように分配されている。
したがって、送信バッファ待機時間(Encode)から受信バッファ待機時間(Decode)の見積もりが可能である。つまり、送信装置1101において、受信装置1102の受信バッファ待機時間(Decode)を推定することができる。
また、FEC受信遅延時間(FEC Rx)を受信バッファ待機時間(Decode)の範囲内にすれば、FEC受信遅延時間(FEC Rx)を受信バッファ待機時間(Decode)とは別に用意して待機するのではなく、受信バッファ待機時間(Decode)に含めることができる。つまり、誤り訂正待機バッファ1121が、画像用受信バッファ1122において必要な待機時間を利用してFEC処理を行うようにすることにより、FEC受信遅延時間(FEC Rx)を受信バッファ待機時間(Decode)に含めることができ、システム全体の遅延量を低減させることができる。
さらに、このFEC受信遅延時間(FEC Rx)は、誤り訂正ブロック長生成部1112において設定されるブロック長により決定される。つまり、送信装置1101は、FEC受信遅延時間(FEC Rx)を設定することができる。
そこで、送信装置1101の誤り訂正ブロック長生成部1112が、画像用送信バッファ1111における送信バッファ待機時間(Encode)に基づいて、FECブロックのブロック長を定めることにより、受信バッファ待機時間(Decode)を超えないように、FEC受信遅延時間(FEC Rx)を制御するようにする。
例えば、図20のBに示されるCase1の場合、送信バッファ待機時間(Encode)の割合が10なので、受信バッファ待機時間(Decode)の割合は、0である。そのため、誤り訂正ブロック長生成部1112は、FEC受信遅延時間(FEC Rx)ができるだけ短くなるように、ブロック長を設定する。同図において、Case1の(2)はFECによる遅延時間であるが、括弧は実際には遅延にはならない。送信側では図23のとおり、パリティしか挿入しないため、実質の遅延にはならず、受信側で割合2の分だけ、FECが待機してからデコードを開始するため、受信バッファ待機時間が2の分だけ遅延する。
ただし、この場合、FEC受信遅延時間(FEC Rx)内に、FEC受信処理を終了させることは不可能である。しかしながら、送信バッファ待機時間(Encode)の割合が10となるのは、符号化データのデータ量が伝送路の帯域を超えてしまい、送信側で待ちが発生している状態である。つまり、伝送データ量が多過ぎて、ブロック符号を行う上での送信処理遅延(すなわち、受信処理遅延)は非常に小さくなることが予想される。したがって、この場合、FEC受信遅延時間(FEC Rx)を追加しても、送信バッファ待機時間(Encode)と受信バッファ待機時間(Decode)との和がわずかに増大する程度であり、システム全体の遅延量としての影響は非常に少ない。
また、図20のBのCase2の場合、受信バッファ待機時間(Decode)の割合は5である。そのため、誤り訂正ブロック長生成部1112は、FEC受信遅延時間(FEC Rx)が5以下となるように、ブロック長を設定する。
さらに、図20のBのCase3の場合、受信バッファ待機時間(Decode)の割合は10である。そのため、誤り訂正ブロック長生成部1112は、FEC受信遅延時間(FEC Rx)が10以下となるように、ブロック長を設定する。
以上のように、FEC受信遅延時間(FEC Rx)を受信バッファ待機時間(Decode)と共通化することにより、画像伝送システム1100は、システム全体の遅延時間を低減させることができる。
また、そのような制御を、送信装置1101が単独で行うことができる。つまり、この制御を実現するために、受信装置1102と情報を授受する必要がない。また、受信装置1102による特別な制御も不要である。つまり、送信装置1101は、容易に、システム全体の遅延時間を低減させることができる。
なお、画像の種類によって送信バッファ待機時間(Encode)は変動するが、その変動幅の中で最長の送信バッファ待機時間(Encode)(つまり、受信バッファ待機時間(Decode)が最短となる場合)を基にFECブロック長(FEC受信遅延時間(FEC Rx))決定すればよい。
以上のような画像伝送システム1100において、送信装置1101に、上述した画像伝送システム100の送信装置101のように同期タイミングの管理を実行させることにより、画像データ伝送における映像同期をより容易に制御することができ、より容易に遅延時間を抑制することができるようになる。また、受信装置1102についても同様である。つまり、受信装置1102に、上述した画像伝送システム100の受信装置102のように同期タイミングの管理を実行させることにより、画像データ伝送における映像同期をより容易に制御することができ、より容易に遅延時間を抑制することができるようになる。
<3.第3の実施の形態>
[3-1画像処理システム]
なお、以上に説明した本技術は、図20に示される構成のシステムに限らず、即時性が要求される画像データ伝送が行われる任意のシステムに適用することができる。したがってシステムの構成や用途は任意である。
例えば、スポーツ中継やイベント中継等を行うカメラシステムにも適用することができる。このようなカメラシステムにおいては、複数のカメラ(撮像装置)により撮像されて得られた画像データが、カメラコントロールユニット(CCU(Camera Control Unit))の制御により伝送される。
図21は、本技術を適用した画像処理システムの主な構成例を示す図である。図21に示される画像処理システム1200は、本技術を適用したカメラシステムである。画像処理システム1200は、撮像装置1201-1乃至撮像装置1201-3、並びに、CCU1202を有する。撮像装置1201-1乃至撮像装置1201-3は、CCU1202の制御により、汎用回線であるネットワーク1210を介してCCU1202と通信を行うことができ、例えば、画像や音声の符号化データを授受したり、制御データを授受したりすることができる。
撮像装置1201-1乃至撮像装置1201-3を互いに区別して説明する必要が無い場合、単に撮像装置1201と称する。なお、図21においては、3台の撮像装置1201が設けられているが、画像処理システム1200は、任意の台数の撮像装置1201を有することができる。
例えば、CCU1202の制御により、撮像装置1201-1において得られた画像や音声の符号化データは、ネットワーク1210を介してCCU1202に伝送される。この符号化データは、例えばCCU1202において復号され、画像データや音声データとして、例えば編集装置や中継装置等の、図示せぬ後段の情報処理装置に伝送される。
また、撮像装置1201は、撮像装置1201のユーザ(つまり撮影者)が撮像画像や放送画像を確認するためのモニタ(表示部)やスピーカ等を有しており、CCU1202から伝送された符号化データを復号し、画像をそのモニタに表示したり、音声をスピーカから出力したりすることができる。
したがって、CCU1202は、例えば、撮像装置1201-1から伝送された符号化データ(矢印1221)を、撮像装置1201-1に戻したり(矢印1222)、他の撮像装置1201である撮像装置1201-2や撮像装置1201-3に伝送したりすることができる(矢印1223および矢印1224)。
このようなデータ伝送においては、動画像表示や音声出力が破綻しないように、即時性が要求される。第1の実施の形態において説明したような本技術を適用することにより、データ伝送全体の遅延時間を低減させることができるので、動画像表示や音声出力の破綻を抑制することができる。
[3-2撮像装置]
図22は、図21の撮像装置1201の主な構成例を示すブロック図である。図22に示されるように、撮像装置1201は、撮像部1301、送信部1302、受信部1303、および表示部1304を有する。
撮像部1301は、被写体を撮像し画像データや音声データを生成する。撮像部1301は、生成した画像データや音声データを送信部1302に供給する。
送信部1302は、撮像部1301から供給された画像データ(ビデオ信号入力)や音声データ(音声信号入力)を取得して符号化する。送信部1302は、生成した符号化データをCCU1302等に送信する。
受信部1303は、CCU1202等から伝送される画像や音声の符号化データを受信し、受信した符号化データを復号して、画像データや音声データを抽出し、表示部1304に供給する。
表示部1304は、画像を表示するモニタや音声を出力するスピーカを有する。表示部1304は、受信部1303から供給される画像データ(ビデオ信号出力)の画像をモニタに表示する。また、表示部1304は、受信部1303から供給される音声データを(音声信号出力)の音声をスピーカより出力させる。
図22に示されるように、送信部1302は、ビデオ符号化部1401、パケット生成部1402、待機時間解析部1403、オーディオ符号化部1404、パケット生成部1405、および待機時間解析部1406を有する。また、送信部1302は、多重化部1407、FECパリティ生成部1408、RTPパケット生成部1409、および、FECブロック長制御部1450を有する。さらに、送信部1302は、非同期伝送路インタフェース(I/F)1501、回線制御同期タイミング調整部1510、およびタイムスタンプ生成部1511を有する。
なお、クロック生成部1512および同期信号発生部1513は、送信部1302に含まれない。また、非同期伝送路インタフェース(I/F)1501および回線制御同期タイミング調整部1510は、受信部1303と共有している。
ビデオ符号化部1401は、撮像部1301から出力されたビデオ信号を符号化し、パケット生成部1402に供給する。パケット生成部1402は、供給された符号化データに画像ヘッダを付加してパケット化する。
パケット生成部1402は、また、符号化データのパケットに、メディアに同期したタイムスタンプ(映像制御レイヤ同期用タイムスタンプ)を付加する。パケット生成部1402は、符号化データのパケットを待機時間解析部1403に供給する。
待機時間解析部1403は、ビデオデータのパケットが、ビデオ符号化部1401にある送信バッファにどの程度の期間保持されているかを、パケットに付加された映像制御レイヤ同期用タイムスタンプに基づいて判定する。そして、待機時間解析部1403は、その判定結果に基づいて、受信バッファ待機時間(Decode)を推定する。待機時間解析部1403は、推定した受信バッファ待機時間(Decode)をFECブロック長制御部1450に供給し、それ以外のデータを多重化部1407に供給する。
オーディオ符号化部1404は、撮像部1301から出力されたオーディオ信号を符号化し、パケット生成部1405に供給する。パケット生成部1405は、供給された符号化データに音声ヘッダを付加してパケット化する。
パケット生成部1405は、また、符号化データのパケットに、メディアに同期したタイムスタンプ(映像制御レイヤ同期用タイムスタンプ)を付加する。パケット生成部1405は、符号化データのパケットを待機時間解析部1406に供給する。
待機時間解析部1406は、音声データのパケットが、オーディオ符号化部1404にある送信バッファにどの程度の期間保持されているかを、パケットに付加された映像制御レイヤ同期用タイムスタンプに基づいて判定する。そして、待機時間解析部1406は、その判定結果に基づいて、受信バッファ待機時間(Decode)を推定する。待機時間解析部1406は、推定した受信バッファ待機時間(Decode)をFECブロック長制御部1450に供給し、それ以外のデータを多重化部1407に供給する。
多重化部1407は、ビデオデータのパケットと音声データのパケットを多重化し、1本のストリームとする。
FECブロック長制御部1450は、待機時間解析部1403や待機時間解析部1406から供給された受信バッファ待機時間(Decode)よりも短くなるように、FEC受信遅延時間(FEC Rx)を設定する。そして、FECブロック長制御部1450は、このようなFEC受信遅延時間(FEC Rx)を実現するようにFECブロック長を設定する。FECブロック長制御部1450は、設定したFECブロック長を示す情報をFECパリティ生成部1408に供給する。
FECパリティ生成部1408は、多重化部1407から供給された、パケット化された符号化データを、FECブロック長制御部1450により設定されたFECブロック長分取得すると、パリティを挿入する。FECブロックは、パリティを受信して始めてデータの訂正を行えるため、FEC復号部は、予め決められたブロック長まで(パリティデータの受信が終了するまで)待機し、それから演算を行う。
図23にFECデータ伝送の概念図を示す。FECパリティ生成部1408は、FECブロック長制御部1450により設定されたブロック長分のデータを送信するとパリティを挿入する。図23の例の場合、アプリケーションデータに相当するデータ4つに2つのパリティが生成されている。FEC復号部はデータ1から受信を開始し、パリティ2までを受信して始めてFEC復号処理を行うため、ブロック長を受信する時間分だけ待機する必要がある。
FECパリティ生成部1408は、パリティを挿入すると、それらのデータをRTPパケット生成部1409に供給する。
RTPパケット生成部1409は、RTPパケットを生成する。また、タイムスタンプ生成部1511は、回線制御同期タイミング調整部1510の制御にしたがって、回線制御レイヤ同期用タイムスタンプを生成する。RTPパケット生成部1409は、RTPパケットに回線制御レイヤ同期用タイムスタンプを付加する。RTPパケット生成部1409は、生成したRTPパケットを非同期伝送路インタフェース(I/F)1501に供給する。
非同期伝送路インタフェース1501は、RTPパケットに、UDPヘッダやIPヘッダを付加することにより、IPパケットを生成する。非同期伝送路インタフェース1501は、生成したIPパケットを撮像装置1201の外部に出力し、CCU1202に伝送させる。
また、図22に示されるように、受信部1303は、非同期伝送路インタフェース(I/F)1501、回線制御同期タイミング調整部1510、クロック生成部1512、および同期信号発生部1513を有する。また、受信部1303は、RTPパケット復号部1601、タイムスタンプ復号部1602、逆多重化部1603、FEC復号部1604、デパケタイザ1605、およびビデオ復号部1606を有する。さらに、受信部1303は、FEC復号部1607、デパケタイザ1608、およびオーディオ復号部1609を有する。
なお、タイムスタンプ生成部1511は、受信部1303に含まれない。また、非同期伝送路インタフェース(I/F)1501および回線制御同期タイミング調整部1510は、送信部1302と共有している。もちろん、送信部1302および受信部1303が、これらの処理部を共有せずに、それぞれ、非同期伝送路インタフェース(I/F)1501および回線制御同期タイミング調整部1510を有するようにしてもよい。
CCU1202から伝送されてきたリターンビデオデータパケットやオーディオデータパケット、コマンドデータパケットは、非同期伝送路インタフェース(I/F)1501を介して、RTPパケット復号部1601により、IPヘッダやRTPヘッダの確認が行われる。次に、映像や音声のデータが含まれるRTPヘッダがタイムスタンプ復号部1602に供給され、RTPヘッダの後に付加された回線制御レイヤ同期用タイムスタンプのみクロック生成部1512へ送信される。
逆多重化部1603は、画像データと音声データとを分離する。FEC復号部1604は、画像データのパケットに対してFEC復号処理を行う。FEC復号部1604は、FECパリティ生成部1408において付加されたパリティを用いて、誤ったパケットまたは消失したパケットを復元する。タイムスタンプはカメラでクロックや同期信号を発生させる為に使用される。
デパケタイザ1605は、FEC復号された画像データのパケットに対して、デパケタイズする。ビデオ復号部1606は、デパケタイズされて得られた画像データの符号化データを復号し、それをビデオ信号出力として表示部1304に供給する。
同様に、FEC復号部1607は、音声データのパケットに対してFEC復号処理を行う。FEC復号部1607は、FECパリティ生成部1408において付加されたパリティを用いて、誤ったパケットまたは消失したパケットを復元する。タイムスタンプはカメラでクロックや同期信号を発生させる為に使用される。
デパケタイザ1608は、FEC復号された音声データのパケットに対して、デパケタイズする。オーディオ復号部1609は、デパケタイズされて得られた音声データの符号化データを復号し、それを音声信号出力として表示部1304に供給する。
[3-3パケット構成例]
図24は、パケットの構成例を説明する図である。図24では、1つのIPパケットの内部構成が図24の4段階に分けて示されている。一番上の段において、IPパケットは、IPヘッダ及びIPデータから構成される。IPヘッダには、例えば宛先IPアドレスなどのIPプロトコルに基づく通信経路の制御に関する制御情報などが含まれる。
IPデータは、さらにUDPヘッダ及びUDPデータから構成される。UDPは、リアルタイム性が重視される動画または音声データの配信時などに一般的に使用される、OSI参照モデルのトランスポート層のプロトコルである。UDPヘッダには、例えばアプリケーション識別情報である宛先ポート番号などが含まれる。
UDPデータは、さらにRTPヘッダ及びRTPデータから構成される。RTPヘッダには、例えばシーケンス番号などのデータストリームのリアルタイム性を保証するための制御情報が含まれる。また、RTPヘッダのサブ情報として、回線制御レイヤ同期用タイムスタンプを用意し、回線環境の遅延やジッタ量を時間情報から把握できるようにする。
RTPデータは、画像データのヘッダ(以下、画像ヘッダという。)及びラインベース・コーデックに基づいて圧縮された画像本体である符号化データから構成される。また、画像ヘッダのサブ情報として、映像制御レイヤ同期用タイムスタンプを用意し、FECブロック長制御部1450で判断すべきブロック長の情報や、同期獲得タイミングを高い精度で判断できるような情報を持つ。画像ヘッダには、例えばピクチャ番号やラインブロック番号(1ライン単位で符号化を行う場合にはライン番号)、サブバンド番号などを含むことができる。なお、画像ヘッダは、ピクチャごとに付与されるピクチャヘッダと、ラインブロックごとに付与されるラインブロックヘッダにさらに分けて構成されてもよい。
なお、CCU1202も送信部1302や受信部1303と同様の構成を有する。例えば、撮像装置1201の送信部1302から送信されたパケットは、ネットワーク1210を伝送して、CCU1202の受信部1303により受信される。また、例えば、CCU1202の送信部1302から送信されたパケットは、ネットワーク1210を伝送して、撮像装置1201の受信部1303により受信される。
つまり、例えば、送信部1302が第1の実施の形態の送信装置1101に対応し、受信部1303が第1の実施の形態の受信装置1102に対応する。
また、例えば、送信部1302においては、ビデオ符号化部1401およびパケット生成部1402が、画像用送信バッファ1111に対応し、待機時間解析部1403、FECブロック長制御部1450、およびFECパリティ生成部1408が、誤り訂正ブロック長生成部1112に対応する。
さらに、例えば、受信部1303においては、FEC復号部1604が誤り訂正待機バッファ1121に対応し、デパケタイザ1605やビデオ復号部1606が画像用受信バッファ1122に対応する。
つまり、FECブロック長制御部1450が、FEC復号部1604におけるFEC受信遅延時間(FEC Rx)を、ビデオ復号部1606による受信バッファ待機時間(Decode)よりも短くするように、FECブロック長を設定する。このようにすることにより、送信部1302は、容易に、画像データの伝送において発生する遅延時間を低減させることができる。
[3-4送信処理の流れ]
図25のフローチャートを参照して、送信処理の流れの例を説明する。
送信処理が開始されると、ステップS1001において、ビデオ符号化部1401は、ビデオ信号を符号化する。また、オーディオ符号化部1404は、音声信号を符号化する。
ステップS1002において、パケット生成部1402は、ビデオ信号が符号化された符号化データをパケット化する。パケット生成部1405は、音声信号が符号化された符号化データをパケット化する。
ステップS1003において、パケット生成部1402は、映像制御冷夏同期用タイムスタンプを付加する。
ステップS1004において、待機時間解析部1403は、ビデオ信号のパケットについて、待機時間を求める。また、待機時間解析部1406は、音声信号のパケットについて、待機時間を求める。
ステップS1005において、FECブロック長制御部1450は、ステップS1004において算出された待機時間に基づいてFECブロック長を設定する。
ステップS1006において、多重化部1407は、ビデオ信号のパケットと、オーディオ信号のパケットとを多重化し、1系統のストリームに変換する。
ステップS1007において、FECパリティ生成部1408は、FECブロック長に基づいてパリティを生成する。
ステップS1008において、RTPパケット生成部1409は、RTPパケットを生成する。
ステップS1009において、RTPパケット生成部1409は、回線制御レイヤ同期用タイムスタンプを付加する。
ステップS1010において、送信部1302の非同期伝送路インタフェース(I/F)1501は、IPパケットを生成する。
ステップS1011において、送信部1302の非同期伝送路インタフェース(I/F)1501は、IPパケットを伝送する。
ステップS1011の処理が終了すると、送信処理が終了する。
以上のように送信処理を行うことにより送信部1302は、画像データの伝送に関する全体の遅延時間を抑制することができる。
[3-5受信処理の流れ]
次に、図26のフローチャートを参照して、受信処理の流れの例を説明する。
受信処理が開始されると、ステップS1101において、受信部1303の非同期伝送路インタフェース(I/F)1501は、IPパケットを復号し、RTPパケットを抽出する。
ステップS1102において、RTPパケット復号部1601は、RTPパケットを復号する。
ステップS1103において、タイムスタンプ復号部1602は、回線制御レイヤ同期用タイムスタンプを抽出する。
ステップS1104において、クロック生成部1512は、抽出された回線制御レイヤ同期用タイムスタンプに基づいてクロックを生成する。
ステップS1105において、同期信号発生部1513は、生成されたクロックに基づいて同期信号を発生する。
ステップS1106において、逆多重化部1603は、1系統のストリーム化されていた映像信号のパケットと、音声信号のパケットとを互いに分離する。
ステップS1107において、FEC復号部1604は、音声信号から分離された映像信号のパケットについて、誤り訂正復号を行う。また、FEC復号部1607は、映像信号から分離された音声信号のパケットについて、誤り訂正復号を行う。
ステップS1108において、デパケタイザ1605は、映像信号のパケットから映像制御レイヤ同期用タイムスタンプを抽出する。
ステップS1109において、デパケタイザ1605は、映像信号のパケットをデパケタイズする。また、デパケタイザ1608は、音声信号のパケットをデパケタイズする。
ステップS1110において、ビデオ復号部1606は、映像制御レイヤ同期用タイムスタンプに従って映像信号の符号化データを復号する。また、オーディオ復号部1609は、映像制御レイヤ同期用タイムスタンプに従って音声信号の符号化データを復号する。
ステップS1110の処理が終了すると、受信処理が終了する。
以上のように受信処理を行うことにより受信部1303は、画像データの伝送に関する全体の遅延時間の抑制を実現することができる。
以上のように送信処理および受信処理を行うことにより、撮像装置1201やCCU1202は、動画像データ伝送の即時性の破綻を抑制することができる。
また、図21に示される画像処理システム1200のようなカメラシステムの撮像装置1201やCCU1202に、上述した画像伝送システム100の送信装置101や受信装置102のように同期タイミングの管理を実行させることにより、画像データ伝送における映像同期をより容易に制御することができ、より容易に遅延時間を抑制することができる。また、画像処理システム1200のようなカメラシステムにおいては、ネットワーク構成等の通信環境が状況に応じて変化する可能性が高い。そのため、本技術を適用することにより、より柔軟な同期制御を実現することができ、より容易に遅延時間を抑制することができる。
また、画像処理システム1200の場合、図21に示されるように、例えば撮像装置1201とCCU1202との間で、画像データの伝送を双方向に行うことができる。つまり、画像処理システム1200は、第1の映像伝送シーケンスと、その逆方向の第2の映像シーケンスを有する。このようなシステムに本技術を適用する場合、例えば、第1の映像伝送シーケンスによって出来上がった同期タイミングを用いて、逆方向の第2の映像伝送シーケンスを動作させるようにしてもよい。このように、ある映像伝送シーケンスにおいて決定された同期タイミングを、他の映像伝送シーケンスに利用することにより、複数の映像伝送シーケンスの同期をより容易に管理することができる。
<4.第4の実施の形態>
[4-1符号化部]
なお、画像データの符号化方式は任意である。例えば、ピクチャを複数のラインブロックに分割し、そのラインブロック毎に符号化を行うラインベース・コーデックであってもよい。
図27は、符号化部の主な構成例を示すブロック図である。図27に示されるように符号化部2100は、ウェーブレット変換部2101、途中計算用バッファ部2102、係数並び替え用バッファ部2103、係数並び替え部2104、およびエントロピ符号化部2105の機能を有する。
符号化部2100に入力された画像データは、ウェーブレット変換部2101を介して途中計算用バッファ部2102に一時的に溜め込まれる。ウェーブレット変換部2101は、途中計算用バッファ部2102に溜め込まれた画像データに対してウェーブレット変換を施す。すなわち、ウェーブレット変換部2101は、途中計算用バッファ部2102から画像データを読み出して分析フィルタによりフィルタ処理を施して低域成分および高域成分の係数のデータを生成し、生成された係数データを途中計算用バッファ部2102に格納する。
ウェーブレット変換部2101は、水平分析フィルタと垂直分析フィルタとを有し、画像データ群に対して、画面水平方向と画面垂直方向の両方について分析フィルタ処理を行う。ウェーブレット変換部2101は、途中計算用バッファ部2102に格納された低域成分の係数データを再度読み出し、読み出した係数データに対して分析フィルタによるフィルタ処理を施して、高域成分および低域成分の係数のデータをさらに生成する。生成された係数データは、途中計算用バッファ部2102に格納される。
ウェーブレット変換部2101は、この処理を繰り返して分解レベルが所定レベルに達したら、途中計算用バッファ部2102から係数データを読み出し、読み出された係数データを係数並び替え用バッファ部2103に書き込む。
係数並び替え部2104は、係数並び替え用バッファ部2103に書き込まれた係数データを所定の順序で読み出し、エントロピ符号化部2105に供給する。エントロピ符号化部2105は、供給された係数データを、所定の方法で量子化し、例えばハフマン符号化や算術符号化といった所定のエントロピ符号化方式で符号化する。エントロピ符号化部2105は、生成した符号化データを符号化部2100の外部に出力する。
図28は、ウェーブレット変換部2101の主な構成例を示すブロック図である。ウェーブレット変換部2101は、原画像のベースバンド信号の1ラインをスキャンするごとに横方向のウェーブレット変換を行い、一定数のラインを読み込むごとに縦方向のウェーブレット変換を行う。
図28に示されるウェーブレット変換部2101は、最も一般的なウェーブレット変換であるオクターブ分割を3階層(3つのレベル)にわたって実行し、階層符号化された画像データを生成する。
図28に示されるように、ウェーブレット変換部2101は、レベル1の回路部2210、レベル2の回路部2220、およびレベル3の回路部2230を備える。
また、レベル1の回路部2210は、ローパスフィルタ2211、ダウンサンプラ2212、ハイパスフィルタ2213、およびダウンサンプラ2214を有する。
レベル2の回路部2220は、ローパスフィルタ2221、ダウンサンプラ2222、ハイパスフィルタ2223、およびダウンサンプラ2224を有する。
レベル3の回路部2230は、ローパスフィルタ2231、ダウンサンプラ2232、ハイパスフィルタ2233、およびダウンサンプラ2234を有する。
入力画像信号は、レベル1の回路部2210のローパスフィルタ2211(伝達関数H0(z))とハイパスフィルタ2213(伝達関数H1(z))によって帯域分割される。帯域分割によって得られた低域成分(1L成分)と高域成分(1H成分)は、それぞれ対応するダウンサンプラ2212およびダウンサンプラ2214によって、解像度がそれぞれ2分の1倍に間引かれる。
ダウンサンプラ2212で間引かれた低域成分(1L成分)の信号は、レベル2の回路部2220のローパスフィルタ2221(伝達関数H0(z))とハイパスフィルタ2223(伝達関数H1(z))によってさらに帯域分割される。帯域分割により得られた低域成分(2L成分)と高域成分(2H成分)は、それぞれ対応するダウンサンプラ2222、および、ダウンサンプラ2224によって、解像度がそれぞれ2分の1倍に間引かれる。
さらに、ダウンサンプラ2222で間引かれた低域成分(2L成分)の信号は、レベル3の回路部2230のローパスフィルタ2231(伝達関数H0(z))とハイパスフィルタ2233(伝達関数H1(z))によってさらに帯域分割される。帯域分割により得られた低域成分(3L成分)と高域成分(3H成分)は、それぞれ対応するダウンサンプラ2232、およびダウンサンプラ2234によって、解像度がそれぞれ2分の1倍に間引かれる。
このように、所定のレベルまで低域成分を階層的に帯域分割した帯域成分が順次生成される。図28の例では、レベル3まで帯域分割した結果、ダウンサンプラ2214で間引かれた高域成分(1H成分)、ダウンサンプラ2224で間引かれた高域成分(2H成分)、ダウンサンプラ2234で間引かれた高域成分(3H成分)、ダウンサンプラ2232で間引かれた低域成分(3L成分)が生成される。
図29は、レベル3まで2次元画像を帯域分割した結果得られる帯域成分を示す図である。図29の例では、まずレベル1の帯域分割(水平・垂直方向)により4つの成分1LL、1LH、1HL、1HHの各副画像が取得される。ここでLLは水平・垂直成分が共にLであることを意味し、LHは水平成分がHで垂直成分がLであることを意味している。次に、1LL成分は再度帯域分割されて、2LL、2HL、2LH、2HHの各副画像が取得される。さらに、2LL成分は再度帯域分割されて、3LL、3HL、3LH、3HHの各副画像が取得される。
このようにウェーブレット変換が繰り返し行われた結果、出力信号においては、副画像が階層構造を形成する。こうしたウェーブレット変換をさらにラインベースに拡張したのが、ラインベース・ウェーブレット変換である。
図30は、ラインベース・ウェーブレット変換による変換処理を概念的に示した模式図である。ここでは、一例として、ベースバンドの8ラインごとに縦方向のウェーブレット変換を行うこととしている。
この場合、ウェーブレット変換を3階層で行うとすると、その8ラインに対して、最低域3LL副画像に1ライン、その次のレベルのサブバンド3H(副画像3HL、3LH、3HH)に各1ラインが生成される。また、さらに次のレベルのサブバンド2H(副画像2HL、2LH、2HH)に各2ライン、さらに最高域1H(副画像1HL、1LH、1HH)に各4ラインの符号化データが生成される。
なお、この各サブバンドのラインの集合をプレシンクトと称する。即ち、ラインベース・ウェーブレット変換におけるプレシンクトは、ラインの集合であるラインブロックの一形態として、ラインベース・ウェーブレット変換の符号化単位となるラインの集合である。ここで、符号化単位とは、符号処理の単位となるラインの集合という一般的な意味であり、上記ラインベース・ウェーブレット変換に限定されない。即ち、例えば符号化単位とは、JPEG2000やMPEG4のような既存の階層符号化における符号処理の単位であってもよい。
図30に示されるように、図30の左側に示されるベースバンド信号2301において8ラインであったプレシンクト(図中斜線部分)は、図30の右側に示されるように、ラインベース・ウェーブレット変換された変換後信号2302の1Hにおいて、1HL、1LH、および1HHのそれぞれの4ライン(図中斜線部分)、2Hにおいて、2HL、2LH、および2HHのそれぞれの2ライン(図中斜線部分)、3LL、3HL、3HL、および3HHのそれぞれの1ライン(図中斜線部分)として構成されている。
このようなラインベース・ウェーブレット変換処理によれば、JPEG2000のタイル分割と同様、1枚のピクチャをより細かい粒度に分解して処理を行うことが可能となり、画像データの送受信時の低遅延化を図ることができる。さらに、ラインベース・ウェーブレット変換の場合、JPEG2000のタイル分割とは異なり、1つのベースバンド信号に対する分割ではなく、ウェーブレット係数での分割であるため、さらに、タイル境界でのブロックノイズ的な画質劣化が発生しないという特徴も有する。
このようなラインベース・コーデックを行う符号化部2100を、例えば、図22のビデオ符号化部1401に適用することにより、撮像装置1201は、より低遅延なデータ伝送を実現することができる。
もちろん、ビデオ符号化部1401の符号化方式は任意であり、このラインベース・ウェーブレット変換に限らず、例えばJPEG2000やMPEG4のような既存の階層符号化など、任意の符号化方式を適用することができる。
[4-2復号部]
次に、図27の符号化部2100に対応する復号部について説明する。図31は、本発明を適用した復号部の構成例を示すブロック図である。図31に示される復号部2500は、符号化部2100により符号化された符号化データを復号して画像データを復元する。図31に示されるように、復号部2500は、エントロピ復号部2501、係数バッファ部2502、およびウェーブレット逆変換部2503を有する。
エントロピ復号部2501は、供給された符号化データをエントロピ符号化部2105による符号化方法に対応する復号方法で復号し、係数データを得る。その係数データは、係数バッファ部2502に格納される。ウェーブレット逆変換部2503は、係数バッファ部2502に格納された係数データを用いて、合成フィルタによる合成フィルタ処理(ウェーブレット逆変換)を行い、合成フィルタ処理の結果を再び係数バッファ部2502に格納する。ウェーブレット逆変換部2503は、この処理を分解レベルに応じて繰り返して、復号された画像データ(出力画像データ)を得ると、それを外部に出力する。
このようなラインベース・コーデックを行う復号部2500を、例えば、図22のビデオ復号部1606に適用することにより、撮像装置1201は、より低遅延なデータ伝送を実現することができる。
もちろん、ビデオ復号部1606の符号化方式は任意であり、このラインベース・ウェーブレット変換に限らず、例えばJPEG2000やMPEG4のような既存の階層符号化など、任意の符号化方式を適用することができる。
[4-3送信処理の流れ]
図32のフローチャートを参照して、符号化処理の流れの例を説明する。
符号化処理が開始されると、ステップS2001において、ウェーブレット変換部2101は、途中計算用バッファ部2102や係数並び替え用バッファ部2103を用いて、ライン入力しながらウェーブレット変換を行う。
ステップS2002において、ウェーブレット変換部2101は、1ラインブロック分の処理を行ったか否かを判定する。ラインブロック内に未処理のラインが存在すると判定された場合、処理は、ステップS2001に戻る。
ステップS2001およびステップS2002の各処理が繰り返し実行され、ステップS2002において、ラインブロック内の全てのラインを処理したと判定された場合、処理は、ステップS2003に進む。
ステップS2003において、係数並び替え部2104は、係数並び替え用バッファ部2103に記憶されている係数データを所定順に読み出すことにより、係数データの並び替えを行う。
ステップS2104において、エントロピ符号化部2105は、ステップS2003において読み出された順に、係数データをエントロピ符号化する。
ステップS2104の処理が終了すると、符号化処理が終了する。
以上のように符号化処理を行うことにより、符号化部2100は、より低遅延に画像データを符号化することができる。
[4-4受信処理の流れ]
図33のフローチャートを参照して、復号処理の流れの例を説明する。
復号処理が開始されると、ステップS2101において、エントロピ復号部2501は、供給された符号化データをエントロピ復号する。
ステップS2102において、係数バッファ部2502は、ステップS2101において復号されて得られた係数データを保持する。
ステップS2103において、ウェーブレット逆変換部2503は、ステップS2102において係数バッファ部2502に蓄積された係数データを、外部からの要求に基づいて、若しくは、所定のタイミングにおいて読みだす。ウェーブレット逆変換部2503は、読み出した係数データに対してウェーブレット逆変換を行い、画像データを生成する。
ステップS2103の処理が終了すると、復号処理が終了する。
以上のように復号処理を行うことにより、復号部2500は、より低遅延に画像データを復号することができる。
また、画像伝送システムに、第1の実施の形態において説明したような同期制御を実行させることにより、同期時刻管理が容易になるので、遅延時間の制御もより容易になる。つまり、本実施の形態において説明したようなより低遅延なデータ伝送が要求されるシステムに、第1の実施の形態において説明した本技術を適用することにより、その効果はより大きなものとなる。
[4-5その他]
なお、ここまで説明した各実施の形態に共通し、ラインベース・コーデックとして上述したラインベース・ウェーブレット変換を用いる場合、ラインブロック単位ではなくラインブロックのサブバンド単位で通信パケットを生成することができる。その場合、受信メモリ部において、例えば画像ヘッダから取得されるラインブロック番号及びサブバンド番号に対応する記憶領域を確保し、周波数成分に分解された画像データをラインブロックのサブバンド単位で蓄積するようにしてもよい。
この場合、例えばラインブロック単位で復号を行う際に、伝送エラーなどによってサブバンド(またはその一部)の欠落が生じたときは、ラインブロック内の当該サブバンド以降にダミーデータを挿入し、次のラインブロックからは通常の復号を行うようにしてもよい。
<5.第5の実施の形態>
[コンピュータ]
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
図34は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
図34に示されるコンピュータ3100において、CPU(Central Processing Unit)3101、ROM(Read Only Memory)3102、RAM(Random Access Memory)3103は、バス3104を介して相互に接続されている。
バス3104にはまた、入出力インタフェース3110も接続されている。入出力インタフェース3110には、入力部3111、出力部3112、記憶部3113、通信部3114、およびドライブ3115が接続されている。
入力部3111は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部3112は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部3113は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部3114は、例えば、ネットワークインタフェースよりなる。ドライブ3115は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア3121を駆動する。
以上のように構成されるコンピュータでは、CPU3101が、例えば、記憶部3113に記憶されているプログラムを、入出力インタフェース3110およびバス3104を解して、RAM3103にロードして実行することにより、上述した一連の処理が行われる。RAM3103にはまた、CPU3101が各種の処理を実行する上において必要なデータなども適宜記憶される。
コンピュータ(CPU3101)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア3121に記録して適用することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア3121をドライブ3115に装着することにより、入出力インタフェース3110を介して、記憶部3113にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部3114で受信し、記憶部3113にインストールすることができる。その他、プログラムは、ROM3102や記憶部3113に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
本技術は、例えば、動画像信号やビデオ信号や静止画像を圧縮して伝送、受信して伸長して画像を出力する装置に好適である。具体的には、モバイル通信機、TV会議システム、監視カメラ・レコーダシステム、医用遠隔医療診断、放送局内のビデオ圧縮・伝送、ライブ映像の配信、生徒と教師間のインタラクティブ通信、無線での静止画・動画伝送、対話型ゲームアプリケーション等に適用することができる。
なお、本技術は以下のような構成も取ることができる。
(1) 画像データ伝送の遅延時間に基づいて、前記画像データを伝送するネットワークの同期タイミングと前記画像データの同期タイミングとの間の同期を解除する同期解除部と、
前記同期解除部により前記ネットワークの同期タイミングとの同期が解除された前記画像データの同期タイミングを調整する調整部と、
前記調整部により調整された前記画像データの同期タイミングを、前記ネットワークの同期タイミングに同期させる同期接続部と
を備える情報処理装置。
(2) 前記調整部は、前記画像データの同期タイミングを、前記遅延時間分早める
前記(1)に記載の情報処理装置。
(3) 前記調整部は、前記同期解除部により前記画像データの同期タイミングと前記ネットワークの同期タイミングとの同期が解除された状態において、前記画像データの符号化処理を初期化する
前記(1)または(2)に記載の情報処理装置。
(4) 前記調整部は、前記同期解除部により前記画像データの同期タイミングと前記ネットワークの同期タイミングとの同期が解除された状態において、前記画像データのフレームのブランク期間を通常よりも短くして、前記画像データの符号化処理を継続させる
前記(1)乃至(3)のいずれかに記載の情報処理装置。
(5) 前記同期解除部により前記画像データの同期タイミングと前記ネットワークの同期タイミングとの同期が解除された状態において、通信相手との間で前記ネットワークの同期タイミングを獲得するネットワーク同期獲得部をさらに備える
前記(1)乃至(4)のいずれかに記載の情報処理装置。
(6) 前記遅延時間を測定する測定部をさらに備え、
前記同期解除部は、前記測定部により測定された前記遅延時間に基づいて、前記画像データを伝送するネットワークの同期タイミングと前記画像データの同期タイミングとの間の同期を解除する
前記(1)乃至(5)のいずれかに記載の情報処理装置。
(7) 前記測定部は、同期制御トポロジやネットワーク設定に応じて送信元を決定し、前記送信元から伝送される画像データを用いて前記遅延期間を測定する
前記(6)に記載の情報処理装置。
(8) 前記同期接続部により前記ネットワークの同期タイミングと同期された前記画像データの同期タイミングに従って前記画像データを伝送する伝送部をさらに備える
前記(1)乃至(7)のいずれかに記載の情報処理装置。
(9) 情報処理装置の情報処理方法において、
前記情報処理装置が、
画像データ伝送の遅延時間に基づいて、前記画像データを伝送するネットワークの同期タイミングと前記画像データの同期タイミングとの間の同期を解除し、
前記ネットワークの同期タイミングとの同期が解除された前記画像データの同期タイミングを調整し、
調整された前記画像データの同期タイミングを、前記ネットワークの同期タイミングに同期させる
情報処理方法。
(10) コンピュータを、
画像データ伝送の遅延時間に基づいて、前記画像データを伝送するネットワークの同期タイミングと前記画像データの同期タイミングとの間の同期を解除する同期解除部と、
前記同期解除部により前記ネットワークの同期タイミングとの同期が解除された前記画像データの同期タイミングを調整する調整部と、
前記調整部により調整された前記画像データの同期タイミングを、前記ネットワークの同期タイミングに同期させる同期接続部と
して機能させるためのプログラム。
(11) 映像同期獲得機能を有する第1の映像伝送シーケンスと、第2の映像伝送シーケンスを持つシステムにおいて、
第1の映像伝送シーケンスによる画像データ伝送の遅延時間に基づいて、前記画像データを伝送するネットワークの同期タイミングと前記画像データの同期タイミングとの間の同期を解除する同期解除部と、
前記同期解除部により前記ネットワークの同期タイミングとの同期が解除された前記画像データの同期タイミングを調整する調整部と、
前記調整部により調整された前記画像データの同期タイミングを、前記ネットワークの同期タイミングに同期させる同期接続部と、
前記第1の映像伝送シーケンスによって出来上がった同期タイミングを用いて、前記前記第1の映像伝送シーケンスとは異なる前記第2の映像伝送シーケンスを動作させる制御部と
を備える情報処理装置。
(12) 前記調整部は、前記画像データの同期タイミングを、前記遅延時間分早める
前記(11)に記載の情報処理装置。
(13) 前記調整部は、前記同期解除部により前記画像データの同期タイミングと前記ネットワークの同期タイミングとの同期が解除された状態において、前記画像データの符号化処理を初期化する
前記(11)または(12)に記載の情報処理装置。
(14) 前記調整部は、前記同期解除部により前記画像データの同期タイミングと前記ネットワークの同期タイミングとの同期が解除された状態において、前記画像データのフレームのブランク期間を通常よりも短くして、前記画像データの符号化処理を継続させる
前記(11)乃至(13)のいずれかに記載の情報処理装置。
(15) 前記同期解除部により前記画像データの同期タイミングと前記ネットワークの同期タイミングとの同期が解除された状態において、通信相手との間で前記ネットワークの同期タイミングを獲得するネットワーク同期獲得部をさらに備える
前記(11)乃至(14)のいずれかに記載の情報処理装置。
(16) 前記遅延時間を測定する測定部をさらに備え、
前記同期解除部は、前記測定部により測定された前記遅延時間に基づいて、前記画像データを伝送するネットワークの同期タイミングと前記画像データの同期タイミングとの間の同期を解除する
前記(11)乃至(15)のいずれかに記載の情報処理装置。
(17) 前記測定部は、同期制御トポロジやネットワーク設定に応じて前記第1の映像伝送シーケンスにおける送信元を決定し、前記送信元から伝送される画像データを用いて前記遅延期間を測定する
前記(16)に記載の情報処理装置。
(18) 前記同期接続部により前記ネットワークの同期タイミングと同期された前記画像データの同期タイミングに従って前記画像データを伝送する伝送部をさらに備える
前記(11)乃至(17)のいずれかに記載の情報処理装置。
(19) 映像同期獲得機能を有する第1の映像伝送シーケンスと、第2の映像伝送シーケンスを持つシステムの情報処理装置の情報処理方法において、
前記情報処理装置が、
第1の映像伝送シーケンスによる画像データ伝送の遅延時間に基づいて、前記画像データを伝送するネットワークの同期タイミングと前記画像データの同期タイミングとの間の同期を解除し、
前記ネットワークの同期タイミングとの同期が解除された前記画像データの同期タイミングを調整し、
調整された前記画像データの同期タイミングを、前記ネットワークの同期タイミングに同期させ、
前記第1の映像伝送シーケンスによって出来上がった同期タイミングを用いて、前記前記第1の映像伝送シーケンスとは異なる前記第2の映像伝送シーケンスを動作させる
情報処理方法。
(20) 映像同期獲得機能を有する第1の映像伝送シーケンスと、第2の映像伝送シーケンスを持つシステムにおいて、コンピュータを、
第1の映像伝送シーケンスによる画像データ伝送の遅延時間に基づいて、前記画像データを伝送するネットワークの同期タイミングと前記画像データの同期タイミングとの間の同期を解除する同期解除部と、
前記同期解除部により前記ネットワークの同期タイミングとの同期が解除された前記画像データの同期タイミングを調整する調整部と、
前記調整部により調整された前記画像データの同期タイミングを、前記ネットワークの同期タイミングに同期させる同期接続部と、
前記第1の映像伝送シーケンスによって出来上がった同期タイミングを用いて、前記前記第1の映像伝送シーケンスとは異なる前記第2の映像伝送シーケンスを動作させる制御部と
して機能させるためのプログラム。