JP2005051709A - リアルタイムストリーミング伝送装置および伝送方法 - Google Patents
リアルタイムストリーミング伝送装置および伝送方法 Download PDFInfo
- Publication number
- JP2005051709A JP2005051709A JP2003284250A JP2003284250A JP2005051709A JP 2005051709 A JP2005051709 A JP 2005051709A JP 2003284250 A JP2003284250 A JP 2003284250A JP 2003284250 A JP2003284250 A JP 2003284250A JP 2005051709 A JP2005051709 A JP 2005051709A
- Authority
- JP
- Japan
- Prior art keywords
- real
- time
- buffer
- data
- time data
- 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
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
【課題】 一部のリアルタイムデータに遅延が生じても、後続のデータの遅延に影響せずリアルタイムデータの再生が可能とする。
【解決手段】 本発明のリアルタイムストリーミング送信装置1は、リアルタイムデータ入力部23に入力されるリアルタイムデータを蓄積するバッファ2と、受信装置3から制御情報14を受信すると共に設定する制御情報受信部21と、制御情報14に基づいてバッファ2を監視するバッファ内データ制御部22と、バッファ2に蓄積されたリアルタイムデータを読み出して出力するリアルタイムデータ出力部24とを備え、受信装置3から指定されて設定された制御情報14の制限に基づき、ネットワークの状態によりバッファ2内のデータが制限を超えたとき、バッファ内データ制御部22が無効なリアルタイムデータを判別してリアルタイムデータ出力部24による出力前に破棄するものである。
【選択図】 図3
【解決手段】 本発明のリアルタイムストリーミング送信装置1は、リアルタイムデータ入力部23に入力されるリアルタイムデータを蓄積するバッファ2と、受信装置3から制御情報14を受信すると共に設定する制御情報受信部21と、制御情報14に基づいてバッファ2を監視するバッファ内データ制御部22と、バッファ2に蓄積されたリアルタイムデータを読み出して出力するリアルタイムデータ出力部24とを備え、受信装置3から指定されて設定された制御情報14の制限に基づき、ネットワークの状態によりバッファ2内のデータが制限を超えたとき、バッファ内データ制御部22が無効なリアルタイムデータを判別してリアルタイムデータ出力部24による出力前に破棄するものである。
【選択図】 図3
Description
本発明は、受信装置からの要求に応じてネットワークを介してリアルタイムデータのリアルタイムストリーミング伝送を行うリアルタイムストリーミング伝送装置および伝送方法に関する。
一般に、リアルタイムストリーミング配信では、個々のリアルタイムデータを配送するのに完了しなければならない時間的制限があった。この時間的制限は、リアルタイム性を確保するために仕様として決められている場合が多かった。
特許文献1には、受信した複数のストリームデータを同期再生する場合に、ストリームの送信装置へ送信されたデータの遅延に起因する誤動作や不正確な同期再生動作を防止するために、再生信号の遅延時間を予め記憶しておいて、遅延時間に応じて再生出力処理の開始タイミングを遅延させて、再生信号の出力タイミングが一致するようにストリームデータを読み出して順次再生出力するデータ再生方法が開示されている。
特開2002−354029号公報
例えば、ネットワークの輻輳などによりこの制限時間内に受信できなかったデータは、リアルタイム性を失っているので無効であり、結果として破棄されていた。さらに、一部のデータで遅延が発生した場合、後続のデータにもその遅延の影響が及んでしまう場合があるという不都合があった。
また、慢性的にネットワークが輻輳しているにもかかわらず有効帯域以上のデータを伝送しようとしているために、後続のデータにも徐々に遅延が生じてしまう場合があった。このような場合、後続のデータも時間的制限のため破棄される可能性もあり、全体として大幅なリアルタイムデータの欠落が起こり、再生できない状況が続いてしまうという不都合があった。
また、特許文献1では、遅延したデータがすでに伝送された後に受信装置側の再生処理時に再生出力タイミングを合わせるものであり、遅延したデータの伝送により上述したデータの遅延による後続のデータの遅延や、大幅なリアルタイムデータの欠落が起こることになる。
そこで、このような事情に鑑みて、本発明は、一部のリアルタイムデータに遅延が生じたとしても、後続のデータの遅延に影響せずリアルタイムデータの再生が可能なリアルタイムストリーミング伝送装置および伝送方法を提供することを目的とする。
上記課題を解決し、本発明の目的を達成するため、本発明のリアルタイムストリーミング伝送装置は、リアルタイムデータ入力部に入力されるリアルタイムデータを蓄積するバッファと、制御情報を設定する制御情報設定部と、制御情報に基づいてバッファを監視するバッファ内データ制御部と、バッファに蓄積されたリアルタイムデータを読み出して出力するリアルタイムデータ出力部とを備え、制御情報設定部により設定された制御情報の制限に基づき、ネットワークの状態によりバッファ内のデータが制限を超えたとき、バッファ内データ制御部が無効なリアルタイムデータを判別してリアルタイムデータ出力部による出力前に破棄するようにしたものである。
また、本発明のリアルタイムストリーミング伝送方法は、リアルタイムデータ入力部に入力されるリアルタイムデータをバッファに蓄積するステップと、制御情報設定部により制御情報を設定するステップと、制御情報に基づいてバッファ内データ制御部によりバッファを監視するステップと、バッファに蓄積されたリアルタイムデータをリアルタイムデータ出力部により読み出して出力するステップとを備え、制御情報設定部により設定された制御情報の制限に基づき、ネットワークの状態によりバッファ内のデータが制限を超えたとき、バッファ内データ制御部が無効なリアルタイムデータを判別してリアルタイムデータ出力部による出力前に破棄するようにしたものである。
これによれば、リアルタイムストリーミング配信を開始する前に、リアルタイムストリーミング受信装置が自身の再生に関する時間的制限についてストリーミング配信を行う伝送装置及びストリーミング中継装置(キャッシュサーバ、プロクシサーバ)に伝えておく。時間的制限を設定された伝送装置と中継装置は、その制限に従って自信のバッファ内の無効なパケットを破棄していき、再生に有効なデータのみを配信する。
これにより、一部のデータの遅延が後続のデータの遅延へ影響させないようにすることができる。生じても良い遅延の限界値を受信装置から伝送装置へ知らせておくことで、送信側で遅延の限界値を超えているデータを破棄し、ネットワーク上のトラッフィックを減らし、到着可能データのリアルタイム性を確保することができる。
本発明では、リアルタイムストリーミング伝送に有効な、受信装置の再生条件に合わせた伝送装置および方法を実現することができる。本発明はほとんどのリアルタイムストリーミング伝送に有効であり、特に真価が発揮できるのはTCP(Transport Control Protocol)プロトコルを利用した場合のリアルタイムストリーミング伝送である。
例えば、下位層にTCPプロトコルを用いていると、TCPプロトコルの再送制御によって前のデータが送れないと次のデータも送れないように制御される。あるひとつのデータが送れずに再送を繰り返しているとすると、後続のデータも、送信バッファに入力されるかもしれないが、実際の送信は行われずにストップしている。ある瞬間に全てのデータを送ることができることになったとしても、受信装置に届いたときには時間切れで無効なデータとなっていることが考えられる。
本発明では、そのような時間切れの無効なデータの発生を防ぐことができ、送信前に受信装置にとって有効か無効の判定をしているため、受信装置には常に再生可能な有効データを届けることが可能である。このように、本発明は特にTCPプロトコルを利用したリアルタイムストリーミング伝送により有効である。
[発明の概要]
リアルタイムストリーミング伝送において、遅延がある一定の時間を超えて届けられたリアルタイムデータは再生されず無効となる。しかし、実際にそれがわかるのは受信装置だけであり、送信側の伝送装置及び中継機器を含む途中経路上の機器はリアルタイムデータをベストエフォートで伝送するしか術がなかった。
リアルタイムストリーミング伝送において、遅延がある一定の時間を超えて届けられたリアルタイムデータは再生されず無効となる。しかし、実際にそれがわかるのは受信装置だけであり、送信側の伝送装置及び中継機器を含む途中経路上の機器はリアルタイムデータをベストエフォートで伝送するしか術がなかった。
そこで、本発明では、どのくらいの時間を超えたデータが無効になるのかの値(時間的制限)を受信装置から中継機器、送信側の伝送装置へと伝播し、中継機器及び送信側の伝送装置がその値に従って送っても無駄なデータは積極的に破棄していくようにする。このようにすると、早期に無効なデータが破棄でき、ネットワーク上に無駄なトラフィックを発生させないようにすることができる。そのため、データの遅延が増えにくくなる。つまり、もし遅延が発生してしまっても後続のデータへの影響も少なく抑えられるので、結果的にデータ全体のリアルタイム性を維持することができる。
どのくらいの時間を超えたデータが無効になるのかを示す時間的制限は制御プロトコルによって中継機器や送信機器に伝えられる。制御プロトコルはHTTP(Hyper Text Transfer Protocol)やRTSP(Real Time Streaming Protocol)のようなプロトコルである。
時間的制限を課せられた送信機器や中継機器は自身が送信すべきデータを監視し、制限を越えるデータがある場合には古いものから送信せずに破棄し、常により最近のデータを送信するようにする。
[発明の構成]
図1はリアルタイムデータのストリーミング配信を行う送信装置および受信装置の構成例である。
図1におけるリアルタイムデータとは、ある一定期間に配送が完了されることが望まれるデータである。例えば、ライブステージのカメラで撮像および収録された映像や音声のデータの配信やテレビ電話で扱われる映像や音声のデータの配信である。リアルタイムデータは通常、RTP(Real Time Protocol)/RTSPやRTSP(インターリーブ)、HTTPによって行なわれる。
図1はリアルタイムデータのストリーミング配信を行う送信装置および受信装置の構成例である。
図1におけるリアルタイムデータとは、ある一定期間に配送が完了されることが望まれるデータである。例えば、ライブステージのカメラで撮像および収録された映像や音声のデータの配信やテレビ電話で扱われる映像や音声のデータの配信である。リアルタイムデータは通常、RTP(Real Time Protocol)/RTSPやRTSP(インターリーブ)、HTTPによって行なわれる。
また、ストリーミング配信するためには、事前に送信者と受信者で送受信に関する取り決めを行う必要がある。図1において、リアルタイムデータをストリーミング伝送12により配信するためにやりとりをする情報を制御情報14として表す。一般に、この取り決めはRTSPやHTTPによって行なわれる場合が多い。
図1におけるリアルタイムデータ送信装置(以下、送信装置と略す)1及びリアルタイムデータ受信装置(以下、受信装置と略す)3は内部バッファ2及び内部バッファ4を備え、入力11されるリアルタイムデータの出力13を行う。このバッファ2,4は、アプリケーションプログラムで設けられるバッファでも良いし、装置固有のバッファ(例えばソケットの送受信バッファ)でも良いし、それらの組み合わせでも良い。ここでは簡略化のためにひとつのバッファとして表現している。
送信装置1はリアルタイムデータの入力11をバッファ2に蓄積する。入力されるリアルタイムデータは、送信装置1に備えられた図示しないカメラやマイクから得られる映像や音声のデータでも良いし、ネットワーク上の他の装置あるいはエンコーダ(圧縮装置)などから送られるデータでも良い。バッファ2に蓄積されたリアルタイムデータはネットワーク上の受信装置3へストリーミング伝送12により配信される。
受信装置3は、ストリーミング伝送12により配信され受信されたリアルタイムデータをバッファ4に蓄積し、出力13する。出力先は、受信装置3に備えられた図示しないモニターやスピーカでも良いし、ネットワーク上の他の装置あるいはデコーダ(伸張装置)などでも良い。受信装置3には、リアルタイムデータを再生可能な時間的制限が存在する。この制限を制御情報に含めて送信装置1(または後述する中継装置)に送信することで、リアルタイムデータの効率的な転送を可能にする。
図2は図1における送信装置と受信装置の間に、制御情報及びストリーミングデータを中継(代理)する装置(以下、中継装置と略す)5が加えられた構成である。
中継装置5は送信装置1と受信装置3の通信を中継するもので、主にファイアーウォールを越えるために使用されたり、中継情報を一時的に保存してネットワークの負荷削減のために使用されたりする。具体的には、RTSPやHTTPのプロクシ(もしくはキャッシュ)サーバがある。
中継装置5は送信装置1と受信装置3の通信を中継するもので、主にファイアーウォールを越えるために使用されたり、中継情報を一時的に保存してネットワークの負荷削減のために使用されたりする。具体的には、RTSPやHTTPのプロクシ(もしくはキャッシュ)サーバがある。
中継装置5は、制御情報14−1,14−2を仲介し、ストリーミング伝送12−1,12−2により配信されるリアルタイムデータを受信し、バッファ6に蓄積し、送信装置または受信装置へ転送する。
ところで、中継装置5は受信装置3にとって送信装置1としてみなされる。また逆に、中継装置5は送信装置1にとって受信装置3としてみなされる。したがって、図2における送信装置1と中継装置5との間、中継装置5と受信装置3との間に存在する部分的な通信形態は図1における通信形態と等しい。つまり、図1で有効な手法は図2においても有効であり、本発明も両者を対象としている。
本発明は、HTTPだけでなく、RTSP(インターリーブ)やRTSP+RTPなどの制御プロトコルを使用するストリーミング伝送に汎用的に使用で可能である。
図3はリアルタイムデータ送信装置の内部構成を示しています。
図3において、リアルタイムデータ送信装置は、リアルタイムデータ入力部23に入力されるリアルタイムデータ11を蓄積するバッファバッファ2と、受信装置3から制御情報14を受信する制御情報14を設定する制御情報受信部21と、制御情報14に基づいてバッファ2を監視するバッファ内データ制御部22と、バッファ2に蓄積されたリアルタイムデータ12を読み出して出力するリアルタイムデータ出力部24とを備え、受信装置3から指定された制御情報14の制限に基づき、ネットワークの状態によりバッファ2内のデータが制限を超えたとき、バッファ内データ制御部22が無効なリアルタイムデータを判別してリアルタイムデータ出力部24による出力前に破棄するようにしたものである。ここで、制御情報受信部21は制御情報設定の機能を有する。
図3において、リアルタイムデータ送信装置は、リアルタイムデータ入力部23に入力されるリアルタイムデータ11を蓄積するバッファバッファ2と、受信装置3から制御情報14を受信する制御情報14を設定する制御情報受信部21と、制御情報14に基づいてバッファ2を監視するバッファ内データ制御部22と、バッファ2に蓄積されたリアルタイムデータ12を読み出して出力するリアルタイムデータ出力部24とを備え、受信装置3から指定された制御情報14の制限に基づき、ネットワークの状態によりバッファ2内のデータが制限を超えたとき、バッファ内データ制御部22が無効なリアルタイムデータを判別してリアルタイムデータ出力部24による出力前に破棄するようにしたものである。ここで、制御情報受信部21は制御情報設定の機能を有する。
このように構成されたリアルタイムデータ送信装置は、以下のような動作をする。
受信装置3から制御情報14を受信し、制御情報14を設定すると共に、その情報に基づいてバッファ内データ制御部22が送信装置内バッファ2を監視します。リアルタイムデータ11が入力されるとリアルタイムデータ入力部23から送信装置内バッファ2へ蓄積されます。蓄積されたリアルタイムデータ12は、リアルタイムデータ出力部24から読み出され、出力されていきます。ネットワークの輻輳などによりバッファ2内のデータが徐々に多くなっていった場合、受信装置3から指定された制限に基づき、バッファ内データ制御部22が無効なリアルタイムデータを判別して出力前に破棄する。
受信装置3から制御情報14を受信し、制御情報14を設定すると共に、その情報に基づいてバッファ内データ制御部22が送信装置内バッファ2を監視します。リアルタイムデータ11が入力されるとリアルタイムデータ入力部23から送信装置内バッファ2へ蓄積されます。蓄積されたリアルタイムデータ12は、リアルタイムデータ出力部24から読み出され、出力されていきます。ネットワークの輻輳などによりバッファ2内のデータが徐々に多くなっていった場合、受信装置3から指定された制限に基づき、バッファ内データ制御部22が無効なリアルタイムデータを判別して出力前に破棄する。
図4は、バッファ内のストリーミングパケットと無効パケットの破棄方法を示す図である。
図4は、バッファ2内に蓄えられたリアルタイムストリーミングデータパケット(RTPパケットなど)34のうち、無効なパケット32がタイムスタンプ情報36を元に破棄されるようすを示している。
図4は、バッファ2内に蓄えられたリアルタイムストリーミングデータパケット(RTPパケットなど)34のうち、無効なパケット32がタイムスタンプ情報36を元に破棄されるようすを示している。
図4において、タイムスタンプ100から600のストリーミングパケット34が蓄積され出力待ち状態を示している。このとき、制限を示すT値が400msecと受信側から指定されている場合、タイムスタンプ100及び200のストリーミングパケット34を送出しても、リアルタイム性の欠如により受信側で過去のデータとして扱われ、それらは再生されることはない。そこで、出力時にタイムスタンプ36から制限を示すT値の範囲内の有効データ31のみを出力し、33に示すように、タイムスタンプ36から制限を示すT値の範囲外の無効データ32を判定し、出力せずに破棄する。
[動作の詳細]
次に、図1の構成で、制御情報及びリアルタイムデータの伝送をHTTPで行った場合の動作の詳細を述べる。
下記に、受信装置が送信装置へHTTPリクエストを発行しストリーミング伝送を行うことを要求し、送信装置がその要求に対し応答を発行しストリーミング伝送を行うまでの受信装置及び送信装置の動作例を示す。尚、説明の簡単化のために、伝送に用いるプロトコルはHTTP/1.0で持続性接続をしないことを想定している。
次に、図1の構成で、制御情報及びリアルタイムデータの伝送をHTTPで行った場合の動作の詳細を述べる。
下記に、受信装置が送信装置へHTTPリクエストを発行しストリーミング伝送を行うことを要求し、送信装置がその要求に対し応答を発行しストリーミング伝送を行うまでの受信装置及び送信装置の動作例を示す。尚、説明の簡単化のために、伝送に用いるプロトコルはHTTP/1.0で持続性接続をしないことを想定している。
図5は受信装置の動作例の詳細を示したフローチャートである。その詳細をステップごとに述べる。
受信装置の処理を開始して、ステップS1で、送信装置へTCPコネクションを確立し、HTTPリクエストを送信可能状態にする。
受信装置の処理を開始して、ステップS1で、送信装置へTCPコネクションを確立し、HTTPリクエストを送信可能状態にする。
ステップS2で、ストリーミング伝送を要求するHTTPリクエストを生成し、送信する。要求するHTTPリクエスト41は図7のようになる。図7では、行いたいストリーミング伝送の識別子を「/Live」と想定している。また、「X‐Buffer‐Limit」というオプションヘッダーを定義し、それを用いて受信装置3の時間的制限を送信装置1に伝えるようにする。図7の例では、受信装置3が「400msec(ミリ秒)」の時間的制限を持っていることを示している。時間的制限は、様々な様式で指定可能である。図7のようにミリ秒という単位で指定しても良いし、例えば、バイト数のような受信装置3のバッファ4の容量で指定しても良い。
ステップS3で、送信した図7に示したHTTPリクエスト41へのHTTPレスポンス42を待つ。HTTPレスポンス42が返って来ない、もしくは、応答エラー(例えば、ステータスコード 404Not Found)の場合はステップS6へ移る。正常な応答の場合(例えば、ステータスコード 200 OK)は、ステップS4へ移る。
ステップS4で、リアルタイムデータを受信する。受信できた場合はステップS5へ移る。データが来なかったり、問題が生じたりした場合はステップS6へ移る。
ステップS5で、受信したリアルタイムデータをバッファへ蓄積し、出力する。ここでの出力とは、再生デバイスでの再生だけでなく、ネットワークへの転送を含む。
ステップS6で、TCPコネクションを閉じて処理を終了する。
ステップS6で、TCPコネクションを閉じて処理を終了する。
図6は送信装置の動作例の詳細を示したフローチャートである。その詳細をステップごとに述べる。
送信装置の処理を開始して、ステップS11で、受信装置からのTCPコネクションを確立し、図7に示すようなHTTPリクエスト41を受信可能状態にする。
送信装置の処理を開始して、ステップS11で、受信装置からのTCPコネクションを確立し、図7に示すようなHTTPリクエスト41を受信可能状態にする。
ステップS12で、受信装置から図7に示すHTTPリクエスト41を受信する。
ステップS13で、リアルタイムストリーミング伝送を要求するリクエストであるかどうかを判定する。例えば、図7のようなHTTPリクエスト41の場合は「/Live」という識別子で示される。リアルタイムストリーミングの場合はステップS14へ、そうでない場合はステップS24へ移る。
ステップS13で、リアルタイムストリーミング伝送を要求するリクエストであるかどうかを判定する。例えば、図7のようなHTTPリクエスト41の場合は「/Live」という識別子で示される。リアルタイムストリーミングの場合はステップS14へ、そうでない場合はステップS24へ移る。
ステップS14で、受信装置の時間的制限がリクエストに含まれていれば、それをT値として設定する。含まれていなければデフォルトの値(例えば、送信装置1のバッファ2の容量の最大値)をT値として設定する。図7のHTTPリクエスト41の場合、「X‐Buffer‐Limit」ヘッダによって時間的制限が伝えられる。時間的制限は様々な形式で指定される可能性がある。図7の場合はミリ秒を単位として与えられたが、バイト数で受信装置3のバッファ4の容量を直接指定されても良い。理解できない場合は指定されなかったものとしてバッファ2の最大値を設定する。
ステップS15で、HTTPコネクションが書き込み可能かどうかをチェックする。書き込み可能な場合はステップS16へ、不可能な場合はステップS27へ移る。
ステップS16で正常な図7に示すようなHTTPレスポンス42を送信する。図7は、「HTTP/1.0」によるHTTPレスポンス例42である。「X‐Buffer‐Limit」ヘッダにより、送信装置1によって採択された時間的制限が返され、受信装置3が確認できるようにしても良い。
ステップS17で、HTTPコネクションが書き込み可能かどうかをチェックする。書き込み可能な場合はステップS18へ、不可能な場合はステップS27へ移る。
ステップS18で、リアルタイムデータの入力があるならばステップS19へ、なければステップS26へ移る。
ステップS19で、バッファ内のデータがT値で示される限界を超えている場合はステップS20へ、そうでなければステップS21へ移る。バッファ2内のデータとT値の比較方法はT値の設定形式に依存する。T値がミリ秒で指定されていれば、バッファ2内のデータが何ミリ秒分のデータかどうかを判定して行う。T値がバイト数(容量)で指定されていれば、バッファ2の総容量で判定を行う。
ステップS20で、T値で与えられた条件を満たすまで、バッファ2の先頭からデータを削除していく。図4はT値の範囲外のデータ32を破棄する例を示している。33に示すように、T値外のデータ32は再生されないデータなので、それらを送信しないことでネットワークトラッフィックを削減できる。ただし、もし先頭にあるデータが重要なデータであるとわかるような場合には、破棄しないで保持しても良い。
例えば、重要度に応じて、MPEGのIピクチャのフレームは続くPピクチャおよびBピクチャの参照フレームとして使用されるため、後続のフレームのために送信することがあっても良い。このとき、Iピクチャを重要度1(最重要)、Pピクチャを重要度2(重要)、Bピクチャを重要度3(通常)として、Iピクチャが捨てられたら次のPピクチャおよびBピクチャも捨てるようにし、逆に、PピクチャおよびBピクチャが捨てられても、元のIピクチャは捨てないでバッファ2に保持するようにする。
ステップS21で、入力されたリアルタイムデータをバッファに蓄積する。
ステップS22で、バッファ内にデータが存在すればステップS23へ、なければステップS17へ移る。
ステップS22で、バッファ内にデータが存在すればステップS23へ、なければステップS17へ移る。
ステップS23で、バッファ内のデータを受信装置へ送信する。ネットワークの条件により全てを同時に出力するのが不可能な場合は、一部の送信だけをしても良い。
ステップS24で、HTTPコネクションが書き込み可能かどうかをチェックする。書き込み可能な場合はステップS25へ、不可能な場合はステップS27へ移る。
ステップS25で、エラーもしくは適切な図7に示すようなHTTPレスポンス42を送信する。
ステップS26で、リアルタイムデータの入力が一定時間ない場合はステップS27へ、ある場合はステップS22へ移る。
ステップS27で、接続を切断して処理を終了する。
ステップS27で、接続を切断して処理を終了する。
本発明では、受信装置が持っている時間的制限をデータ送信装置に知らせることで、送信装置の判断により無効なデータを破棄し、ネットワーク上のトラフィックを無駄に発生させない仕組みを実現する。この発明はリアルタイム通信に非常に適している。また、中継装置にも効果を期待することができ、ネットワーク全体でトラフィックを減らしつつ、データのリアルタイム性を維持する転送が可能となる。
本発明は、送信装置1に備えられたカメラやマイクから得られる映像や音声のデータ、ネットワーク上の他の装置あるいはエンコーダ(圧縮装置)などから送られるリアルタイムデータをネットワーク上の受信装置3へストリーミング伝送12により配信して、受信装置3は、ストリーミング伝送12により配信され受信されたリアルタイムデータを、受信装置3に備えられたモニターやスピーカに出力する場合に利用可能である。
1…送信装置、2…バッファ、3…受信装置、4…バッファ、11…入力、12…ストリーミング伝送、13…出力、14…制御情報、5…中継装置、6…バッファ、21…制御情報受信部、22…バッファ内制御部、23…リアルタイムデータ入力部、24…リアルタイムデータ出力部、31…T値範囲内有効データ、32…範囲外無効データ、33…送っても送信されないため送信前に破棄する、34…リアルタイムストリーミングデータパケット、35…リアルタイムストリーミングデータ、36…タイムスタンプ、41…HTTPリクエスト、42…HTTPレスポンス
Claims (8)
- 受信装置からの要求に応じてネットワークを介してリアルタイムデータのリアルタイムストリーミング伝送を行うリアルタイムストリーミング伝送装置において、
リアルタイムデータ入力部に入力されるリアルタイムデータを蓄積するバッファと、
制御情報を設定する制御情報設定部と、
上記制御情報に基づいて上記バッファを監視するバッファ内データ制御部と、
上記バッファに蓄積されたリアルタイムデータを読み出して出力するリアルタイムデータ出力部とを備え、
上記制御情報設定部により設定された制御情報の制限に基づき、上記ネットワークの状態により上記バッファ内のデータが制限を超えたとき、上記バッファ内データ制御部が無効なリアルタイムデータを判別して上記リアルタイムデータ出力部による出力前に破棄するようにした
ことを特徴とするリアルタイムストリーミング伝送装置。 - 請求項1に記載のリアルタイムストリーミング伝送装置において、
上記バッファは、送受信アプリケーションプログラムによって設けられるバッファ、もしくは装置固有のバッファ、もしくはそれらの組み合わせによることを特徴とするリアルタイムストリーミング伝送装置。 - 請求項1に記載のリアルタイムストリーミング伝送装置において、
上記制限は、上記受信装置から受信するものであり、上記受信装置が持つ再生バッファに関する制限情報であって、再生時間もしくはバッファ容量であることを特徴とするリアルタイムストリーミング伝送装置。 - 請求項1に記載のリアルタイムストリーミング伝送装置において、
上記受信装置との間に中継装置が設けられ、上記中継装置が制御情報を仲介し、受信されるリアルタイムデータを中継バッファに蓄積し、受信装置に送信することを特徴とするリアルタイムストリーミング伝送装置。 - 請求項1に記載のリアルタイムストリーミング伝送装置において、
指定された上記制限に従い、上記バッファに存在するリアルタイムデータから一定時間より古いものを破棄し、上記制限に見合ったより新しいリアルタイムデータを選択的に送信することを特徴とするリアルタイムストリーミング伝送装置。 - 受信装置からの要求に応じてネットワークを介してリアルタイムデータのリアルタイムストリーミング伝送を行うリアルタイムストリーミング伝送方法において、
リアルタイムデータ入力部に入力されるリアルタイムデータをバッファに蓄積するステップと、
制御情報設定部により制御情報を設定するステップと、
上記制御情報に基づいてバッファ内データ制御部により上記バッファを監視するステップと、
上記バッファに蓄積されたリアルタイムデータをリアルタイムデータ出力部により読み出して出力するステップとを備え、
上記制御情報設定部により設定された上記制御情報の制限に基づき、上記ネットワークの状態により上記バッファ内のデータが制限を超えたとき、上記バッファ内データ制御部が無効なリアルタイムデータを判別して上記リアルタイムデータ出力部による出力前に破棄するようにした
ことを特徴とするリアルタイムストリーミング伝送方法。 - 請求項6に記載のリアルタイムストリーミング伝送方法において、
上記制限は、上記受信装置から受信するものであり、上記受信装置から上記制限を受信したとき、上記制限の受信状態を制御プロトコルで上記ネットワークに伝播することを特徴とするリアルタイムストリーミング伝送方法。 - 請求項6に記載のリアルタイムストリーミング伝送方法において、
リアルタイムデータを破棄するとき、上記リアルタイムデータの優先度を判定し、一定時間より古くても破棄しないで保持することを特徴とするリアルタイムストリーミング伝送方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003284250A JP2005051709A (ja) | 2003-07-31 | 2003-07-31 | リアルタイムストリーミング伝送装置および伝送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003284250A JP2005051709A (ja) | 2003-07-31 | 2003-07-31 | リアルタイムストリーミング伝送装置および伝送方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005051709A true JP2005051709A (ja) | 2005-02-24 |
Family
ID=34268913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003284250A Pending JP2005051709A (ja) | 2003-07-31 | 2003-07-31 | リアルタイムストリーミング伝送装置および伝送方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005051709A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008199435A (ja) * | 2007-02-15 | 2008-08-28 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
JP2008252705A (ja) * | 2007-03-30 | 2008-10-16 | Pioneer Electronic Corp | 動画送信装置 |
WO2008142736A1 (ja) * | 2007-05-21 | 2008-11-27 | Fujitsu Limited | 中継装置、及び中継方法 |
JP2009071537A (ja) * | 2007-09-12 | 2009-04-02 | Toshiba Corp | データ転送システム及びデータ転送方法 |
JP2010251912A (ja) * | 2009-04-13 | 2010-11-04 | Sony Corp | コンテンツ送信装置、コンテンツ送信方法及びコンテンツ送信プログラム |
JP2011101225A (ja) * | 2009-11-06 | 2011-05-19 | Hitachi Ltd | 無線ネットワークシステム及び端末 |
JP2012109746A (ja) * | 2010-11-16 | 2012-06-07 | Canon Inc | 送信装置および送信方法 |
JP2021052353A (ja) * | 2019-09-26 | 2021-04-01 | 日本電気株式会社 | 送信側中継装置、システム、方法、及びプログラム |
US11501512B2 (en) | 2018-12-21 | 2022-11-15 | Canon Kabushiki Kaisha | Image processing apparatus, control method performed by the image processing apparatus, and storage medium, that determine a region including an object and control transmission an image corresponding to the determined region based on size thereof |
-
2003
- 2003-07-31 JP JP2003284250A patent/JP2005051709A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008199435A (ja) * | 2007-02-15 | 2008-08-28 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
JP2008252705A (ja) * | 2007-03-30 | 2008-10-16 | Pioneer Electronic Corp | 動画送信装置 |
JP4930588B2 (ja) * | 2007-05-21 | 2012-05-16 | 富士通株式会社 | 中継装置、及び中継方法 |
WO2008142736A1 (ja) * | 2007-05-21 | 2008-11-27 | Fujitsu Limited | 中継装置、及び中継方法 |
JPWO2008142736A1 (ja) * | 2007-05-21 | 2010-08-05 | 富士通株式会社 | 中継装置、及び中継方法 |
JP2009071537A (ja) * | 2007-09-12 | 2009-04-02 | Toshiba Corp | データ転送システム及びデータ転送方法 |
US8261060B2 (en) | 2009-04-13 | 2012-09-04 | Sony Corporation | Content transmitting apparatus, content transmitting method, and content transmitting program |
JP2010251912A (ja) * | 2009-04-13 | 2010-11-04 | Sony Corp | コンテンツ送信装置、コンテンツ送信方法及びコンテンツ送信プログラム |
JP2011101225A (ja) * | 2009-11-06 | 2011-05-19 | Hitachi Ltd | 無線ネットワークシステム及び端末 |
JP2012109746A (ja) * | 2010-11-16 | 2012-06-07 | Canon Inc | 送信装置および送信方法 |
US11501512B2 (en) | 2018-12-21 | 2022-11-15 | Canon Kabushiki Kaisha | Image processing apparatus, control method performed by the image processing apparatus, and storage medium, that determine a region including an object and control transmission an image corresponding to the determined region based on size thereof |
JP2021052353A (ja) * | 2019-09-26 | 2021-04-01 | 日本電気株式会社 | 送信側中継装置、システム、方法、及びプログラム |
WO2021060406A1 (ja) * | 2019-09-26 | 2021-04-01 | 日本電気株式会社 | 送信側中継装置、システム、方法、及び非一時的なコンピュータ可読媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2415234B1 (en) | Adaptive bitrate management for streaming media over packet networks | |
JP4414311B2 (ja) | マルチメディアストリーミングサービスシステム及びその方法 | |
WO2018133478A1 (zh) | 一种流媒体传输优化方法及装置 | |
CN103828324B (zh) | 用于自适应比特率管理的方法、设备和系统 | |
US9191664B2 (en) | Adaptive bitrate management for streaming media over packet networks | |
US8306058B2 (en) | Communication system and techniques for transmission from source to destination | |
US20040057446A1 (en) | Method for enabling packet transfer delay compensation in multimedia streaming | |
JP2008508791A (ja) | ホームエンターテインメントシステム、再生方法及びテレビジョン受像機 | |
US9781488B2 (en) | Controlled adaptive rate switching system and method for media streaming over IP networks | |
EP1185043A2 (en) | Streaming data transfer system and repeater therefor | |
US20120250762A1 (en) | System and method for implementation of dynamic encoding rates for mobile devices | |
JP2007537640A (ja) | パケット化データのビットレートの適合化とデータパケットの再送信との間の連携 | |
KR20030045643A (ko) | 데이터 통신 시스템, 데이터 송신 장치, 데이터 수신 장치, 데이터 통신 방법, 및 컴퓨터 프로그램 기록 매체 | |
US20150271302A1 (en) | Transport accelerator implementing client side transmission functionality | |
EP1679895A1 (en) | Medium signal transmission method, reception method, transmission/reception method, and device | |
Liang et al. | TCP-RTM: Using TCP for real time multimedia applications | |
JP2005051709A (ja) | リアルタイムストリーミング伝送装置および伝送方法 | |
CN109862400B (zh) | 一种流媒体传输方法、装置及其系统 | |
JP3871661B2 (ja) | マルチメディアコンテンツ受信装置及びマルチメディアコンテンツ受信方法 | |
JP2005051299A (ja) | パケット送信装置、パケット受信装置、パケット送信方法及びパケット受信方法 | |
WO2006103724A1 (ja) | パケットの配信帯域制御方法、配信装置及び映像配信システム | |
JP2005348015A (ja) | リアルタイム・ストリーミングデータ受信装置 | |
KR20060016809A (ko) | 미디어 신호의 수신장치, 송신장치 및 송수신 시스템 | |
JP2006067410A (ja) | 送信装置および方法、プログラム、並びに送受信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060616 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080418 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080513 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081202 |