JP2007318470A - サーバ装置、送信順序決定方法およびコンテンツ配信システム - Google Patents
サーバ装置、送信順序決定方法およびコンテンツ配信システム Download PDFInfo
- Publication number
- JP2007318470A JP2007318470A JP2006146221A JP2006146221A JP2007318470A JP 2007318470 A JP2007318470 A JP 2007318470A JP 2006146221 A JP2006146221 A JP 2006146221A JP 2006146221 A JP2006146221 A JP 2006146221A JP 2007318470 A JP2007318470 A JP 2007318470A
- Authority
- JP
- Japan
- Prior art keywords
- transmission
- time
- stream
- unit
- division
- 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
Landscapes
- Time-Division Multiplex Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】再生装置におけるバッファアンダーフローによる再生不良の発生頻度を低減する。
【解決手段】サーバ装置100は、送信制御部102により、記憶装置101内の複数のストリームを、それぞれ、フラグメント毎に、時分割で、伝送路300を介して、再生装置200-1〜200-Nに同時にリアルタイム送信する。スケジューリングアルゴリズムにより、時分割送信における各ストリームの送信順序を、各ストリームのフラグメント(分割単位)毎のトラフィック情報(データサイズ、再生時間を含む)に基づいて行う。このアルゴリズムでは、各フラグメントの送信開始時刻を順次求め、それぞれの送信開始時刻に対応して、ストリーム毎に次のフラグメントの送信猶予時間を、トラフィック情報に基づいて推定し、最も短いストリームを、当該送信開始時刻から送信すべきストリームに決定し、スケジューリングの最適化を図る。
【選択図】図1
【解決手段】サーバ装置100は、送信制御部102により、記憶装置101内の複数のストリームを、それぞれ、フラグメント毎に、時分割で、伝送路300を介して、再生装置200-1〜200-Nに同時にリアルタイム送信する。スケジューリングアルゴリズムにより、時分割送信における各ストリームの送信順序を、各ストリームのフラグメント(分割単位)毎のトラフィック情報(データサイズ、再生時間を含む)に基づいて行う。このアルゴリズムでは、各フラグメントの送信開始時刻を順次求め、それぞれの送信開始時刻に対応して、ストリーム毎に次のフラグメントの送信猶予時間を、トラフィック情報に基づいて推定し、最も短いストリームを、当該送信開始時刻から送信すべきストリームに決定し、スケジューリングの最適化を図る。
【選択図】図1
Description
この発明は、例えばLAN(LocalArea Network)等の家庭内ネットワークを介してテレビ等の複数の再生装置に接続され、複数の再生装置で再生すべきコンテンツに係るストリームをこの複数の再生装置に同時にリアルタイム送信(ストリーミング)するサーバ装置、送信順序決定方法およびコンテンツ配信システムに関する。
詳しくは、この発明は、複数のストリームを、それぞれ、分割単位毎に、時分割で、単一の伝送路を介して複数の再生装置に送信するものにあって、各分割単位の送信開始時刻に対応して、ストリーム毎に次の分割単位の送信猶予時間を推定し、この送信猶予時間が最も短いストリームを送信すべきストリームに決定することによって、再生装置におけるバッファアンダーフローによる再生不良の発生頻度を低減するようにしたサーバ装置等に係るものである。
互いにネットワーク接続されたデジタル機器の間で複数のAV(Audio and Visual)ストリームを同時にリアルタイム送信(ストリーミング)する場合、各AVストリームの再生品質を維持するために必要な伝送帯域を確保するQoS(Quality of Service)技術が重要となる。
特に家庭内においては、インターネットのブロードバンド回線やデジタルTVの普及などによりAVストリームの高ビットレート化が進む一方で、デジタル機器間の接続にはIEEE 802.11規格など無線インタフェースの利用が進む傾向にあり、限られた通信帯域を効率良く利用するための技術が強く要求される。
現在、PC(PersonalComputer)やAV家電など一般向けのデジタル機器製品におけるネットワーク伝送路についてはIEEE802.1QやIEEE 802.11e(EDCA方式)などに準拠する所謂タグベースのQoS技術が普及しつつあるが、これらは伝送するデータの種別に基づいて優先順位付けを行うため、通常のデータに対してAVストリームを優先して伝送することはできるが、複数のAVストリームの間で優先順位付けを行うことはできない。
一方、家庭向けのQoS対応ルータ製品にはポート毎に優先度の設定や帯域割り当てを行えるものがある。そのようなルータを利用すれば、異なる機器間での優先順位付けは可能であるが、1つのサーバ機器から送信される複数のAVストリームの間で優先順位付けを行うことはできない。IEEE 802.11e(HCCA方式)によるQoS制御についても同じことが言える。
より高度なQoSの枠組みとしてIETFIntegrated Services (IETF-RFC2211,2212)に基づく方式がある。この方式を実現すれば、ストリーム(TCP/IPのコネクション)単位で平均帯域やパケット伝送遅延を制御することができるが、伝送処理を担う機器にはかなり高い性能が必要になるため、コストダウン要求の厳しいコンシューマ製品で実装するのは難しい。
また、上述の方式はいずれも極めて汎用の制御方式であり、伝送するデータのフォーマットや内容を一切考慮しない。しかし、例えばデジタルTV放送等で用いられているMPEG2 TSなど、動画データを含むストリームは可変ビットレート(VBR:VariableBit Rate)フォーマットで符号化されているのが一般的であり、特許文献1などで指摘されているように、送信処理のスケジューラはそのようなフォーマット情報を考慮して制御する方が、より優れたQoSを提供できる。
VBRフォーマットで符号化されたストリームを予め解析して得られたトラフィック情報(伝送レートの時間変化情報)を利用してQoS制御を行う技術として、例えば特許文献2、特許文献3などが挙げられる。ここで、新しいストリーム伝送要求に対して伝送路の帯域が不足する場合に、特許文献2においてはそのストリームの伝送開始時間を遅延させる方法、特許文献3においては伝送要求を拒否する方法が採られている。
しかし、家庭内での試聴を想定した場合、通信路の帯域不足に対しては一部のストリームのビットレートを低減させることによって再生装置でのバッファアンダーフローを防ぎ、再生の可用性や連続性を維持する方が好ましいことも多い。
特開2002−325094号公報
特開平9−130795号公報
特開平10−1070804号公報
上述した特許文献2、特許文献3には、複数の再生装置で再生すべきコンテンツに係るストリームを、それぞれ、分割単位毎に、時分割で、単一の伝送路を介して複数の再生装置に同時にリアルタイム送信することについての記載はない。
ストリームが上述したように可変ビットレートフォーマットで符号化されている場合、それぞれの分割単位の送信に要する時間はそのデータ量によって変動する。そのため、上述したように複数の再生装置に各ストリームを単一の伝送路を介して時分割送信する場合、複数のストリームの送信順序が固定的であると、バッファアンダーフローによる再生不良の発生頻度が高くなる。
この発明の目的は、複数のストリームを、それぞれ、分割単位毎に、時分割で、単一の伝送路を介して複数の再生装置に送信するものにあって、再生装置におけるバッファアンダーフローによる再生不良の発生頻度を低減することにある。
この発明の概念は、
それぞれ再生装置で再生すべきコンテンツに係る複数のストリームを記憶するデータ記憶部と、
上記データ記憶部に記憶されている複数のストリームを、それぞれ、分割単位毎に、時分割で、単一の伝送路を介して複数の再生装置に送信するデータ送信部と、
上記データ記憶部に記憶されている複数のストリームのそれぞれにおける上記分割単位毎の、少なくともデータサイズおよび再生時間を含むトラフィック情報を取得するトラフィック情報取得部と、
上記データ送信部の時分割送信における各分割単位の送信開始時刻を順次求め、上記トラフィック情報取得部で取得された上記複数のストリームのトラフィック情報に基づいて、それぞれの送信開始時刻に対応して、ストリーム毎に次の上記分割単位の送信猶予時間を推定し、該送信猶予時間が最も短いストリームを送信すべきストリームに決定するスケジューリング部と
を備えることを特徴とするサーバ装置にある。
それぞれ再生装置で再生すべきコンテンツに係る複数のストリームを記憶するデータ記憶部と、
上記データ記憶部に記憶されている複数のストリームを、それぞれ、分割単位毎に、時分割で、単一の伝送路を介して複数の再生装置に送信するデータ送信部と、
上記データ記憶部に記憶されている複数のストリームのそれぞれにおける上記分割単位毎の、少なくともデータサイズおよび再生時間を含むトラフィック情報を取得するトラフィック情報取得部と、
上記データ送信部の時分割送信における各分割単位の送信開始時刻を順次求め、上記トラフィック情報取得部で取得された上記複数のストリームのトラフィック情報に基づいて、それぞれの送信開始時刻に対応して、ストリーム毎に次の上記分割単位の送信猶予時間を推定し、該送信猶予時間が最も短いストリームを送信すべきストリームに決定するスケジューリング部と
を備えることを特徴とするサーバ装置にある。
この発明においては、それぞれ再生装置で再生すべきコンテンツ(動画、音声)に係る複数のストリームがデータ記憶部に記憶されている。このデータ記憶部に記憶されている複数のストリームは、それぞれ、分割単位毎に、時分割で、単一伝送路を介して複数の再生装置に同時にリアルタイム送信(ストリーミング)される。
トラフィック情報取得部で、複数のストリームのそれぞれにおける分割単位毎のトラフィック情報が取得される。このトラフィック情報には、少なくともデータサイズおよび再生時間が含まれている。上述した分割送信における各ストリームの送信順序は、それぞれのストリームにおける分割単位毎のトラフィック情報に基づいて決定される(スケジューリング)。
すなわち、各分割単位の送信開始時刻が順次求められる。この場合、所定の送信開始時刻の次の送信開始時刻は、この所定の送信開始時刻から送信される所定の分割単位のデータサイズおよび伝送路の伝送帯域に基づいて求められる。
それぞれの送信開始時刻に対応して、ストリーム毎に、次の分割単位の送信猶予時間が推定される。ここで、送信猶予時間は、送信開始時刻からΔtだけ経た時刻までに次の分割単位を再生装置に対して送信することを完了すれば、当該再生装置にバッファアンダーフローが起こらないと推定される場合に、上述のΔtの最大値をいう。
各送信開始時刻に対応し、上述したように推定された送信猶予時間が最も短いストリームが送信すべきストリームに決定される。このように送信時間が最も短いストリームが送信すべきストリームに決定され、スケジューリングが最適化されるので、再生装置におけるバッファアンダーフローによる再生不良の発生頻度を低減することが可能となる。
上述したように各送信開始時刻に対応して送信すべきストリームが決定されていくが、所定の送信開始時刻に対応して送信すべきストリームに決定された所定のストリームの送信猶予時間が、この所定の送信開始時刻から送信すべき分割単位の送信に要する時間より短くなることがある。この場合、そのままでは、当該分割単位が送信される再生装置では、バッファアンダーフローによる再生不良が発生することになる。
そこでこの場合、例えば、データ圧縮処理部で、所定の送信開始時刻およびこの所定の送信開始時刻より前の送信開始時刻から送信するように決定された各分割単位のうち所定の分割単位に対してデータ圧縮処理が行われる。これにより、所定の送信開始時刻に対応して送信すべきストリームに決定された所定のストリームの送信猶予時間を長くでき、バッファアンダーフローによる再生不良の発生を防止可能となる。
例えば、データ圧縮処理を行う所定の分割単位は1個または複数個であり、ストリーム毎、あるいは分割単位毎に与えられる重要度情報に基づいて選択される。この場合、重要度情報は、例えば、ユーザ設定に基づいて、伝送路または再生装置の仕様に基づいて、あるいはストリームの特徴を記述するメタデータに基づいて、さらにはユーザの嗜好情報に基づいて、生成される。
この発明によれば、複数のストリームを、それぞれ、分割単位毎に、時分割で、単一の伝送路を介して複数の再生装置に送信するものにあって、各分割単位の送信開始時刻に対応して、ストリーム毎に次の分割単位の送信猶予時間を推定し、この送信猶予時間が最も短いストリームを送信すべきストリームに決定するものであり、再生装置におけるバッファアンダーフローによる再生不良の発生頻度を低減できる。
以下、図面を参照しながら、この発明の実施の形態について説明する。図1は、実施の形態としてのコンテンツ配信システム10の構成を示している。このコンテンツ配信システム10は、サーバ装置100と、複数のテレビ等の再生装置200-1,200-2,・・・,200-Nと、これらサーバ装置100と複数の再生装置200-1,200-2,・・・,200-Nとを接続する単一の伝送路300とで構成されている。
サーバ装置100は、複数の再生装置200-1,200-2,・・・,200-Nで再生すべき、動画、音声等のコンテンツに係る複数のストリームを、それぞれ、フラグメント毎に、時分割で、伝送路300を介して、複数の再生装置200-1,200-2,・・・,200-Nに送信する機能を持つ。伝送路300は、例えば、IEEE 802.3やIEEE 802.11で構成される小規模なLANであって、TCP/IPベースの伝送を行う。
ここで、フラグメントはストリームの分割単位を構成している。本実施の形態において、フラグメントは、ストリームの再生時間軸上で分割される各時間部分であって、独立に再生かつ再圧縮(再符号化)できるデータ単位である。
このコンテンツ配信システム10においては、サーバ装置100から単一の伝送路300を介して、複数の再生装置200-1〜200-Nに、それぞれで再生すべきコンテンツに係るストリームが、同時にリアルタイム送信(ストリーミング)される。
サーバ装置100の詳細について説明する。このサーバ装置100は、図1に示すように、内部に、記憶装置101と、送信制御部102と、再生符号化部103と、ストリーム解析部104と、状態管理部105とを有している。ただし、実際のサーバ装置100は、複数の装置から構成される複合システムでもよい。
記憶装置101は、例えばHDDあるいは半導体メモリなどからなり、ストリームのデータ本体と、ストリームに関連するメタデータと、ストリームのトラフィック情報と、ストリームの重要度情報と、サーバ装置100が保持する状態情報等を蓄積する。トラフィック情報は、後述するように、フラグメント単位毎の情報であって、少なくともデータサイズおよび再生時間を含むものである。
ストリーム解析部104は、記憶装置101に蓄積された各ストリームをそれぞれ解析してフラグメント毎のトラフィック情報を生成し、それぞれのストリームに関連付けて記憶装置101に蓄積する機能を持つ。このストリーム解析部104は、トラフィック情報取得部を構成している。
トラフィック情報は、図2に示すように、ストリームを分割した各フラグメントのデータサイズL1,L2,L3,・・・と、このストリームに埋め込まれた再生時刻のタイムスタンプに基づく各フラグメントの再生時間T1,T2,T3,・・・からなる。等価な情報を容易に取得できれば、トラフィック情報の詳細な構成方法は任意である。
マルチメディアストリームの場合は、代表となるメディアを1つ選び、このメディアのタイムスタンプを参照する。例えばMPEG2 Videoのようにタイムスタンプとして復号時刻と表示時刻を持つ場合は表示時刻を用いるが、以下で説明する計算処理での補正のために両方とも保持してもよい。
各ストリームは、対応する再生時間範囲を単独で再生可能かつ再符号化可能となるように分割される必要がある。この条件を満たした上で、フラグメントのサイズがなるべく小さくなるように分割するのが望ましい。例えばMPEG2 Video ESを含むストリームの場合は、各フラグメントに1つのGOPが含まれるようにストリームを分割する。
送信制御部102は、記憶装置101に蓄積されたストリームを伝送路300に対して複数同時に送信する場合、送信処理の時分割制御(以後「スケジューリング」という)を行う。ここで、スケジューリング方法に対する伝送プロトコルによる制限は無いとする。例えばhttpプロトコルによる伝送はこの条件を満たす。この送信制御部102は、データ送信部およびスケジューリング部を構成している。
送信制御部102は、送信中の各ストリームについて、現時刻以降の任意の時刻tにおけるストリームの送信猶予時間Tdを推定する。ただし、時刻tまでに送信完了するデータサイズは与えられるものとする。送信制御部102は、時刻t+Tdまでに該ストリームの次のフラグメントを送信完了すれば、再生装置におけるバッファアンダーフローが発生しないと判断する。Tdの値を推定する方法は特に限定しないが、以下で1つの計算方法を説明する。
送信制御部102は、送信猶予時間Tdを計算するために、図3に示すように、送信中の各ストリームについて再生時刻Tpと再生可能時刻Trを推定する。再生時刻Tpは、サーバ装置100のローカル時刻tにおいて、再生装置で現に再生されている各ストリームの再生時刻である。
あるストリームの時刻tにおける再生時刻Tpは、Tp=R*(t−t0)の計算式で推定できる。ここで、t0は、このストリームの最初のフラグメントを再生装置に対して送信完了した時刻である。TCP/IPで送信する場合は、フラグメントを構成する全てのパケットについて再生装置からのACK(Acknowledgement)を確認した時点でのサーバ装置100のローカル時刻を計測して保持すればよい。
定数Rは、サーバ装置100と再生装置との間のクロックスキューを考慮した補正係数で、Tpが再生装置における真の再生時刻よりも遅くならないように適当な値を選ぶ。あるいは、再生装置から別途必要な情報を受信してクロックスキューを統計的に測定することにより定数Rを調節してもよい。通常、R=1+αとして、αはずれの最大、例えば10−5程度である。
再生可能時刻Trは、同じくサーバ装置100のローカル時刻tにおいて、各ストリームの送信済み部分により再生可能なこのストリームの最終時刻である。最終再生時刻は、時刻tまでに送信完了したこのストリームのトラフィック情報から容易に推定できる。
上述の方法で推定した再生時刻Tpおよび再生可能時刻Trより、時刻tにおけるこのストリームの送信猶予時間は、Td=Tr−Tpの計算式で求められる。
上述の方法で推定した再生時刻Tpおよび再生可能時刻Trより、時刻tにおけるこのストリームの送信猶予時間は、Td=Tr−Tpの計算式で求められる。
送信制御部102は、各フラグメントの送信に要する時間tsを予め推定する。このフラグメントのデータサイズをL、伝送路300の実効帯域をvとして、ts=L/vで求める。伝送路の実効帯域vは、ストリーム送信に利用可能な伝送路の帯域に関する予測値であり、例えば伝送済みのフラグメントに関する伝送時間の計測値などに基づいて適当に推定する。
送信制御部102のスケジューリングアルゴリズムを、図4のフローチャートを参照して、説明する。いま、複数のストリームを同時に送信しているとして、ストリームの番号をi(i=1,2,・・・)で表す。送信のスケジューリングは各ストリームのフラグメント単位で行うとして、その順序付けを、添字k(k=1,2,・・・)で表す。
まず、ステップST1で、上述の伝送路300の実効帯域vを推定する。そして、ステップST2で、1番目に送信するフラグメントの送信開始時刻(現在送信中のフラグメントの送信が完了する時刻)を推定し、それをt1とする。そして、ステップST3で、k=1、t=t1とおく。
次に、ステップST4で、各ストリームiについて、時刻tにおける送信猶予時間Td(t,i)を計算する。ただし、既に送信確定したフラグメントは送信済みとみなして計算する。そして、ステップST5で、Td(t,i)が最も少ないストリームを選び、i=ikとおく。複数該当する場合は適当な方法で1つだけを選ぶ。
次に、ステップST6で、ストリームikから送信待ちのフラグメントを選ぶ。そして、ステップST7で、当該フラグメントのデータサイズLと伝送路300の実効帯域vから当該フラグメントの送信に要する時間tsを上述の方法で推定する。そして、ステップST8でtsとストリームikに関する送信猶予時間Td(t,ik)とを比較する。
ここで、送信猶予時間Td(t,ik)が送信に要する時間tsより短いとき、つまりts>Td(t,ik)を満足するときは、当該フラグメントの送信が間に合わないことを意味しているので、ステップST9で、後述するデータ圧縮処理に移行する。一方、送信猶予時間Td(t,ik)が送信に要する時間ts以上であるとき、つまりts≦Td(t,ik)を満足するときは、当該フラグメントの送信が間に合うことを意味しているので、ステップST10で、当該フラグメントの送信を確定し、t=t+ts、k=k+1とおいて、ステップST4に戻る。以下、上述したと同様の手順を繰り返すことにより、任意の順序kまでスケジューリングを行うことができる。
フラグメントの送信に要する時間の推定値tsは実際の送信時間とは異なるため、理想的にはフラグメントを1つ送信完了するたびに改めてスケジューリングしなおすのが良い。
フラグメント単位での送信を便宜上仮定したが、送信途中で再生装置の受信バッファが一杯になると、実際はフラグメントの一部分を送信した時点で待ち時間が発生する場合がある。この問題に対しては適当なタイムアウト時間を設定することによって、当該フラグメントの送信を一時中断し、それ以外のストリームについて直ちにスケジューリングしなおして送信処理を続行する。
中断したフラグメントが属するストリームは、再生装置の受信バッファが空き次第,再度スケジューリング候補として復帰させる。Tdの計算において、部分的に送信完了しているフラグメントは再生不可能とみなしても良いし、トラフィック情報としてフラグメント内部の詳細な情報を持つことにより、送信済みのデータ部分による正確な再生可能時刻を計算してもよい。
上述のスケジューリングアルゴリズムのステップST8において、ts>Td(t,ik)が検出された場合、伝送路300の帯域不足が予測される。本実施の形態では、送信予定のフラグメントの中から一部(所定のフラグメント)を再圧縮(再符号化)することによって帯域不足を解消する。
いま、例えば3つのストリームA,B,Cを同時に送信しており、ストリームXのフラグメントをX1,X2,X3,・・・で表すとする。図5に示すように、現時刻においてフラグメントA1を送信中で、上述のスケジューリングアルゴリズムを実行することにより、以後の送信順序をB1,C1,A2,B2,・・・と決めていったとする。
計算過程で、各フラグメントの送信完了期限時刻と送信完了予定時刻が決まる。上述のアルゴリズムでのステップST8において、前者はt+Td、後者はt+tsであり、Tdとtsの比較は、期限時刻までに送信が完了するかどうかの判定に他ならない。
ここで、フラグメントA3の送信完了が期限時刻に間に合わないことが判明したとする。このとき、送信制御部102は、A3以前に送信予定のフラグメント(図5では、B1,C1,A2,B2,C2,A3)の中から一部を選択し、再符号化部103に対して当該フラグメントの再圧縮処理を要求する。勿論、送信開始時刻よりも以前に再圧縮処理が終るフラグメントを選択する必要がある。再符号化部103は、データ圧縮部を構成している。
仮に、図5に示すように、フラグメントC1,B2が再圧縮対象として選択されたとする。再符号化部103は、フラグメントC1,B2に対応するストリームデータおよび再符号化処理に必要な関連データ(例えば、前回の圧縮など)を記憶装置101から入力して、復号化および再符号化の処理を順次行うことで再圧縮を行い、再圧縮されたフラグメントC1′,B2′および再圧縮後のそれぞれのデータサイズなど関連データを送信制御部102に引き渡す。再圧縮されたフラグメントおよび関連データは、再符号化部103から送信制御部102に対して直接転送してもよいし、記憶装置101を経由してもよい。
送信制御部102は、再圧縮されたフラグメントC1′,B2′のデータサイズについて上述のトラフィック情報を修正し、改めてスケジューリングを行うことにより、フラグメントA3が送信完了期限時刻までに送信完了できることを確認する。ここで、再圧縮処理を行っている間にも送信処理が進行していることに注意する必要がある。例えば、図5に示したように、フラグメントA1の送信が完了し、その送信完了時刻は前回スケジューリング時の推定時刻からずれているかもしれない。このような場合、再圧縮処理を行う前のスケジューリング処理での計算値を再利用するのは好ましくない。
上述の再圧縮処理において、再圧縮可能な候補の中から実際に再圧縮するフラグメントを選択する基準が重要である。本実施の形態では、その選択基準として以下で説明する重要度情報を利用する。
重要度情報としては、ストリーム全体に対して付与されるストリーム重要度と、ストリームの各フラグメントに対して付与されるフラグメント重要度の二種類を考える。ストリーム重要度は、再圧縮候補として複数のストリームのフラグメントが含まれる場合に、なるべく再圧縮せずに残すべきストリームの優先度を表す数値である。フラグメント重要度は、同じストリーム重要度を持つフラグメントの間でなるべく再圧縮せずに残すべきフラグメントの優先度を表す数値である。
したがって、ストリーム重要度が最も低いストリームに属しており、かつフラグメント重要度が最も低いフラグメントから順番に再圧縮対象として選ばれる。この条件に該当するフラグメントが複数ある場合には適当な基準で選ぶ。重要度情報は、このストリームの再生中に動的に変化してもよい。その場合,再圧縮するフラグメントの選択を行うたびに最新の重要度情報を評価する必要がある。
ストリーム解析部104は、サーバ装置100が利用可能な任意の情報に基づいて重要度情報を生成できるが、以下では、特に記憶装置101に蓄積されたストリームデータ自体と、記憶装置101に蓄積されたこのストリームに関するメタデータと、状態管理部105が管理する状態情報を利用する場合について説明する。
状態管理部105は、サーバ装置100の動作設定、サーバ装置100が検出した伝送路300上の接続機器構成、再生装置200-1,200-2,・・・,200-Nとの通信によって取得した再生装置の状態情報などを管理しており、そのうち重要度情報を生成するために有用な情報をストリーム解析部104に提供する。特に有用な情報として、(a)ストリーム送信のQoSに関するユーザ設定、(b)画面の大きさや解像度等の再生装置の仕様、(c)分岐先の再生装置200-1,200-2,・・・,200-Nのそれぞれに対応した伝送路の仕様が挙げられる。
(a)のユーザ設定は、再生装置に対して静的な優先度が設定されている場合や、送信中のストリームに対して優先度が動的に設定される場合などが考えられる。(b)は再生装置のディスプレイが持つ解像度やフレームレートなど、該再生装置に対して送信するストリームの適切な品質(ビットレート)を判断するために有用な情報である。(c)は例えば理論上の最大伝送帯域や最小遅延時間など、当該伝送路に対して送信するストリームのビットレートを調節するために有用な伝送路の特性である。
ストリーム解析部104は、重要度情報を生成するために記憶装置101に蓄積されたこのストリームに関するメタデータを利用する。メタデータとはマルチメディアコンテンツの内容を特徴付けるデータであり、主にMPEG7規格が対象とするようなデータを想定するが、それに限定はしない。特に、メタデータとしてユーザの嗜好情報(サーバ装置100を利用するユーザがどのような内容のコンテンツを好むかに関する情報)を保持する場合、送信中の各ストリームまたは各フラグメントの内容を表すメタデータと、ストリームまたはフラグメントを視聴しているユーザの嗜好情報の両方に基づいて重要度情報を生成する。
ユーザの嗜好情報は、例えばコンテンツの嗜好に関するユーザ設定およびユーザによる過去のコンテンツの操作履歴から生成される。コンテンツの操作とは、録画予約、再生、削除、リムーバブルディスクへのコピーなどを指す。
重要度情報を生成するためのメタデータとしては、コンテンツに付随して(ストリームに埋め込まれて)配信されるもの、放送やインターネットサーバなどで別途配信されるものの他に、サーバ装置100の内部で生成されたものも利用する。特に、ストリーム解析部104は、いわゆるパターン認識(音声認識・画像認識・自然言語処理など)の技術を用いた特徴抽出機能を備えており、記憶装置101に蓄積されたストリームのメディアデータを解析することにより、このストリームに関するメタデータを自動生成する機能を持つ。例えばスポーツ番組のハイライトシーン検出などはこの機能に該当し、検出されたハイライトシーンに属するこのストリームのフラグメントには高い重要度を付加するなどの応用が考えられる。
図1に示すコンテンツ配信システム10の動作を説明する。サーバ装置100では、送信制御部102によって、記憶装置101に記憶されている複数のストリームが、それぞれ、フラグメント毎に、時分割で、単一の伝送路300を介して、再生装置200-1〜200-Nに、同時にリアルタイム送信される。
この場合、送信制御部102では、各ストリームのフラグメント毎のトラフィック情報に基づいて、時分割送信における各ストリームの送信順序が、スケジューリングアルゴリズム(図4参照)により、決定される。ここで、トラフィック情報は、少なくともデータサイズおよび再生時間が含まれ、予めストリーム解析部104により取得される。
スケジューリングアルゴリズムでは、各フラグメントの送信開始時刻が順次求められる。この場合、所定の送信開始時刻の次の送信開始時刻は、この所定の送信開始時刻から送信されるフラグメントのデータサイズおよび伝送路300の伝送帯域に基づいて求められる。そして、それぞれの送信開始時刻に対応して、ストリーム毎に、次のフラグメントの送信猶予時間が、トラフィック情報に基づいて推定され、最も短いストリームが、当該送信開始時刻から送信すべきストリームに決定される。
また、各送信開始時刻に対応して送信すべきストリームが決定されていくが、所定の送信開始時刻に対応して送信すべきストリームに決定された所定のストリームの送信猶予時間が、この所定の送信開始時刻から送信すべきフラグメントの送信に要する時間より短くなるときは、その所定の送信開始時刻およびこの所定の送信開始時刻より前の送信開始時刻から送信するように決定された各フラグメントのうち所定のフラグメントに対して、再符号化部103でデータ圧縮処理が行われてデータ量が低減される。
この場合、所定のフラグメントの選択は、ストリーム毎、あるいはフラグメント毎に付与される重要度情報に基づいて行われる。これにより、重要なコンテンツの画像、あるいは重要な箇所の画像がデータ圧縮によって、その画質が低下することを回避できる。
図1に示すコンテンツ配信システム10によれば、複数のストリームを、それぞれ、フラグメント毎に、時分割で、単一の伝送路300を介して複数の再生装置200-1〜200-Nに送信するものにあって、各フラグメントの送信開始時刻に対応して、ストリーム毎に次のフラグメントの送信猶予時間を推定し、この送信猶予時間が最も短いストリームを送信すべきストリームに決定するものであり、このスケジューリングの最適化により、再生装置におけるバッファアンダーフローによる再生不良の発生頻度を低減できる。
また、この図1に示すコンテンツ配信システム10によれば、スケジューリングの最適化によっても解消できない伝送路300の帯域不足を事前に検出し、ストリームの一部を直前に再圧縮して送信するものであり、帯域不足による再生不良の発生を防止できる。ただし、ストリーミングのQoSに関するユーザ設定、再生装置や伝送路の仕様、ストリームの特徴を記述するメタデータ、ユーザの嗜好情報などに基づきサーバ装置100の内部で予め生成されたストリームの重要度情報を利用して再圧縮するストリーム部分を選択するものであり、ユーザにとって重要なストリーム部分の再生品質を極力維持することができる。
なお、上述の実施の形態では説明していないが、ストリームを送信できるサーバ装置が同一の伝送路上に複数接続されており、それぞれのサーバ装置が同時にストリームの送信を行う状況が考えられる。この場合、上述のスケジューリングアルゴリズムにおいて、伝送路の実効帯域vの推定が難しくなる。
複数のサーバ装置の間で伝送路の帯域が分割利用されるが、あるサーバ装置が利用できる実効帯域vは、他のサーバ装置の動作状況(ストリームの送信状況)に依存して激しく変動する可能性があるためである。この問題を解決する1つの方法として、サーバ装置100は、同一伝送路上に同種のサーバ装置が接続されていることを検出した場合、各サーバ装置の送信制御部が相互に通信することによって連携動作を行う機能を持つ。特に、上述のトラフィック情報および重要度情報を互いに共有することにより、各サーバ装置は、伝送路上で送信されている全てのストリームに関する制御情報を考慮して最適なスケジューリング処理と再圧縮処理を行うことができる。
この発明は、再生装置におけるバッファアンダーフローによる再生不良の発生頻度を低減でき、互いにネットワーク接続されたデジタル機器の間で複数のAVストリームを同時にリアルタイム送信(ストリーミング)するコンテンツ配信システム等に適用できる。
10・・・コンテンツ配信システム、100・・・サーバ装置、101・・・記憶装置、102・・・送信制御部、103・・・再符号化部、104・・・ストリーム解析部、105・・・状態管理部、200-1〜100-N・・・再生装置、300・・・伝送路
Claims (10)
- それぞれ再生装置で再生すべきコンテンツに係る複数のストリームを記憶するデータ記憶部と、
上記データ記憶部に記憶されている複数のストリームを、それぞれ、分割単位毎に、時分割で、単一の伝送路を介して複数の再生装置に送信するデータ送信部と、
上記データ記憶部に記憶されている複数のストリームのそれぞれにおける上記分割単位毎の、少なくともデータサイズおよび再生時間を含むトラフィック情報を取得するトラフィック情報取得部と、
上記データ送信部の時分割送信における各分割単位の送信開始時刻を順次求め、上記トラフィック情報取得部で取得された上記複数のストリームのトラフィック情報に基づいて、それぞれの送信開始時刻に対応して、ストリーム毎に次の上記分割単位の送信猶予時間を推定し、該送信猶予時間が最も短いストリームを送信すべきストリームに決定するスケジューリング部と
を備えることを特徴とするサーバ装置。 - 上記スケジューリング部は、
所定の送信開始時刻の次の送信開始時刻を、該所定の送信開始時刻から送信される所定の分割単位のデータサイズおよび上記伝送路の伝送帯域に基づいて求める
ことを特徴とする請求項1に記載のサーバ装置。 - 上記スケジューリング部で所定の送信開始時刻に対応して送信すべきストリームに決定された所定のストリームの送信猶予時間が、該所定の送信開始時刻から送信すべき分割単位の送信に要する時間より短いとき、上記所定の送信開始時刻および該所定の送信開始時刻より前の送信開始時刻から送信するように決定された各分割単位のうち所定の分割単位に対してデータ圧縮処理を行うデータ圧縮部をさらに備える
ことを特徴とする請求項1に記載のサーバ装置。 - 上記データ圧縮部は、上記ストリーム毎、あるいは上記分割単位毎に与えられる重要度情報に基づいて、上記データ圧縮処理を行う所定の分割単位を選択する
ことを特徴とする請求項3に記載のサーバ装置。 - 上記重要度情報は、ユーザ設定に基づいて生成される
ことを特徴とする請求項4に記載のサーバ装置。 - 上記重要度情報は、上記伝送路または上記再生装置の仕様に基づいて生成される
ことを特徴とする請求項4に記載のサーバ装置。 - 上記重要度情報は、上記ストリームの特徴を記述するメタデータに基づいて生成される
ことを特徴とする請求項4に記載のサーバ装置。 - 上記重要度情報は、ユーザの嗜好情報に基づいて生成される
ことを特徴とする請求項4に記載のサーバ装置。 - データ記憶部に記憶されているそれぞれ再生装置で再生すべきコンテンツに係る複数のストリームを、それぞれ、分割単位毎に、時分割で、単一の伝送路を介して複数の再生装置に送信する際の上記複数のストリームの送信順序を決定する方法であって、
上記データ記憶部に記憶されている複数のストリームのそれぞれにおける上記分割単位毎の、少なくともデータサイズおよび再生時間を含むトラフィック情報を取得するトラフィック情報取得ステップと、
上記時分割送信における各分割単位の送信開始時刻を順次求め、上記トラフィック情報取得ステップで取得された上記複数のストリームのトラフィック情報に基づいて、それぞれの送信開始時刻に対応して、ストリーム毎に次の上記分割単位の送信猶予時間を推定し、該送信猶予時間が最も短いストリームを送信すべきストリームに決定する送信順序決定ステップと
を備えることを特徴とする送信順序決定方法。 - 複数の再生装置と、
単一の伝送路と、
上記複数の再生装置に、上記単一の伝送路を介して、それぞれ、再生コンテンツに係る複数のストリームを同時にリアルタイム送信するサーバ装置とを備えるコンテンツ配信システムであって、
上記サーバ装置は、
上記複数のストリームを記憶するデータ記憶部と、
上記データ記憶部に記憶されている複数のストリームを、それぞれ、分割単位毎に、時分割で、上記単一の伝送路を介して複数の再生装置に送信するデータ送信部と、
上記データ記憶部に記憶されている複数のストリームのそれぞれにおける上記分割単位毎の、少なくともデータサイズおよび再生時間を含むトラフィック情報を取得するトラフィック情報取得部と、
上記データ送信部の時分割送信における各分割単位の送信開始時刻を順次求め、上記トラフィック情報取得部で取得された上記複数のストリームのトラフィック情報に基づいて、それぞれの送信開始時刻に対応して、ストリーム毎に次の上記分割単位の送信猶予時間を推定し、該送信猶予時間が最も短いストリームを送信すべきストリームに決定するスケジューリング部とを有する
ことを特徴とするコンテンツ配信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006146221A JP2007318470A (ja) | 2006-05-26 | 2006-05-26 | サーバ装置、送信順序決定方法およびコンテンツ配信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006146221A JP2007318470A (ja) | 2006-05-26 | 2006-05-26 | サーバ装置、送信順序決定方法およびコンテンツ配信システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007318470A true JP2007318470A (ja) | 2007-12-06 |
Family
ID=38851931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006146221A Pending JP2007318470A (ja) | 2006-05-26 | 2006-05-26 | サーバ装置、送信順序決定方法およびコンテンツ配信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007318470A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009104410A (ja) * | 2007-10-23 | 2009-05-14 | Sony Corp | データ記録装置,データ記録装置の内部制御方法及びデータ記録システム |
JP2010232832A (ja) * | 2009-03-26 | 2010-10-14 | Fujitsu Ltd | コンテンツ配信サーバ装置 |
JP2013502781A (ja) * | 2009-08-21 | 2013-01-24 | ザ チャイニーズ ユニバーシティー オブ ホンコン | メディアデータの転送時間をスケジューリングするための装置及び方法 |
JP2013214799A (ja) * | 2012-03-30 | 2013-10-17 | Ntt Communications Kk | ストリーミングメディア再生装置、メディアビットレート変更判定方法、及びプログラム |
WO2016080428A1 (ja) * | 2014-11-19 | 2016-05-26 | 日本電気株式会社 | 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000078188A (ja) * | 1998-06-19 | 2000-03-14 | Nippon Telegr & Teleph Corp <Ntt> | 優先経路制御方法及びルータ装置 |
JP2001144720A (ja) * | 1999-11-18 | 2001-05-25 | Sony Corp | 多重化装置および方法、並びに記録媒体 |
JP2002314610A (ja) * | 2001-04-18 | 2002-10-25 | Nippon Telegr & Teleph Corp <Ntt> | 情報配信方法及び装置及び情報配信プログラム及び情報配信プログラムを格納した記憶媒体 |
JP2003299056A (ja) * | 2002-03-29 | 2003-10-17 | Canon Inc | 映像処理装置、映像配信システム、映像処理方法、プログラム及び記録媒体 |
-
2006
- 2006-05-26 JP JP2006146221A patent/JP2007318470A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000078188A (ja) * | 1998-06-19 | 2000-03-14 | Nippon Telegr & Teleph Corp <Ntt> | 優先経路制御方法及びルータ装置 |
JP2001144720A (ja) * | 1999-11-18 | 2001-05-25 | Sony Corp | 多重化装置および方法、並びに記録媒体 |
JP2002314610A (ja) * | 2001-04-18 | 2002-10-25 | Nippon Telegr & Teleph Corp <Ntt> | 情報配信方法及び装置及び情報配信プログラム及び情報配信プログラムを格納した記憶媒体 |
JP2003299056A (ja) * | 2002-03-29 | 2003-10-17 | Canon Inc | 映像処理装置、映像配信システム、映像処理方法、プログラム及び記録媒体 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009104410A (ja) * | 2007-10-23 | 2009-05-14 | Sony Corp | データ記録装置,データ記録装置の内部制御方法及びデータ記録システム |
JP2010232832A (ja) * | 2009-03-26 | 2010-10-14 | Fujitsu Ltd | コンテンツ配信サーバ装置 |
JP2013502781A (ja) * | 2009-08-21 | 2013-01-24 | ザ チャイニーズ ユニバーシティー オブ ホンコン | メディアデータの転送時間をスケジューリングするための装置及び方法 |
JP2013214799A (ja) * | 2012-03-30 | 2013-10-17 | Ntt Communications Kk | ストリーミングメディア再生装置、メディアビットレート変更判定方法、及びプログラム |
WO2016080428A1 (ja) * | 2014-11-19 | 2016-05-26 | 日本電気株式会社 | 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム |
JPWO2016080428A1 (ja) * | 2014-11-19 | 2017-08-17 | 日本電気株式会社 | 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム |
US10372632B2 (en) | 2014-11-19 | 2019-08-06 | Nec Corporation | Information processing system, information processing method and information processing device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7693155B2 (en) | Method and system for transmitting streaming data | |
US7668170B2 (en) | Adaptive packet transmission with explicit deadline adjustment | |
US10277532B2 (en) | Quality management of media encoding for multiple client devices | |
JP4857379B2 (ja) | ストリーミングデータのサービス品質を強化するための予測的フレームドロッピング | |
US9191664B2 (en) | Adaptive bitrate management for streaming media over packet networks | |
US20180035140A1 (en) | Dynamic programming across multiple streams | |
US8474001B2 (en) | Near real time delivery of variable bit rate media streams | |
KR101716071B1 (ko) | 적응적 스트리밍 기법 | |
US7652994B2 (en) | Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels | |
US20130294747A1 (en) | Content playing device, content playing method, distribution system, content playing program, recording medium, and data structure | |
US20240007684A1 (en) | Systems and methods for selecting an initial streaming bitrate | |
US20090295988A1 (en) | Transmission apparatus, transmission method, and reception apparatus | |
JP2007184913A (ja) | 無線ビデオ送信システム | |
KR20150042191A (ko) | 적응적 비트레이트 스트리밍에서 대역폭 할당을 위한 방법들 및 디바이스들 | |
CN105684390B (zh) | 用于为自适应流传输客户端预留带宽的方法和设备 | |
WO2008108379A1 (ja) | メディア配信システム、配信サーバ装置及びそれらに用いるメディア配信方法並びにそのプログラム | |
JP2009049529A (ja) | 通信制御装置、通信制御方法、及びコンピュータプログラム | |
US8873590B2 (en) | Apparatus and method for correcting jitter | |
WO2012011490A1 (ja) | コンテンツ取得装置、コンテンツ送信装置、コンテンツ送受信システム、データ構造、制御方法、制御プログラム、及び記録媒体 | |
WO2013094118A1 (ja) | コンテンツ配信システム | |
JP2016059037A (ja) | 少なくとも2つの連続するセグメントに分離されたマルチメディアコンテンツを受信するための方法およびクライアント端末、ならびに対応するコンピュータプログラム製品およびコンピュータ可読媒体 | |
JP2007318470A (ja) | サーバ装置、送信順序決定方法およびコンテンツ配信システム | |
Baik et al. | VSync: Cloud based video streaming service for mobile devices | |
JP2011061533A (ja) | コンテンツ配信システム、体感品質推定装置、方法、及び、プログラム | |
US20100027428A1 (en) | Scheduling method of providing multimedia service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090312 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110111 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110705 |