JP2005051299A - Packet transmission apparatus, packet reception apparatus, packet transmission method and packet reception method - Google Patents
Packet transmission apparatus, packet reception apparatus, packet transmission method and packet reception method Download PDFInfo
- Publication number
- JP2005051299A JP2005051299A JP2003202981A JP2003202981A JP2005051299A JP 2005051299 A JP2005051299 A JP 2005051299A JP 2003202981 A JP2003202981 A JP 2003202981A JP 2003202981 A JP2003202981 A JP 2003202981A JP 2005051299 A JP2005051299 A JP 2005051299A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- retransmission
- data
- time
- unit
- 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
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、符号化された動画像/静止画像に係るパケットをISDNやインターネット等の有線通信網あるいは携帯電話や無線LAN等の無線通信網を用いて送信するパケット送信装置、該パケットを受信するパケット受信装置、パケット送信方法及びパケット受信方法に関する。
【0002】
【従来の技術】
近年、画像等の各種情報のデジタル符号化技術や広帯域ネットワーク技術の進展により、これらを利用したアプリケーションの開発が盛んになっており、圧縮符号化した画像等を通信網を利用して伝送するシステムが開発されている。
【0003】
特に、インターネット・イントラネットの普及により、データをパケット化して送受信するアプリケーションやシステムが増加している。パケット化は通信路の帯域を効率良く複数のユーザで共有するのに有効な手段である。パケットデータを送受信するプロトコルとしてTCP/IPやUDP/IPなどが存在する。TCP/IPは再送などの枠組みが組み込まれていることから誤りなどに強く、多少時間がかかっても正しくデータを受信したいダウンロード型のアプリケーションに有効である。UDP/IPは再送の枠組みがない反面、再送などにかかる遅延がなく、リアルタイム性を求められるアプリケーションに有効である。
【0004】
動画像通信では、通常、画像データは非常に膨大なデータ量であり、ネットワークの帯域に収まらない場合が多い。この場合、画像データを符号化しデータ量を小さくして伝送する手法が用いられる。動画像信号の圧縮符号化技術としては動き補償、離散コサイン変換(DCT)、サブバンド符号化、ピラミッド符号化、可変長符号化等の技術やこれらを組み合わせた方式が開発されている。動画像符号化の国際標準方式としてはISO MPEG−1, MPEG−2, ITU−T H.261, H.262, H.263が存在し、動画像、音声・オーディオ信号を圧縮した符号列や他のデータを多重化する国際標準方式としてはISO MPEGシステム、ITU−T H.221, H.223が存在する。
【0005】
インターネット等は無数のネットワークを介して繋がっており、どのネットワークがどういう状況になっているかわからないのが通常である。また、そこに流れているデータ量が時々刻々と変動するため、どのくらいのデータがリアルタイムで通信できるかを判定する仕組みが必要である。そこで、UDP/IPを利用したリアルタイムアプリケーションから一歩進み、パケットに時間情報等を付加して伝送するRTP(Real−time Transport Protocol)というパケットフォーマットを使用するアプリケーションが増えてきている。RTPを利用することで、パケットに時間情報及びパケット番号が付加され、受信側では正しい時間情報を用いて音声や画像を表示することが出来たり、ネットワークで順番が入れ替わったパケットなどを判定したり、パケット番号を見ることでパケットが損失していることを検出すること等が出来る。しかも、RTPには送信側や受信側から補足情報としてジッタやパケット損失率などを通知する仕組み(RTCP(RTP Control Protocol))も備わっている。また、RTPパケットの再送を行う仕組み等も現在議論されている。例えば、パケットに優先順位等を付加し、全てを再送しないようトラフィックの制御ができるような機能が知られている。ただし、この利用法について規定はなされていない。
【0006】
また、IETF(The Internet Engineering Task Force)では、上記のような画像通信を確立するための送信端末・受信端末間のセッション管理プロトコルとしてRTSPが規定されているとともに、画像コンテンツの内容を記述するための言語仕様であるSDPが規定されている。これにより、サーバ・クライアント間では、RTSPによりセッションの開始や、マルチメディアコンテンツの送信開始、一時停止やセッションの終了等の制御が可能となる。
【0007】
ここで、画像をインターネット等で伝送する場合、インターネット等では生の画像伝送分の帯域を確保できないので、画像信号をMPEGなどの符号化方式で圧縮して送ることが行われる。これはデータ量の減少には効果があるが、不安定なインターネット等にデータを流すことでのパケット損失や誤りの混入に対して非常に脆くなる。動画像符号化方式では、前のフレームとの差分のみを送信することから、データの一部が欠落することが問題となる。UDPやRTPでは、基本的にデータの再送をしないことから、該問題への対策が必要となる。このために、RTPの再送に関する規格制定がIETFで行われている。簡単に言うと、AVPFというプロトコルを使い、受信できなかったパケット番号をNACKというコマンドで送信側に通知する。送信側では、NACKから消失したパケットを特定し、RTP再送の規格に準じてヘッダを構成し、受信側へ送信する。さらに、RTPは主にリアルタイム通信に利用されることから、再送しても表示に間に合わないパケットは再送しないように制御する技術も提案されている(例えば、特許文献1参照)。また、再送パケットが到着するまでに遅延があり、リアルタイム再生に間に合わない可能性があるため、再送を記録用途に利用することも提案されている。その際、再送パケットをリアルタイムと同じ信頼性の低いUDPで伝送するのではなく、信頼性のあるTCPで伝送するようにする等の工夫がなされている(例えば、特許文献2参照)。
【0008】
【特許文献1】
井戸 大治, 他, “データ送信装置、データ受信装置、およびデータ通信システム”, P2002−84338, Mar. 2002.
【0009】
【特許文献2】
小林 誠, “通信制御装置、通信制御方法、及び通信制御プログラムが記録された記録媒体”, P2002−199019, July 2002.
【0010】
【発明が解決しようとする課題】
従来の技術では、ネットワークのプロトコルとして、RTPのフィードバック情報(RTCP)や、再送制御(RTP Retransmission)等が提案され規格化されてきたが、RTCPや再送をどのように使用すべきかは提示されていない。記録用途に限定しTCPで再送したり、リアルタイム再生に間に合わない再送パケットは伝送しないようにしたりする技術は知られているが、これらは単機能であり再生しながらの記録等で再生品質及び記録品質双方に効果があるような方式は存在しない。また、再送時の伝送帯域消費に関しては、再送した分を、通常の伝送で重要度の低いものの伝送を行わないことで補う技術が知られているが、これでは元のデータに欠落が出来てしまい、再生品質の低下や、記録コンテンツの品質も上がらないなどの問題が発生する。
【0011】
本発明は、上記事情を考慮してなされたもので、誤りが混入する可能性のあるネットワークでマルチメディアコンテンツを効率よく伝送するパケット送信装置、パケット受信装置、パケット送信方法及びパケット受信方法を提供することを目的とする。
【0012】
【課題を解決するための手段】
本発明に係るパケット送信装置は、マルチメディアコンテンツデータから生成された複数のパケットを順次ネットワークを介して受信装置へ送信する第1の送信手段と、前記受信装置から前記ネットワークを介して、再送すべきパケットを特定する情報を含む再送要求を受信する受信手段と、前記再送要求に係るパケットの再送に関する重要度を、該パケットに係るデータが前記受信装置で利用される予定の第1の時刻及び該パケットに対応する再送パケットに係るデータが前記受信装置で利用可能になると予想される第2の時刻に基づいて決定する決定手段と、前記重要度に基づいて再送すべきパケットを選択する選択手段と、選択されたパケットに対応する再送パケットを前記ネットワークを介して前記受信装置へ送信する第2の送信手段とを備えたことを特徴とする。
【0013】
また、本発明に係るパケット受信装置は、マルチメディアコンテンツデータから生成された複数のパケット又はこれに対応する再送のパケットを順次ネットワークを介して送信装置から受信する第1の受信手段と、前記第1の受信手段により受信したパケットを解析し、その結果に基づいて再送すべきパケットを特定する特定手段と、再送すべきパケットを特定する情報を含む再送要求を前記ネットワークを介して前記送信装置へ送信する送信手段と、前記パケットに係るデータを利用するデータ利用手段と、前記パケットに係るデータを記録する記録手段とを備えたことを特徴とする。
【0014】
なお、装置に係る本発明は方法に係る発明としても成立し、方法に係る本発明は装置に係る発明としても成立する。
また、装置または方法に係る本発明は、コンピュータに当該発明に相当する手順を実行させるための(あるいはコンピュータを当該発明に相当する手段として機能させるための、あるいはコンピュータに当該発明に相当する機能を実現させるための)プログラムとしても成立し、該プログラムを記録したコンピュータ読取り可能な記録媒体としても成立する。
【0015】
本発明では、パケットロスなどの誤りに対し再送を使ってデータを復元するシステムにおいて、リアルタイム再生と記録保存とを効率的に両立することが可能になる。
【0016】
【発明の実施の形態】
以下、図面を参照しながら発明の実施の形態を説明する。
【0017】
本実施形態では、画像データや音声データを実時間転送するためのプロトコルであるRTP(リアルタイムトランスポートプロトコル)を利用する場合を例にとって説明する(なお、RTPの詳細は例えば「Schulzrinne, H., Casner, S., Frederick, R. and V. Jacobson “RTP: A Transport Protocol for Real Time Applications”, RFC 1889, January 1996.」に開示されている)。
【0018】
(第1の実施形態)
図1に、本発明の第1の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す。
【0019】
図1に示されるように、本マルチメディアコンテンツ配信装置は、マルチメディアコンテンツ保存部101、RTPパケット化部102、送信キュー部103、送信部104、通信路状態情報受信部105、往復時間算出部106、再送要求受信部107、パケットバッファ部108、再送制御部109、再送要求キュー部110、再送パケット化部111、再送パケットキュー部112、再送パケット送信部113を備えている。
【0020】
なお、図1において、aで示した範囲が、パケット送信に係る部分であり、bで示した範囲が、再送に関する制御に係る部分であり、cで示した範囲が、再送パケット送信に係る部分である(後に参照する各構成図おいても、a、b、cを同様の意味で用いている)。
【0021】
以下、本マルチメディアコンテンツ配信装置(送信側装置とも呼ぶ)がネットワーク(図示せず)を介してマルチメディアコンテンツ受信装置(受信側装置とも呼ぶ)(図示せず)へマルチメディアコンテンツを送信する場合の動作について説明する。マルチメディアコンテンツ受信装置としては、特に限定されるもんではなく、例えば既存のものでもよいし、第6の実施形態で説明するものでもよい。
【0022】
マルチメディアコンテンツを保持するマルチメディアコンテンツ保存部101から出力されたコンテンツデータ(131)は、RTPパケット化部102でRTPパケット化される。RTPパケットデータ(132)は、送信キュー部103で一時保管された後、送信部104からネットワークの帯域に沿った形で順次受信側に送信される。一方、RTPパケットデータ(132)は、パケットバッファ部108に蓄積され、伝送したパケットが受信側装置に届かなかった場合の再送用に保存される。
【0023】
図2に、RTPパケットのヘッダ部分の構成を示す。図2の通り、ヘッダ中には、RTPのバージョン情報(V)、パディング情報(P)、拡張ヘッダの有無(X)、CSRCの数(CC)、データの種類(PT)、送信元の識別子(SSRC)、関連した送信元の識別子(CRSC)と共に、パケットの番号(Sequence Number)とパケットの時刻情報(タイムスタンプ(timestamp))が含まれている。
【0024】
受信側装置からは、通信路の状態を示す情報(以下、通信路状態情報)がRTCP等を使い送信側装置へ送られてくる。通信路状態情報受信部105では、この通信路状態情報(134)を受信し、往復時間算出部106に送る。送信側装置と受信側装置との間でデータ転送にかかった時間(以下、往復時間)(138)を往復時間算出部106で決定し、再送制御部109に入力する。通信路状態情報の他に、受信側装置からは、届いていないパケットの番号を通知する情報を含む再送要求が送られてくる。再送要求受信部107では、この再送要求(135)を受信し、再送制御部109に送る。
【0025】
再送制御部109では、再送要求(135)から、再送すべきパケット番号を特定し、パケットバッファ部108から該当するパケットデータ(137)を取得する。再送制御部109では、現在時刻と、往復時間算出部106で決定した往復時間(138)と、再送要求キュー部110に蓄えられている未処理の再送要求のうち重要度の高いものを処理するのに要する時間(以下、所要処理時間)(140)とを考慮して、再送要求(135)で指定されたパケットが再生時間に間に合うように受信側装置に到着するか否かの判断を行う。ここで判断された結果は、再送要求(135)で指定されたパケットの重要度として設定され、再送要求キュー部110に一時格納される。再送制御部109では、上記の判断に加え、再送要求キュー部110から重要度の高い順に再送要求を選択し、パケットバッファ部108に再送するよう指示を行うことも併せて行う。
【0026】
パケットバッファ部108では、指示されたパケットデータ(141)を再送パケット化部111に送り、再送パケット化部111では、このパケットデータ(141)をもとに、再送用パケットフォーマットに従って、再送パケット(142)を生成する。
【0027】
生成された再送パケット(142)は、再送パケットキュー部112に一時保管され、再送パケット送信部113から受信側へ送信される。
【0028】
図3に、再送制御部109で再送要求されたパケットに対する重要度の判定の概略的な処理手順の一例を示す。
【0029】
再送制御部109は、再送パケットが間に合うか否かを判定し(ステップS201)、間に合うと判定された場合には、重要度を“高”に設定し(ステップS202)、間に合わないと判定された場合には、重要度を“低”に設定する(ステップS203)。この判定結果に基づき、再送要求キュー部110に再送要求(139)が保管される。
【0030】
図4に、再送要求キュー部110に保管される再送要求のデータ構造例を示す。この例では、各再送要求についての再送すべきパケットの番号とその重要度とを組にして保管し、再送制御部109が重要度の高いものから処理できるように構成する。もちろん、図4は一例であり、この他にも、種々のバリエーションが可能である。例えば、パケットの時刻情報や、パケットバッファ部108内やマルチメディアコンテンツ保存部101内での位置情報等の情報を保持させることも可能である。また、重要度に応じてリストを分割したり、ポインタを利用して各重要度の先頭データを指し示したりという手法を利用し効率的にデータを格納することも可能である。また、重要度情報も“高”・“低”の2値だけでなく、多値で記録することも可能である。
【0031】
図5に、再送制御部109で再送要求されたパケットに対する重要度の判定のより詳細な処理手順の一例を示す。
【0032】
再送制御部109は、再送要求(135)から、再送すべきパケット番号を特定する(ステップS401)。なお、再送要求(135)には、パケット不着を知らせるNACK情報等を利用することが出来る。
【0033】
ステップS401で特定されたパケット番号を使い、パケットバッファ部108よりパケットの時刻情報(再生予定時刻)を取得する(ステップS402)。
【0034】
パケットの時刻情報および通信路状態情報より算出した往復時間情報(138)に加え、受信側装置において用意してある初期バッファの量を示す初期バッファ量情報、送信開始時刻、現在時刻等の情報をシステムから取得し、該パケットを再送した場合の到着予想時刻を算出する(ステップS403)。
【0035】
ステップS402で取得したパケットの再生予定時刻がステップS403で算出した到着予測時刻よりも後ならば(早急に再送すれば再生に間に合うと予測されるので)、早急に再送する価値のあるパケットと判定し、到着予想時刻が再生予定時刻よりも後ならば(早急に再送しても再生に間に合わないと予測されるので)、早急に再送しなくてもよいパケットと判定する(ステップS404)。
【0036】
早急に再送すべきパケットと判定された場合は、該パケットの再送要求を重要度“高”に設定し、再送要求キュー部110に保管し(ステップS405)、早急に再送しなくてもよいと判定された場合には、該パケットの再送要求を重要度“低”に設定し、再送要求キュー部110に保管する(ステップS406)。
【0037】
ここで、図5のステップS403およびステップS404での到着予想時刻と再生予定時刻との間の関係を図6および図7に示す。図6は到着予想時刻が再生予定時刻よりも前になり重要度が“高”に設定される場合の例であり、図7は逆に到着予想時刻が再生予定時刻よりも後になり重要度が“低”に設定される場合の例である。
【0038】
ここで、送信側装置につき、送信開始時刻をTSTART、パケットの送信時刻をTSEND、パケットのタイムスタンプをPTS、受信側装置からの再送要求を受信した時刻をTRREQ、再送要求キュー部110等に蓄えられている処理待ちの重要度の高い再送要求を処理するのにかかる時間をDQUEと定義すると共に、受信側装置につき、送信側装置から送信を開始してから受信側装置が再生動作を開始するまでの初期応答遅延をα、再生動作を開始した時刻をTCSTART、受信バッファによる最初のデータを表示するまでの初期遅延時間をDINIT、往復のパケット伝送にかかる往復時間をRTT、再送要求に基づいた再送パケットが到着する時刻をTRRCV、パケットの再生予定時刻をTPLAY、パケット処理にかかる時間をDLSRと定義する。
【0039】
図6および図7からわかるように、再送パケット到着時刻(すなわち、再送パケットが再生可能になる時刻)TRRCVがパケット再生予定時刻TPLAYよりも前になれば、早急に再送すべきパケットということになる。これを数式で示すと数式(1)のようになる。数式(1)が真になる場合は、再送パケットが再生までに間に合うということになり、重要度を高く設定することになり、数式(1)が偽になる場合は、再送パケットが間に合わないことになり、重要度を低く設定する。
(TRREQ−TSTART)+DQUE+RTT/2≦DINIT+PTS …(1)
該判定の数式は、上記の数式(1)だけではなく、以下に例示する数式(2)、数式(3)、数式(4)のような方式で判定することや、これ以外の方式で行うことも可能である。
(TRREQ−TSTART)+DQUE+RTT/2≦DINIT+PTS+α …(2)
(3/2)×RTT≦DINIT …(3)
(3/2)×RTT+DLSR≦DINIT …(4)
数式(2)は、初期応答遅延αを考慮に入れて判定を行っている例であり、数式(3)は、初期遅延や累積遅延の影響を無視し、単純にRTTと受信側のバッファ量DINITからだけで判定を行う例である。数式(4)は、受信側装置で到着したパケットを処理し、再送要求を出すまでのパケット処理時間DLSRを考慮した判定条件式であり、DLSRを計算するには、数式(5)のような式を利用することが出来る。
DLSR=TRREQ−TSEND−RTT …(5)
送信側装置の再送制御部109で該判定を行うため、上記のような数式を利用するためには、受信側装置の時刻情報やバッファ量情報等を取得する必要がある。初期遅延時間DINITはセッション開始時のSDP(例えば「M. Handley, et al, “SDP: Session Description Protocol”, IETF RFC2327, April 1998.」参照)や端末の能力交換等で送信側装置へ通知したり、あらかじめシステムで初期値を決定したりしておくことで、送信側装置はそれらを知ることができる。また、往復時間などはRTCPを利用することで知ることが出来る。標準の方式によっては通知できない情報等は、RTCPのAPPパケット(Application Specific Packet)によるアプリケーション依存の独自フォーマットを利用して伝送するなどの対策をとればよい。
【0040】
本実施形態は、種々変形して実施することが可能である。その幾つかの例を以下に示す。
【0041】
次に、図8に、本実施形態のマルチメディアコンテンツ配信装置の他の構成例を示す。
【0042】
図1の構成例では、再送制御部109が、再送用パケットデータ(141)を再送パケット化部111へ送るよう指示を出したが、図8の構成例では、この指示を再送要求キュー部110が行うようにしたものである。この場合、再送制御部109には、再送要求の重要度判定だけを行わせ、再送要求キュー部110が再送要求に応じた送信間隔の制御などを実行することになる。これにより、再送制御部109の構成が複雑になるのを防ぐことが出来る。
【0043】
次に、図9に、本実施形態のマルチメディアコンテンツ配信装置のさらに他の構成例を示す。
【0044】
図9は、RTPパケット化をリアルタイムで行うのではなく、予めRTP化されたデータをRTPマルチメディアコンテンツ保存部801に保持するようにしたものである。RTPマルチメディアコンテンツ保存部801には、予めRTPパケット化された形でまたはRTPパケット化するための付加情報が付け加えられた形でコンテンツが保存されており、RTPマルチメディアコンテンツ保存部801からRTPパケット化されたデータ(831)が出力される。これにより、リアルタイムにパケット生成を行わなくて済むという利点が得られる。
【0045】
さらに、再送制御部109が直接RTPマルチメディアコンテンツ保存部801にアクセスすることで、パケットバッファ部108を省略することもできる。その他、パケットバッファ部108が実際のデータを保持するのではなく、RTPマルチメディアコンテンツ保存部801にあるデータへのポインタだけを保持しておくことも可能である。このような変形を行うことで、パケットバッファ部を省略して配信装置や配信プログラムを簡略化したり、ポインタを利用することでパケットバッファ部に必要なメモリ量を削減したりすることが可能となる。
【0046】
なお、これらの場合、RTPパケット化部を備えなくて構わない。
【0047】
また、マルチメディアコンテンツ保存部101及びRTPパケット化部102と、RTPマルチメディアコンテンツ保存部801とを全て備え、RTPパケット化をリアルタイムで行って送信する機能と、予め保持されているRTPパケットを送信する機能との両機能を適宜使用できるようにしてもよい。
【0048】
ところで、本実施形態では、ネットワークの遅延時間、パケット時刻情報、受信側バッファ情報、送信開始時間、初期遅延時間等から到着予想時刻を算出している。
【0049】
送信側装置において到着予想時刻を算出する場合、パケットバッファ部108に保存されているパケットデータからパケット時刻情報を得ることが出来る。また、受信側バッファ量に関する情報および初期遅延時間は、例えば、システムの規定値として送信側装置で予め知っている値である。送信開始時刻も送信側装置が有している。また、ネットワークの遅延時間情報は、受信側装置との間のパケットデータのやり取りから得られる値である。
【0050】
このネットワークの遅延時間情報は、例えば、RTCPという制御パケットを利用して、その中に含まれる時刻情報を利用して計算することができる。
【0051】
図10および図11に、RTCPのパケットの構成を示す。図10は、送信側装置から受信側装置に送られる送信側レポートを示したものであり、図11は受信側装置から送信側装置に送られる受信側レポートを示したものである。
【0052】
ここで、RTCPを用いてネットワークの遅延時間を求める方法について説明する。
【0053】
受信側レポートを受信した送信側装置は、その受信側レポートを受信したNTP時刻Tr−recvと、受信側レポート内にある“最後の送信側レポートのNTP timestamp”TLSRおよび“最後の送信側レポートが到着してから受信側レポートを送信するまでの時間”TDLSRとを用いて、数式(5)のように計算を行う。
Tdelay=Tr−recv−TLSR−TDLSR …(5)
ここで求められた値が往復のネットワーク遅延時間Tdelayである。
【0054】
受信側バッファ量に関する情報および初期遅延時間は、前述したように規定値を用いる他に、受信側装置からセッションを確立する際のネゴシエーションで通知する方法もある。
【0055】
一方、受信装置側で到着予想時刻を判定する場合も同様の判定方法で行うことができる。パケット時刻情報は、パケットが失われているため正確な時刻が判明しない。この場合、対象となるパケットロスしたパケットに一番近いまたは前後どちらか一方向で一番近いパケットの時刻情報を代替して利用する方法や、近いパケットの時刻情報とパケット番号などからパケットロスしたパケットの時刻情報を推定する方式などを利用することが可能である。受信側装置のバッファ量や初期遅延時間は、受信側装置で保持してある値であり、これをそのまま利用することができる。
【0056】
ネットワークの遅延時間は、図10に示した送信側レポートを受け取ることにより算出することができる。送信側レポートを受信したNTP時刻をTs−recvとし、送信側レポートに含まれる“NTP timestamp”Ts−sendとする。これから片道のネットワーク遅延時間Tdelay_onewayは、数式(6)で求めることが可能である。
Tdelay_oneway=Ts−recv−Ts−send …(6)
往復のネットワーク遅延時間を求める場合は、簡易的に2倍する方法や、送信側装置から受信側装置への方向での遅延と、受信側装置から送信側装置への方向での遅延とが均一でない場合を考慮して、係数を乗じるまたは値を加えるなどして対応させる方法などがある。
【0057】
また、送信開始時間は、既存のRTCPでは通知することはできないため、例えば0とするなどの代替値で置き換えるなどの対応を行えばよい。その他に、RTP・RTCPとは別にセッション確立の際のネゴシエーションで送信側装置から受信側装置へ通知する方法をとることも可能である。
【0058】
(第2の実施形態)
図12に、本発明の第2の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す。
【0059】
図12に示されるように、本マルチメディアコンテンツ配信装置は、マルチメディアコンテンツ保存部101、RTPパケット化部102、送信キュー部103、送信部104、通信路状態情報受信部105、往復時間算出部106、再送要求受信部107、パケットバッファ部108、再送制御部109、再送パケット化部111、再送パケット送信部113、再送待ちパケットバッファ部901を備えている。
【0060】
本実施形態は、第1の実施形態の再送要求キュー部110と再送パケットキュー部112とを、再送待ちパケットバッファ部901で置き換えたものである。
【0061】
以下、本マルチメディアコンテンツ配信装置がネットワークを介してマルチメディアコンテンツ受信装置へマルチメディアコンテンツを送信する場合の動作について説明する。以下では、第1の実施形態で説明したものと相違する点を中心に説明する。
【0062】
マルチメディアコンテンツ保存部101から出力されたコンテンツデータ(131)は、RTPパケット化部102でRTPパケット化される。RTPパケットデータ(132)は、送信キュー部103で一時保管された後、送信部104からネットワークの帯域に沿った形で順次受信側に送信されるとともに、パケットバッファ部108に再送のために保存される。
【0063】
通信路状態情報受信部105では、受信側装置から送られてきた通信路状態情報(134)を受信し、往復時間算出部106に送る。往復時間算出部106は、往復時間(138)を決定し、再送制御部109に入力する。
【0064】
再送要求受信部107では、受信側装置から送られてきた再送要求(135)を受信し、再送制御部109に送る。
【0065】
再送制御部109では、再送要求(135)から、再送すべきパケット番号を特定し、パケットバッファ部108から該当するパケットデータ(137)を取得する。再送制御部109では、現在時刻と、往復時間(138)と、再送待ちパケットバッファ部901に蓄えられている未処理の再送要求のうち重要度の高いものを処理するのに要する所要処理時間(932)とを考慮して、再送要求(135)で指定されたパケットが再生時間に間に合うように受信側装置に到着するか否かの判断を行う。ここで判断された結果は、再送要求(135)で指定されたパケットの重要度として設定され、パケットバッファ部108に対し再送すべきパケットの指定情報に重要度を付加した再送パケット指定情報(136)が送られる。
【0066】
パケットバッファ部108では、再送パケット指定情報(136)に基づき再送用のパケットデータ(933)を再送待ちパケットバッファ部901に送る。この際、再送パケット指定情報(136)に付加されている重要度情報も併せて送る。
【0067】
再送待ちパケットバッファ部901では、再送するパケットデータが重要度に応じた形で順序付けられ一時保管され、再送制御部109からの指示により順次パケットデータ(934)を出力する。
【0068】
再送パケット化部111では、パケットデータ(934)をもとに、再送用パケットフォーマットに従って、再送パケット(143)を生成する。
【0069】
再送パケット(143)は、再送パケット送信部113から受信側装置へ送信される。
【0070】
図13に、再送待ちパケットバッファ部901での重要度情報に対応した格納処理の手順の一例を示す。ここでは、重要度が2値で示される場合を例にとって説明する。
【0071】
入力されたパケットデータ(933)について、付加された重要度情報が高いか否かの判定を行う(ステップS1001)。重要度が“高”の場合は、重要度“高”のパケットデータリストの中でパケットのタイムスタンプに準じた順序位置にパケットデータ(933)が挿入される(ステップS1002)。重要度が“低”の場合は、重要度“低”のパケットデータリストの中でパケットのタイムスタンプに準じた順序位置にパケットデータ(933)が挿入される(ステップS1003)。
【0072】
なお、重要度が2値以外の多値を持っている場合も、同様に、夫々の値に準じた順序位置にパケットデータを挿入するように構成すればよい。
【0073】
次に、再送待ちパケットバッファ部901の構成例について説明する。
【0074】
図14に、重要度とパケット番号と再送待ちパケットデータとをセットで再送待ちパケットバッファ部901に格納するリスト方式の例を示す。この例では、重要度“高”のパケットが入ってきた場合には、重要度“高”でパケット番号が順番通りになるようにパケットデータが挿入されることになる。なお、図14の例では、パケット番号を順序管理用の情報として利用しているが、例えばパケットのタイムスタンプなど、他の情報を利用したりすることも可能である。この方式は、データを直接順番に並べるため構成を簡単にすることが可能である。また、データの挿入に伴いそれ以降のデータを再度書き直すことがシステム的に負荷になる場合は、例えば重要度“高”のものと“低”のもののリストを分割しておき、夫々の後ろにデータを追加していく形を取ることで効率化することが可能である。
【0075】
図15に、途中への挿入もデータの書き換えがなく、重要度の高い方から低い方へ一列に並べることができる再送待ちパケットバッファ部901の構成例を示す。この例では、各パケットデータは、重要度、パケット番号、パケットデータ等前述したデータの他に、各パケットデータに対し順番が一つ前のものと一つ後ろのものへのポインタを有する構造になっている。これと、先頭データへのポインタ、最後尾データへのポインタを有することで、先頭から順にデータを検索し、挿入すべき位置が見つかったところで、その前後のデータのポインタを挿入するパケットデータを指し示すように修正し、さらに自分自身のポインタを前後のパケットを示すように設定する。このようにポインタを利用することにより、データの追加書き込みだけで、順番を考慮した記憶が可能になる。なお、図15の具体例において、(a)の状態で、重要度“高”、パケット番号“#42”のパケットデータを挿入すると、(b)の通りになる。
【0076】
なお、これらは一例であり、重要度に応じてパケットデータを再送パケット化部111に出力可能であれば、どのような方式でも対応可能である。また、第1の実施形態の変形例として説明したように、図9で示したようなRTPマルチメディアコンテンツ保存部801を使うことで、パケットデータ自身をバッファに保管するのではなく、コンテンツ保存部801にあるデータへのポインタだけを保管し、再送パケット化部111でパケット化する場合に取り出すようにすることも可能である。
【0077】
また、第1の実施形態では、再送パケット化されたデータを一旦再送パケットキュー部112で保管し、その後に再送パケット送信部113で送信していたが、本実施形態でも同様の構成をとることも可能である(図12の構成例では、再送制御部109と再送待ちパケットバッファ部901が送信帯域を考慮したデータの出力を行う機能を有していると考えて、再送パケットキュー部を省いた形で説明したものである)。
【0078】
(第3の実施形態)
図16に、本発明の第3の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す。
【0079】
図16に示されるように、本マルチメディアコンテンツ配信装置は、マルチメディアコンテンツ保存部101、RTPパケット化部102、送信キュー部103、送信部104、通信路状態情報受信部105、往復時間算出部106、再送要求受信部107、パケットバッファ部108、再送制御部109、再送要求キュー部110、再送パケット化部111を備えている。
【0080】
なお、図16において、bで示した範囲が、前述のように再送に関する制御に係る部分であり、dで示した範囲が、パケット送信及び再送パケット送信に係る部分である(後に参照する各構成図おいても、dを同様の意味で用いている)。
【0081】
本実施形態は、第1の実施形態のパケット送信に係る構成と再送パケット送信に係る構成とを統合化したものである。
【0082】
以下、本マルチメディアコンテンツ配信装置がネットワークを介してマルチメディアコンテンツ受信装置へマルチメディアコンテンツを送信する場合の動作について説明する。以下では、第1の実施形態で説明したものと相違する点を中心に説明する。
【0083】
マルチメディアコンテンツ保存部101から出力されたコンテンツデータ(131)は、RTPパケット化部102でRTPパケット化される。RTPパケットデータ(132)は、送信キュー部103で一時保管された後、送信部104からネットワークの帯域に沿った形で順次受信側に送信されるとともに、パケットバッファ部108に再送のために保存される。
【0084】
通信路状態情報受信部105は、受信側装置からの通信路状態情報(134)を受信する。往復時間算出部106は、往復時間(138)を決定する。再送要求受信部107は、受信側装置からの再送要求(135)を受信する。
【0085】
再送制御部109は、再送要求(135)から、再送すべきパケット番号を特定し、パケットバッファ部108から該当するパケットデータ(137)を取得する。また、現在時刻と、往復時間(138)と、所要処理時間(140)とを考慮して、再送要求(135)で指定されたパケットが再生時間に間に合うように受信側装置に到着するか否かの判断を行う。この判断結果は、再送要求(135)で指定されたパケットの重要度として設定され、再送要求キュー部110に一時格納される。また、再送要求キュー部110から重要度の高い順に再送要求を選択し、パケットバッファ部108に再送するよう指示を行う。
【0086】
パケットバッファ部108では、指示されたパケットデータ(141)を再送パケット化部111に送り、再送用パケットフォーマットに従って再送パケット(142)を生成する。
【0087】
再送パケット(142)は、送信キュー部103において元のパケットデータと共存する形で一時保管され、送信部104により受信側装置へ送信される。送信キュー部103では、元のパケットデータと再送用のパケットデータを一元的に管理し、送信タイミングを調整する。
【0088】
本実施形態によれば、送信部分を一つにすることが可能となり、装置の構成を簡略化することが可能となる。また、携帯端末等の少ないリソースで本方式を実現するのに役立つ。
【0089】
また、本実施形態では、第1の実施形態や第2の実施形態で示した構成例や変形例等を利用することももちろん可能である。
【0090】
一例として、図17に、再送待ちパケットバッファ部901(図12参照)を利用した場合の構成例を示す。この場合、パケットバッファ部108から出力された重要度を付加された再送用パケットデータ(933)は、再送待ちパケットバッファ部901に入力され、再送待ちパケットバッファ部901では、再送するパケットデータが重要度に応じた形で順序付けられ一時保管され、再送制御部109からの指示により順次パケットデータ934を出力する。再送パケット化部111では、パケットデータ(934)をもとに、再送用パケットフォーマットに従って、再送パケット(142)を生成する。再送パケット(142)は、送信キュー部103に元のパケットデータと共存する形で一時保管され、送信部104により受信側へ送信される。ここで、再送制御部109は、再送待ちパケットバッファ部901から、どのくらい処理待ちの再送要求があるかの情報を取り出して、再送制御の判定材料として利用している。
【0091】
続いて、図18に、もう一つの構成例を示す。図18は、図17の変形例と同様の考え方であるが、再送待ちパケットバッファ部901を用いるのではなく、送信キュー部103を代わりに利用するものである。この場合、パケットバッファ部108から出力された再送用パケットデータ(141)は、再送パケット化部111に入力され、再送パケットデータ(142)が生成された後に送信キュー部103に入力される。再送パケット(142)は、送信キュー部103に元のパケットデータと共存する形で一時保管され、送信部104により受信側装置へ送信される。ここで、再送制御部109は、送信キュー部103内に保管されているパケットデータ量等の情報(1532)を受け取り、再送制御の判定材料として利用する。これにより、非常に簡易なモジュール構成で実施することが可能となる。
【0092】
(第4の実施形態)
第1〜第3の実施形態では、再送制御という部分について種々の構成例を示してきたが、第4の実施形態では、再送制御に、再送分を考慮に入れた通信帯域制御(レート制御)を組み合わせた場合について説明する。
【0093】
図19に、本実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す。
【0094】
図19に示されるように、本マルチメディアコンテンツ配信装置は、マルチメディアコンテンツ保存部101、RTPパケット化部102、送信キュー部103、送信部104、通信路状態情報受信部105、往復時間算出部106、再送要求受信部107、パケットバッファ部108、再送制御部109、再送要求キュー部110、再送パケット化部111、再送パケットキュー部112、再送パケット送信部113、セッション制御部1601を備えている。すなわち、図19の構成例は、図1の構成例にセッション制御部1601を付加したものである。
【0095】
以下、本マルチメディアコンテンツ配信装置がネットワークを介してマルチメディアコンテンツ受信装置へマルチメディアコンテンツを送信する場合の動作について説明する。以下では、第1の実施形態で説明したものと相違する点を中心に説明する。
【0096】
セッション制御部1601以外の各部は基本的には第1の実施形態と同様である。
【0097】
セッション制御部1601では、SDPやRTSP(例えば「H. Schulzrinne, et al, “Real Time Streaming Protocol (RTSP)”, IETF RFC2326, April 1998.」参照)等を使い、受信側装置とのセッションの要求・許可等を管理を行っている。ここで、受信側装置と送信側装置との間での交渉の結果決定した伝送帯域情報を使い、送信キュー部103、送信部104、再送制御部109、再送パケットキュー部112、再送パケット送信部113を制御する。具体的には、指定された帯域を守る形で各部がデータを送信する。伝送路の帯域を指定する方式としては、元データが使用する伝送帯域に再送で使用する伝送帯域を予め上乗せした形で受信側装置に通知しておく方式や、元データの伝送帯域と再送用の伝送帯域を別々に通知する方式等を利用する。
【0098】
次に、図20に、ストリーム切替機能を併せ持つことで、動的な帯域変動に追従することを容易にした構成例を示す。
【0099】
この構成例においては、マルチメディアコンテンツを保持するマルチメディアコンテンツ保存部101の代わりに、コンテンツ切替用に同じコンテンツを複数のパラメータで符号化し格納してある切替対応複数マルチメディアコンテンツ保存部1702を備え、これをレート制御部1701で管理する構成をとる。レート制御部1701に対しては、送信キュー部103、再送パケットキュー部112、通信路状態情報受信部105から送信待ち状態のパケットがどのくらい残っているかの情報(1731および1733)、通信路の誤りや遅延情報(1734)などが入力される。これらの情報をもとに、元データの伝送帯域やパラメータが最適になるコンテンツを、切替対応複数マルチメディアコンテンツ保存部1702から選択する。また、再送制御部109もレート制御部1701から現在の送信状況やコンテンツ切替情報1732を通知し、再送パケットの重要度判定に利用する。このような構成をとることで、通信路の帯域変動や環境変動に対応したレート制御が可能となる。
【0100】
(第5の実施形態)
第1〜第4の実施形態は、予め作成されたコンテンツデータから配信するものであったが、第5の実施形態では、リアルタイムに入力されるライブ映像等にも対応することを可能としたものである。
【0101】
図21に、本発明の第5の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す。
【0102】
図21に示されるように、本マルチメディアコンテンツ配信装置は、RTPパケット化部102、送信キュー部103、送信部104、通信路状態情報受信部105、往復時間算出部106、再送要求受信部107、パケットバッファ部108、再送制御部109、再送要求キュー部110、再送パケット化部111、再送パケットキュー部112、再送パケット送信部113、符号化部1801、レート制御部1802を備えている。すなわち、図21の構成例は、図1の構成例のマルチメディアコンテンツ保存部101の代わりに、符号化部1801とレート制御部1802を備えたものである。
【0103】
以下、本マルチメディアコンテンツ配信装置がネットワークを介してマルチメディアコンテンツ受信装置へマルチメディアコンテンツを送信する場合の動作について説明する。以下では、第1の実施形態で説明したものと相違する点を中心に説明する。
【0104】
第1の実施形態の図1の構成例では、マルチメディアコンテンツを保持するマルチメディアコンテンツ保存部101から出力されたコンテンツデータ(131)を、RTPパケット化部102でRTPパケット化していたのに対し、図21の構成例では、入力されたリアルタイム映像データ(1831)を符号化部1801で符号化し、符号化データ(1832)をRTPパケット化部102でRTPパケット化する。
【0105】
また、レート制御部1802は、送信キュー部103、再送パケットキュー部112および通信路状態情報受信部105から、送信待ちパケットのデータ量(1835および1833)、通信路状態情報(1834)を取得する。これらの情報をもとに、符号化部1801の符号化パラメータ(1836)を決定し、符号化部1801に通知する。符号化パラメータの制御は、例えば、送信キュー部103や再送パケットキュー部112に送信待ちパケットデータが多く存在している場合には、発生符号量を抑えるように量子化幅を大きくしたり、フレームレートを下げたりという制御を行う。また、通信路の状態も考慮し、遅延が大きくなった場合には同様の制御を行ったりすることも可能である。送信待ちのデータ量が少なくなった場合は、逆に発生符号量が多くなってもかまわないような制御を行うことも出来る。
【0106】
次に、図22に、本実施形態のマルチメディアコンテンツ配信装置の他の構成例を示す。図22に示されるように、再送制御部109から判定結果や再送要求キュー部110に一時保管されている再送要求数などの情報(1931)をレート制御部1802に入力することで、さらに詳細なレート制御を行うことも可能である。これにより、伝送帯域を有効に利用した配信を実施することが可能となる。
【0107】
なお、マルチメディアコンテンツ保存部101と、符号化部1801及びレート制御部1802とを全て備え、予め作成されたコンテンツデータを配信する機能と、リアルタイムに入力されるライブ映像等を配信する機能との両機能を適宜使用できるようにしてもよい。
【0108】
次に、第3の実施形態で示した送信部分の共通化の考え方を、リアルタイムデータ入力の場合に適用した例を示す。図23に、この場合の一構成例を示す。
【0109】
第3の実施形態の図16の構成例では、マルチメディアコンテンツを保持するマルチメディアコンテンツ保存部101から出力されたコンテンツデータ(131)を、RTPパケット化部102でRTPパケット化していたのに対し、図23の構成例では、入力されたリアルタイム映像データ(1831)を符号化部1801で符号化し、符号化データ(1832)をRTPパケット化部102でRTPパケット化する。
【0110】
また、レート制御部1802は、送信キュー部103および通信路状態情報受信部105から、送信待ちパケットのデータ量(1835)および通信路状態情報(1834)を取得する。これらの情報をもとに、符号化部1801の符号化パラメータ(1836)を決定し、符号化部1801に通知する。
【0111】
なお、第1〜第4の実施形態で説明した各種構成例のうち、ここで説明したもの以外にも、本実施形態のリアルタイムに入力されるライブ映像等に対応する構成は適用可能である。
【0112】
(第6の実施形態)
図24に、本発明の第6の実施形態に係るマルチメディアコンテンツ受信装置の構成例を示す。
【0113】
図24に示されるように、本マルチメディアコンテンツ受信装置は、受信部2101、パケット解析部2102、通信路状態算出部2103、通信路状態情報送信部2104、再送制御部2105、再送要求送信部2106、パケットバッファ部2107、復号化部2108、表示部2109、記録用バッファ部2110、記録部2111を備えている。
【0114】
なお、図24において、eで示した範囲が、RTPに係る部分であり、fで示した範囲が、RTCPに係る部分である(後に参照する各構成図おいても、e、fを同様の意味で用いている)。
【0115】
以下、本マルチメディアコンテンツ受信装置(受信側装置とも呼ぶ)がマルチメディアコンテンツ配信装置(送信側装置とも呼ぶ)(図示せず)からネットワーク(図示せず)を介してマルチメディアコンテンツを受信する場合の動作について説明する。マルチメディアコンテンツ送信装置としては、特に限定されるもんではなく、例えば既存のものでもよいし、第1〜第5の実施形態で説明したものでもよい。
【0116】
送信側装置から送信されたパケットデータは、受信部2101で受信され、パケット解析部2102で、パケットヘッダ等を読み取り、パケット番号、タイムスタンプ等が取得される。これらのパケット解析情報(2132)は、通信路状態算出部2103でパケットロスや遅延量などが計算され、通信路状態情報送信部2104によりRTCP等を利用して送信側装置へ送信される。
【0117】
また、パケット解析情報(2132)と通信路状態情報(2134)は、再送制御部2105に入力され、再送要求するか否かの判定が行われる。パケットロスが発生したパケット番号等から、例えばNACK情報等を利用した再送要求(2135)を生成し、再送要求送信部2106で送信側装置へ通知する。
【0118】
一方、受信されたパケットデータ(2136)は、パケットバッファ部2107へ一時保管され、再送等で送られてくるパケットと併せて順番を調整した後、再生に間に合うデータだけが選択され、復号化部2108へ送られる。
【0119】
復号化部2108では、入力されたコンテンツデータ(2137)に応じた復号処理を行い、表示部2109で再生を行う。一方、パケットバッファ部2107からは、再生に間に合わないデータも含めた形でコンテンツデータ2139が、記録用バッファ部2110に出力される。記録用バッファ部2110で再生に間に合わなかった再送データも併せた形で順番を調整した後、記録部2111へ記録される。
【0120】
記録用バッファ部2110では、先頭からデータに抜けがない部分に関しては順次記録部2111へ出力し、出力し終わったデータ領域を開放し新たなデータの書き込み領域として使用することにより、メモリを効率的に利用することが可能である。
【0121】
このようにパケットバッファ部2107では、再生時刻に間に合うデータを選択し再生を行う一方、記録用データとして再生に間に合わないデータをも併せて記録する処理を行っている。これによって、再生時には、(誤りが存在する場合もあるが)リアルタイムでマルチメディアデータを再生することができ、かつ記録用データとしては誤りのないデータを記録することが可能となる。その際、第1の実施形態〜第5の実施形態の各種構成例や変形例等のいずれかを利用して配信することにより、リアルタイム再生時に再送パケットが効果的に働くよう順番を制御することが可能となっている。
【0122】
次に、図25に、本実施形態のマルチメディアコンテンツ配信装置の他の構成例を示す。
【0123】
コンテンツの全体サイズが非常に大きい場合等は、図24の構成例のように記録用バッファ部2110でデータを一時保管していては、仮に上記のように抜けがない部分のデータを逐次記録部2111へ出力していたとしても、メモリが大量に必要になる場合が発生する可能性がある。特に、再生に間に合わないデータの再送が配信側で後回しになった場合、いつまでたってもデータがそろわず記録部2111へ出力することができなくなる。そこで、図25の構成例では、パケットバッファ部2107から記録部2111へ直接データを書き込み、後から記録制御部2201によって、記録部2111内部のデータを並べ替える方式を利用することも可能である。
【0124】
なお、この際、記録部2111に書き込むデータを図15で説明したようなポインタを利用する形で記録しておくことにより、記録部2111内のデータ書き換えを最小限にとどめる拡張も可能である。
【0125】
さらに、第1〜第5の実施形態では、送信側装置において再送要求の重要度を判定し、順番を制御する場合について説明してきたが、これら方式を受信側装置に応用することも可能である。
【0126】
図26には、その一例として、第1の実施形態で採用した方式を適用した場合のマルチメディアコンテンツ配信装置の構成例を示す。
【0127】
この場合、再送制御部2105は、該再送要求の重要度判定も行い、再送要求キュー部2301は、再送制御部2105で生成された重要度情報が付加された再送要求(2331)を一時保管する。重要度情報を使い順序付けられた再送要求情報(2332)は、再送制御部2105が要求送信タイミングを考慮しながら再送要求送信部2106に送られ、送信側装置に送られる。
【0128】
もちろん、この場合も、図25のように、パケットバッファ部2107から記録部2111へ直接データを書き込み、後から記録制御部2201によって、記録部2111内部のデータを並べ替える方式を利用することも可能である。
【0129】
また、第1〜第5の実施形態で説明した各種構成例のうち、ここで説明したもの以外についても同様に適用可能である。
【0130】
なお、第1〜第6の実施形態においては、RTPを利用する場合を例にとって説明してきたが、プロトコルはこれに限定されるものではなく、再送が可能な様々なプロトコルを利用することが可能である。また、第1〜第6の実施形態においては、コンテンツデータとして動画や静止画等の映像信号を主に説明してきたが、データの種類について制限されるものではなく、音声データやテキストデータ等でも実施可能である。
【0131】
なお、以上の各機能は、ソフトウェアとして記述し適当な機構をもったコンピュータに処理させても実現可能である。
また、本実施形態は、コンピュータに所定の手段を実行させるための、あるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるためのプログラムとして実施することもできる。加えて該プログラムを記録したコンピュータ読取り可能な記録媒体として実施することもできる。
【0132】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【0133】
【発明の効果】
本発明によれば、誤りが混入する可能性のあるネットワークでマルチメディアコンテンツを効率よく伝送することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す図
【図2】RTPパケットのヘッダ部分の構成を示す図
【図3】同実施形態における再送要求重要度判定の処理の概略的な手順の一例を示すフローチャート
【図4】同実施形態における再送要求キューの構成例を示す図
【図5】同実施形態における再送要求重要度判定の処理の詳細な手順の一例を示すフローチャート
【図6】同実施形態における再送パケットが再生予定時刻に間に合う場合の送受信時刻について説明するための図
【図7】同実施形態における再送パケットが再生予定時刻に間に合わない場合の送受信時刻について説明するための図
【図8】同実施形態におけるマルチメディアコンテンツ配信装置の他の構成例を示す図
【図9】同実施形態におけるマルチメディアコンテンツ配信装置のさらに他の構成例を示す図
【図10】送信側から受信側に送られるRTCPの送信側レポートのパケットの構成を示す図
【図11】受信側から送信側に送られるRTCPの送信側レポートのパケットの構成を示す図
【図12】本発明の第2の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す図
【図13】同実施形態における再送パケットバッファ部での重要度に応じた処理手順の一例を示すフローチャート
【図14】同実施形態における再送待ちパケットバッファ部の構成例を示す図
【図15】同実施形態における再送待ちパケットバッファ部の他の構成例を示す図
【図16】本発明の第3の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す図
【図17】同実施形態におけるマルチメディアコンテンツ配信装置の他の構成例を示す図
【図18】同実施形態におけるマルチメディアコンテンツ配信装置のさらに他の構成例を示す図
【図19】本発明の第4の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す図
【図20】同実施形態におけるマルチメディアコンテンツ配信装置の他の構成例を示す図
【図21】本発明の第5の実施形態に係るマルチメディアコンテンツ配信装置の構成例を示す図
【図22】同実施形態におけるマルチメディアコンテンツ配信装置の他の構成例を示す図
【図23】同実施形態におけるマルチメディアコンテンツ配信装置のさらに他の構成例を示す図
【図24】本発明の第6の実施形態に係るマルチメディアコンテンツ受信装置の構成例を示す図
【図25】同実施形態におけるマルチメディアコンテンツ受信装置の他の構成例を示す図
【図26】同実施形態におけるマルチメディアコンテンツ受信装置のさらに他の構成例を示す図
【符号の説明】
101…マルチメディアコンテンツ保存部、102…RTPパケット化部、103…送信キュー部、104…送信部、105…通信路状態情報受信部、106…往復時間算出部、107…再送要求受信部、108…パケットバッファ部、109…再送制御部、110…再送要求キュー部、111…再送パケット化部、112…再送パケットキュー部、113…再送パケット送信部、801…RTPマルチメディアコンテンツ保存部、901…再送待ちパケットバッファ部、1601…セッション制御部、1701…レート制御部、1702…切替対応複数マルチメディアコンテンツ保存部、1801…符号化部、1802…レート制御部、2101…受信部、2102…パケット解析部、2103…通信路状態算出部、2104…通信路状態情報送信部、2105…再送制御部、2106…再送要求送信部、2107…パケットバッファ部、2108…復号化部、2109…表示部、2110…記録用バッファ部、2111…記録部、2201…記録制御部、2301…再送要求キュー部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a packet transmission device that transmits a packet related to an encoded moving image / still image using a wired communication network such as ISDN or the Internet or a wireless communication network such as a mobile phone or a wireless LAN, and receives the packet. The present invention relates to a packet reception device, a packet transmission method, and a packet reception method.
[0002]
[Prior art]
In recent years, with the development of digital coding technology for various information such as images and broadband network technology, development of applications using these has become active, and a system for transmitting compression-coded images etc. using a communication network Has been developed.
[0003]
In particular, with the widespread use of the Internet and Intranet, applications and systems that transmit and receive data in packets are increasing. Packetization is an effective means for efficiently sharing the bandwidth of a communication path among a plurality of users. TCP / IP, UDP / IP, and the like exist as protocols for transmitting and receiving packet data. TCP / IP is resistant to errors because it incorporates a framework such as retransmission, and is effective for download-type applications that want to receive data correctly even if it takes some time. UDP / IP does not have a retransmission framework, but has no delay for retransmission and is effective for applications that require real-time performance.
[0004]
In moving image communication, image data usually has a very large amount of data and often does not fit in the network bandwidth. In this case, a method is used in which image data is encoded and transmitted with a reduced amount of data. As compression coding techniques for moving image signals, techniques such as motion compensation, discrete cosine transform (DCT), subband coding, pyramid coding, variable length coding, etc., and methods combining these techniques have been developed. International standards for video coding include ISO MPEG-1, MPEG-2, ITU-TH. 261, H. 262, H.M. H.263, and ISO MPEG system, ITU-T H.264, and the like as international standard systems for multiplexing moving images, code sequences compressed voice / audio signals, and other data. 221, H.M. 223 exists.
[0005]
The Internet and the like are connected through a myriad of networks, and it is normal not to know which network is in what state. In addition, since the amount of data flowing there fluctuates from moment to moment, a mechanism for determining how much data can be communicated in real time is necessary. Therefore, an application that uses a packet format called RTP (Real-time Transport Protocol), which advances one step from a real-time application using UDP / IP and adds time information or the like to a packet for transmission, is increasing. By using RTP, time information and packet number are added to the packet, and the receiving side can display the voice and image using the correct time information, or determine the packet whose order has been changed on the network. By looking at the packet number, it can be detected that the packet is lost. In addition, RTP also has a mechanism (RTCP (RTP Control Protocol)) for notifying the jitter, the packet loss rate, and the like as supplementary information from the transmission side and the reception side. Further, a mechanism for retransmitting RTP packets is currently under discussion. For example, a function is known in which priority is added to a packet and traffic can be controlled so as not to retransmit everything. However, there is no provision for this usage.
[0006]
In addition, in the IETF (The Internet Engineering Task Force), RTSP is defined as a session management protocol between a transmission terminal and a reception terminal for establishing the image communication as described above, and for describing the contents of the image content. SDP, which is the language specification of the Thereby, between the server and the client, it is possible to control the start of the session, the start of transmission of the multimedia content, the pause, the end of the session, etc. by RTSP.
[0007]
Here, when an image is transmitted over the Internet or the like, a band for raw image transmission cannot be secured over the Internet or the like, and therefore, an image signal is compressed and sent using an encoding method such as MPEG. This is effective in reducing the amount of data, but it becomes very vulnerable to packet loss and error mixing caused by data flowing over the unstable Internet. In the moving image coding system, only the difference from the previous frame is transmitted, so that a part of the data is lost. Since UDP and RTP basically do not retransmit data, it is necessary to take measures against this problem. For this reason, standards for RTP retransmission are established by IETF. In simple terms, the packet number that could not be received is notified to the transmission side by a command called NACK using a protocol called AVPF. On the transmission side, a packet lost from NACK is specified, a header is constructed according to the RTP retransmission standard, and the packet is transmitted to the reception side. Furthermore, since RTP is mainly used for real-time communication, a technique has been proposed for controlling packets that are not in time for display even if they are retransmitted (see, for example, Patent Document 1). In addition, since there is a delay until the retransmission packet arrives and there is a possibility that it may not be in time for real-time reproduction, it has been proposed to use retransmission for recording purposes. At that time, a contrivance is made such that the retransmission packet is not transmitted with the same low-reliability UDP as in real time but is transmitted with reliable TCP (for example, see Patent Document 2).
[0008]
[Patent Document 1]
Daiji Ido, et al., “Data Transmitting Device, Data Receiving Device, and Data Communication System”, P2002-84338, Mar. 2002.
[0009]
[Patent Document 2]
Makoto Kobayashi, “Communication control device, communication control method, and recording medium on which communication control program is recorded”, P2002-199019, July 2002.
[0010]
[Problems to be solved by the invention]
In the prior art, RTP feedback information (RTCP), retransmission control (RTP Retransmission), and the like have been proposed and standardized as network protocols, but how to use RTCP and retransmission is presented. Absent. There are known techniques for re-transmission using TCP only for recording purposes and not transmitting retransmission packets that are not in time for real-time playback. However, these are single functions, and playback quality and recording can be performed during recording. There is no method that is effective for both quality. In addition, regarding transmission bandwidth consumption during retransmission, there is a known technology that compensates for the amount of retransmission by not transmitting normal transmissions that are less important, but this can cause loss of original data. As a result, problems such as a decrease in reproduction quality and an increase in the quality of recorded content occur.
[0011]
The present invention has been made in view of the above circumstances, and provides a packet transmission device, a packet reception device, a packet transmission method, and a packet reception method for efficiently transmitting multimedia contents in a network in which errors may be mixed. The purpose is to do.
[0012]
[Means for Solving the Problems]
The packet transmission device according to the present invention includes a first transmission means for sequentially transmitting a plurality of packets generated from multimedia content data to a reception device via a network, and retransmitting the packet from the reception device via the network. Receiving means for receiving a retransmission request including information for specifying a packet to be transmitted, and the importance level regarding retransmission of the packet related to the retransmission request, a first time when data related to the packet is scheduled to be used by the receiving device, and Determining means for determining based on a second time at which data related to a retransmission packet corresponding to the packet is expected to be available in the receiving apparatus; and selecting means for selecting a packet to be retransmitted based on the importance level And a second transmitter that transmits a retransmission packet corresponding to the selected packet to the receiving device via the network. Characterized by comprising and.
[0013]
The packet reception device according to the present invention includes: a first reception unit that sequentially receives a plurality of packets generated from multimedia content data or a retransmission packet corresponding to the plurality of packets from the transmission device via a network; Analyzing a packet received by one receiving means, specifying a packet to be retransmitted based on the result, and a retransmission request including information specifying a packet to be retransmitted to the transmitting apparatus via the network It is characterized by comprising transmitting means for transmitting, data using means for using data relating to the packet, and recording means for recording data relating to the packet.
[0014]
The present invention relating to the apparatus is also established as an invention relating to a method, and the present invention relating to a method is also established as an invention relating to an apparatus.
Further, the present invention relating to an apparatus or a method has a function for causing a computer to execute a procedure corresponding to the invention (or for causing a computer to function as a means corresponding to the invention, or for a computer to have a function corresponding to the invention. It is also established as a program (for realizing) and also as a computer-readable recording medium on which the program is recorded.
[0015]
According to the present invention, it is possible to efficiently achieve both real-time reproduction and record storage in a system that restores data using retransmission for errors such as packet loss.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the invention will be described with reference to the drawings.
[0017]
In the present embodiment, a case where an RTP (Real Time Transport Protocol) that is a protocol for transferring image data and audio data in real time is used as an example will be described (details of RTP are described in, for example, “Schulzrinne, H., etc.”). Casner, S., Frederick, R. and V. Jacobson "RTP: A Transport Protocol for Real Time Applications", RFC 1889, January 1996.).
[0018]
(First embodiment)
FIG. 1 shows a configuration example of a multimedia content distribution apparatus according to the first embodiment of the present invention.
[0019]
As shown in FIG. 1, this multimedia content distribution apparatus includes a multimedia
[0020]
In FIG. 1, the range indicated by a is a part related to packet transmission, the range indicated by b is a part related to retransmission control, and the range indicated by c is a part related to retransmission packet transmission. (In the configuration diagrams referred to later, a, b, and c are used in the same meaning).
[0021]
Hereinafter, when the multimedia content distribution apparatus (also referred to as a transmission-side apparatus) transmits multimedia content to a multimedia content reception apparatus (also referred to as a reception-side apparatus) (not illustrated) via a network (not illustrated). Will be described. The multimedia content receiving apparatus is not particularly limited, and may be, for example, an existing one or may be described in the sixth embodiment.
[0022]
The content data (131) output from the multimedia
[0023]
FIG. 2 shows the configuration of the header portion of the RTP packet. As shown in FIG. 2, the header includes RTP version information (V), padding information (P), presence / absence of extension header (X), number of CSRC (CC), data type (PT), and transmission source identifier. A packet number (Sequence Number) and packet time information (timestamp) are included together with (SSRC) and an associated transmission source identifier (CRSC).
[0024]
Information indicating the state of the communication path (hereinafter referred to as communication path state information) is sent from the receiving side apparatus to the transmitting side apparatus using RTCP or the like. The communication path state
[0025]
The
[0026]
The
[0027]
The generated retransmission packet (142) is temporarily stored in the retransmission
[0028]
FIG. 3 shows an example of a schematic processing procedure for determining the importance of a packet requested to be retransmitted by the
[0029]
The
[0030]
FIG. 4 shows an example of the data structure of a retransmission request stored in the retransmission
[0031]
FIG. 5 shows an example of a more detailed processing procedure for determining the importance of a packet requested to be retransmitted by the
[0032]
The
[0033]
Using the packet number specified in step S401, packet time information (scheduled reproduction time) is acquired from the packet buffer unit 108 (step S402).
[0034]
In addition to round-trip time information (138) calculated from packet time information and communication path state information, initial buffer amount information indicating the amount of initial buffer prepared in the receiving side device, information such as transmission start time, current time, etc. Obtained from the system, the estimated arrival time when the packet is retransmitted is calculated (step S403).
[0035]
If the scheduled reproduction time of the packet acquired in step S402 is later than the estimated arrival time calculated in step S403 (because it is predicted to be in time for reproduction if it is retransmitted quickly), it is determined that the packet is worth retransmitting immediately. If the estimated arrival time is later than the scheduled reproduction time (because it is predicted that it will not be in time for reproduction even if it is retransmitted immediately), it is determined that the packet need not be retransmitted immediately (step S404).
[0036]
If it is determined that the packet should be retransmitted promptly, the retransmission request for the packet is set to “high” importance, stored in the retransmission request queue unit 110 (step S405), and may not be retransmitted immediately. If determined, the retransmission request for the packet is set to the importance level “low” and stored in the retransmission request queue unit 110 (step S406).
[0037]
Here, FIG. 6 and FIG. 7 show the relationship between the estimated arrival time and the scheduled reproduction time in steps S403 and S404 in FIG. FIG. 6 shows an example in which the estimated arrival time is before the scheduled reproduction time and the importance is set to “high”. On the contrary, FIG. 7 shows that the estimated arrival time is later than the scheduled reproduction time and the importance is set. This is an example when “low” is set.
[0038]
Here, the transmission start time is set to T for the transmission side device. START , T SEND , P for the packet time stamp TS , The time when the retransmission request from the receiving device is received is T RREQ , The time taken to process a resend request with high importance waiting for processing stored in the resend
[0039]
As can be seen from FIGS. 6 and 7, the retransmission packet arrival time (that is, the time at which the retransmission packet can be reproduced) T RRCV Is the scheduled packet playback time T PLAY If it is earlier than this, it means that the packet should be retransmitted immediately. This can be expressed as a mathematical expression (1). If the formula (1) becomes true, the retransmission packet will be in time for reproduction, and the importance will be set high. If the formula (1) becomes false, the retransmission packet will not be in time. And set the importance level low.
(T RREQ -T START ) + D QUE + RTT / 2 ≦ D INIT + P TS ... (1)
The determination formula is determined not only by the above formula (1), but also by a method such as the following formula (2), formula (3), and formula (4), or by other methods. It is also possible.
(T RREQ -T START ) + D QUE + RTT / 2 ≦ D INIT + P TS + Α (2)
(3/2) × RTT ≦ D INIT ... (3)
(3/2) × RTT + DLSR ≦ D INIT ... (4)
Formula (2) is an example in which the determination is performed in consideration of the initial response delay α, and Formula (3) ignores the effects of the initial delay and cumulative delay, and simply calculates the RTT and the buffer amount on the receiving side. D INIT This is an example in which the determination is performed only from. Formula (4) is a determination condition formula that takes into account the packet processing time DLSR until the packet that arrives at the receiving side apparatus is processed and issues a retransmission request. To calculate DLSR, Formula (5) An expression can be used.
DLSR = T RREQ -T SEND -RTT (5)
Since the
[0040]
The present embodiment can be implemented with various modifications. Some examples are shown below.
[0041]
Next, FIG. 8 shows another configuration example of the multimedia content distribution apparatus of the present embodiment.
[0042]
In the configuration example of FIG. 1, the
[0043]
Next, FIG. 9 shows still another configuration example of the multimedia content distribution apparatus of the present embodiment.
[0044]
In FIG. 9, RTP packetization is not performed in real time, but RTP data is stored in the RTP multimedia
[0045]
Further, the
[0046]
In these cases, the RTP packetizing unit may not be provided.
[0047]
In addition, the multimedia
[0048]
By the way, in this embodiment, the estimated arrival time is calculated from the delay time of the network, packet time information, reception side buffer information, transmission start time, initial delay time, and the like.
[0049]
When the estimated arrival time is calculated in the transmission side apparatus, the packet time information can be obtained from the packet data stored in the
[0050]
This network delay time information can be calculated using, for example, a control packet called RTCP and using time information included therein.
[0051]
10 and 11 show the configuration of the RTCP packet. FIG. 10 shows a transmission side report sent from the transmission side apparatus to the reception side apparatus, and FIG. 11 shows a reception side report sent from the reception side apparatus to the transmission side apparatus.
[0052]
Here, a method for obtaining the delay time of the network using RTCP will be described.
[0053]
The transmitting side device that has received the receiving side report receives the NTP time T at which the receiving side report has been received. r-recv "NTP timestamp of last sender report" T in the receiver report LSR And “time from the arrival of the last sender report to sending the receiver report” T DLSR And is calculated as shown in Equation (5).
T delay = T r-recv -T LSR -T DLSR ... (5)
The value obtained here is the round-trip network delay time T delay It is.
[0054]
In addition to using the prescribed values as described above for the information on the reception side buffer amount and the initial delay time, there is a method of notifying the reception side device by negotiation when establishing a session.
[0055]
On the other hand, when the estimated arrival time is determined on the receiving device side, the same determination method can be used. In the packet time information, the exact time cannot be determined because the packet is lost. In this case, the packet lost due to the method of using the time information of the packet closest to the target packet lost packet or the closest packet in one direction before or after, the time information of the nearby packet and the packet number, etc. It is possible to use a method for estimating packet time information. The buffer amount and initial delay time of the receiving side device are values held in the receiving side device, and can be used as they are.
[0056]
The network delay time can be calculated by receiving the transmission side report shown in FIG. The NTP time when the sender report was received is T s-recv And "NTP timestamp" T included in the sender report s-send And One-way network delay time T delay_oneway Can be obtained by Equation (6).
T delay_oneway = T s-recv -T s-send (6)
When calculating the round-trip network delay time, the method of simply doubling, the delay in the direction from the transmission side device to the reception side device, and the delay in the direction from the reception side device to the transmission side device are uniform. In consideration of the case where there is not, there is a method of responding by multiplying a coefficient or adding a value.
[0057]
Further, since the transmission start time cannot be notified by the existing RTCP, it is only necessary to take measures such as replacing it with an alternative value such as 0. In addition to the RTP / RTCP, it is also possible to use a method of notifying the receiving side apparatus from the transmitting side apparatus by negotiation at the time of session establishment.
[0058]
(Second Embodiment)
FIG. 12 shows a configuration example of a multimedia content distribution apparatus according to the second embodiment of the present invention.
[0059]
As shown in FIG. 12, the multimedia content distribution apparatus includes a multimedia
[0060]
In the present embodiment, the retransmission
[0061]
The operation when the multimedia content distribution apparatus transmits multimedia content to the multimedia content receiving apparatus via the network will be described below. Below, it demonstrates centering on the point which is different from what was demonstrated in 1st Embodiment.
[0062]
The content data (131) output from the multimedia
[0063]
The communication path state
[0064]
The retransmission
[0065]
The
[0066]
The
[0067]
In the retransmission wait
[0068]
Based on packet data (934),
[0069]
The retransmission packet (143) is transmitted from the retransmission
[0070]
FIG. 13 shows an example of a storage processing procedure corresponding to the importance level information in the retransmission wait
[0071]
It is determined whether or not the added importance information is high for the input packet data (933) (step S1001). When the importance is “high”, the packet data (933) is inserted in the order position according to the time stamp of the packet in the packet data list of the importance “high” (step S1002). If the importance is “low”, the packet data (933) is inserted in the order position according to the packet time stamp in the packet data list of the importance “low” (step S1003).
[0072]
It should be noted that even when the importance has a multivalue other than binary, the packet data may be inserted at the sequential position according to each value.
[0073]
Next, a configuration example of the retransmission wait
[0074]
FIG. 14 shows an example of a list method in which importance, packet number, and retransmission wait packet data are stored in the retransmission wait
[0075]
FIG. 15 shows an example of the configuration of a retransmission-waiting
[0076]
These are merely examples, and any method can be used as long as the packet data can be output to the
[0077]
In the first embodiment, data that has been re-packetized is temporarily stored in the re-transmission
[0078]
(Third embodiment)
FIG. 16 shows a configuration example of a multimedia content distribution apparatus according to the third embodiment of the present invention.
[0079]
As shown in FIG. 16, the multimedia content distribution apparatus includes a multimedia
[0080]
In FIG. 16, the range indicated by b is a part related to retransmission control as described above, and the range indicated by d is a part related to packet transmission and retransmission packet transmission (each configuration to be referred to later). In the figure, d is used in the same meaning).
[0081]
In the present embodiment, the configuration related to packet transmission and the configuration related to retransmission packet transmission of the first embodiment are integrated.
[0082]
The operation when the multimedia content distribution apparatus transmits multimedia content to the multimedia content receiving apparatus via the network will be described below. Below, it demonstrates centering on the point which is different from what was demonstrated in 1st Embodiment.
[0083]
The content data (131) output from the multimedia
[0084]
The communication path state
[0085]
The
[0086]
The
[0087]
The retransmission packet (142) is temporarily stored in the
[0088]
According to the present embodiment, it is possible to make one transmission part, and it is possible to simplify the configuration of the apparatus. In addition, this method is useful for realizing this method with few resources such as a portable terminal.
[0089]
Further, in this embodiment, it is of course possible to use the configuration examples and the modification examples shown in the first embodiment and the second embodiment.
[0090]
As an example, FIG. 17 shows a configuration example when the retransmission wait packet buffer unit 901 (see FIG. 12) is used. In this case, the retransmission packet data (933) to which the importance level is output from the
[0091]
Next, FIG. 18 shows another configuration example. FIG. 18 shows the same idea as that of the modified example of FIG. 17, but instead of using the retransmission waiting
[0092]
(Fourth embodiment)
In the first to third embodiments, various configuration examples have been shown for the part called retransmission control. However, in the fourth embodiment, communication band control (rate control) that takes retransmission into consideration for retransmission control. The case where these are combined will be described.
[0093]
FIG. 19 shows a configuration example of the multimedia content distribution apparatus according to this embodiment.
[0094]
As shown in FIG. 19, the multimedia content distribution apparatus includes a multimedia
[0095]
The operation when the multimedia content distribution apparatus transmits multimedia content to the multimedia content receiving apparatus via the network will be described below. Below, it demonstrates centering on the point which is different from what was demonstrated in 1st Embodiment.
[0096]
Each unit other than the
[0097]
The
[0098]
Next, FIG. 20 shows a configuration example in which it is possible to easily follow dynamic band fluctuation by having a stream switching function.
[0099]
In this configuration example, instead of the multimedia
[0100]
(Fifth embodiment)
The first to fourth embodiments are distributed from content data created in advance. In the fifth embodiment, it is possible to deal with live video input in real time. It is.
[0101]
FIG. 21 shows a configuration example of a multimedia content distribution apparatus according to the fifth embodiment of the present invention.
[0102]
As shown in FIG. 21, the multimedia content distribution apparatus includes an
[0103]
The operation when the multimedia content distribution apparatus transmits multimedia content to the multimedia content receiving apparatus via the network will be described below. Below, it demonstrates centering on the point which is different from what was demonstrated in 1st Embodiment.
[0104]
In the configuration example of FIG. 1 of the first embodiment, the content data (131) output from the multimedia
[0105]
Further, the
[0106]
Next, FIG. 22 shows another configuration example of the multimedia content distribution apparatus of the present embodiment. As shown in FIG. 22, by inputting information (1931) such as the determination result and the number of retransmission requests temporarily stored in the retransmission
[0107]
Note that a multimedia
[0108]
Next, an example in which the concept of sharing the transmission part shown in the third embodiment is applied to the case of real-time data input will be shown. FIG. 23 shows an example of the configuration in this case.
[0109]
In the configuration example of FIG. 16 of the third embodiment, the content data (131) output from the multimedia
[0110]
Further, the
[0111]
Of the various configuration examples described in the first to fourth embodiments, configurations corresponding to live video input in real time according to the present embodiment are applicable in addition to those described here.
[0112]
(Sixth embodiment)
FIG. 24 shows a configuration example of a multimedia content receiving apparatus according to the sixth embodiment of the present invention.
[0113]
As shown in FIG. 24, the multimedia content receiving apparatus includes a
[0114]
In FIG. 24, the range indicated by e is a portion related to RTP, and the range indicated by f is a portion related to RTCP (e. Used for meaning).
[0115]
Hereinafter, the multimedia content receiving device (also referred to as a receiving device) receives multimedia content from a multimedia content distribution device (also referred to as a transmitting device) (not shown) via a network (not shown). Will be described. The multimedia content transmitting apparatus is not particularly limited, and may be, for example, an existing apparatus or the one described in the first to fifth embodiments.
[0116]
The packet data transmitted from the transmission side device is received by the
[0117]
Further, the packet analysis information (2132) and the communication path state information (2134) are input to the
[0118]
On the other hand, the received packet data (2136) is temporarily stored in the
[0119]
The
[0120]
In the
[0121]
As described above, the
[0122]
Next, FIG. 25 shows another configuration example of the multimedia content distribution apparatus of the present embodiment.
[0123]
When the entire size of the content is very large, the data is temporarily stored in the
[0124]
At this time, it is possible to extend the data rewriting in the
[0125]
Furthermore, in the first to fifth embodiments, the case has been described where the importance of retransmission requests is determined and the order is controlled in the transmission side device, but these methods can also be applied to the reception side device. .
[0126]
As an example, FIG. 26 shows a configuration example of a multimedia content distribution apparatus when the method adopted in the first embodiment is applied.
[0127]
In this case, the
[0128]
Of course, also in this case, as shown in FIG. 25, it is also possible to use a method of directly writing data from the
[0129]
In addition, among the various configuration examples described in the first to fifth embodiments, the configuration examples other than those described here can be similarly applied.
[0130]
In the first to sixth embodiments, the case where RTP is used has been described as an example. However, the protocol is not limited to this, and various protocols that can be retransmitted can be used. It is. In the first to sixth embodiments, video signals such as moving images and still images have been mainly described as content data. However, the types of data are not limited, and audio data, text data, or the like can be used. It can be implemented.
[0131]
Each of the above functions can be realized even if it is described as software and processed by a computer having an appropriate mechanism.
The present embodiment can also be implemented as a program for causing a computer to execute predetermined means, causing a computer to function as predetermined means, or causing a computer to realize predetermined functions. In addition, the present invention can be implemented as a computer-readable recording medium on which the program is recorded.
[0132]
Note that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.
[0133]
【The invention's effect】
According to the present invention, it is possible to efficiently transmit multimedia contents in a network in which errors may be mixed.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration example of a multimedia content distribution apparatus according to a first embodiment of the present invention.
FIG. 2 is a diagram showing a configuration of a header portion of an RTP packet
FIG. 3 is a flowchart showing an example of a schematic procedure of retransmission request importance determination processing in the embodiment;
FIG. 4 is a view showing a configuration example of a retransmission request queue in the embodiment.
FIG. 5 is a flowchart showing an example of a detailed procedure of retransmission request importance determination processing in the embodiment;
FIG. 6 is a diagram for explaining a transmission / reception time when a retransmission packet is in time for the scheduled reproduction time in the embodiment;
FIG. 7 is a diagram for explaining a transmission / reception time when a retransmission packet is not in time for the scheduled reproduction time in the embodiment;
FIG. 8 is a view showing another configuration example of the multimedia content distribution apparatus in the embodiment.
FIG. 9 is a diagram showing still another configuration example of the multimedia content distribution apparatus according to the embodiment.
FIG. 10 is a diagram illustrating a packet configuration of an RTCP transmission side report sent from the transmission side to the reception side;
FIG. 11 is a diagram showing a configuration of an RTCP transmission side report packet sent from the reception side to the transmission side;
FIG. 12 is a diagram showing a configuration example of a multimedia content distribution apparatus according to the second embodiment of the present invention.
FIG. 13 is a flowchart showing an example of a processing procedure according to the importance in the retransmission packet buffer unit in the embodiment;
FIG. 14 is a diagram showing a configuration example of a retransmission wait packet buffer unit in the embodiment;
FIG. 15 is a view showing another configuration example of the retransmission waiting packet buffer unit in the embodiment;
FIG. 16 is a diagram showing a configuration example of a multimedia content distribution apparatus according to the third embodiment of the present invention.
FIG. 17 is a diagram showing another configuration example of the multimedia content distribution apparatus in the embodiment.
FIG. 18 is a diagram showing still another configuration example of the multimedia content distribution apparatus according to the embodiment.
FIG. 19 is a diagram showing a configuration example of a multimedia content distribution apparatus according to the fourth embodiment of the present invention.
FIG. 20 is a diagram showing another configuration example of the multimedia content distribution apparatus in the embodiment.
FIG. 21 is a diagram showing a configuration example of a multimedia content distribution apparatus according to a fifth embodiment of the present invention.
FIG. 22 is a diagram showing another configuration example of the multimedia content distribution apparatus in the embodiment.
FIG. 23 is a diagram showing still another configuration example of the multimedia content distribution apparatus according to the embodiment.
FIG. 24 is a diagram showing a configuration example of a multimedia content receiving apparatus according to a sixth embodiment of the present invention.
FIG. 25 is a view showing another configuration example of the multimedia content receiving apparatus according to the embodiment;
FIG. 26 is a diagram showing still another configuration example of the multimedia content receiving apparatus in the embodiment.
[Explanation of symbols]
DESCRIPTION OF
Claims (15)
前記受信装置から前記ネットワークを介して、再送すべきパケットを特定する情報を含む再送要求を受信する受信手段と、
前記再送要求に係るパケットの再送に関する重要度を、該パケットに係るデータが前記受信装置で利用される予定の第1の時刻及び該パケットに対応する再送パケットに係るデータが前記受信装置で利用可能になると予想される第2の時刻に基づいて決定する決定手段と、
前記重要度に基づいて再送すべきパケットを選択する選択手段と、
選択されたパケットに対応する再送パケットを前記ネットワークを介して前記受信装置へ送信する第2の送信手段とを備えたことを特徴とするパケット送信装置。First transmitting means for sequentially transmitting a plurality of packets generated from the multimedia content data to the receiving device via the network;
Receiving means for receiving a retransmission request including information specifying a packet to be retransmitted from the receiving device via the network;
The importance related to retransmission of the packet related to the retransmission request, the first time when the data related to the packet is scheduled to be used by the receiving device, and the data related to the retransmission packet corresponding to the packet can be used by the receiving device Determining means for determining based on a second time expected to be;
Selecting means for selecting a packet to be retransmitted based on the importance;
A packet transmission apparatus comprising: a second transmission unit configured to transmit a retransmission packet corresponding to the selected packet to the reception apparatus via the network.
前記マルチメディアコンテンツデータから前記複数のパケットを生成する生成手段とを更に備えたことを特徴とする請求項1に記載のパケット送信装置。Storage means for storing multimedia content data;
The packet transmission device according to claim 1, further comprising a generation unit configured to generate the plurality of packets from the multimedia content data.
前記第1の受信手段により受信したパケットを解析し、その結果に基づいて再送すべきパケットを特定する特定手段と、
再送すべきパケットを特定する情報を含む再送要求を前記ネットワークを介して前記送信装置へ送信する送信手段と、
前記パケットに係るデータを利用するデータ利用手段と、
前記パケットに係るデータを記録する記録手段とを備えたことを特徴とするパケット受信装置。First receiving means for sequentially receiving a plurality of packets generated from multimedia content data or retransmission packets corresponding to the packets from a transmitting device via a network;
Analyzing means for analyzing the packet received by the first receiving means, and specifying means for specifying a packet to be retransmitted based on the result;
Transmitting means for transmitting a retransmission request including information specifying a packet to be retransmitted to the transmitting device via the network;
Data utilization means for utilizing data relating to the packet;
A packet receiving apparatus comprising recording means for recording data relating to the packet.
前記記録手段は、前記保持手段に保持された、並べ替えられた後のデータを記録することを特徴とする請求項8に記載のパケット受信装置。Further comprising holding means for rearranging and holding all the data relating to the packet and the data relating to the retransmission packet in the order in which they are used,
9. The packet receiving apparatus according to claim 8, wherein the recording unit records the rearranged data held in the holding unit.
前記記録手段に記録されたデータを、それらが利用される順番に並べ替える手段とを更に備えたことを特徴とする請求項8に記載のパケット受信装置。Accumulating all the data related to the packet and the data related to the retransmitted packet, and storing the data, and directly writing to the recording means,
9. The packet receiving apparatus according to claim 8, further comprising means for rearranging data recorded in the recording means in an order in which they are used.
前記特定手段により特定されたパケットに係る再送要求及び前記蓄積手段に蓄積された再送要求のうち重要度の高いものを選択して、前記送信手段へ渡す手段を更に備えたことを特徴とする請求項8に記載のパケット受信装置。Storage means for storing the retransmission request;
The apparatus further comprises means for selecting a high-priority request among the retransmission request related to the packet specified by the specifying means and the retransmission request stored in the accumulating means, and passing the selected request to the transmitting means. Item 9. The packet receiving device according to Item 8.
前記受信装置から前記ネットワークを介して、再送すべきパケットを特定する情報を含む再送要求を受信するステップと、
前記再送要求に係るパケットの再送に関する重要度を、該パケットに係るデータが前記受信装置で利用される予定の第1の時刻及び該パケットに対応する再送パケットに係るデータが前記受信装置で利用可能になると予想される第2の時刻に基づいて決定するステップと、
前記重要度に基づいて再送すべきパケットを選択するステップと、
選択されたパケットに対応する再送パケットを前記ネットワークを介して前記受信装置へ送信するステップとを備えたことを特徴とするパケット送信方法。Sequentially transmitting a plurality of packets generated from the multimedia content data to a receiving device via a network;
Receiving a retransmission request including information identifying a packet to be retransmitted from the receiving device via the network;
The importance related to retransmission of the packet related to the retransmission request, the first time when the data related to the packet is scheduled to be used by the receiving device, and the data related to the retransmission packet corresponding to the packet can be used by the receiving device Determining based on a second time expected to be;
Selecting a packet to be retransmitted based on the importance;
And a step of transmitting a retransmission packet corresponding to the selected packet to the receiving device via the network.
受信したパケットを解析し、その結果に基づいて再送すべきパケットを特定するステップと、
再送すべきパケットを特定する情報を含む再送要求を前記ネットワークを介して前記送信装置へ送信するステップと、
前記パケットに係るデータを利用するステップと、
前記パケットに係るデータを記録するステップとを備えたことを特徴とするパケット受信方法。Receiving a plurality of packets generated from multimedia content data or a retransmission packet corresponding to the packets sequentially from a transmitting device via a network;
Analyzing received packets and identifying packets to be retransmitted based on the results;
Transmitting a retransmission request including information specifying a packet to be retransmitted to the transmission device via the network;
Utilizing the data associated with the packet;
A packet receiving method comprising: recording data relating to the packet.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003202981A JP2005051299A (en) | 2003-07-29 | 2003-07-29 | Packet transmission apparatus, packet reception apparatus, packet transmission method and packet reception method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003202981A JP2005051299A (en) | 2003-07-29 | 2003-07-29 | Packet transmission apparatus, packet reception apparatus, packet transmission method and packet reception method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005051299A true JP2005051299A (en) | 2005-02-24 |
Family
ID=34262503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003202981A Pending JP2005051299A (en) | 2003-07-29 | 2003-07-29 | Packet transmission apparatus, packet reception apparatus, packet transmission method and packet reception method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005051299A (en) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011015214A (en) * | 2009-07-02 | 2011-01-20 | Canon Inc | Transmission device, transmission method, and computer program |
JP2013078126A (en) * | 2007-06-29 | 2013-04-25 | Toshiba Corp | Video stream across multiple interfaces |
US8860040B2 (en) | 2012-09-11 | 2014-10-14 | Dow Corning Corporation | High voltage power semiconductor devices on SiC |
JP2015012306A (en) * | 2013-06-26 | 2015-01-19 | 三菱電機株式会社 | Video transmission/reception system, transmission device and reception device |
US8940614B2 (en) | 2013-03-15 | 2015-01-27 | Dow Corning Corporation | SiC substrate with SiC epitaxial film |
US9018639B2 (en) | 2012-10-26 | 2015-04-28 | Dow Corning Corporation | Flat SiC semiconductor substrate |
US9017804B2 (en) | 2013-02-05 | 2015-04-28 | Dow Corning Corporation | Method to reduce dislocations in SiC crystal growth |
US9279192B2 (en) | 2014-07-29 | 2016-03-08 | Dow Corning Corporation | Method for manufacturing SiC wafer fit for integration with power device manufacturing technology |
US9738991B2 (en) | 2013-02-05 | 2017-08-22 | Dow Corning Corporation | Method for growing a SiC crystal by vapor deposition onto a seed crystal provided on a supporting shelf which permits thermal expansion |
US9797064B2 (en) | 2013-02-05 | 2017-10-24 | Dow Corning Corporation | Method for growing a SiC crystal by vapor deposition onto a seed crystal provided on a support shelf which permits thermal expansion |
WO2017199913A1 (en) * | 2016-05-18 | 2017-11-23 | 日本電気株式会社 | Transmission device, method, program, and recording medium |
CN112416408A (en) * | 2020-12-08 | 2021-02-26 | 金卡智能集团股份有限公司 | Firmware upgrading method, device, equipment and computer readable storage medium |
CN114584844A (en) * | 2020-11-30 | 2022-06-03 | 青岛海信宽带多媒体技术有限公司 | RTP packet loss retransmission method and device and playing terminal |
-
2003
- 2003-07-29 JP JP2003202981A patent/JP2005051299A/en active Pending
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013078126A (en) * | 2007-06-29 | 2013-04-25 | Toshiba Corp | Video stream across multiple interfaces |
JP2011015214A (en) * | 2009-07-02 | 2011-01-20 | Canon Inc | Transmission device, transmission method, and computer program |
US8860040B2 (en) | 2012-09-11 | 2014-10-14 | Dow Corning Corporation | High voltage power semiconductor devices on SiC |
US9337277B2 (en) | 2012-09-11 | 2016-05-10 | Dow Corning Corporation | High voltage power semiconductor device on SiC |
US9018639B2 (en) | 2012-10-26 | 2015-04-28 | Dow Corning Corporation | Flat SiC semiconductor substrate |
US9165779B2 (en) | 2012-10-26 | 2015-10-20 | Dow Corning Corporation | Flat SiC semiconductor substrate |
US9797064B2 (en) | 2013-02-05 | 2017-10-24 | Dow Corning Corporation | Method for growing a SiC crystal by vapor deposition onto a seed crystal provided on a support shelf which permits thermal expansion |
US9017804B2 (en) | 2013-02-05 | 2015-04-28 | Dow Corning Corporation | Method to reduce dislocations in SiC crystal growth |
US9738991B2 (en) | 2013-02-05 | 2017-08-22 | Dow Corning Corporation | Method for growing a SiC crystal by vapor deposition onto a seed crystal provided on a supporting shelf which permits thermal expansion |
US8940614B2 (en) | 2013-03-15 | 2015-01-27 | Dow Corning Corporation | SiC substrate with SiC epitaxial film |
JP2015012306A (en) * | 2013-06-26 | 2015-01-19 | 三菱電機株式会社 | Video transmission/reception system, transmission device and reception device |
US9279192B2 (en) | 2014-07-29 | 2016-03-08 | Dow Corning Corporation | Method for manufacturing SiC wafer fit for integration with power device manufacturing technology |
US10002760B2 (en) | 2014-07-29 | 2018-06-19 | Dow Silicones Corporation | Method for manufacturing SiC wafer fit for integration with power device manufacturing technology |
WO2017199913A1 (en) * | 2016-05-18 | 2017-11-23 | 日本電気株式会社 | Transmission device, method, program, and recording medium |
RU2715016C1 (en) * | 2016-05-18 | 2020-02-21 | Нек Корпорейшн | Transmitting device, method, program and recording medium |
CN114584844A (en) * | 2020-11-30 | 2022-06-03 | 青岛海信宽带多媒体技术有限公司 | RTP packet loss retransmission method and device and playing terminal |
CN114584844B (en) * | 2020-11-30 | 2023-09-22 | 青岛海信宽带多媒体技术有限公司 | RTP packet loss retransmission method and device and intelligent set top box |
CN112416408A (en) * | 2020-12-08 | 2021-02-26 | 金卡智能集团股份有限公司 | Firmware upgrading method, device, equipment and computer readable storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4414311B2 (en) | Multimedia streaming service system and method | |
US7164680B2 (en) | Scheme for supporting real-time packetization and retransmission in rate-based streaming applications | |
CN108141455B (en) | Deadline signaling for streaming of media data | |
CN1951083B (en) | Refined quality feedback in streaming services | |
US7290058B2 (en) | Video mail server with reduced frame loss | |
US20050254508A1 (en) | Cooperation between packetized data bit-rate adaptation and data packet re-transmission | |
TWI401918B (en) | A communication method for signaling buffer parameters indicative of receiver buffer architecture | |
EP2129126A1 (en) | Transmission apparatus, transmission method, and reception apparatus | |
JP5207895B2 (en) | Transmitting apparatus, receiving apparatus, method, and program | |
US8990407B2 (en) | Fast setup response prediction | |
KR20060114080A (en) | System and method of providing multimedia streaming service | |
KR20100083233A (en) | Apparatus and method for multimedia file streaming in portable terminal | |
KR20040009928A (en) | Method of generating transmission control parameter and selective retranmission method according to the packet characteristics. | |
KR20010084519A (en) | Apparatus for transmitting/receiving bitstream in network and method thereof | |
Raman et al. | ITP: An image transport protocol for the internet | |
JP2005051299A (en) | Packet transmission apparatus, packet reception apparatus, packet transmission method and packet reception method | |
US20090268730A1 (en) | Data transmitting apparatus and method and program for controlling transmission rate | |
JP3871661B2 (en) | Multimedia content receiving apparatus and multimedia content receiving method | |
JP5031230B2 (en) | Data transmission apparatus and method | |
WO2005006760A1 (en) | Method and system for uneven distribution of data | |
KR100624854B1 (en) | Media-retransmitting device and method | |
JP2005136547A (en) | Communication system, receiving apparatus and method, transmission apparatus and method, recording medium, and program | |
Handley | Applying real-time multimedia conferencing techniques to the Web | |
WO2005006685A1 (en) | Method for prebuffering of multimedia streaming data | |
Argyriou | Transport layer optimizations for heterogeneous wireless multimedia networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060421 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060516 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060919 |