JP5265766B2 - 仮想fecデコーダ及びデコーディング制御のための信号方式 - Google Patents

仮想fecデコーダ及びデコーディング制御のための信号方式 Download PDF

Info

Publication number
JP5265766B2
JP5265766B2 JP2011513714A JP2011513714A JP5265766B2 JP 5265766 B2 JP5265766 B2 JP 5265766B2 JP 2011513714 A JP2011513714 A JP 2011513714A JP 2011513714 A JP2011513714 A JP 2011513714A JP 5265766 B2 JP5265766 B2 JP 5265766B2
Authority
JP
Japan
Prior art keywords
fec
decoder
time
receiver
stream
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.)
Expired - Fee Related
Application number
JP2011513714A
Other languages
English (en)
Other versions
JP2011524698A (ja
Inventor
ストックハンマー、トマス
ルビー、マイケル・ジー.
Original Assignee
デジタル ファウンテン, インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by デジタル ファウンテン, インコーポレイテッド filed Critical デジタル ファウンテン, インコーポレイテッド
Publication of JP2011524698A publication Critical patent/JP2011524698A/ja
Application granted granted Critical
Publication of JP5265766B2 publication Critical patent/JP5265766B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2789Interleaver providing variable interleaving, e.g. variable block sizes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

関連出願のクロス・リファレンス
本開示は、以下の本発明の譲受人に譲渡された出願//特許と関係し得る。
この出願は、「仮想FECデコーダ及び初期デコーディング」と題され、2008年6月12に出願された同時係属中の米国仮特許出願61/061,073号の優先権を主張し、全ての目的のために、あたかもこの文書に全て示されているかのように、それは参照によってここによって組み込まれる。
米国特許出願11/226,919(現在は米国特許7,233,264)も参照によって組込まれる。
「前方誤り訂正(FEC)エンコード及びストリーミング」と題された米国特許出願11/423,391も参照によって組込まれる。
これらの出願/特許の各々の開示は、すべての目的のために、それらの全体の参照によって、ここに組み入れられる。
本発明は、一般にはメディア提供、そして特にストリーミング・メディアを伝達するトランスミッターとデコーディング処理で使用するレシーバーに信号を送信するデコーディングに関する。
パケット・ストリームを産出するメディア・サーバーを想定する。パケット・ストリームは、各パケットとある正確な相対的タイミングに関連付けされている。この正確な相対的タイミングは、レシーバーでメディア・クライアントに転送されるパケット・ストリームが復元される前に、レシーバーで復元される必要がある。例えば、固定ビットレートは維持される必要があるかもしれない。
パケット・ストリームに加えて、FECデコーダによって生成されるあるパリティ・データが送られるかもしれない。FECが適用される場合、エンコーダは、修理データを生成するためにある量のパケットを格納する。そのための修理データが生成されるデータの収集は、ソース・ブロックと呼ばれる。
ストレージの持続時間だけでなくソース・ブロックを生成するために保存されるデータ量もフレキシブルかもしれない。
さらに、データとFECデータを多重送信し、それからそれらをチャネルによって送信する、それはパケットのうちいくつかを失うかもしれない、マルチプレクサにメディア・パケットが転送される前に、あるソース・ブロックからのメディア・パケットが他のソース・ブロックからのパケットにインタリーブされるかもしれない。さらに、データ・パケットの送出順序は、FECエンコードプロセスによって変更されるかもしれない。
各パケットが各ソース・ブロックでの位置だけでなくソース・ブロック・ナンバーとタイプを確認するために十分な情報を持っていると想定する。
そのような手続きがされる場合があるいくつかの例:
− アプリケーション・レイヤFEC[3GPP TS26.346]によるMBSストリーミング配信、ここで、UDPペイロードのフレキシブルな量は、シングル・ソース・ブロックに挿入することができる。
− IPTVにおけるアプリケーション・レイヤFEC、例えばDVB−IPTV[ETSI TS102 034 v1.3.1]、アネックスE
− ドキュメントDVB TM−…に規定されるラプター符号又はリード・ソロモン符号と共に使用される、DVB−SHにおけるMPE−IFEC
− ドラフトETSI EN XXXXXX.で規定されるDVB−RCSにおけるリンク・レイヤFEC
− …の使用を伴うTIA−1099、メディアフロー(MediaFlo)
− 他のもの
レシーバーでは、FECデコーダは、あるソース・ブロックから受信したソースと修理データを集めて、ソース・ブロックのソース・パケットを復元するためにこの情報を使用する。
損失から回復するために生成されたFEC修理パケットを使用するデコーダでは、デコーダは、受信したデータ・パケット及び修理パケットを格納する。デコーダが十分に長く待っている場合のみ、あるソース・ブロックと関連する全ての修復パケット及び全てのデータが受信されるようにするため、送信されている情報を最良に使用していることをデコーダは保証することができる。さらに、FECデコーダは、それがソース・データの相対的タイミングを復元したことを確かめるべきである。
これが起こることを保証するために、そのような情報を利用するデコーダは、次を必要とする:
− デコーダで、あるソース・ブロックのパケットをバッファリングしなければならない最大時間
− 全ての受信したソース及び修理データを格納することができることを保証する十分なストレージ
トランスミッターは、デコーダに信号を送信するか、そうでなければ、デコーダは、次の2つの値で予め設定される:
− 初期バッファリング遅れ 最小バッファ時間(min-buffer-time)
− 最大のバッファ・サイズ(maximum buffer size) 最大バッファ・サイズ(max-buffer-size)
FECデコーダは、それから、ストリームを得た後に以下のように動作する:最初のデータ・パケットの受信とともに、それは、正確な最小バッファ時間のためにFECデコーダでデータ・パケットを格納し、このソース・ブロックでソース・パケットを回復することを試みるために、このソース・ブロックのために受信した全てのデータを考慮する。デコーディングに成功したかどうかにかかわらず、FECデコーダは、最小バッファ時間の後に最初の受信データ・パケットを放出し、それから、メディア・クライアントへのさらなるデータ・パケットの放出について厳格なタイミングを維持する。そうすることによって、FECデコーダは、次を確信する。
− それは、すべての将来のパケットに対し厳格なタイミングを遂行することができる。
− その最大バッファ・サイズは、受け取られたすべてのデータ・パケットを処理するのに十分である。
したがって、それのFEC符号化演算、遅延、インタリーブ、及び多重伝送のオペレーションは、上記のアクションを実行することによって、デコーダがタスクを完了することができるようなものであることを保証することは、送信器の任務である。
上記の観点からのデコーダ・アクションは、「仮想FECデコーダ」と呼ばれ、また、トランスミッターは、パラメータ(最小バッファ時間、最大バッファ・サイズ)を持つ仮想FECデコーダによって、送信されたソース+FECストリームを処理することができ、アウトゴーイング(outgoing)・ストリームは、オリジナルのメディア・ストリームと同じ厳格な相対的タイミングを持つことができ、パケットが失われないことを保証する。
FECを使用してエンコードされたメディア・ストリームをトランスミッターがレシーバーに送信する通信システムは、前記トランスミッターでエンコードされた前記メディア・ストリームをデコードするための、前記トランスミッターにある少なくとも1つの仮想FECデコーダを含んでいる。トランスミッターは、少なくとも1つの仮想FECデコーダの出力が与えられるレシーバーに何の最適化信号を供給するかを決定し、これらの最適化信号をレシーバーに送信する。最適化信号は、メディア消費量の減速、可変のバッファリング・パラメーターの指示、および/またはFEC及びソースのデータ順序の指示を含みうる。
添付の図面とともに以下の詳細な説明は、本質のよりよい理解と本発明の利点を提供する。
従来の通信システムを示すブロック図。 仮想のデコーダを使用する従来の通信システムを示すブロック図。 デコーダに与えるためのデコーディング最適化信号を決定するための複数の仮想のデコーダをトランスミッターが使用する通信システムを示すブロック図。 DVB−Hデコーディングを示すブロック図。 DVB−SHデコーディングを示すブロック図。
改良された通信システムをここに述べる。このシステムでは、トランスミッターは、デコーダのパフォーマンスを評価し、かつそのためにデコーダ最適化パラメータを決定するために仮想のデコーダを使用し、それらは、メディア・ストリームとともに、その後デコーダに伝えられ、メディア・ストリームをデコードし、かつそれをするためにデコーダによって使用される。
従来の「仮想FECデコーダ」システムでは、データ・ストリームは、前方誤り訂正を使用してトランスミッターでエンコードされ、例えば、最小のバッファ時間(最小バッファ時間)及び最大のバッファ・サイズ(最大バッファ・サイズ)を考慮して、個々のストリームを正常にデコードできるのであれば、それがデコードする方法をトランスミッターが知るように、それは仮想FECデコーダを通過する。そのような仮想FECデコーダの一例は、3GPP TS26.346、節8.2.2.11で規定される。
オペレーションでは、一度、レシーバーは、新しいストリーム(例えば、新しいチャネルを聴き始めるなど)にアクセスし、そのFECデコーダを使用してストリームの処理を開始し、レシーバーは、レシーバー又はレシーバーの一部とつながれたメディア・クライアントにストリームを再生、転送することによるような、メディア・ストリームの消費量を考慮する前に、最初のソース・パケットを受信した後、少なくとも最小バッファ時間、待機する必要がある。従って、メディア・ストリームは、その上にメディア・デコーダによって処理される必要があるので、最初のメディア、例えば、ビデオ・フレームやオーディオ・サンプル、がユーザーに提示されるまでの時間は、少なくとも最小バッファ時間である。これは、ユーザーの意識にマイナスの影響を及ぼし、多くの場合に許容できないと、特に、良い多様性を与えるために最小バッファ時間が大きくされるシステムでは、考えられるかもしれない。
デコーダは、最小バッファ時間未満で最初のパケットをバッファに移すことを決定しうる、その場合には、チャネル・スイッチング・時間遅延は、縮小することができるが、デコーダは、将来の滑らかな表示のためには、この決定の帰結を、考えていないかもしれない。デコーダは送信されたFECパケットを使用することができないか、又は、厳格なタイミングを保証するのに遅れずに、ソース・パケットがFECデコーダから開放できないかもしれない。
パフォーマンスを改善するためのいくつかの解決法を以下に述べる。これらの解決法のうちのいくつかは、上記の信号方式の構造でも可能であるが、エンコーダまたはデコーダでの実行を必要とする。他の解決法は、デコーダでの必要な動作に適した規定を伴う新しい信号方式を加える。いくつかの見地では、初期のバッファリングで上記命令に従ういくつかのレシーバー(従来のレシーバーと呼ばれるもの)の場合、それらのレシーバーの共存としても扱うが、他の複数のレシーバーは、従来のレシーバーで無視されるストリームを伴ういくつかの追加のメタデータにより、受信したソース+FECストリームを別々に処理しうる。与えられたエンコード/デコードは、これらの解決法又は解決法の組合せを使用しうる。
解決法1:より少ない初期のバッファリング及びプレイアウトの減速
例えば、早期デコーディング時間及びそれ以上のある時間後に最小バッファ時間を満たすことのできる手段の適用によって、デコーダは、早めに最初のメディア・パケットを放出するためのいくつかの動作を適用するための決定をしうる。
初めのうちは1つのソース・ブロック中のすべてのデータをリカバリに使用することができるとは限らないかもしれない。しかしながら、例えば、ある比率だけメディア・ペイロードを減速することによって、この減速、一定のプレイアウト、及び継続によって、ある時間後最小バッファ時間早期デコーディング時間の残り時間が得られることを保証することができ、ソース・ブロックに対応する全てのデータは、この時間中から存在する。
しかしながら、あるコンテンツについてはデコーダがこれらの動作をとるエンコーダは望まないかもしれない。例えば、音楽のようなあるメディア・コンテンツについては、減速は受け入れ難い印象があるかもしれないし、また、トランスミッターは、デコーダにこれをさせないようにしてもよいし、又は、最大減速の比率を設定してもよい。
これについては、トランスミッターは、次に規定するセットアップ中のいくつかの追加のメタデータを追加しうる:
− 減速が使用されるのであれば最小初期バッファ遅延、最小バッファ時間減速
− コンテンツの最大減速、最大減速比率
2つの値のうちの1つだけが使用されうる。それから、早期のプレイアウト及び減速をサポートするレシーバーは、それから少なくとも最小バッファ時間減速待機し、規定されていれば、多く最大減速比率だけメディア・プレイアウトを減速しうる。
解決法2:ランダム・アクセス・ポイントの異なる最小バッファ時間
一般に、ストリームのプレイアウトを始めるためのメディア・デコーダは、ストリームのランダム・アクセス・ポイントを要求する。ランダム・アクセス・ポイントは、H.264/AVCのインスタント・デコーダ・リフレッシュ(Instantaneous Decoder Refresh)・ポイント及びストリームをデコーディングし始めるために必要な他の情報に含まれうる。全てのランダム・アクセス・ポイント(RAP)のための最小バッファ時間は、セットアップで設定されるような全てのパケットのための一般の最小バッファ時間よりも少なくてもよい。
したがって、どのランダム・アクセス・ポイントがアクセスされた場合でも、最小のバッファ時間最小バッファ時間ラップを設定する追加のシグナリングが加えられうる。これで追加されうるシグナリングとレシーバー認識メッセージは、最小バッファ時間の代わりにこのバッファ時間最小バッファ時間ラップを使用することができる。ともかく、エンコーダは、送信されたソース+FECストリームがこのプロパティを満たすことを確認しなければならない。
更なる方法では、最小バッファ時間は、RAPアクセス・ポイントのために適用する一般的な値でなくてもよいが、メタデータは、RAPについては初期バッファ時間がより低くなるように、個別の最小バッファ時間ラップXで、各RAPと共に送られうる。
両方の方法ともに、送信側のデータの再オーダリング(reordering)によって、サポートされうる。例えば、ソース・データは、送信器で遅れ、FECデータは、以前に送られるかこのソース・ブロックにあるソース・データと共にインタリーブされる。
解決法3:異なる初期クオリティのための異なる最小バッファ時間
更に、最も重要なデータが非常に遅れて送られる方法で、ソース・データは、送られうる。そして、このソース・ブロックの中のより重要でないデータが早く送られる。この場合、いつかの最小バッファ時間の値は、スイッチングの後に、異なるクオリティと共におのおの設定されうる。従って、シングル・ソース+FECストリーム、又は、各ランダム・アクセス・ポイントでさえ、デコーダで別々に処理されうる。そして、初期バッファ時間とスイッチング後の初期クオリティは、レシーバーにより決定されうる。
例えば、トランスミッターは同時に信号を送信しうる。
− 低スイッチング・クオリティを示す最小バッファ時間低クオリティ、例えば、暫くの間オーディオを再生するのみや暫くの間低クオリティ・フレームを見せる場合。
− ある中間のクオリティを示す最小バッファ時間中クオリティ、例えば、最初にある低減されたプレイアウト・フレーム・レートの状態
− FECが初期に必要とされない場合の初期バッファ時間を示す最小バッファ時間noFEC、例えば、FECは、ソース・データの前に送られているからである。
− 上述に示されるような従来の時間 最小バッファ時間
レシーバーは、何人かのユーザーの好み、ある受信状態、又は他のレシーバー内部情報により適切な値を選択したものでもよい。
これらの値は、ストリーム全体のために再び一般的でもよいし、ランダム・アクセス・ポイントごとに特定されたものでもよい。
どんな場合も、エンコーダは、ストリームが指示された値に適合することを確かめるべきである。
使い方
上記の技術はジッタ・フリーのプレイバックを提供するためにDVB−H又はDVB−SHで使用されうる。従来のレシーバーの場合は、トランスミッターが、時間分割された基本ストリームが最大のMDBバッファ・サイズを超えないようにすることを適正に保証するべきである。しかしながら、レシーバーは、最小バッファ時間が知らされたことを解釈することができる場合、それは経験を最適化するために使用されうる。トランスミッターは、1つのストリームの間でさえ時々変化しうる最大バッファ・サイズと、変化しうる最小バッファ時間を信号で送る。これらの最適化信号は、仮想FECデコーダで決定されうる。ある最適化選択について効果があるかもしれない時間の前に、レシーバーのデコーダは、伝えうるため、各仮想FECデコーダは、異なる最適化を使用して実行されうる。事実上、トランスミッターは、“もし、こちらからそちらに送信するストリームを最適化手法Aを使用してデコードするのであれば、そちらはサイズSのバッファに備え、バッファ時間Tによって消費を遅らせれば、そちらは満足行くであろう”と、レシーバーに言うことができ、トランスミッターは、1以上の手法のために、その仮想FECデコーダを使用しているため、トランスミッターは、手法A用のS及びTの値を知るであろう。
この情報は、セッション記述プロトコル(SDP)ブロックのレシーバーに伝達しうる。従来のSDPの一例は次のとおりである:
v=0
o=ghost 2890844526 2890842807 IN IP6 2001:210:1:2:240:96FF:FE25:8EC9
s=3GPP MBMS Streaming FEC SDP Example
i=Example of MBMS streaming SDP file
u=http://www.infoserver.example.com/ae600
e=ghost@mailserver.example.com
c=IN IP6 FF1E:03AD::7F2E:172A:1E24
t=3034423619 3042462419
b=AS:15
a=FEC-declaration:0 encoding-id=1
a=FEC-OTI-extension:0 ACAEAA==
a=mbms-repair: 0 min-buffer-time=2600
a=source-filter: incl IN IP6 * 2001:210:1:2:240:96FF:FE25:8EC9
m=application 4006 UDP/MBMS-REPAIR *
b=AS:15
a=FEC:0
a=mbms-flowid: 1=FF1E:03AD::7F2E:172A:1E24/4002, 2=FF1E:03AD::7F2E:172A:1E24/4003, 3=FF1E:03AD::7F2E:172A:1E24/4004, 4=FF1E:03AD::7F2E:172A:1E24/4005, 5=FF1E:03AD::7F2E:172A:1E24/2269
デコーダ最適化シグナリングを扱うSDPはこのように見えるかもしれない:
解決法1のためのSDPの例:メディア・プレイアウトの減速
v=0
o=ghost 2890844526 2890842807 IN IP6 2001:210:1:2:240:96FF:FE25:8EC9
s=3GPP MBMS Streaming FEC SDP Example
i=Example of MBMS streaming SDP file
u=http://www.infoserver.example.com/ae600
e=ghost@mailserver.example.com
c=IN IP6 FF1E:03AD::7F2E:172A:1E24
t=3034423619 3042462419
b=AS:15
a=FEC-declaration:0 encoding-id=1
a=FEC-OTI-extension:0 ACAEAA==
a=mbms-repair: 0 min-buffer-time=2600
a=mbms-repair: 0 min-buffer-time-slowdown=1300 max-slowdown-percentage=10
a=source-filter: incl IN IP6 * 2001:210:1:2:240:96FF:FE25:8EC9
m=application 4006 UDP/MBMS-REPAIR *
b=AS:15
a=FEC:0
a=mbms-flowid: 1=FF1E:03AD::7F2E:172A:1E24/4002, 2=FF1E:03AD::7F2E:172A:1E24/4003, 3=FF1E:03AD::7F2E:172A:1E24/4004, 4=FF1E:03AD::7F2E:172A:1E24/4005, 5=FF1E:03AD::7F2E:172A:1E24/2269
解決法2のためのSDPの例:全てのランダム・アクセス・ポイントのためのバッファ時間の低減
v=0
o=ghost 2890844526 2890842807 IN IP6 2001:210:1:2:240:96FF:FE25:8EC9
s=3GPP MBMS Streaming FEC SDP Example
i=Example of MBMS streaming SDP file
u=http://www.infoserver.example.com/ae600
e=ghost@mailserver.example.com
c=IN IP6 FF1E:03AD::7F2E:172A:1E24
t=3034423619 3042462419
b=AS:15
a=FEC-declaration:0 encoding-id=1
a=FEC-OTI-extension:0 ACAEAA==
a=mbms-repair: 0 min-buffer-time=2600
a=mbms-repair: 0 min-buffer-time-rap=2000
a=source-filter: incl IN IP6 * 2001:210:1:2:240:96FF:FE25:8EC9
m=application 4006 UDP/MBMS-REPAIR *
b=AS:15
a=FEC:0
a=mbms-flowid: 1=FF1E:03AD::7F2E:172A:1E24/4002, 2=FF1E:03AD::7F2E:172A:1E24/4003, 3=FF1E:03AD::7F2E:172A:1E24/4004, 4=FF1E:03AD::7F2E:172A:1E24/4005, 5=FF1E:03AD::7F2E:172A:1E24/2269
解決法3のためのSDPの例:リバース送信オーダーのためのバッファ時間
v=0
o=ghost 2890844526 2890842807 IN IP6 2001:210:1:2:240:96FF:FE25:8EC9
s=3GPP MBMS Streaming FEC SDP Example
i=Example of MBMS streaming SDP file
u=http://www.infoserver.example.com/ae600
e=ghost@mailserver.example.com
c=IN IP6 FF1E:03AD::7F2E:172A:1E24
t=3034423619 3042462419
b=AS:15
a=FEC-declaration:0 encoding-id=1
a=FEC-OTI-extension:0 ACAEAA==
a=mbms-repair: 0 min--buffer-time=4000
a=mbms-repair: 0 min-buffer-time-low-quality=1000
a=mbms-repair: 0 min-buffer-time-medium-quality=2000
a=mbms-repair: 0 min-buffer-time-no-fec=3000
a=source-filter: incl IN IP6 * 2001:210:1:2:240:96FF:FE25:8EC9
m=application 4006 UDP/MBMS-REPAIR *
b=AS:15
a=FEC:0
a=mbms-flowid: 1=FF1E:03AD::7F2E:172A:1E24/4002, 2=FF1E:03AD::7F2E:172A:1E24/4003, 3=FF1E:03AD::7F2E:172A:1E24/4004, 4=FF1E:03AD::7F2E:172A:1E24/4005, 5=FF1E:03AD::7F2E:172A:1E24/2269
解釈されていないSDP属性が無視されるので、3つの解決法がすべて下位互換性をサポートすることを注記する。これらの示された最適化パラメータが仮想FECデコーダかその他のものを使用して生成されることかもしれない。
いくつかの実施例では、FECをスイッチング直後に利用できないだろうが、FECデータは、(最小のバッファ時間を減少することができる)ソース・データの前に送信される。
早期のプレイアウトが許可される信号を送るトランスミッターであれば、スイッチング後により速いディスプレイを可能にするために、ある程度小さなバッファ時間は使用されうる(例えば、最小バッファ時間noFEC < 最小バッファ時間)。最小バッファ時間noFECのための値は、レシーバーに送信されるかもしれないし、又はレシーバー実行専用かもしれない。
十分なFEC能力を引き出すために、レシーバーはある程度のバッファ時間を得るべきである、即ち最小バッファ時間―最小バッファ時間無-noFEC 時間、また、道理にかなったアプローチは、最小バッファ時間に達するまで、データ・パケットのバッファ時間を徐々に増加するかもしれない。
消費量の遅延無しにバッファ時間を得る1つの方法は、なんらかの要因によって、プレイアウト速度を抑制することであり、そして、FECデータについての残り時間を使用する。例えば、下記のスロー・ダウン時間に適用される減速要因があってもよい。
スロー・ダウン時間=(最小バッファ時間−最小バッファ時間noFEC)/(1−減速要因)
これらの要因は、SDPに含ませることができる。そのため、1つ、2または3つ全ての最適化信号は、単に従来の処理を解釈するだけの従来のレシーバーのプロシージャーを(必ず)替えることなくチャネル・スイッチングを改善することが付加されうる。いくつかの変化では、下位互換性はない。
解決法1は、早いデコーディングの開始とそれから適用する動作、例えば、最終的により遅れる実行をするメディア・プレイアウト減速のために余裕を取っておく。この信号方式は、これを、直接的に、又は従来の解決法と互換性のある方法又は従来のメディア・プレイアウト減速を使用する方法で可能にする。
解決法2は、特定箇所がストリームの他の箇所よりも初期バッファリングが得られない場合に、ストリームの特定箇所についての信号方式を付加的に加える解決法を扱う。もしストリームがランダム・アクセス・ポイントの場合、その後チャネル・スイッチング・時間は減少されうる。その信号方式は、全ての特定箇所について一度で又は各箇所について個別にでも、行われるかもしれない(初期バッファリングをさらにその上抑制しうる)。
解決法3は、高度のレシーバーが初期バッファリングが短いことにより利益が得られるように、送信オーダーが交換される場合に、バッファリング要求をする信号を送信する。
さらなる実施例は、この開示を読んだ後に当業者のうちの一人に思い描かせうる。他の実施例では、上記の示された発明のコンビネーション又はサブ・コンビネーションが有利になるように作られる。コンポーネントの配置例は、実例の目的ために示され、本発明の実施形態の代替の中で、組合せ、付加、再配置などが意図されると理解されるべきである。従って、本発明は、典型的な実施形態について説明したが、多数の改良がされる可能性があることを、当業者は認識するだろう。
例えば、ここで説明された処理は、ハードウェア構成要素、ソフトウェア・コンポーネント及び/又はそれの任意の組合せを使用して実施されるかもしれない。従って、本明細書及び図面は、制限的な意味よりもむしろ実例において、留意される。しかしながら、変形形態や変更がされることに加えて、請求項で説明されるものとしての本発明の広い趣旨や視野から外れることなしに、また、以下の請求項の視野の範囲内で全ての変形及び同等のものをカバーするために、発明が意図されたものであることは、明らかであろう。

Claims (4)

  1. トランスミッターがFECを使用してエンコードされたメディア・ストリームをレシーバーに送信する通信システムであって、
    前記トランスミッターでエンコードされた前記メディア・ストリームをデコードするための、前記トランスミッターにある複数の仮想FECデコーダであって、異なる最適化技術を用いる複数の仮想FECデコーダと、
    a)前記複数の仮想FECデコーダの出力が与えられるレシーバーに供給すべき少なくとも1つの最適化信号を決定し、b)前記レシーバーに前記少なくとも1つの最適化信号を送信するための、前記トランスミッターにあるロジックと
    を備える通信システム
  2. 少なくとも1つの最適化信号は、メディア消費量の減速を示す、請求項1に記載の通信システム。
  3. 少なくとも1つの最適化信号は、可変のバッファリング・パラメーターを示す、請求項1に記載の通信システム。
  4. 少なくとも1つの最適化信号は、FEC及びソースのデータ順序を示す、請求項1に記載の通信システム。
JP2011513714A 2008-06-12 2009-06-12 仮想fecデコーダ及びデコーディング制御のための信号方式 Expired - Fee Related JP5265766B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US6107308P 2008-06-12 2008-06-12
US61/061,073 2008-06-12
US12/483,191 US20100011274A1 (en) 2008-06-12 2009-06-11 Hypothetical fec decoder and signalling for decoding control
US12/483,191 2009-06-11
PCT/US2009/047130 WO2009152396A2 (en) 2008-06-12 2009-06-12 Hypothetical fec decoder and signalling for decoding control

Publications (2)

Publication Number Publication Date
JP2011524698A JP2011524698A (ja) 2011-09-01
JP5265766B2 true JP5265766B2 (ja) 2013-08-14

Family

ID=41417404

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011513714A Expired - Fee Related JP5265766B2 (ja) 2008-06-12 2009-06-12 仮想fecデコーダ及びデコーディング制御のための信号方式

Country Status (7)

Country Link
US (1) US20100011274A1 (ja)
EP (1) EP2286533A2 (ja)
JP (1) JP5265766B2 (ja)
KR (1) KR101314242B1 (ja)
CN (1) CN102217221A (ja)
TW (1) TW201004206A (ja)
WO (1) WO2009152396A2 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6307487B1 (en) * 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7068729B2 (en) * 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US9240810B2 (en) * 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
EP2348640B1 (en) 2002-10-05 2020-07-15 QUALCOMM Incorporated Systematic encoding of chain reaction codes
CN1954501B (zh) 2003-10-06 2010-06-16 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法
US7418651B2 (en) 2004-05-07 2008-08-26 Digital Fountain, Inc. File download and streaming system
WO2006020826A2 (en) * 2004-08-11 2006-02-23 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
JP5550834B2 (ja) 2006-02-13 2014-07-16 デジタル ファウンテン, インコーポレイテッド 可変fecオーバヘッド及び保護期間を利用したストリーミング及びバッファリング
US9270414B2 (en) * 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9386064B2 (en) * 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
AU2008298602A1 (en) 2007-09-12 2009-03-19 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
FR2941580A1 (fr) * 2009-01-23 2010-07-30 Alcatel Lucent Procede de codage de donnees a double entrelacement de symboles de parite, pour une infrastructure radio, et codec associe
US9281847B2 (en) * 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US20110096828A1 (en) * 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
CN101860797B (zh) * 2010-05-21 2014-08-13 中兴通讯股份有限公司 数据信息的传输方法、装置及移动多媒体广播业务系统
KR20120034550A (ko) 2010-07-20 2012-04-12 한국전자통신연구원 스트리밍 컨텐츠 제공 장치 및 방법
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9467493B2 (en) 2010-09-06 2016-10-11 Electronics And Telecommunication Research Institute Apparatus and method for providing streaming content
US9986009B2 (en) * 2010-10-06 2018-05-29 Electronics And Telecommunications Research Institute Apparatus and method for providing streaming content
EP2908532B1 (en) * 2010-12-30 2018-10-03 Skype Concealment of data loss for video decoding
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
GB2497915B (en) 2011-10-25 2015-09-09 Skype Estimating quality of a video signal
KR20130094160A (ko) * 2012-01-20 2013-08-23 삼성전자주식회사 스트리밍 서비스를 제공하는 방법 및 장치
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
US10356143B2 (en) 2012-10-10 2019-07-16 Samsung Electronics Co., Ltd. Method and apparatus for media data delivery control
JP2014093584A (ja) * 2012-11-01 2014-05-19 Sony Corp 送信装置、送信方法、受信装置、受信方法およびコンピュータプログラム
GB2513090B (en) 2013-01-28 2019-12-11 Microsoft Technology Licensing Llc Conditional concealment of lost video data

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5534937A (en) * 1994-04-14 1996-07-09 Motorola, Inc. Minimum-delay jitter smoothing device and method for packet video communications
US6175871B1 (en) * 1997-10-01 2001-01-16 3Com Corporation Method and apparatus for real time communication over packet networks
JP2004215224A (ja) * 2002-12-20 2004-07-29 Nippon Telegr & Teleph Corp <Ntt> 符号誤り訂正方法、符号誤り訂正システム、プログラム及びそのプログラムを記録した記録媒体
KR100541526B1 (ko) * 2004-01-30 2006-01-10 에스케이 텔레콤주식회사 멀티미디어 데이터의 전송품질 측정방법 및 장치
US7447978B2 (en) * 2004-11-16 2008-11-04 Nokia Corporation Buffering packets of a media stream
WO2006106185A1 (en) * 2005-04-07 2006-10-12 Nokia Corporation Buffering in streaming delivery
US20070011343A1 (en) * 2005-06-28 2007-01-11 Microsoft Corporation Reducing startup latencies in IP-based A/V stream distribution
US7477692B2 (en) * 2005-12-16 2009-01-13 Tut Systems, Inc. Video encoding for seamless splicing between encoded video streams
JP2007282023A (ja) * 2006-04-10 2007-10-25 Nec Electronics Corp 多重化装置及び多重化方法
JP4852384B2 (ja) * 2006-09-28 2012-01-11 Necパーソナルコンピュータ株式会社 トランスポートストリーム補正装置
EP2208305B1 (en) * 2007-11-02 2017-12-13 Symbol Technologies, LLC Efficient encoding and decoding of mixed data strings in rfid tags and other media

Also Published As

Publication number Publication date
WO2009152396A3 (en) 2010-05-20
EP2286533A2 (en) 2011-02-23
WO2009152396A2 (en) 2009-12-17
JP2011524698A (ja) 2011-09-01
US20100011274A1 (en) 2010-01-14
CN102217221A (zh) 2011-10-12
TW201004206A (en) 2010-01-16
KR101314242B1 (ko) 2013-10-02
KR20110017449A (ko) 2011-02-21

Similar Documents

Publication Publication Date Title
JP5265766B2 (ja) 仮想fecデコーダ及びデコーディング制御のための信号方式
CN103023813B (zh) 抖动缓冲器
CN104737518B (zh) 用于数据表示和传输的系统和方法
EP2566128B1 (en) Method and server for obtaining key information during fast channel switching
KR101737849B1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
US20110182195A1 (en) Radio communication apparatus, radio communication method, communication control apparatus, and program
KR20070114308A (ko) 스트리밍 배달의 버퍼링
CN102739627A (zh) 视频切换播放方法及系统
KR20100106959A (ko) 에프이씨 인코딩 및 디코딩을 위한 방법 및 장치
EP2543039A1 (en) Source code adaption based on communication link quality and source coding delay.
JP6535718B2 (ja) ストリーミングサービスを提供する方法及び装置
US20110191448A1 (en) Subdivision of Media Streams for Channel Switching
US8904020B2 (en) Method which permits a block-based file to be played out during transmission
CN108989241B (zh) 接收路径延迟机制
CN114946192A (zh) 利用比特率切换自适应流式传输媒体内容
JP2014068295A (ja) 無線環境に適したマルチキャストデータを配信する配信サーバ、システム及びプログラム
JP2006319463A (ja) パケット伝送方法及びパケット受信装置
Massey et al. Packet Size Matters in IP Transport
Patil et al. Audio Streaming on Mobile Phones

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121009

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130109

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130311

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130501

R150 Certificate of patent or registration of utility model

Ref document number: 5265766

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees