(57)【特許請求の範囲】
【請求項１】
非信頼性ネットワーク内で、映像および／または音声データを予測符号化フレームと内部符号化フレームを含む複数のデータフレームからなるデータストリームの形でサーバからクライアントに伝送する方法であって、
上記クライアントから上記非信頼性ネットワークを通じて送出されデータフレームが欠けていることを示すメッセージを上記サーバで受け取る工程と、
上記データストリームの伝送を次の内部符号化フレームから再開し、該内部符号化フレームまでの予測符号化フレームを飛ばす工程とを備え、
上記クライアントは上記次の内部符号化フレームを受け取るまでは同じデータフレームの紛失に関して複数のメッセージを繰り返し送出するための構成を含み、上記サーバは同じデータフレームの紛失に起因したメッセージをクライアントから既に受け取っている場合に上記クライアントからのメッセージを無視することを特徴とするデータ伝送方法。
【請求項２】
各データフレームに順序番号を割り当てる工程をさらに備えている請求項１記載のデータ伝送方法。
【請求項３】
上記クライアントからのメッセージはクライアントが正しく受け取った最後のデータフレームの順序番号を含んでいる請求項２記載のデータ伝送方法。
【請求項４】
上記データフレームはＭＰＥＧフレームである請求項１ないし３のいずれかに記載のデータ伝送方法。
【請求項５】
上記非信頼性ネットワークは無線ネットワークである請求項１ないし４のいずれかに記載のデータ伝送方法。
【請求項６】
非信頼性ネットワーク内で、映像および／または音声データを予測符号化フレームと内部符号化フレームを含む複数のデータフレームからなるデータストリームの形で遠隔クライアントに伝送する装置であって、
上記クライアントから上記非信頼性ネットワークを通じて送出されデータフレームが欠けていることを示すメッセージを受信する装置と、
上記データストリームの伝送を次の内部符号化フレームから再開し、該内部符号化フレームまでの予測符号化フレームを飛ばす制御装置とを備え、
上記クライアントは上記次の内部符号化フレームを受け取るまでは同じデータフレームの紛失に関して複数のメッセージを繰り返し送出するための構成を含み、上記サーバは同じデータフレームの紛失に起因したメッセージをクライアントから既に受け取っている場合に上記クライアントからのメッセージを無視することを特徴とするデータ伝送装置。
【請求項７】
請求項１ないし５のいずれかに記載の方法を実行するよう構成されている請求項６記載のデータ伝送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はデータ伝送方法及び装置に関し、特に無線ネットワーク等非信頼性の帯域限定ネットワークにおけるビデオ及び／またはオーディオストリーミング技術に関する。
【０００２】
【従来の技術】
マルチメディアパケットのデータストリームの例として、ＭＰＥＧストリームがある。ＭＰＥＧストリームはフレームあるいはパケットと呼ばれる単位ビット列データの流れからなり、サーバからクライアントに対してストリーミングされる。ＭＰＥＧストリームは、通常、様々なフォーマットの情報を含んでいるので、いわゆる内部符号化フレームまたはＩフレームと呼ばれる独立データと、いわゆる予測符号化フレームまたはＰフレームと呼ばれる先行データに従属する従属データとからなる混合体である。
【０００３】
ハードディスク、ＣＤ−ＲＯＭ等に格納されたＭＰＥＧファイルはＭＰＥＧ再生装置で再生される。ＭＥＰＧ再生装置は、最初にデータを記憶装置から取り出し、それを圧縮解除して音声及び映像のディジタル信号に復号化した後、その信号をコンピュータシステム等の再生装置上で再生する。選択されたＭＰＥＧ音声・映像再生ファイルを再生する際、再生ファイルを収めているメモリや記憶装置内部の障害（例えば、ディスクドライブやＣＤ−ＲＯＭドライブ内の不良セクタ）、データ経路の誤り、コンピュータシステム出力装置内部の障害によるデータ伝送誤り等、多くの種類のエラーが発生する恐れがある。そのため、従来、エラー回復機構を伴った再生装置が開発されている。米国特許５，７８４，５２７号には、そのようなＭＰＥＧ再生システムにおけるエラー取扱い方式が開示されている。すなわち、エラーが発生すれば、Ｉフレームに達するまで、開示されている回復プロセスの一つにより重要でないフレームが飛ばされる。
【０００４】
非信頼性帯域限定ネットワーク上のデータ伝送はＭＰＥＧ再生装置内のエラー回復とは全く異なる問題である。そのようなネットワークの代表例は無線ネットワークであり、該無線ネットワークは、その特性としてデータ伝送用の無線伝送路が誤りを犯しやすく、伝送帯域幅が限定されており、その上、伝送データがネットワークの輻輳のせいで遅延したり、ひいては紛失することがあるために信頼性がない。これは、特にＭＰＥＧファイルのリアルタイムストリーミング再生時には大きな問題である。
【０００５】
図１は従来のビデオストリーミングシステムを示す。ビデオサーバ１１０は非信頼性伝送路１５０を通じて映像データをビデオクライアント１６０に伝送する。この目的のために、ビデオサーバ１１０は、映像源アプリケーション１２０からデータフレームを受け取る送信バッファ装置１３０を備えている。その後、この送信バッファ装置１３０では、伝送路アクセス制御装置１４０の制御により上記データフレームが伝送される。ビデオクライアント１６０側では、受信バッファ装置１７０でデータが受け取られ、該装置がデータセグメントから上記フレームを再構成する。その後、映像フレームは、例えば、同様の記憶装置等からなる映像表示アプリケーション１８０に送出される。
【０００６】
【発明が解決しようとする課題】
ここで、図２に基づき、映像やＭＰＥＧデータを非信頼性伝送路１５０を通じて伝送する際の上記従来のシステムの問題点をさらに詳細に説明する。この例では、サーバはＩフレームとＰフレームとからなるシーケンスをクライアント側に送る。説明の都合上、各フレームにはＭＰＥＧストリーム内の位置を示すフレーム番号（ＦＮ）が付与されている。
【０００７】
サーバは、先ず、Ｉフレームを伝送する。このＩフレームは、一定の遅延時間が経過した後にクライアントに正しく伝送される。２番目のフレームはＰフレームであり、先行するＩフレームに従属している。Ｐフレームもクライアントに対して正しく伝送される。
【０００８】
３番目のフレームもＰフレームであり、したがって、このＰフレームは先行するＩフレームと最初のＰフレームの双方に従属している。図２の例では、フレーム番号ＦＮ＝３のＰフレームが、例えばネットワーク輻輳のせいでクライアント側で受け取れなくなっている。それでも、それ以降のフレームは全く誤りなく伝送路１５０を通過している。すなわち、サーバは全てのフレームを伝送したが、クライアントはフレーム番号ＦＮ＝１、２、４〜９のフレームを受け取り、フレーム番号ＦＮ＝３のフレームを受け取らなかった。
【０００９】
しかしながら、フレーム番号ＦＮ＝４のＰフレームはフレーム番号ＦＮ＝３のＰフレームに従属し、同じことが次のＩフレームに至るまでの以後の全てのＰフレームについても言えるので、クライアントはこれらのＰフレームを受け取ったにもかかわらず使用することができない。したがって、この従来のシステムは、多数のフレームを伝送されたけれども使用することができないので、ネットワーク資源の使用率に関して非常に不十分である。
【００１０】
非信頼性伝送路を介したマルチメディアデータのストリーミング方法には、他に、パケット再伝送方法がある。この方法は伝送路状態不良時のサービス品質を向上させる一方、ネットワーク内の必要帯域幅と伝送遅延を増大させる。したがって、帯域幅が限定され誤りの確率が高いネットワーク内でのリアルタイムのマルチメディアデータストリーミングには向いていない。このような条件では、再伝送が何度も必要となって、リアルタイムの要件をもはや満たすことはできない。
【００１１】
したがって、本発明の目的は、非信頼性帯域限定ネットワーク内でのデータ伝送をデータが失われても限定帯域幅を有効に利用しながら行うことができる方法と装置を提供することである。
【００１２】
【課題を解決するための手段】
この目的は独立請求項で定義された本発明にしたがって達成される。
【００１３】
本発明によれば、クライアントはパケットが紛失した場合にサーバに通知する。したがって、本発明はクライアントからストリーミング側のサーバに対してフィードバックを行うので、サーバが紛失したＰフレームまたはＩフレームに従属する全てのパケットを飛ばすことができる。このことは、その時点においてネットワーク内で別の用途に利用可能であったり、パケット紛失が発生したデータストリームのスループットを向上させるのに利用可能な帯域幅を節約できるという点で有利である。
【００１４】
さらに、本発明は、再生システム分野のみで公知であったネットワーク内の技術を採用して遠隔データ源とのフィードバック対話を実現するという点でも有利である。
【００１５】
本発明の好ましい実施形態は従属請求項で定義されている。
【００１６】
各パケットに順序番号を割り当てれば、フレーム制御機能を向上させることができるので有利である。さらに、現行パケットの順序番号を非受領コマンドに組み込むことにより、サーバがネットワーク内の信号遅延を考慮することが可能になる。これにより、ストリーミングシステムの信頼性を向上させることができる。
【００１７】
【発明の実施の形態】
以下、図面に基づいて本発明の好ましい実施形態を詳細に説明する。
【００１８】
図３に示すように、本発明の好ましい実施形態にかかるビデオストリーミングシステムは、ビデオサーバ１１０と、非信頼性伝送路１５０を介して通信を行うビデオクライアント１６０とを備えている。本実施形態の伝送路は無線伝送路である。図１のビデオストリーミングシステムと異なり、ビデオクライアント１６０はフレームが欠けていることを検出する紛失検出装置２４０を備えている。さらに、ビデオクライアント１６０は、伝送路アクセス制御装置２６０に制御されパケットが紛失した場合に非受領（ＮＡＣＫ）パケットを紛失検出装置２４０からビデオサーバ１１０に送出する送信バッファ装置２５０を備えている。ビデオサーバ１１０は、送信バッファ装置１３０に接続された伝送制御装置２１０にアクセスできるとともにビデオクライアント１６０から非受領パケットを受け取る受信バッファ装置２３０を備えている。
【００１９】
図３のビデオストリーミングシステムの動作を図４に基づいて詳細に説明する。図４は本発明にかかるメッセージシーケンス図を示す。最初に、Ｉフレームがサーバからクライアントに送出される。図４の例では、Ｉフレームには順序番号ＳＮ＝０が割り当てられており、クライアントはこの情報を読み取ることができる。Ｉフレームはクライアントに正しく受け取られるので、表示目的のために使用することができる。
【００２０】
サーバに伝送される２番目のフレームはＰフレームであり、したがって先行するＩフレームに従属している。Ｐフレームには順序番号ＳＮ＝１が与えられており、同様にクライアントに正しく受け取られる。
【００２１】
その次のＰフレームは順序番号ＳＮ＝２を有しており、伝送中に紛失されている。すなわち、クライアントはこのＰフレームを受け取ることができない。
【００２２】
図４の例では、図２の例によるごとく、４番目のフレームは再びＰフレームであり、サーバから伝送されてクライアントに正しく受け取られる。クライアントは、その順序番号を評価する際に、順序番号ＳＮ＝２を有する先行のＰフレームが欠けていることに気付くことになる。その後、クライアントは受け取った最新のパケットの順序番号ＳＮ＝３を含んだ非受領コマンドを生成し、この非受領パケットをサーバに送り返してパケット紛失を通知する。
【００２３】
図４から分かるように、接続の伝送遅延のせいで、非受領パケットはＳＮ＝４である次のＰフレームの送出時より遅れてサーバに受け取られる。したがって、このＰフレームは通常どおりにサーバによって伝送される。
【００２４】
クライアントがＳＮ＝４のＰフレームを受け取ると、その順序番号を評価し、順序番号ＳＮ＝４を含んだ非受領パケットを生成して送り返す。この２番目の非受領パケットの送出は、伝送遅延を補整するのに適しているのみならず、非信頼性ネットワークにおいて例えばネットワーク輻輳のせいで最初の非受領パケットも破壊された場合でさえ考慮に入れることができる。
【００２５】
最初の非受領パケットを受け取ったサーバはフレームがクライアントに受け取られなかったことを知らされる。クライアントはそれ以降のＰフレームを使用できないので、サーバはこれらのフレームを飛ばし、次のＩフレームで伝送を再開する。後に順序番号ＳＮ＝５が与えられるこのフレームは、図２において説明の都合上フレーム番号ＦＮ＝８を有していたＩフレームに相当する。
【００２６】
２番目の非受領パケットを受け取ると、サーバはその順序番号を評価することによってこのコマンドがＦＮ＝６および７の両Ｐフレームを飛ばすことにより既に実行されているものと判定する。したがって、サーバは２番目の非受領パケットを無視し、次のＩフレームまでの全てのＰフレームを再度飛ばすのではなく、引き続き次のＦＮ＝１０のＰフレームを伝送する。
【００２７】
ビデオストリームを送出するプロセスを図５に基づいて説明する。
【００２８】
ビデオサーバ１１０の伝送制御装置２１０がステップＳ５１０で映像源アプリケーション１２０からフレームを受け取り、ステップＳ５２０でこのフレームに順序番号を割り当てる。この順序番号は、例えば、フレームのヘッダに含まれるメタ情報に追加されてもよい。しかしながら、当業者なら理解できるように、パケットに順序番号を追加する他のあらゆる種類の方法を同様にして適用することも可能である。
【００２９】
その後、ステップＳ５３０で、ビデオクライアントから非受領パケットを受け取ったか否かを判定する。そうでない場合は、プロセスはステップＳ５７０でフレームを送信バッファ装置１３０に送出し、ステップＳ５１０に戻って映像源アプリケーション１２０から次のフレームを受け取る。
【００３０】
しかしながら、ステップＳ５３０で受信バッファ装置２３０が非受領コマンドを受け取った場合は、ステップＳ５４０で伝送制御装置２１０によりその非受領コマンドが既に実行されたか否かが判定される。非受領コマンドが既に実行された場合は、プロセスはステップＳ５７０で現行フレームを送信バッファ１３０に送出し、ステップＳ５１０に復帰する。
【００３１】
もし非受領パケットが現行のＰフレームシーケンスの内で受け取られた最初のものであれば、ステップＳ５４０でビデオサーバ１１０によりその非受領コマンドを無視すべきではないと判定され、ステップＳ５５０から処理が再開される。このステップでは、伝送制御装置２１０が映像源アプリケーション１２０からの次のＩフレームを待つことにより、現行Ｐフレームシーケンスの残りのＰフレームを読み飛ばす。その後、プロセスは、ステップＳ５６０で受け取られたＩフレームに順序番号を割り当て、ステップＳ５７０でそのＩフレームを伝送した後、ステップＳ５１０に戻ってそれに続くＰフレームの伝送を継続する。
【００３２】
ビデオクライアント１６０でビデオストリームを受け取るプロセスを図６に基づいて説明する。ステップＳ６１０でフレームが受け取られた後、ステップＳ６２０でそのフレームの順序番号が明らかにされ評価される。順序番号の評価時に、先行フレームの一つが欠けていると判定された場合は（ステップＳ６３０）、紛失検出装置２４０の動作により制御がステップＳ６５０に渡される。ステップＳ６５０において受け取られた最新のデータフレームがＩフレームであると判定した場合は、プロセスは、ステップＳ６６０でそのフレームを映像表示アプリケーション１８０に送出し、ビデオサーバにデータフレームの紛失を通知する必要がないので、ステップＳ６１０に戻る。そうでなければ、ステップＳ６７０で紛失検出装置２４０がステップＳ６２０で明らかにされた順序番号を含んだ非受領パケットを生成する。その後、ステップＳ６８０で、伝送路アクセス制御装置２６０の制御により、送信バッファ装置２５０が生成された非受領パケットを伝送路１５０を介してビデオサーバ１１０に送り返す。
【００３３】
ステップＳ６３０でフレームが欠けていないと判定されると、ビデオクライアント１６０によってデータストリームにフレームが追加され、ステップＳ６４０でそのフレームが映像表示アプリケーション１８０に送出される。その後、図６のプロセスはステップＳ６０１に戻り、ビデオサーバ１１０から次の映像フレームを受け取る。
【００３４】
本発明の好ましい実施形態は映像データをストリーミングする場合について説明したが、当分野の技術者なら分かるように、別の好ましい実施形態として、音声データをストリーミングする場合を別途あるいはさらに注目してもよい。データストリームとしては、ＭＰＥＧデータストリームが好ましい。
【００３５】
さらに、本発明の好ましい実施形態として無線ネットワーク内で動作するものを説明したが、無線ネットワークには、無線周波数通信やコードレス通信等、電磁波によりデータを空間伝送するあらゆる種類のネットワークが含まれる。しかしながら、本発明を、他のあらゆる種類の非信頼性伝送路によるデータ伝送に同様に適用してもよい。
【図面の簡単な説明】
【図１】従来のビデオストリーミングシステムを示す図。
【図２】図１のビデオストリーミングシステムの動作を説明するメッセージシーケンス図。
【図３】本発明の好ましい実施形態にかかるビデオストリーミングシステムを示す図。
【図４】本発明の好ましい実施形態にかかるビデオストリーミングシステムの動作を説明するメッセージシーケンス図。
【図５】本発明の好ましい実施形態にかかるビデオストリーム送出プロセスを説明するフロー図。
【図６】本発明の好ましい実施形態にかかるビデオストリーム受取プロセスを説明するフロー図。
【符号の説明】
１１０                    ビデオサーバ
１２０                    映像源アプリケーション
１３０                    送信バッファ装置
１４０                    伝送路アクセス制御装置
１５０                    非信頼性伝送路
１６０                    ビデオクライアント（遠隔クライアント）
１７０                    受信バッファ装置
１８０                    映像表示アプリケーション
２１０                    伝送制御装置
２３０                    受信バッファ装置
２４０                    紛失検出装置
２５０                    送信バッファ装置
２６０                    伝送路アクセス制御装置
【図１】
0003631439.tif 000002
【図２】
0003631439.tif 000003
【図３】
0003631439.tif 000004
【図４】
0003631439.tif 000005
【図５】
0003631439.tif 000006
【図６】
0003631439.tif 000007