JP2005348015A - リアルタイム・ストリーミングデータ受信装置 - Google Patents

リアルタイム・ストリーミングデータ受信装置 Download PDF

Info

Publication number
JP2005348015A
JP2005348015A JP2004164222A JP2004164222A JP2005348015A JP 2005348015 A JP2005348015 A JP 2005348015A JP 2004164222 A JP2004164222 A JP 2004164222A JP 2004164222 A JP2004164222 A JP 2004164222A JP 2005348015 A JP2005348015 A JP 2005348015A
Authority
JP
Japan
Prior art keywords
time
packet
buffer
retransmission request
area
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
Application number
JP2004164222A
Other languages
English (en)
Inventor
Takahisa Kamataki
崇央 鎌滝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004164222A priority Critical patent/JP2005348015A/ja
Publication of JP2005348015A publication Critical patent/JP2005348015A/ja
Pending legal-status Critical Current

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

【課題】 ネットワークへの負荷の増大を抑えながら、データ欠損と、それによるコマ落ちや、音切れ等の現象を防止すること。
【解決手段】 サーバ100から発信されるストリーミングデータ101は、クライアント200のパケット送受信部205で受信されバッファ202に送られる。バッファ202は、パケットが送信される時間間隔で受信したパケットを、パケットに付された番号順にバッファの先頭の領域から順に格納する。受信したパケットがバッファ202の末尾の領域に達するとストリーミングデータ処理部201に転送される。欠落判断部206がデータの欠落を判断すると、再送要求部204は、現在時刻とバッファ202から上記処理部201にデータが送出される予定時刻、再送要求時刻との差に応じて、欠落データの再送信を要求し、サーバ100は欠落データの再送信を実行する。
【選択図】 図1

Description

本発明は、ネットワークを使って動画や音楽などのストリーミングデータをリアルタイムで受信するリアルタイム・ストリーミングデータ受信装置に関し、例えば、インターネットテレビなどに利用することができるリアルタイム・ストリーミングデータ受信装置に関するものである。
動画や音楽などのストリーミングデータをリアルタイムで受信しながら再生するシステムが種々提案されている。
例えば、特許文献1には、リアルタイム信号を受信する受信部とパケット解析部と、誤り訂正部と、通信路評価部と、データを保管するバッファと、複数のアンテナと、アンテナを切り換え部と、再送要求制御部とを備え、通信路評価結果に基づいて、アンテナの切り替えを指示するとともに、再送要求制御部により再送が要求されているパケット又はブロックが選択されたとき、再送要求パケットを生成して、送信装置に送信する無線通信装置が開示されている。
上記特許文献1に記載のものでは、伝送過程により信号が劣化しても再送によりリアルタイム伝送が途切れることを極力押さえ、さらに、再送可能な状態の場合には、アンテナを切り換えて、その時点で最適なアンテナが選択するようにしている。なお、特許文献1に記載のものは、既にリアルタイムの伝送に途切れが生じてしまったパケット内のブロック、パケットの情報は破棄して再送要求を行なわない。
また、特許文献2には、連続メディアストリームを受信した後、複数のバッファからなる循環バッファを用いて伝送速度と再生速度の同期調整を行いながら再生するようにした連続メディア・ストリーム再生システムが記載されている。
上記特許文献2に記載のものでは、再生速度を調整してバッファのデータ量を操作していることから、伝送路の不安定に起因する再生メディアの品質の劣化を低減することができる。
特開2002−223248号公報 特開2002−330180号公報
TCP(TransmissionControlProtocol)のような、クライアントがパケットを正常に受け取れることを保障しているプロトコルでは、データを正常に受信した場合にクライアントがサーバにそれを知らせることで、データの送信を行っている。
一方、UDP(UserDatagramProtocol)など、パケットを保障しないプロトコルでの転送では、データ欠損をカバーするために、アプリケーションが独自にバッファを用意し、再送要求を生成して欠損したパケットを再受信している。
しかし、リアルタイム伝送ではバッファにデータを蓄積するのに時間を要し、また、ネットワーク環境が悪い場合は、再送要求が頻発してしまう。
また、TCPを用いた転送では、パケットを正常に受信できたことをサーバに通知することから、ネットワークの負荷が、UDPと比し増大する。また、ネットワーク環境が不安定な場合は、再送要求が頻発してしまい、リアルタイム性が損なわれる。 また、一般にバッファを用いたストリーミングデータの転送では、バッファにデータがたまるまでストリーミングデータの再生が行われず、ユーザが再生を待たなければならない。
リアルタイム・ストリーミングデータの伝送において、伝送途切れが生じると、コマ落ちや音切れなどが発生するので、データの欠落はできるだけ少なくするのが望ましい。しかし、再送要求が頻発すると上記のようにネットワーク負荷が増大し、リアルタイム性が損なわれる。
したがって、送信側と受信側の双方にバッファを持たせたストリーミングデータ伝送においては、受信側のバッファの状態に応じて再送要求を制御し、データの欠損をできるだけ少なくしながらネットワークの負荷を抑えるのが望ましい。
本発明は上記事情に鑑みなされたものであって、本発明の目的は、バッファを有するリアルタイム・ストリーミングデータの受信装置において、受信側のバッファの状態に応じて、再送要求を制御することで、ネットワークへの負荷の増大を抑えながら、データ欠損と、それによるコマ落ちや、音切れ等の現象を防止することができるようにすることである。
本発明においては、上記課題を次のように解決する。
(1)サーバからネットワークを介して送信されるストリーミング データをリアルタイムで受信するストリーミングデータ受信装置において、この受信装置に、ストリーミングデータの送受信部と、該送受信部で受信したパケットを格納するバッファと、パケットに欠落が生じたとき上記サーバに対して再送要求をする再送要求部とを設ける。
上記バッファは、受信したパケットを格納する複数の領域を備え、パケットが送信される予定時間間隔で順次シフトしながら、受信したパケット、もしくは、パケットが欠落したときには空のデータを、パケットに付された番号順にバッファの先頭から順に格納し、バッファの末尾にパケットが達したとき、該パケットをストリーミングデータ処理部に転送する。
また、上記バッファの各領域に対応させてパケットをストリーミングデータ処理部に送出する時刻を保持する送出予定時刻保持部を設け、該送出予定時刻保持部に、バッファの各領域に格納されたパケットもしくは空データがバッファの末尾に達する時刻が保持される。
そして、上記再送要求部は、上記バッファの先頭から予め設定された数のパケット受信待ち領域外に空のデータがあるかを調べ、該領域外に空のデータがあるとき、該空のデータがある領域に対応した送出時刻保持部に保持された時刻と現在時刻を比較して、その差が再送要求可能な所定時間以上であるとき、上記空の領域に格納されるべきパケットの再送要求を行う。
(2)上記バッファの各領域に対応させて再送要求時刻保持部を設け、該再送要求時刻保持部に、上記再送要求部がパケットの再送要求したときの再送要求時刻を保持させる。
上記再送要求部は、現在時刻と上記再送要求時刻との差が、上記再送要求が可能な所定時間以上のとき、再度パケットの再送要求を行う。
(3)上記(1)(2)において、再送要求部は上記再送要求可能な所定時間を、パケットの送受信時間から決定する。
(4)上記(1)(2)(3)において、上記バッファの容量をユーザが設定する手段を設ける。
本発明によれば、様々なストリーミングデータのリアルタイム転送において、データの欠落を最小限にすることができる。
特に、以下の効果を得ることができる。
(1)上記バッファの先頭から予め設定された数のパケット受信待ち領域外に空のデータがあるかを調べ、該領域外に空のデータがあるとき、該空のデータがある領域に対応した送出予定時刻保持部、再送要求時刻保持部に保持された時刻と現在時刻を比較して、その差が再送要求可能な所定時間以上であるとき、上記空の領域に格納されるべきパケットの再送要求を行うようにしたので、「パケットが前後して到着する」「再送要求を送信しても、データが使われるまでにパケットを補完できる見込みがない」といった可能性を加味して再送要求を行うことができる。このため、再送要求を減少させることができ、ネットワーク帯域の使用量増加を抑えることができる。
(2)ネットワークの負荷は時間によって変化する。また、再送要求が発生することで、ネットワークの帯域をさらに圧迫するという現象も起こる。
本発明では、再送要求パケットの受信を利用してネットワークの伝送遅延時間(パケットの送受信時間)を得て、上記再送要求可能な所定時間を上記伝送遅延時間で決定し、それを利用して再送要求を制御するようにしているので、ネットワーク負荷が変化する場合においても、効率の良い再送要求の発信を行うことができる。
(3)バッファを有するリアルタイム・ストリーミングデータ転送においては、原理的にバッファ容量を増やすにつれて、コマ落ちの減少と遅延時間の増加が起こる。
本発明では、バッファの容量をユーザが設定する手段を設けたので、ユーザが自分の環境等に応じて、データの欠落とバッファ使用時の待ち時間を調整することができる。
例えば、テレビ画像のストリーミング配信において、どの程度のコマ落ち/遅延時間を許容できるかには個人差があるが、本発明によれば、コマ落ちと遅延時間の調整を、ユーザが画像を確認しながら行うことができ、ユーザに応じて調整することができる。
図1は本発明の実施例のストリーミングデータ転送装置の構成を示す図である。
本実施例のストリーミングデータ転送装置は、同図に示すように、ネットワーク300に接続されたサーバ100と、サーバ100から送信されるストリーミング・データを受信して再生するクライアント200から構成される。
サーバ100から発信されるストリーミングデータ101は、サーバ100のパケット送受信部105とバッファ102に送られ、パケット送受信部105から、ネットワーク300を介して、クライアント200のパケット送受信部205に送られる。
このストリーミングデータを受信したクライアント200は、いったんバッファ202にストリーミングデータを送る。
データを受け取ったバッファ202は、ストリーミングデータ処理部201(ストリーミングデータを処理する適当な処理アプリケーション)にデータを送出する。
上記バッファ202は、受信したデータ(パケット)を格納する複数の領域(以下パケット領域という)を備え、サーバ100からパケットが送信される時間間隔で順次シフトしながら、受信したパケットを、パケットに付された番号順にバッファの先頭から順に、各パケット領域に格納する。また、上記送信時間隔でパケットが受信できず、パケットが欠落したときには、そのパケット領域は空となる(ここでは、この状態を空データが格納されるという)。
そして、受信したパケットがバッファ202の末尾のパケット領域に達したとき、該パケット領域に格納されたパケットが(該領域が空の場合には、空のまま)、ストリーミングデータ処理部201に転送され再生される。
また、上記バッファ202には、後述するようにバッファ202の各パケット領域に対応させて時刻を保持する送出予定時刻保持部と、再送要求時刻保持部が設けられる。そして、時計209により計時される時刻情報がバッファ202に与えられ、上記送出予定時刻保持部には、後述するように、バッファ202の各パケット領域に格納されたパケットもしくは空データがバッファ202の末尾に達する時刻が保持される。ここで上記「送出予定時刻」とは、ストリーミングデータ処理部201へデータを送出する時刻を指す。
また、再送要求時刻保持部には、後述するように再送要求部204がパケットの再送要求したときの再送要求時刻が保持される。
上記再送要求部204は、現在時刻と上記送出予定時刻、再送要求時刻との差に応じてパケットの再送要求を行う。
ユーザは、ユーザ入力208を介して、バッファ容量制御部203によりバッファ202の容量を変更することができる。バッファ202の容量を大きくすると、後述するようにデータの欠落を補完する可能性が増えるが、遅延時間が長くなる。ユーザは、データ欠落によるコマ落ち、音切れなどを考慮して、上記バッファ容量を調整する。ここで、上記サーバ100のバッファ102のサイズは、クライアント200のバッファ202の最大サイズである。
欠落判断部206が、ストリーミングデータの欠落を判断すると、再送要求部204は、上述したように上記バッファ202中のデータの状態に応じて、サーバ100に対して、欠落データの再送信を要求する。要求を受けたサーバ100では、再送要求受信部104がバッファ102に対して欠落データの再送信を実行させる。
図2は、図1に示したバッファ202の構成を示す図である。以下、図1、図2により本実施例の再送要求部204による再送要求処理について説明する。
まず、図1で示したサーバ100側のパケット送受信部105とクライアント側のパケット送受信部205は、ストリーミングデータの送信に先立って、パケットの送信時間間隔をサーバ100からクライアント200に通知しておく。
サーバ100から送信される各パケットには、連続なシーケンス番号が含まれる。シーケンス番号は、パケットごとに連番が割り当てられ、値が最大になった場合は、次のパケットで再び最初の番号に戻る(例えば、シーケンス番号は、「0,1,2……104875,0,1」のように連番が割り当てられる)。
クライアント200側は受信したパケットをバッファ202に格納する。バッファ202は、図2に示すように、受信したパケットを保持する複数のパケット領域b1〜bnを有し、各領域b1〜bnに受信したパケットを順次格納する。
上記各パケット領域に格納されたパケットは、上記サーバ100から通知された送信時間間隔で次の領域に順次シフトされ、バッファ202の末尾の領域bnに達したパケットが、ストリーミングデータ処理部201に送出される。
受信したパケットは、パケットに付されたシーケンス番号順に上記バッファ202の各パケット領域に格納される。しかし、ネットワーク300の状態によっては、上記送信予定間隔で受信されず欠落したり、パケットを受信する順番が逆になったりする。パケットが上記送信予定間隔で受信されない場合、そのパケットが格納されるべきパケット領域は同図の403に示すように空になる。そして、例えば、上記空になったパケット領域に格納されるべきパケットが、遅れて受信された場合には、そのパケットが格納されるべき空のパケット領域にそのパケットが格納される。また、そのパケットが欠落した場合、再送要求部204は、空のパケット領域がバッファ202中の再送要求可能な範囲内の領域にあるとき、再送要求をする。
バッファ202の容量は、前記したようにバッファ容量制御部208によって、任意に変えることができる。
また、バッファ202の各パケット領域に対応して、前記したように送出予定時刻、再送要求時刻を保持する送出予定時刻保持部202aと再送要求時刻保持部202bが設けられている。
最初にパケットを受信した場合、送出予定時刻保持部202aには、現在の時刻とバッファのサイズから計算される待ち時間とを足した値が設定される。なお、この待ち時間とは、受信したパケットがバッファ202のパケット領域b1に格納されてから、該データがバッファ202の末尾のパケット領域bnに達し、ストリーミングデータ処理部201へ送出されるまでの時間である。以降は、[現在時刻]+[シーケンス番号と送信時間間隔から計算される時間]+[待ち時間]で計算した値が設定される。
すなわち、受信されバッファ202のパケット領域に保持された各パケットは、送出予定時刻保持部202aに保持された時刻に、ストリーミングデータ処理部201に送出されることになる。
また、図2に示すパケット402が受信された時のように、シーケンス番号が連番にならない場合、パケット402の送出予定時刻を設定する際に、空パケット403の送出予定時刻を、送出予定時刻保持部202aに設定する。
再送要求部204は、図2に示す上記バッファ202の先頭から予め設定された数の「パケット受信待ち領域」外に空のデータがあるかを調べ、該領域外に空のデータがあるとき、該空のデータがあるパケット領域に対応した上記送出予定時刻保持部に保持された時刻と現在時刻を比較する。そして、その差が再送要求可能な所定時間以上であるとき(図2の「再送要求可能領域」にあるとき)、上記空のパケット領域に格納されるべきパケットの再送要求を行う。
また、上記再送要求した時刻は、再送要求時刻保持部202bに保持され、再送要求部204は、現在時刻と上記再送要求時刻保持部202bに保持された再送要求時刻との差が、上記再送要求が可能な所定時間以上のとき、再度パケットの再送要求を行う。
図3は、バッファの各パケット格納領域b1〜bnに対して欠落判断部206が行う処理のフローであり、欠落判断部206は、バッファ202の各パケット領域について、以下の処理を行う。
(1)現在時刻が、注目しているパケット領域の送出予定時刻であるかを調べる(ステップS1)。現在時刻が送出予定時刻の場合は、パケットをストリーミングデータとして、ストリーミングデータ処理部201に送出する(ステップS2)。
ここで、上記パケット領域にパケットが保存されていない(パケットが空)の状態には、空パケットとしてストリーミングデータを送信する。その際は、欠落のあるストリーミングデータとなる。
(2)現在時刻が、上記注目しているパケット領域の送出予定時刻でない場合には、該パケット領域にパケットが格納されているかを調べ(ステップS3)、パケットが格納されている場合は何もしない。そして、次のパケット領域について、上記ステップS1からの処理を行う。
(3)注目しているパケット領域が空の場合、パケットの到達が前後しているかを確認する。この確認として、注目しているパケット領域よりも送出予定時刻が後に設定されているパケットを何個受信しているかを見て、X個以上受信しているかを確認する(ステップS4)。すなわち、前記図2に示したように、注目しているパケット領域より送出予定時刻が後に設定されているパケット領域の数がX個以上である(注目しているパケット領域が「パケット受信待ち領域」外にある)かを確認する。
そして、一定以上(X個以上)のパケットが受信されている場合は、当該パケットが送信途中で失われた可能性があると判断する。
ここで、X個は任意の数に設定可能であり、パケットの受信間隔のばらつきに応じて定める。パケット受信間隔ばらつきが大きいほどXを大きくするのが望ましい。
また、X個以上のパケットが受信されていなければ、当該パケット領域に格納されるべきパケットがまだ受信される可能性があるので、何もせずにそのパケット領域の処理を終了し、次のパケット領域について、上記ステップS1からの処理を行う。
(4)一定以上(X個以上)のパケットが受信されている場合は、次に、送出予定時刻と現在時刻の差をとり、あと何秒で注目しているパケットをストリーミングデータとしてストリーミングデータ処理部201へ送出しなければならないかを見る。すなわち、[送信予定時刻]−[現在時刻]がY秒(前記図2に示した「所定時間」)以上であるかを調べる(ステップS5)。
この時間が短いと、仮にパケットの再送信を要求したとしても、そのパケットを受け取るまえに、送出時刻が果てしまうことになるため、再送要求処理を行わない。
つまり、[送信予定時刻]−[現在時刻]が短いと、再送要求したパケットを受信する前に、注目している空のパケット領域がバッファ202の末尾の領域bnに達してしまい、再送要求したパケットを受信しても利用されないためである。
ここで、上記Y秒にあたる時間は任意に設定可能であるが、再送要求から再送までの時間が長いときは、Yの値を大きくするのが望ましい。なお、後述するように、再送要求から再送までの時間を記録して、Y秒をこの時間から自動的に求めるようにしてもよい。
[送信予定時刻]−[現在時刻]がY秒以上でない場合には、前記したように、何もせずにそのパケット領域の処理を終了し、次のパケット領域について、上記ステップS1からの処理を行う。
(5)最後に、既に再送信要求が行われているパケット領域かどうかを調べる。また、再送信要求がすでになされている場合は、再送信要求時刻と現在時刻の差をとり、Y秒以上であるかを調べる(ステップS6)。
既に再送信要求が行われているパケット領域であって、再送信要求時刻と現在時刻の差がY秒以上でなければ、前記と同様、何もせずにそのパケット領域の処理を終了し、次のパケット領域について、上記ステップS1からの処理を行う。
一方、再送要求時刻がない場合には、再送信要求をする。また、再送信要求時刻と現在時刻の差がY秒以上の場合には、再送要求して再送されたパケットが失われたと判断し、再度、再送要求を行う。
再送要求部は、以下の処理を行う。
(1)再送要求を行うとき、再送要求部204はまず、バッファ202内の当該パケット領域の再送要求時刻保持部202bに現在時刻を書込む。
(2)再送要求を、パケット送受信部205を通してネットワーク300に送信する。
(3)再送要求を受信したサーバ100側のパケット送受信部105は、受信したパケットを再送要求と判断し、再送要求受信部104に再送要求を送る。
(4)再送要求受信部104は、再送要求されたパケットをバッファ102に通知する。(5)バッファ102はパケット送受信部105を通して、再送要求されたパケットをネットワーク300に送信する。
(6)クライアント200側では、通常の手順でパケットを受信し、バッファ202の対応するパケット領域にパケットを格納する。
次に、前記「パケット受信待ち領域」を定めるパラメータであるX個、および前記「再送要求可能時間」を定めるパラメータであるY秒の設定について説明する。
再送要求部204は、再送要求を行っていたパケットを受信した時刻と再送要求時刻の差をとり、記録しておく。この時間は、ネットワーク300を通してパケットが往復するのに要した時間であり、これに適当なマージンを加えた時間を、前述のY秒として用いる事ができる。また、パケットが往復するに要した時間について、統計をとることで、時間のバラツキを求め、バラツキ/平均時間を上記Xとして用いることができる。
図4に上記パケットが往復するに要した時間を求める処理フローを示す。
任意の初期パラメータを予め設定し、再送要求をし、再送要求時刻を記録しておく(ステップS1−S3)。再送要求をしたパケットを受信したら、そのパケットを受信した時刻を記録する(ステップS4,S5)。そして、パケット受信時刻と再送要求時刻の差を求め、これを往復時間として記録する(ステップS6)。
また、上記パケットが往復に要する時間を複数記録し、平均/バラツキをとっていくことで、パラメータの極端な変化を避けることができる。
図5に、上記のようにパケットが往復に要する時間を複数記録して、XとYのパラメータを決定する処理を示す。
同図に示すように、図4の処理を行って複数のパケット往復時間を求め、平均を計算する(例えば22.1ms)。そして、この平均にマージン(例えば+5ms)を追加してY(例えば27.1ms)を求める。
また、複数のパケット往復時間の標準偏差を計算し(例えば19.5ms)、上記Yを決定する際に求めた平均のx倍である[平均×x]>[標準偏差]となるxを計算し、マージン(例えば+1)を追加し、Xを決定する。
上記のようにしてX,Yを決定することで、回線状況が変化する環境においても、再送要求に関する最適なパラメータを維持する事ができる。
ところで、本発明において主要な点は、リアルタイム伝送されるストリーミングデータにおいて、再生されるまでに一定の遅延を加え、その時間差を利用して、データの欠落を検出した時に、再送要求を行う点にある。
すなわち、バッファ202の容量を大きくすれば、欠落が補完できる可能性が上がる反面、遅延時間が長くなる。
また、コマ落ちに対する許容範囲はユーザごとに異なるため、ユーザにとって最適なバッファ容量はユーザごとに違うことになる。そこで、欠落が補完できなかった場合のコマ落ちをユーザが視聴し、ユーザがコマ落ちを減らしたいと考えたときにバッファ202のパケット領域を増加する操作を行うことで、コマ落ちを減らす仕組みとし、欠落の補完と遅延時間の関係をユーザの任意のバランスにできるようにする。
すなわち、図6に示すように、ユーザが再生されたストリーミングデータによる映像(又は音)を視聴し、コマ落ちを認識する。そして、コマ落ちが多いと認識した場合には、前記バッファ容量制御部203により、バッファ容量を増加させる。
その際、前記Xの大きさをバッファの大きさに合わせて、変えてもよい。Xを大きくすれば、パケットの転送にバラツキがあってもこのバラツキを吸収することができる。
図7は、本発明を、TV受信機器で受信したコンテンツをネットワークを通じてパソコンで再生するシステムに適用した場合の構成例を示す図である。
同図に示すように、テレビの映像、音声などをTV受信機器10で受信し、ストリーミングデータ生成部11でストリーミングデータを生成する。生成されたストリーミングデータは、前記図1に示した構成のストリーミングデータ送信部12から無線LANなどのネットワーク30を介してパソコン20に送信される。
パソコン20では、このストリーミングデータを前記図1に示した構成のストリーミングデータ受信部21で受信する。そして、この受信部21で受信したストリーミングデータをストリーミングデータを処理するアプリケーション22に送り、映像、音声などを再生する。
図6に示すように、本発明を、TV受信機器10で受信したコンテンツをネットワークを通じてパソコン20で再生するシステムに適用することで、視聴時の「コマ落ち」や「音とび」を軽減することができる。
また、前記したように視聴者がバッファの容量を増減することで、欠落の補完と遅延時間の関係を視聴者が調整することができる。
本発明の実施例のストリーミングデータ転送装置の構成を示す図である。 本発明の実施例のバッファの構成を示す図である。 欠落判断部が行う処理フローである。 パケットが往復するに要した時間を求める処理フローである。 パケットが往復に要する時間からXとYのパラメータを決定する処理を示す図である。 ユーザによるバッファ容量の調整を説明する図である。 本発明をTV受信機器で受信したコンテンツをネットワークを通じてパソコンで再生するシステムに適用した場合の構成例を示す図である。
符号の説明
100 サーバ
300 ネットワーク
101 ストリーミングデータ生成部
102 バッファ
104 再送要求受信部
105 パケット送受信部
200 クライアント
201 ストリーミングデータ処理部
202 バッファ
203 バッファ容量制御部
204 再送要求部
205 パケット送受信部
206 欠落判断部
208 ユーザ入力
209 時計

Claims (5)

  1. ネットワークを介して接続されたサーバから送信されるストリーミング データをリアルタイムで受信するストリーミングデータ受信装置であって、
    上記受信装置は、ストリーミングデータの送受信部と、該送受信部で受信したパケットを格納するバッファと、パケットに欠落が生じたとき上記サーバに対して再送要求をする再送要求部とを備え、
    上記バッファは、受信したパケットを格納する複数の領域を備え、パケットが送信される予定時間間隔で順次シフトしながら、受信したパケット、もしくは、パケットが欠落したときには空のデータを、パケットに付された番号順にバッファの先頭から順に格納し、バッファの末尾にパケットが達したとき、該パケットをストリーミングデータ処理部に転送し、
    上記バッファの各領域に対応させて、パケットをバッファからストリーミングデータ処理部に送出する時刻を保持する送出予定時刻保持部が設けられ、該送出予定時刻保持部には、バッファの各領域に格納されたパケットもしくは空データがバッファの末尾に達する時刻が保持されており、
    上記再送要求部は、上記バッファの先頭から予め設定された数のパケット受信待ち領域外に空のデータがあるかを調べ、該領域外に空のデータがあるとき、該空のデータがある領域に対応した送出予定時刻保持部に保持された時刻と現在時刻を比較して、その差が再送要求可能な所定時間以上であるとき、上記空の領域に格納されるべきパケットの再送要求を行うことを特徴とするリアルタイム・ストリーミングデータの受信装置。
  2. 上記バッファの各領域に対応させて再送要求時刻保持部が設けられ、該再送要求時刻保持部には、上記再送要求部がパケットの再送要求したときの再送要求時刻が保持され、
    上記再送要求部は、現在時刻と上記再送要求時刻との差が、上記再送要求が可能な所定時間以上のとき、再度パケットの再送要求を行う
    ことを特徴とする請求項1記載のリアルタイム・ストリーミングデータの受信装置。
  3. 上記再送要求部は、上記再送要求可能な所定時間を、パケットの送受信時間から決定する
    ことを特徴とする請求項1または請求項2記載のリアルタイム・ストリーミングデータの受信装置。
  4. 上記バッファの容量をユーザが設定する手段を備えた
    ことを特徴とする請求項1,2または請求項3記載のリアルタイム・ストリーミングデータの受信装置。
  5. ネットワークを介して接続されたサーバから送信されるストリーミング データをリアルタイムで受信して、該パケットが送信される時間間隔で順次シフトしながら、受信したパケット、もしくは、パケットが欠落したときには空のデータを、パケットに付された番号順に先頭から順に、複数のパケットを格納する領域を備えたバッファに格納し、バッファの末尾にパケットが達したとき、該パケットをストリーミングデータ処理部に転送するプログラムであって、
    上記プログラムは、各領域に格納されたパケットもしくは空データがバッファの末尾に達する時刻を算出し、該時刻を上記バッファの各領域に対応させて設けられた送出予定時刻保持部に保持させる処理と、
    上記バッファの先頭から予め設定された数のパケット受信待ち領域外に空のデータがあるかを調べ、該領域に空のデータがあるとき、該領域の上記送出予定時刻保持部に保持された時刻と現在時刻を比較して、その差が、予め定められた再送要求可能な所定時間以上であるとき、上記空の領域に格納されるべきパケットの再送要求を行う処理をコンピュータに実行させることを特徴とするリアルタイム・ストリーミングデータの受信プログラム。
JP2004164222A 2004-06-02 2004-06-02 リアルタイム・ストリーミングデータ受信装置 Pending JP2005348015A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004164222A JP2005348015A (ja) 2004-06-02 2004-06-02 リアルタイム・ストリーミングデータ受信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004164222A JP2005348015A (ja) 2004-06-02 2004-06-02 リアルタイム・ストリーミングデータ受信装置

Publications (1)

Publication Number Publication Date
JP2005348015A true JP2005348015A (ja) 2005-12-15

Family

ID=35499990

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004164222A Pending JP2005348015A (ja) 2004-06-02 2004-06-02 リアルタイム・ストリーミングデータ受信装置

Country Status (1)

Country Link
JP (1) JP2005348015A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007300549A (ja) * 2006-05-02 2007-11-15 Canon Inc 撮像装置、通信装置及び通信方法
WO2008020547A1 (fr) * 2006-08-17 2008-02-21 Sony Corporation Dispositif de traitement des communications, procédé de commande des communications, et programme informatique
WO2008114450A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Limited 測定方法、測定装置及びコンピュータプログラム
JP2010539834A (ja) * 2007-09-19 2010-12-16 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン メディアデータコンテナとメタデータコンテナとを有するファイルを格納し読み取るための装置及び方法
JP2014060472A (ja) * 2012-09-14 2014-04-03 Toshiba Corp コンテンツ配信サーバ装置及びその制御方法
JP2017028705A (ja) * 2016-08-24 2017-02-02 ソニー株式会社 通信装置、通信方法およびプログラム
US10009646B2 (en) 2010-12-10 2018-06-26 Sony Corporation Image processing device, image reproduction device, and image reproduction system

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007300549A (ja) * 2006-05-02 2007-11-15 Canon Inc 撮像装置、通信装置及び通信方法
US7886071B2 (en) 2006-08-17 2011-02-08 Sony Corporation Communication processing device, communication control method, and computer program
WO2008020547A1 (fr) * 2006-08-17 2008-02-21 Sony Corporation Dispositif de traitement des communications, procédé de commande des communications, et programme informatique
CN101356814B (zh) * 2006-08-17 2011-07-27 索尼株式会社 通信处理设备和通信控制方法
JP4889787B2 (ja) * 2007-03-20 2012-03-07 富士通株式会社 測定方法、測定装置及びコンピュータプログラム
JPWO2008114450A1 (ja) * 2007-03-20 2010-07-01 富士通株式会社 測定方法、測定装置及びコンピュータプログラム
GB2459814A (en) * 2007-03-20 2009-11-11 Fujitsu Ltd Measuring method, measuring device, and computer program
WO2008114450A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Limited 測定方法、測定装置及びコンピュータプログラム
GB2459814B (en) * 2007-03-20 2012-04-18 Fujitsu Ltd Measuring method, measuring device, and computer program
US8244900B2 (en) 2007-03-20 2012-08-14 Fujitsu Limited Measuring method, measuring apparatus and computer program
JP2010539834A (ja) * 2007-09-19 2010-12-16 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン メディアデータコンテナとメタデータコンテナとを有するファイルを格納し読み取るための装置及び方法
US8849778B2 (en) 2007-09-19 2014-09-30 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for storing and reading a file having a media data container and a metadata container
US10009646B2 (en) 2010-12-10 2018-06-26 Sony Corporation Image processing device, image reproduction device, and image reproduction system
US10869081B2 (en) 2010-12-10 2020-12-15 Sony Corporation Image processing device, image reproduction device, and image reproduction system
JP2014060472A (ja) * 2012-09-14 2014-04-03 Toshiba Corp コンテンツ配信サーバ装置及びその制御方法
JP2017028705A (ja) * 2016-08-24 2017-02-02 ソニー株式会社 通信装置、通信方法およびプログラム

Similar Documents

Publication Publication Date Title
JP3598110B2 (ja) データ伝送方法および装置
JP4414311B2 (ja) マルチメディアストリーミングサービスシステム及びその方法
CA2517194C (en) Method and device for multimedia streaming
US9565482B1 (en) Adaptive profile switching system and method for media streaming over IP networks
EP1294193B1 (en) Method and apparatus for changing received streaming content channels
US20080148327A1 (en) Method and Apparatus for Providing Adaptive Trick Play Control of Streaming Digital Video
EP1233622A2 (en) Transmission rate control method
US9781488B2 (en) Controlled adaptive rate switching system and method for media streaming over IP networks
JP2002077251A (ja) データ伝送システム、データ中継装置、およびデータ中継方法
EP2413564B1 (en) Method and apparatus for transmitting and receiving streaming data based on RTSP sessions
US20080133744A1 (en) Multimedia data streaming server and method for dynamically changing amount of transmitting data in response to network bandwidth
JP2008508791A (ja) ホームエンターテインメントシステム、再生方法及びテレビジョン受像機
US20040260828A1 (en) Streaming media buffering system
CN110381350B (zh) 基于webrtc的多路录像回放同步***及其处理方法
JP5659791B2 (ja) コンテンツ配信システム、コンテンツ配信方法及びプログラム
US20060230171A1 (en) Methods and apparatus for decreasing latency in A/V streaming systems
JPH10336626A (ja) 映像データの転送方法および転送装置
JP3933555B2 (ja) データ配信システム、データ配信装置、データ配信方法、データ配信プログラム、および該プログラムを記録した記録媒体
JP2005348015A (ja) リアルタイム・ストリーミングデータ受信装置
JP2009188735A (ja) 動画データ配信装置、動画データ配信システム、動画データ配信方法およびプログラム
JP4445012B2 (ja) パケットの配信帯域制御方法、配信装置及び映像配信システム
JP2005051709A (ja) リアルタイムストリーミング伝送装置および伝送方法
KR100624854B1 (ko) 미디어 재전송 장치 및 방법
JP5522987B2 (ja) 送信装置、送信方法、及びコンピュータプログラム
JP4596766B2 (ja) メディア通信制御方法、メディア通信制御装置、および、メディア提供システム、ならびに、メディア通信制御プログラム、および、その記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081007

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081204

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090331